Äcdocutils.nodes
document
q)Åq}q(U	nametypesq}q(X���uc19qàX���historyqàX.���use case 19 - retrieve object download summaryqNuUsubstitution_defsq	}q
Uparse_messagesq]qUcurrent_sourceq
NU
decorationqNUautofootnote_startqKUnameidsq}q(hUuc19qhUhistoryqhU,use-case-19-retrieve-object-download-summaryquUchildrenq]q(cdocutils.nodes
target
q)Åq}q(U	rawsourceqX	���.. _UC19:UparentqhUsourceqXj���/var/lib/jenkins/jobs/API_Documentation_trunk/workspace/api-documentation/source/design/UseCases/19_uc.txtqUtagnameqUtargetqU
attributesq }q!(Uidsq"]Ubackrefsq#]Udupnamesq$]Uclassesq%]Unamesq&]Urefidq'huUlineq(KUdocumentq)hh]ubcdocutils.nodes
section
q*)Åq+}q,(hU�hhhhUexpect_referenced_by_nameq-}q.hhshUsectionq/h }q0(h$]h%]h#]h"]q1(hheh&]q2(hheuh(Kh)hUexpect_referenced_by_idq3}q4hhsh]q5(cdocutils.nodes
title
q6)Åq7}q8(hX.���Use Case 19 - Retrieve Object Download Summaryq9hh+hhhUtitleq:h }q;(h$]h%]h#]h"]h&]uh(Kh)hh]q<cdocutils.nodes
Text
q=X.���Use Case 19 - Retrieve Object Download Summaryq>ÖÅq?}q@(hh9hh7ubaubcsphinx.addnodes
index
qA)ÅqB}qC(hU�hh+hhhUindexqDh }qE(h"]h#]h$]h%]h&]UentriesqF]qG((UsingleqHX���Use Case 19Uindex-0qIU�NtqJ(hHX���UC19hIU�NtqK(hHX���object use summaryhIU�NtqL(hHX���aggregationhIU�NtqM(hHX���usehIU�NtqNeUinlineqOâuh(Kh)hh]ubh)ÅqP}qQ(hU�hh+hhhhh }qR(h"]h#]h$]h%]h&]h'hIuh(Kh)hh]ubcdocutils.nodes
definition_list
qS)ÅqT}qU(hU�hh+hhh-}hUdefinition_listqVh }qW(h$]h%]h#]h"]qXhIah&]uh(Nh)hh3}qYhIhPsh]qZ(cdocutils.nodes
definition_list_item
q[)Åq\}q](hX+���Revisions
View document revision history_.
hhThhhUdefinition_list_itemq^h }q_(h$]h%]h#]h"]h&]uh(K	h]q`(cdocutils.nodes
term
qa)Åqb}qc(hX	���Revisionsqdhh\hhhUtermqeh }qf(h$]h%]h#]h"]h&]uh(K	h]qgh=X	���RevisionsqhÖÅqi}qj(hhdhhbubaubcdocutils.nodes
definition
qk)Åql}qm(hU�h }qn(h$]h%]h#]h"]h&]uhh\h]qocdocutils.nodes
paragraph
qp)Åqq}qr(hX ���View document revision history_.hhlhhhU	paragraphqsh }qt(h$]h%]h#]h"]h&]uh(K	h]qu(h=X���View document revision qvÖÅqw}qx(hX���View document revision hhqubcdocutils.nodes
reference
qy)Åqz}q{(hX���history_Uresolvedq|KhhqhU	referenceq}h }q~(UnameX���historyqUrefuriqÄXî���https://redmine.dataone.org/projects/d1/repository/changes/documents/Projects/cicore/architecture/api-documentation/source/design/UseCases/19_uc.txtqÅh"]h#]h$]h%]h&]uh]qÇh=X���historyqÉÖÅqÑ}qÖ(hU�hhzubaubh=X���.ÖÅqÜ}qá(hX���.hhqubeubahU
definitionqàubeubh[)Åqâ}qä(hXu���Goal
General public can request aggregated download usage information for any
object ID (with anonymous read access)
hhThhhh^h }qã(h$]h%]h#]h"]h&]uh(K
h)hh]qå(ha)Åqç}qé(hX���Goalqèhhâhhhheh }qê(h$]h%]h#]h"]h&]uh(K
h]qëh=X���GoalqíÖÅqì}qî(hhèhhçubaubhk)Åqï}qñ(hU�h }qó(h$]h%]h#]h"]h&]uhhâh]qòhp)Åqô}qö(hXo���General public can request aggregated download usage information for any
object ID (with anonymous read access)qõhhïhhhhsh }qú(h$]h%]h#]h"]h&]uh(Kh]qùh=Xo���General public can request aggregated download usage information for any
object ID (with anonymous read access)qûÖÅqü}q†(hhõhhôubaubahhàubeubh[)Åq°}q¢(hXï���Summary
This operation provides an indication of the popularity for an object in
DataONE, somewhat equivalent to a citation index for a publication.
hhThhhh^h }q£(h$]h%]h#]h"]h&]uh(Kh)hh]q§(ha)Åq•}q¶(hX���Summaryqßhh°hhhheh }q®(h$]h%]h#]h"]h&]uh(Kh]q©h=X���Summaryq™ÖÅq´}q¨(hhßhh•ubaubhk)Åq≠}qÆ(hU�h }qØ(h$]h%]h#]h"]h&]uhh°h]q∞hp)Åq±}q≤(hXå���This operation provides an indication of the popularity for an object in
DataONE, somewhat equivalent to a citation index for a publication.q≥hh≠hhhhsh }q¥(h$]h%]h#]h"]h&]uh(Kh]qµh=Xå���This operation provides an indication of the popularity for an object in
DataONE, somewhat equivalent to a citation index for a publication.q∂ÖÅq∑}q∏(hh≥hh±ubaubahhàubeubh[)Åqπ}q∫(hX-���Actors
- Anonymous user

- Coordinating Node
hhThhhh^h }qª(h$]h%]h#]h"]h&]uh(Kh)hh]qº(ha)ÅqΩ}qæ(hX���Actorsqøhhπhhhheh }q¿(h$]h%]h#]h"]h&]uh(Kh]q¡h=X���Actorsq¬ÖÅq√}qƒ(hhøhhΩubaubhk)Åq≈}q∆(hU�h }q«(h$]h%]h#]h"]h&]uhhπh]q»cdocutils.nodes
bullet_list
q…)Åq }qÀ(hU�h }qÃ(UbulletqÕX���-h"]h#]h$]h%]h&]uhh≈h]qŒ(cdocutils.nodes
list_item
qœ)Åq–}q—(hX���Anonymous user
h }q“(h$]h%]h#]h"]h&]uhh h]q”hp)Åq‘}q’(hX���Anonymous userq÷hh–hhhhsh }q◊(h$]h%]h#]h"]h&]uh(Kh]qÿh=X���Anonymous userqŸÖÅq⁄}q€(hh÷hh‘ubaubahU	list_itemq‹ubhœ)Åq›}qfi(hX���Coordinating Node
h }qfl(h$]h%]h#]h"]h&]uhh h]q‡hp)Åq·}q‚(hX���Coordinating Nodeq„hh›hhhhsh }q‰(h$]h%]h#]h"]h&]uh(Kh]qÂh=X���Coordinating NodeqÊÖÅqÁ}qË(hh„hh·ubaubahh‹ubehUbullet_listqÈubahhàubeubh[)ÅqÍ}qÎ(hXC���Preconditions
Use statistics have been recorded for a given object
hhThhhh^h }qÏ(h$]h%]h#]h"]h&]uh(Kh)hh]qÌ(ha)ÅqÓ}qÔ(hX
���PreconditionsqhhÍhhhheh }qÒ(h$]h%]h#]h"]h&]uh(Kh]qÚh=X
���PreconditionsqÛÖÅqÙ}qı(hhhhÓubaubhk)Åqˆ}q˜(hU�h }q¯(h$]h%]h#]h"]h&]uhhÍh]q˘hp)Åq˙}q˚(hX4���Use statistics have been recorded for a given objectq¸hhˆhhhhsh }q˝(h$]h%]h#]h"]h&]uh(Kh]q˛h=X4���Use statistics have been recorded for a given objectqˇÖÅr���}r��(hh¸hh˙ubaubahhàubeubh[)År��}r��(hX4���Triggers
- Any user requests use logs for an object
hhThhhh^h }r��(h$]h%]h#]h"]h&]uh(Kh)hh]r��(ha)År��}r��(hX���Triggersr��hj��hhhheh }r	��(h$]h%]h#]h"]h&]uh(Kh]r
��h=X���Triggersr��ÖÅr��}r
��(hj��hj��ubaubhk)År��}r��(hU�h }r��(h$]h%]h#]h"]h&]uhj��h]r��h…)År��}r��(hU�h }r��(hÕX���-h"]h#]h$]h%]h&]uhj��h]r��hœ)År��}r��(hX)���Any user requests use logs for an object
h }r��(h$]h%]h#]h"]h&]uhj��h]r��hp)År��}r��(hX(���Any user requests use logs for an objectr��hj��hhhhsh }r��(h$]h%]h#]h"]h&]uh(Kh]r��h=X(���Any user requests use logs for an objectr��ÖÅr ��}r!��(hj��hj��ubaubahh‹ubahhÈubahhàubeubh[)År"��}r#��(hXa���Post Conditions
- Requesting user has a copy of use statistics for an object (if
  authorized).

hhThhhh^h }r$��(h$]h%]h#]h"]h&]uh(K!h)hh]r%��(ha)År&��}r'��(hX���Post Conditionsr(��hj"��hhhheh }r)��(h$]h%]h#]h"]h&]uh(K!h]r*��h=X���Post Conditionsr+��ÖÅr,��}r-��(hj(��hj&��ubaubhk)År.��}r/��(hU�h }r0��(h$]h%]h#]h"]h&]uhj"��h]r1��h…)År2��}r3��(hU�h }r4��(hÕX���-h"]h#]h$]h%]h&]uhj.��h]r5��hœ)År6��}r7��(hXM���Requesting user has a copy of use statistics for an object (if
authorized).

h }r8��(h$]h%]h#]h"]h&]uhj2��h]r9��hp)År:��}r;��(hXK���Requesting user has a copy of use statistics for an object (if
authorized).r<��hj6��hhhhsh }r=��(h$]h%]h#]h"]h&]uh(Kh]r>��h=XK���Requesting user has a copy of use statistics for an object (if
authorized).r?��ÖÅr@��}rA��(hj<��hj:��ubaubahh‹ubahhÈubahhàubeubeubcdocutils.nodes
comment
rB��)ÅrC��}rD��(hX’��@startuml images/19_seq.png
actor User
participant "Client" as app_client << Application >>
User -> app_client
participant "Authentication API" as c_authenticate << Coordinating Node >>
app_client -> c_authenticate: login (user, pw)
app_client <-- c_authenticate: token or failure
participant "Query API" as c_query << Coordinating Node >>
app_client -> c_query: usageQuery (token, PID)
participant "Authorization API" as c_authorize << Coordinating Node >>
c_query -> c_authorize: isAuth (token, resultset)
c_query <-- c_authorize: T or F
app_client <-- c_query: download usage records
note right
Can the Query API handle queries
on log records or should this be
handled by another API?
(e.g. "Report API"?)
end note
@endumlhh+hhhUcommentrE��h }rF��(U	xml:spacerG��UpreserverH��h"]h#]h$]h%]h&]uh(K8h)hh]rI��h=X’��@startuml images/19_seq.png
actor User
participant "Client" as app_client << Application >>
User -> app_client
participant "Authentication API" as c_authenticate << Coordinating Node >>
app_client -> c_authenticate: login (user, pw)
app_client <-- c_authenticate: token or failure
participant "Query API" as c_query << Coordinating Node >>
app_client -> c_query: usageQuery (token, PID)
participant "Authorization API" as c_authorize << Coordinating Node >>
c_query -> c_authorize: isAuth (token, resultset)
c_query <-- c_authorize: T or F
app_client <-- c_query: download usage records
note right
Can the Query API handle queries
on log records or should this be
handled by another API?
(e.g. "Report API"?)
end note
@endumlrJ��ÖÅrK��}rL��(hU�hjC��ubaubcdocutils.nodes
image
rM��)ÅrN��}rO��(hX���.. image::  images/19_seq.png
hh+hhhUimagerP��h }rQ��(UuriX!���design/UseCases/images/19_seq.pngrR��h"]h#]h$]h%]U
candidatesrS��}rT��U*jR��sh&]uh(K:h)hh]ubhp)ÅrU��}rV��(hX)���*Figure 1.* Interactions for use case 19.rW��hh+hhhhsh }rX��(h$]h%]h#]h"]h&]uh(K;h)hh]rY��(cdocutils.nodes
emphasis
rZ��)År[��}r\��(hX���*Figure 1.*h }r]��(h$]h%]h#]h"]h&]uhjU��h]r^��h=X	���Figure 1.r_��ÖÅr`��}ra��(hU�hj[��ubahUemphasisrb��ubh=X��� Interactions for use case 19.rc��ÖÅrd��}re��(hX��� Interactions for use case 19.hjU��ubeubh)Årf��}rg��(hX°���.. _history: https://redmine.dataone.org/projects/d1/repository/changes/documents/Projects/cicore/architecture/api-documentation/source/design/UseCases/19_uc.txtU
referencedrh��Khh+hhhhh }ri��(hÄhÅh"]rj��hah#]h$]h%]h&]rk��hauh(K=h)hh]ubeubehU�Utransformerrl��NU
footnote_refsrm��}rn��Urefnamesro��}rp��h]rq��hzasUsymbol_footnotesrr��]rs��Uautofootnote_refsrt��]ru��Usymbol_footnote_refsrv��]rw��U	citationsrx��]ry��h)hUcurrent_linerz��NUtransform_messagesr{��]r|��(cdocutils.nodes
system_message
r}��)År~��}r��(hU�h }rÄ��(h$]UlevelKh"]h#]Usourcehh%]h&]UlineKUtypeUINFOrÅ��uh]rÇ��hp)ÅrÉ��}rÑ��(hU�h }rÖ��(h$]h%]h#]h"]h&]uhj~��h]rÜ��h=X*���Hyperlink target "uc19" is not referenced.rá��ÖÅrà��}râ��(hU�hjÉ��ubahhsubahUsystem_messagerä��ubj}��)Årã��}rå��(hU�h }rç��(h$]UlevelKh"]h#]Usourcehh%]h&]UlineKUtypejÅ��uh]ré��hp)Årè��}rê��(hU�h }rë��(h$]h%]h#]h"]h&]uhjã��h]rí��h=X-���Hyperlink target "index-0" is not referenced.rì��ÖÅrî��}rï��(hU�hjè��ubahhsubahjä��ubeUreporterrñ��NUid_startró��KU
autofootnotesrò��]rô��U
citation_refsrö��}rõ��Uindirect_targetsrú��]rù��Usettingsrû��(cdocutils.frontend
Values
rü��or†��}r°��(Ufootnote_backlinksr¢��KUrecord_dependenciesr£��NUrfc_base_urlr§��Uhttps://tools.ietf.org/html/r•��U	tracebackr¶��àUpep_referencesrß��NUstrip_commentsr®��NU
toc_backlinksr©��Uentryr™��U
language_coder´��Uenr¨��U	datestampr≠��NUreport_levelrÆ��KU_destinationrØ��NU
halt_levelr∞��KU
strip_classesr±��Nh:NUerror_encoding_error_handlerr≤��Ubackslashreplacer≥��Udebugr¥��NUembed_stylesheetrµ��âUoutput_encoding_error_handlerr∂��Ustrictr∑��U
sectnum_xformr∏��KUdump_transformsrπ��NU
docinfo_xformr∫��KUwarning_streamrª��NUpep_file_url_templaterº��Upep-%04drΩ��Uexit_status_levelræ��KUconfigrø��NUstrict_visitorr¿��NUcloak_email_addressesr¡��àUtrim_footnote_reference_spacer¬��âUenvr√��NUdump_pseudo_xmlrƒ��NUexpose_internalsr≈��NUsectsubtitle_xformr∆��âUsource_linkr«��NUrfc_referencesr»��NUoutput_encodingr…��Uutf-8r ��U
source_urlrÀ��NUinput_encodingrÃ��U	utf-8-sigrÕ��U_disable_configrŒ��NU	id_prefixrœ��U�U	tab_widthr–��KUerror_encodingr—��UUTF-8r“��U_sourcer”��hUgettext_compactr‘��àU	generatorr’��NUdump_internalsr÷��NUsmart_quotesr◊��âUpep_base_urlrÿ��U https://www.python.org/dev/peps/rŸ��Usyntax_highlightr⁄��Ulongr€��Uinput_encoding_error_handlerr‹��j∑��Uauto_id_prefixr›��Uidrfi��Udoctitle_xformrfl��âUstrip_elements_with_classesr‡��NU
_config_filesr·��]Ufile_insertion_enabledr‚��àUraw_enabledr„��KU
dump_settingsr‰��NubUsymbol_footnote_startrÂ��K�UidsrÊ��}rÁ��(hh+hh+hIhThjf��uUsubstitution_namesrË��}rÈ��hh)h }rÍ��(h$]h"]h#]Usourcehh%]h&]uU	footnotesrÎ��]rÏ��UrefidsrÌ��}rÓ��(h]rÔ��hahI]r��hPauub.