Child pages
  • Identifier Conventions

Versions Compared


  • This line was added.
  • This line was removed.
  • Formatting was changed.

Identifier Concepts and Practices at the California Digital Library

Draft of 2011.04.29

This document specifies identifier-related terms, conventions, and practices as observed at the California Digital Library (CDL) in support of the following roles.


The terminology that follows is based on the metaphor of a key (or name or identifier) in the context of locksmithing jargon.

Code Block
         _____    slips on    _____
     .-'  ,_,'-..  ---->  .-'     '-.
    /    (o,o)  \\       /           \
   :     {`"'}  ||      :             `____
  /  .-. -"-"-  ||     /  .-.              '--^.   .^--^.        .^.
 {  (   )       ||    {  (   )                  `-'      `-^--^-'   '--^.
  \  `-'   _o   ||     \  '-'         ===================================}
   :     _|<,_  ||      :             __________________________________/
    \   (*)/(*) /        \           /
     `-._____.-'          `-._____.-'
           ^                    ^        ^                ^            ^
           :                    :        :                :            :
         Cover=               Bow=    Shoulder  .------ Blade         Tip
          NMA             Scheme+NAAN    :      :  .-------------------'
           :                  :    :     :      :  :
           v                  v    v     v      v  v
 |..........................|....+.....|...|......|.|   <----  Example Key
                              doi:10.30/tqb3kh97gh8w         with parallel
                              hdl:13030/tqb3kh97gh8w        parts in other
                              urn:13030:tqb3kh97gh8w          id schemes.
    Name Mapping Authority       Base identifier      ...


Multiple serial and simultaneous "name mapping" (hosting) arrangements are common, but some NMAs are meant to be long-term stable, including,, and


In general, a Name Mapping Authority (NMA) can be a starting place for internet resolution, an ending place for it, or both.  The main requirement for being an NMA for an object is being able to take a request associated with its identifier and do something useful with it (to "map" it to a practical function), such as providing access to the object or its metadata, or forwarding the request to another NMA.  Often an NMA will provide object access for some requests and forwarding services for others.

A broadly helpful practice is for NMAs to forward completely unknown identifier requests to a root resolver such as, which can work with many identifier scheme (described below).  With very little burden to the original NMA, this practice increases the chances that resolution will be successful no matter where the user starts it.

ARKs, URLs, and PURLs use manifest, scheme-agnostic redirecting HTTP servers as NMAs.  The DOI, Handle, and URN schemes are each designed to use an implicit, scheme-specific root resolver (NMA) with its own protocol.  Resolution in all these cases relies on a final HTTP access.

N2T (Name-to-Thing) resolver

The N2T (Name-to-Thing) resolver is rooted at and administered by the California Digital Library.  It resolves ARKs, DOIs, Handles, LSIDs, LSRNs, and some classes of URNs, and we plan to expand its range of identifier types.  The EZID service, which populates a portion of the N2T resolver database, can be used to create and manage ARKs and DOIs, and we plan to expand its range as well.

N2T was originally designed for global resolution of ARK identifiers, but it is general enough to apply to identifiers from any scheme.  It's NAAN mapping mechanism is functionally equivalent to and much simpler than the DOI, Handle, and URN resolution mechanisms.


Many of the terms in this document serve semantic opacity, which is useful in creating identifiers that age and travel well.  Opacity is often balanced by the insertion of hints in replaceable appendages to the base, such as NMA branding before it and extensions (after it) that suggest current service offerings.


One useful check character convention, called "Noid1", uses exactly one check character that appears at the tip of the blade, in other words, as the last character of the base identifier.  It also uses the Noid1 algorithm ( ), which guarantees the base identifier against the most common transcription errors: transposition of two adjacent characters and single character errors.  Noid1 does not protect either the hostname or any extensions.  For example, in the identifier,

Code Block