Getting started: what to plan for as you implement ARKs

To start using ARKs you need:

  1. A Name Assigning Authority Number (NAAN) to indicate your organization.
  2. A minter: a means of generating unique strings for resource names, tracking which strings have already been assigned to resources, and managing metadata for those resources.
  3. A resolver: a means of redirecting a persistent URL to the current URL where a resource resides.
  4. A plan: you should consider whether you need to use certain ARK features such as suffix pass-through or ARK shoulders, either now or in the future.

Get a Name Assigning Authority Number (NAAN)

Please fill out the NAAN request form if you are interested in generating and using ARKs for your resources.  Consider how broadly you want to define your organization, is it just your lab or library?  Or is it meant to serve the entire organization?  If you work in a complex organization, don’t assume that other units won’t also need a NAAN for minting ARKs.

Decide what ARK features you need

As you prepare to use ARKs for the first time, consider both the current and future potential use cases for ARKs in your organization.  Considering future uses of ARKs may change, for example, whether you choose to implement a shoulder for the first set of resources you assign ARKs to, or what metadata standard you will use.

Also consider some of the features that related ARK systems use, such as N2T’s suffix passthrough feature. If your resources include many objects with a large number of files per object, you may want to plan to use N2T in your implementation, or use a service provider such as EZID that uses N2T.

Choose (or build) an ARK system

Because ARKs are a free, open system, there are many choices for implementing them, from ARK service providers and repositories with built-in support for ARKs to plug-ins and microservices you can integrate with your own repository or system. The Resources area of this site provides links to available tools and to technical documentation if you choose to build your own local ARK support system.

Issues to consider

  • Is there a service provider that I’m eligible to use? (Note that while ARKs are free, service providers will like charge a fee for the service)
  • If selecting a repository system, does that system support ARKs?
  • Does my organization have a commitment to providing developer support and access to servers for running a Noid system?
  • Is there a Noid system available in the programming language(s) we work with?