Glossary
========

.. glossary::
   :sorted:

   API

     Application Programming Interface. Software interacts with libraries,
     applications, and systems through APIs they expose. See also :doc:`apis/index`.

   archived

     Refers to a boolean property in System Metadata which when set to true,
     indicates that the object is in an archived state. Conceptually, this
     means that no further derivatives may be made from this object, it is at
     the terminus of its version lineage. Technically, this means that the
     object is removed from search indexes and the update method will fail
     when applied to the object, other properties such as access control and
     ownership information are unchanged. This is enforced by the
     Coordinating Nodes and expected of Member Nodes. Compare with
     :term:`obsoleted`.

   authentication

     Authentication is the process of verifying a claim made by a subject that
     it should be allowed to act on behalf of a given principal (person,
     computer, process, etc.). Authentication in DataONE is described in
     :doc:`design/UseCases/12_uc`.
  
   authorization

     The process of verifying that a subject has permission to access specific
     resources or perform specific actions. Authorization in DataONE is
     described in :doc:`design/UseCases/13_uc`.

   Authoritative Member Node

     Recorded in :term:`SystemMetadata` for an object, the Authoritative
     Member Node has all the rights of the :term:`rightsHolder` to maintain
     and curate the object, including making any changes necessary.

   charset

     An element in system metadata that aligns with the `IANA Character
     Sets<IANA_CHARS>`_ specification. See :doc:`design/what_is_it` for more
     information.

   checksum

     A string representing the computed hash of an object using an algorithm
     supported by the DataONE infrastructure (MD5 or SHA-1). Checksums are
     used to assist with the bit-level preservation of content.

   cicore
   CICore

     Refers to the essential, core components of the DataONE
     cyberinfrastructure. This includes the :term:`Member Node`\s,
     :term:`Coordinating Node`\s, and the :term:`Investigator Toolkit`
     components.

   CN
   Coordinating Node
   Coordinating Nodes

     One of at least three nodes in the DataONE cyberinfrastructure that is
     responsible for maintaining a complete collection of all :term:`science
     metadata`, all :term:`system metadata`, a record of the location of all
     objects stored in the :term:`DataONE` system, and provides mechanisms for
     search and retrieval of all content. Coordinating Nodes store all
     original copies of :term:`science metadata`. All Coordinating Node
     content is replicated between other Coordinating Nodes. Coordinating
     Nodes drive the replication of content between Member Nodes.

   Coordinating Node Replication

     Refers to the process by which content that appears on any one
     Coordinating Node is mirrored to all other Coordinating Nodes. See also
     :term:`Member Node synchronization` and :term:`data replication`.

   data
   Data
   data object
   Data object

     Typically refers to :term:`science data`. Where ambiguity between the
     science data and another form of data may be interpreted or implied, the
     full term "science data" should be used.

   data package

     A data package is a set of one or more :term:`data` objects and
     :term:`science metadata` objects that together represent a scientifically
     useful unit of information. Data packages are defined in DataONE using
     :term:`resource maps`.

   data replication

     The transfer of content between Member Nodes as directed by the
     Coordinating Nodes. Also referred to as just "replication".

   DataONE

     An NSF sponsored project implementing cyberinfrastructure according to
     guidelines indicated in the NSF `DataNet RFP`_.

   detail code

     Part of an exception that represents an error condition in the DataONE
     APIs. The error detail code is specific to an API method and is intended
     to be only useful to the implementors of the service that generates an
     exception to help identify the location in the code where the exception
     originated. See also :mod:`Exceptions`.

   extension

     In the context of a :term:`filename` or within
     :class:`v2_0.Types.ObjectFormat`. refers to the suffix of a filename
     appearing after the final period (.) in the file name.

   filename
   fileName

     The name of a file when save to file system media. See
     :doc:`design/what_is_it` for more information the use of fileName in
     DataONE.

   formatId

     An element in :term:`System Metadata` that is used to indicate the type
     of content represented by the digital object. The complete list of
     formats can be retrieved through the :func:`CNCore.listFormats`
     operation.

   Group
   group

     Group represents metadata about a :term:`Subject` that represents a
     collection of other Subjects. Groups provide a convenient mechanism to
     express access rules for certain roles that are not necessarily tied to
     particular :term:`principals` over time.

   identifier
   pid
   PID
   primary identifier
   persistent identifier

     Persistent Unique Identifier. A string of printable Unicode characters
     that uniquely identifies an object within the DataONE infrastructure. See
     :class:`Types.Identifier`

   identity 

     Refers to the properties of a user or :term:`principal` that enables the
     DataONE system to distinguish them from other users.

   ITK
   Investigator Toolkit

     Software libraries, applications, and other tools that enable interaction
     with the DataONE system, typically by enabling storage of content on a
     Member Node and/or by enabling search and retrieval of content from the
     DataONE infrastructure.

   mediaType
   media type
   media-type

     Formerly :term:MIME-type, an entry in the `IANA Media Type<IANA_MEDIA>`_
     registry. Passed in the HTTP *Content-Type* header for HTTP GET and HEAD
     responses to provide information about the resource for the consumer. See
     :doc:`design/what_is_it` for more information on it's use in DataONE.

   MN
   Member Node
   Member Nodes

     A data holding node that implements all or the essential elements of the
     member mode :term:`API`\s (see :doc:`apis/MN_APIs`). Member Nodes accept
     content from users and may store content replicated from other member
     nodes as directed by a Coordinating Node.

   metadata

     Data describing data. There are currently two distinct forms of metadata
     managed by DataONE, :term:`science metadata` and :term:`system metadata`.

   MIME
   MIME-Type

     Multipurpose Internet Mail Extensions Type. The preferred name is now
     "media-type".

   node event log

     The node event log is implemented on Coordinating Nodes and Member Nodes
     and should record all object access and manipulation events.

   Registry
   node registry
   Node Registry

     A list of nodes participating in DataONE maintained by Coordinating
     Nodes. Entries in node registry may be retrieved through the
     :func:`CNCore.listNodes` method of a Coordinating Node.

   obsoleted

     An object is in an obsoleted state when the obsoletedBy property of its
     system metadata contains an entry to a newer revision of the object. The
     system metadata of the newer object will contain an obsoletes entry in
     its system metadata, which contains the PID of the obsoleted object. An
     object may obsolete another object and be obsoleted as well, indicating
     that the object has bother older and newer revisions of itself. Obsoleted
     content will continue to be discoverable through the search index, though
     not by default.


   Origin Member Node 

     The :term:`Member Node` where an object was first registered with the
     DataONE infrastructure.

   principal
   principals

     A principal refers to the entity (e.g. a person) that is assigned one or
     more :term:`subjects`.

   Public
   public user
   Public User

     The default user identity used when a service is called without supplying
     user credentials. The public user SHOULD never have write access to any
     services and MAY be limited access to some services in addition to the
     usual restrictions imposed by access control. The public user
     :term:`subject` can be any of "Public", "AuthenticatedUser",
     "VerifiedUser".

   replication

     See :term:`Coordinating Node replication` or :term:`data replication`.

   replication target

     A Member Node that can be directed by a Coordinating Node to retrieve
     content from another Member node to support the process of
     :term:`replication`.

   resource map
   resource maps
   Resource map
   Resource Map

     An OAI-ORE RDF document serialized in RDF/XML format that is used to
     indicate the relationships between :term:`data` and :term:`science
     metadata` in a :term:`data package`. Resource maps have the
     :term:`formatId` of ``http://www.openarchives.org/ore/terms``

   rightsHolder
   Rights Holder

     The :term:`Subject` that has full control over the access control rules
     for an object.

   SID
   seriesId
   series identifier
   Series Identifier

     An identifier that may refer to multiple versions of an object. A Series
     Identifier resolves to the latest revision of an object as indicated by the
     obsolescence chain or other revision information. See the document
     :doc:`design/PIDs` for more detail.

   session

     In the context of DataONE, a session refers to the operations that occur
     with a single authentication token.

   science data
   Science data

     Science data that is stored in the DataONE system. See
     :doc:`design/WhatIsData` for a description of what is considered data in
     DataONE. DataONE services always return exact copies of the original data
     as submitted to DataONE.

   science metadata
   Science metadata

     Metadata that describes the data that is replicated across the Member
     Nodes.

   subject
   subjects
   Subject

     Princpals (users) that are a recognized :term:`identity` in the DataONE
     system.

   synchronized
   synchronization
   Member Node synchronization

     The process of updating a :term:`Coordinating Node` with the science and
     system metadata that appears on a :term:`Member Node`. Also referred to
     as just "synchronization".

   sysmeta
   system metadata
   System Metadata
   SystemMetadata

     Metadata that is used internally by the DataONE system to record system
     properties about each object stored in the DataONE system. See
     :class:`Types.SystemMetadata` and :mod:`SystemMetadata`. Also referred to
     as :term:`sysmeta`\.

   tier 1
   Tier 1

     A Member Node that implements the minimal set of programming interfaces
     and operates as a read only, public access repository.

   tier 4
   Tier 4

     A Member Node that implements the full set of programming interfaces, and
     so supports authenticated read and write, and the ability to accept
     copies of content from other Member Nodes under the direction of a
     Coordinating Node.

   token

     An X509 certificate generated by a trusted authority and is used to
     absolutely and unambiguously identify a :term:`principal`.

   verified

     A :term:`Subject` is verified in DataONE after going through a process to
     verify that the stated identity matches with an actual identity for the
     subject.

   whitespace

     Characters that produce no visible output other than influencing the
     spacing of other characters. For example the space character (ASCII 0x20)
     and the tab character (ASCII 0x09) are whitespace characters.

   DN
   Distinguished Name
   X.509 Distinguished Name
  
     TODO
     
     See also :term:`Subject`.


.. _DataNet RFP: http://www.nsf.gov/publications/pub_summ.jsp?WT.z_pims_id=503141&ods_key=nsf07601

.. _IANA_CHARS: http://www.iana.org/assignments/character-sets/character-sets.xhtml

.. _IANA_MEDIA: http://www.iana.org/assignments/media-types/media-types.xhtml