Äcdocutils.nodes
document
q)Åq}q(U	nametypesq}q(X���implications for implementationqNX%���selectors for data package componentsqNX���goalqNX	���rationaleq	NuUsubstitution_defsq
}qUparse_messagesq]q
Ucurrent_sourceqNU
decorationqNUautofootnote_startqKUnameidsq}q(hUimplications-for-implementationqhU%selectors-for-data-package-componentsqhUgoalqh	U	rationalequUchildrenq]qcdocutils.nodes
section
q)Åq}q(U	rawsourceqU�UparentqhUsourceqXd���/var/lib/jenkins/jobs/API_Documentation_trunk/workspace/api-documentation/source/notes/selectors.txtqUtagnameq Usectionq!U
attributesq"}q#(Udupnamesq$]Uclassesq%]Ubackrefsq&]Uidsq']q(haUnamesq)]q*hauUlineq+KUdocumentq,hh]q-(cdocutils.nodes
title
q.)Åq/}q0(hX%���Selectors for Data Package Componentsq1hhhhh Utitleq2h"}q3(h$]h%]h&]h']h)]uh+Kh,hh]q4cdocutils.nodes
Text
q5X%���Selectors for Data Package Componentsq6ÖÅq7}q8(hh1hh/ubaubh)Åq9}q:(hU�hhhhh h!h"}q;(h$]h%]h&]h']q<hah)]q=hauh+Kh,hh]q>(h.)Åq?}q@(hX���GoalqAhh9hhh h2h"}qB(h$]h%]h&]h']h)]uh+Kh,hh]qCh5X���GoalqDÖÅqE}qF(hhAhh?ubaubcdocutils.nodes
paragraph
qG)ÅqH}qI(hXf��Develop a generalized selector API and standard that can be used to
identify granules within a data resource (data set, data package, composite
object) that is managed by DataONE. The “selector” can be appended to an
identifier or included with an API call to retrieve an object and the response
is the sub-element or component specified by the selector.qJhh9hhh U	paragraphqKh"}qL(h$]h%]h&]h']h)]uh+Kh,hh]qMh5Xf��Develop a generalized selector API and standard that can be used to
identify granules within a data resource (data set, data package, composite
object) that is managed by DataONE. The “selector” can be appended to an
identifier or included with an API call to retrieve an object and the response
is the sub-element or component specified by the selector.qNÖÅqO}qP(hhJhhHubaubhG)ÅqQ}qR(hX˜���Types of selector are likely to vary with the types of composite objects being
managed by DataONE. For example, a selector may be defined to return a range
by bytes from a BLOB, or perhaps a single file from within a zip archive of a
set of files.qShh9hhh hKh"}qT(h$]h%]h&]h']h)]uh+K
h,hh]qUh5X˜���Types of selector are likely to vary with the types of composite objects being
managed by DataONE. For example, a selector may be defined to return a range
by bytes from a BLOB, or perhaps a single file from within a zip archive of a
set of files.qVÖÅqW}qX(hhShhQubaubhG)ÅqY}qZ(hX���Some examples:q[hh9hhh hKh"}q\(h$]h%]h&]h']h)]uh+Kh,hh]q]h5X���Some examples:q^ÖÅq_}q`(hh[hhYubaubcdocutils.nodes
bullet_list
qa)Åqb}qc(hU�hh9hhh Ubullet_listqdh"}qe(UbulletqfX���-h']h&]h$]h%]h)]uh+Kh,hh]qg(cdocutils.nodes
list_item
qh)Åqi}qj(hX<���Byte range (first and last offset, or first offset and size)qkhhbhhh U	list_itemqlh"}qm(h$]h%]h&]h']h)]uh+Nh,hh]qnhG)Åqo}qp(hhkhhihhh hKh"}qq(h$]h%]h&]h']h)]uh+Kh]qrh5X<���Byte range (first and last offset, or first offset and size)qsÖÅqt}qu(hhkhhoubaubaubhh)Åqv}qw(hX ���Index range (offset into a list)qxhhbhhh hlh"}qy(h$]h%]h&]h']h)]uh+Nh,hh]qzhG)Åq{}q|(hhxhhvhhh hKh"}q}(h$]h%]h&]h']h)]uh+Kh]q~h5X ���Index range (offset into a list)qÖÅqÄ}qÅ(hhxhh{ubaubaubhh)ÅqÇ}qÉ(hX���HTML fragment identifierqÑhhbhhh hlh"}qÖ(h$]h%]h&]h']h)]uh+Nh,hh]qÜhG)Åqá}qà(hhÑhhÇhhh hKh"}qâ(h$]h%]h&]h']h)]uh+Kh]qäh5X���HTML fragment identifierqãÖÅqå}qç(hhÑhháubaubaubhh)Åqé}qè(hX���Time offset or rangeqêhhbhhh hlh"}që(h$]h%]h&]h']h)]uh+Nh,hh]qíhG)Åqì}qî(hhêhhéhhh hKh"}qï(h$]h%]h&]h']h)]uh+Kh]qñh5X���Time offset or rangeqóÖÅqò}qô(hhêhhìubaubaubhh)Åqö}qõ(hX���Bounding box spatial rangeqúhhbhhh hlh"}qù(h$]h%]h&]h']h)]uh+Nh,hh]qûhG)Åqü}q†(hhúhhöhhh hKh"}q°(h$]h%]h&]h']h)]uh+Kh]q¢h5X���Bounding box spatial rangeq£ÖÅq§}q•(hhúhhüubaubaubhh)Åq¶}qß(hX&���Database record selection from a key

hhbhhh hlh"}q®(h$]h%]h&]h']h)]uh+Nh,hh]q©hG)Åq™}q´(hX$���Database record selection from a keyq¨hh¶hhh hKh"}q≠(h$]h%]h&]h']h)]uh+Kh]qÆh5X$���Database record selection from a keyqØÖÅq∞}q±(hh¨hh™ubaubaubeubeubh)Åq≤}q≥(hU�hhhhh h!h"}q¥(h$]h%]h&]h']qµhah)]q∂h	auh+Kh,hh]q∑(h.)Åq∏}qπ(hX	���Rationaleq∫hh≤hhh h2h"}qª(h$]h%]h&]h']h)]uh+Kh,hh]qºh5X	���RationaleqΩÖÅqæ}qø(hh∫hh∏ubaubhG)Åq¿}q¡(hX„��There are practical limits to the total number of objects that may
be effectively managed at the level of detail supported by the DataONE
infrastructure. By managing content at the collection or package level, the
total number of managed identifiers can be constrained to a more manageable
range (e.g. a single collection may have >= 1e5 elements or records). Using
selectors, this could be reduced to a single identifier for the collection
plus support for the appropriate selector.q¬hh≤hhh hKh"}q√(h$]h%]h&]h']h)]uh+Kh,hh]qƒh5X„��There are practical limits to the total number of objects that may
be effectively managed at the level of detail supported by the DataONE
infrastructure. By managing content at the collection or package level, the
total number of managed identifiers can be constrained to a more manageable
range (e.g. a single collection may have >= 1e5 elements or records). Using
selectors, this could be reduced to a single identifier for the collection
plus support for the appropriate selector.q≈ÖÅq∆}q«(hh¬hh¿ubaubhG)Åq»}q…(hXª���So a "selector service" is implemented by a node as a mechanism for retrieving
some object that exists as a sub-component of a larger object that is managed
by the DataONE infrastructure.q hh≤hhh hKh"}qÀ(h$]h%]h&]h']h)]uh+K'h,hh]qÃh5Xª���So a "selector service" is implemented by a node as a mechanism for retrieving
some object that exists as a sub-component of a larger object that is managed
by the DataONE infrastructure.qÕÖÅqŒ}qœ(hh hh»ubaubeubh)Åq–}q—(hU�hhhhh h!h"}q“(h$]h%]h&]h']q”hah)]q‘hauh+K-h,hh]q’(h.)Åq÷}q◊(hX���Implications for Implementationqÿhh–hhh h2h"}qŸ(h$]h%]h&]h']h)]uh+K-h,hh]q⁄h5X���Implications for Implementationq€ÖÅq‹}q›(hhÿhh÷ubaubha)Åqfi}qfl(hU�hh–hhh hdh"}q‡(hfX���-h']h&]h$]h%]h)]uh+K/h,hh]q·(hh)Åq‚}q„(hXF���Advertisement and discovery of selector services implemented by a nodeq‰hhfihhh hlh"}qÂ(h$]h%]h&]h']h)]uh+Nh,hh]qÊhG)ÅqÁ}qË(hh‰hh‚hhh hKh"}qÈ(h$]h%]h&]h']h)]uh+K/h]qÍh5XF���Advertisement and discovery of selector services implemented by a nodeqÎÖÅqÏ}qÌ(hh‰hhÁubaubaubhh)ÅqÓ}qÔ(hX;���Implementation overhead (processing, etc) for a Member Nodeqhhfihhh hlh"}qÒ(h$]h%]h&]h']h)]uh+Nh,hh]qÚhG)ÅqÛ}qÙ(hhhhÓhhh hKh"}qı(h$]h%]h&]h']h)]uh+K0h]qˆh5X;���Implementation overhead (processing, etc) for a Member Nodeq˜ÖÅq¯}q˘(hhhhÛubaubaubhh)Åq˙}q˚(hX0���Representation formats for extracted informationq¸hhfihhh hlh"}q˝(h$]h%]h&]h']h)]uh+Nh,hh]q˛hG)Åqˇ}r���(hh¸hh˙hhh hKh"}r��(h$]h%]h&]h']h)]uh+K1h]r��h5X0���Representation formats for extracted informationr��ÖÅr��}r��(hh¸hhˇubaubaubhh)År��}r��(hXE���Access control policies (managed parent object controls everything?)
hhfihhh hlh"}r��(h$]h%]h&]h']h)]uh+Nh,hh]r	��hG)År
��}r��(hXD���Access control policies (managed parent object controls everything?)r��hj��hhh hKh"}r
��(h$]h%]h&]h']h)]uh+K2h]r��h5XD���Access control policies (managed parent object controls everything?)r��ÖÅr��}r��(hj��hj
��ubaubaubeubeubeubahU�Utransformerr��NU
footnote_refsr��}r��Urefnamesr��}r��Usymbol_footnotesr��]r��Uautofootnote_refsr��]r��Usymbol_footnote_refsr��]r��U	citationsr��]r��h,hUcurrent_liner��NUtransform_messagesr ��]r!��Ureporterr"��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_urlr0��Uhttps://tools.ietf.org/html/r1��U	tracebackr2��àUpep_referencesr3��NUstrip_commentsr4��NU
toc_backlinksr5��Uentryr6��U
language_coder7��Uenr8��U	datestampr9��NUreport_levelr:��KU_destinationr;��NU
halt_levelr<��KU
strip_classesr=��Nh2NUerror_encoding_error_handlerr>��Ubackslashreplacer?��Udebugr@��NUembed_stylesheetrA��âUoutput_encoding_error_handlerrB��UstrictrC��U
sectnum_xformrD��KUdump_transformsrE��NU
docinfo_xformrF��KUwarning_streamrG��NUpep_file_url_templaterH��Upep-%04drI��Uexit_status_levelrJ��KUconfigrK��NUstrict_visitorrL��NUcloak_email_addressesrM��àUtrim_footnote_reference_spacerN��âUenvrO��NUdump_pseudo_xmlrP��NUexpose_internalsrQ��NUsectsubtitle_xformrR��âUsource_linkrS��NUrfc_referencesrT��NUoutput_encodingrU��Uutf-8rV��U
source_urlrW��NUinput_encodingrX��U	utf-8-sigrY��U_disable_configrZ��NU	id_prefixr[��U�U	tab_widthr\��KUerror_encodingr]��UUTF-8r^��U_sourcer_��hUgettext_compactr`��àU	generatorra��NUdump_internalsrb��NUsmart_quotesrc��âUpep_base_urlrd��U https://www.python.org/dev/peps/re��Usyntax_highlightrf��Ulongrg��Uinput_encoding_error_handlerrh��jC��Uauto_id_prefixri��Uidrj��Udoctitle_xformrk��âUstrip_elements_with_classesrl��NU
_config_filesrm��]rn��Ufile_insertion_enabledro��àUraw_enabledrp��KU
dump_settingsrq��NubUsymbol_footnote_startrr��K�Uidsrs��}rt��(hhhh9hh≤hh–uUsubstitution_namesru��}rv��h h,h"}rw��(h$]h']h&]Usourcehh%]h)]uU	footnotesrx��]ry��Urefidsrz��}r{��ub.