Äcdocutils.nodes
document
q)Åq}q(U	nametypesq}q(X���uc32qàX'���use case 32 - transfer object ownershipqNX���historyqàuUsubstitution_defsq	}q
Uparse_messagesq]qUcurrent_sourceq
NU
decorationqNUautofootnote_startqKUnameidsq}q(hUuc32qhU%use-case-32-transfer-object-ownershipqhUhistoryquUchildrenq]q(cdocutils.nodes
target
q)Åq}q(U	rawsourceqX	���.. _UC32:UparentqhUsourceqXj���/var/lib/jenkins/jobs/API_Documentation_trunk/workspace/api-documentation/source/design/UseCases/32_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 32 - Transfer Object Ownershipq9hh+hhhUtitleq:h }q;(h$]h%]h#]h"]h&]uh(Kh)hh]q<cdocutils.nodes
Text
q=X'���Use Case 32 - Transfer Object Ownershipq>ÖÅq?}q@(hh9hh7ubaubcsphinx.addnodes
index
qA)ÅqB}qC(hU�hh+hhhUindexqDh }qE(h"]h#]h$]h%]h&]UentriesqF]qG((UsingleqHX���Use Case 32Uindex-0qIU�NtqJ(hHX���UC32hIU�NtqK(hHX���ownership changehIU�NtqLeUinlineqMâuh(Kh)hh]ubh)ÅqN}qO(hU�hh+hhhhh }qP(h"]h#]h$]h%]h&]h'hIuh(Kh)hh]ubcdocutils.nodes
definition_list
qQ)ÅqR}qS(hU�hh+hhh-}hUdefinition_listqTh }qU(h$]h%]h#]h"]qVhIah&]uh(Nh)hh3}qWhIhNsh]qX(cdocutils.nodes
definition_list_item
qY)ÅqZ}q[(hX+���Revisions
View document revision history_.
hhRhhhUdefinition_list_itemq\h }q](h$]h%]h#]h"]h&]uh(K	h]q^(cdocutils.nodes
term
q_)Åq`}qa(hX	���RevisionsqbhhZhhhUtermqch }qd(h$]h%]h#]h"]h&]uh(K	h]qeh=X	���RevisionsqfÖÅqg}qh(hhbhh`ubaubcdocutils.nodes
definition
qi)Åqj}qk(hU�h }ql(h$]h%]h#]h"]h&]uhhZh]qmcdocutils.nodes
paragraph
qn)Åqo}qp(hX ���View document revision history_.hhjhhhU	paragraphqqh }qr(h$]h%]h#]h"]h&]uh(K	h]qs(h=X���View document revision qtÖÅqu}qv(hX���View document revision hhoubcdocutils.nodes
reference
qw)Åqx}qy(hX���history_UresolvedqzKhhohU	referenceq{h }q|(UnameX���historyq}Urefuriq~Xî���https://redmine.dataone.org/projects/d1/repository/changes/documents/Projects/cicore/architecture/api-documentation/source/design/UseCases/32_uc.txtqh"]h#]h$]h%]h&]uh]qÄh=X���historyqÅÖÅqÇ}qÉ(hU�hhxubaubh=X���.ÖÅqÑ}qÖ(hX���.hhoubeubahU
definitionqÜubeubhY)Åqá}qà(hXƒ���Goal
User or organization takes over 'ownership' of a set of objects (write
access for orphaned records), or the existing owner of an object would
like to transfer ownership to another principal.
hhRhhhh\h }qâ(h$]h%]h#]h"]h&]uh(Kh)hh]qä(h_)Åqã}qå(hX���Goalqçhháhhhhch }qé(h$]h%]h#]h"]h&]uh(Kh]qèh=X���GoalqêÖÅqë}qí(hhçhhãubaubhi)Åqì}qî(hU�h }qï(h$]h%]h#]h"]h&]uhháh]qñhn)Åqó}qò(hXæ���User or organization takes over 'ownership' of a set of objects (write
access for orphaned records), or the existing owner of an object would
like to transfer ownership to another principal.qôhhìhhhhqh }qö(h$]h%]h#]h"]h&]uh(Kh]qõh=Xæ���User or organization takes over 'ownership' of a set of objects (write
access for orphaned records), or the existing owner of an object would
like to transfer ownership to another principal.qúÖÅqù}qû(hhôhhóubaubahhÜubeubhY)Åqü}q†(hX!��Summary
Ownership transfer needs to be supported so that all there is always someone
that has the ability to manage the object. There are many circumstances w
where such changes are required, and the DataONE infrastructure should
support this operation both technically and operationally.
hhRhhhh\h }q°(h$]h%]h#]h"]h&]uh(Kh)hh]q¢(h_)Åq£}q§(hX���Summaryq•hhühhhhch }q¶(h$]h%]h#]h"]h&]uh(Kh]qßh=X���Summaryq®ÖÅq©}q™(hh•hh£ubaubhi)Åq´}q¨(hU�h }q≠(h$]h%]h#]h"]h&]uhhüh]qÆhn)ÅqØ}q∞(hX��Ownership transfer needs to be supported so that all there is always someone
that has the ability to manage the object. There are many circumstances w
where such changes are required, and the DataONE infrastructure should
support this operation both technically and operationally.q±hh´hhhhqh }q≤(h$]h%]h#]h"]h&]uh(Kh]q≥h=X��Ownership transfer needs to be supported so that all there is always someone
that has the ability to manage the object. There are many circumstances w
where such changes are required, and the DataONE infrastructure should
support this operation both technically and operationally.q¥ÖÅqµ}q∂(hh±hhØubaubahhÜubeubhY)Åq∑}q∏(hX4���Actors
- Current and new data owner
- Data managers
hhRhhhh\h }qπ(h$]h%]h#]h"]h&]uh(Kh)hh]q∫(h_)Åqª}qº(hX���ActorsqΩhh∑hhhhch }qæ(h$]h%]h#]h"]h&]uh(Kh]qøh=X���Actorsq¿ÖÅq¡}q¬(hhΩhhªubaubhi)Å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���Current and new data ownerq–h }q—(h$]h%]h#]h"]h&]uhh»h]q“hn)Åq”}q‘(hh–hhŒhhhhqh }q’(h$]h%]h#]h"]h&]uh(Kh]q÷h=X���Current and new data ownerq◊ÖÅqÿ}qŸ(hh–hh”ubaubahU	list_itemq⁄ubhÕ)Åq€}q‹(hX���Data managers
h }q›(h$]h%]h#]h"]h&]uhh»h]qfihn)Åqfl}q‡(hX
���Data managersq·hh€hhhhqh }q‚(h$]h%]h#]h"]h&]uh(Kh]q„h=X
���Data managersq‰ÖÅqÂ}qÊ(hh·hhflubaubahh⁄ubehUbullet_listqÁubahhÜubeubhY)ÅqË}qÈ(hX¥���Preconditions
- Content exists in the DataONE system
- Owner wants to transfer ownership role
- Organization needs to take control of objects (owner no longer filling
  that role)
hhRhhhh\h }qÍ(h$]h%]h#]h"]h&]uh(Kh)hh]qÎ(h_)ÅqÏ}qÌ(hX
���PreconditionsqÓhhËhhhhch }qÔ(h$]h%]h#]h"]h&]uh(Kh]qh=X
���PreconditionsqÒÖÅqÚ}qÛ(hhÓhhÏubaubhi)ÅqÙ}qı(hU�h }qˆ(h$]h%]h#]h"]h&]uhhËh]q˜h«)Åq¯}q˘(hU�h }q˙(hÀX���-h"]h#]h$]h%]h&]uhhÙh]q˚(hÕ)Åq¸}q˝(hX$���Content exists in the DataONE systemq˛h }qˇ(h$]h%]h#]h"]h&]uhh¯h]r���hn)År��}r��(hh˛hh¸hhhhqh }r��(h$]h%]h#]h"]h&]uh(Kh]r��h=X$���Content exists in the DataONE systemr��ÖÅr��}r��(hh˛hj��ubaubahh⁄ubhÕ)År��}r	��(hX&���Owner wants to transfer ownership roler
��h }r��(h$]h%]h#]h"]h&]uhh¯h]r��hn)År
��}r��(hj
��hj��hhhhqh }r��(h$]h%]h#]h"]h&]uh(Kh]r��h=X&���Owner wants to transfer ownership roler��ÖÅr��}r��(hj
��hj
��ubaubahh⁄ubhÕ)År��}r��(hXR���Organization needs to take control of objects (owner no longer filling
that role)
h }r��(h$]h%]h#]h"]h&]uhh¯h]r��hn)År��}r��(hXQ���Organization needs to take control of objects (owner no longer filling
that role)r��hj��hhhhqh }r��(h$]h%]h#]h"]h&]uh(Kh]r��h=XQ���Organization needs to take control of objects (owner no longer filling
that role)r��ÖÅr��}r��(hj��hj��ubaubahh⁄ubehhÁubahhÜubeubhY)År ��}r!��(hX:���Triggers
- Current owner no longer able to fill that role
hhRhhhh\h }r"��(h$]h%]h#]h"]h&]uh(K!h)hh]r#��(h_)År$��}r%��(hX���Triggersr&��hj ��hhhhch }r'��(h$]h%]h#]h"]h&]uh(K!h]r(��h=X���Triggersr)��ÖÅr*��}r+��(hj&��hj$��ubaubhi)År,��}r-��(hU�h }r.��(h$]h%]h#]h"]h&]uhj ��h]r/��h«)År0��}r1��(hU�h }r2��(hÀX���-h"]h#]h$]h%]h&]uhj,��h]r3��hÕ)År4��}r5��(hX/���Current owner no longer able to fill that role
h }r6��(h$]h%]h#]h"]h&]uhj0��h]r7��hn)År8��}r9��(hX.���Current owner no longer able to fill that roler:��hj4��hhhhqh }r;��(h$]h%]h#]h"]h&]uh(K!h]r<��h=X.���Current owner no longer able to fill that roler=��ÖÅr>��}r?��(hj:��hj8��ubaubahh⁄ubahhÁubahhÜubeubhY)År@��}rA��(hXf���Post Conditions
- Object ownership has been changed
- Updated to roles updated through the federation
hhRhhhh\h }rB��(h$]h%]h#]h"]h&]uh(K%h)hh]rC��(h_)ÅrD��}rE��(hX���Post ConditionsrF��hj@��hhhhch }rG��(h$]h%]h#]h"]h&]uh(K%h]rH��h=X���Post ConditionsrI��ÖÅrJ��}rK��(hjF��hjD��ubaubhi)ÅrL��}rM��(hU�h }rN��(h$]h%]h#]h"]h&]uhj@��h]rO��h«)ÅrP��}rQ��(hU�h }rR��(hÀX���-h"]h#]h$]h%]h&]uhjL��h]rS��(hÕ)ÅrT��}rU��(hX!���Object ownership has been changedrV��h }rW��(h$]h%]h#]h"]h&]uhjP��h]rX��hn)ÅrY��}rZ��(hjV��hjT��hhhhqh }r[��(h$]h%]h#]h"]h&]uh(K$h]r\��h=X!���Object ownership has been changedr]��ÖÅr^��}r_��(hjV��hjY��ubaubahh⁄ubhÕ)År`��}ra��(hX0���Updated to roles updated through the federation
h }rb��(h$]h%]h#]h"]h&]uhjP��h]rc��hn)Ård��}re��(hX/���Updated to roles updated through the federationrf��hj`��hhhhqh }rg��(h$]h%]h#]h"]h&]uh(K%h]rh��h=X/���Updated to roles updated through the federationri��ÖÅrj��}rk��(hjf��hjd��ubaubahh⁄ubehhÁubahhÜubeubeubcdocutils.nodes
comment
rl��)Årm��}rn��(hX“��@startuml images/32_seq.png
actor "User (User or Organization)" as user
participant "Client" as app_client << Application >>
user -> app_client
note right
Assume user authority for
specifying restrictions
end note
participant "Authorization API" as c_authorize << Coordinating Node >>
app_client -> c_authorize: takeOwnership (objectList)
app_client <-- c_authorize: ack or fail
note right
Is there an authority for any
given data / metadata object?
end note
@endumlhh+hhhUcommentro��h }rp��(U	xml:spacerq��Upreserverr��h"]h#]h$]h%]h&]uh(K8h)hh]rs��h=X“��@startuml images/32_seq.png
actor "User (User or Organization)" as user
participant "Client" as app_client << Application >>
user -> app_client
note right
Assume user authority for
specifying restrictions
end note
participant "Authorization API" as c_authorize << Coordinating Node >>
app_client -> c_authorize: takeOwnership (objectList)
app_client <-- c_authorize: ack or fail
note right
Is there an authority for any
given data / metadata object?
end note
@endumlrt��ÖÅru��}rv��(hU�hjm��ubaubcdocutils.nodes
image
rw��)Årx��}ry��(hX���.. image::  images/32_seq.png
hh+hhhUimagerz��h }r{��(UuriX!���design/UseCases/images/32_seq.pngr|��h"]h#]h$]h%]U
candidatesr}��}r~��U*j|��sh&]uh(K:h)hh]ubhn)År��}rÄ��(hXè���*Figure 1.* Interactions for use case 32. User or organization takes over
'ownership' of a set of objects\n(write access for orphaned records).hh+hhhhqh }r��(h$]h%]h#]h"]h&]uh(K;h)hh]r��(cdocutils.nodes
emphasis
rÉ��)ÅrÑ��}rÖ��(hX���*Figure 1.*h }rÜ��(h$]h%]h#]h"]h&]uhj��h]rá��h=X	���Figure 1.rà��ÖÅrâ��}rä��(hU�hjÑ��ubahUemphasisrã��ubh=XÉ��� Interactions for use case 32. User or organization takes over
'ownership' of a set of objectsn(write access for orphaned records).rå��ÖÅrç��}ré��(hXÑ��� Interactions for use case 32. User or organization takes over
'ownership' of a set of objects\n(write access for orphaned records).hj��ubeubhn)Årè��}rê��(hX	���**Notes**rë��hh+hhhhqh }rí��(h$]h%]h#]h"]h&]uh(K>h)hh]rì��cdocutils.nodes
strong
rî��)Årï��}rñ��(hjë��h }ró��(h$]h%]h#]h"]h&]uhjè��h]rò��h=X���Notesrô��ÖÅrö��}rõ��(hU�hjï��ubahUstrongrú��ubaubh«)Årù��}rû��(hU�hh+hhhhÁh }rü��(hÀX���-h"]h#]h$]h%]h&]uh(K@h)hh]r†��hÕ)År°��}r¢��(hXÆ���Q. Is there an authority for any given data/metadata object? A. The
authority for any object is expressed in the system metadata element
:attr:`SystemMetadata.rightsHolder`.
hjù��hhhh⁄h }r£��(h$]h%]h#]h"]h&]uh(Nh)hh]r§��hn)År•��}r¶��(hX≠���Q. Is there an authority for any given data/metadata object? A. The
authority for any object is expressed in the system metadata element
:attr:`SystemMetadata.rightsHolder`.hj°��hhhhqh }rß��(h$]h%]h#]h"]h&]uh(K@h]r®��(h=Xâ���Q. Is there an authority for any given data/metadata object? A. The
authority for any object is expressed in the system metadata element
r©��ÖÅr™��}r´��(hXâ���Q. Is there an authority for any given data/metadata object? A. The
authority for any object is expressed in the system metadata element
hj•��ubcsphinx.addnodes
pending_xref
r¨��)År≠��}rÆ��(hX#���:attr:`SystemMetadata.rightsHolder`rØ��hj•��hhhUpending_xrefr∞��h }r±��(UreftypeX���attrUrefwarnr≤��âU	reftargetr≥��X���SystemMetadata.rightsHolderU	refdomainX���pyr¥��h"]h#]Urefexplicitâh$]h%]h&]Urefdocrµ��X���design/UseCases/32_ucr∂��Upy:classr∑��NU	py:moduler∏��Nuh(K@h]rπ��cdocutils.nodes
literal
r∫��)Årª��}rº��(hjØ��h }rΩ��(h$]h%]ræ��(Uxrefrø��j¥��X���py-attrr¿��eh#]h"]h&]uhj≠��h]r¡��h=X���SystemMetadata.rightsHolderr¬��ÖÅr√��}rƒ��(hU�hjª��ubahUliteralr≈��ubaubh=X���.ÖÅr∆��}r«��(hX���.hj•��ubeubaubaubh)År»��}r…��(hX°���.. _history: https://redmine.dataone.org/projects/d1/repository/changes/documents/Projects/cicore/architecture/api-documentation/source/design/UseCases/32_uc.txtU
referencedr ��Khh+hhhhh }rÀ��(h~hh"]rÃ��hah#]h$]h%]h&]rÕ��hauh(KDh)hh]ubeubehU�UtransformerrŒ��NU
footnote_refsrœ��}r–��Urefnamesr—��}r“��h}]r”��hxasUsymbol_footnotesr‘��]r’��Uautofootnote_refsr÷��]r◊��Usymbol_footnote_refsrÿ��]rŸ��U	citationsr⁄��]r€��h)hUcurrent_liner‹��NUtransform_messagesr›��]rfi��(cdocutils.nodes
system_message
rfl��)År‡��}r·��(hU�h }r‚��(h$]UlevelKh"]h#]Usourcehh%]h&]UlineKUtypeUINFOr„��uh]r‰��hn)ÅrÂ��}rÊ��(hU�h }rÁ��(h$]h%]h#]h"]h&]uhj‡��h]rË��h=X*���Hyperlink target "uc32" is not referenced.rÈ��ÖÅrÍ��}rÎ��(hU�hjÂ��ubahhqubahUsystem_messagerÏ��ubjfl��)ÅrÌ��}rÓ��(hU�h }rÔ��(h$]UlevelKh"]h#]Usourcehh%]h&]UlineKUtypej„��uh]r��hn)Å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Ò��ubahhqubahjÏ��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_configr0��NU	id_prefixr1��U�U	tab_widthr2��KUerror_encodingr3��UUTF-8r4��U_sourcer5��hUgettext_compactr6��àU	generatorr7��NUdump_internalsr8��NUsmart_quotesr9��âUpep_base_urlr:��U https://www.python.org/dev/peps/r;��Usyntax_highlightr<��Ulongr=��Uinput_encoding_error_handlerr>��j��Uauto_id_prefixr?��Uidr@��Udoctitle_xformrA��âUstrip_elements_with_classesrB��NU
_config_filesrC��]rD��Ufile_insertion_enabledrE��àUraw_enabledrF��KU
dump_settingsrG��NubUsymbol_footnote_startrH��K�UidsrI��}rJ��(hh+hh+hIhRhj»��uUsubstitution_namesrK��}rL��hh)h }rM��(h$]h"]h#]Usourcehh%]h&]uU	footnotesrN��]rO��UrefidsrP��}rQ��(h]rR��hahI]rS��hNauub.