Skip to content

Commit b81386a

Browse files
authored
Merge pull request #43 from jkunze/main
classic to modern ARKs, except (mostly) in the FAQs
2 parents b506662 + 8dbabde commit b81386a

16 files changed

+77
-95
lines changed
Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
https://example.org/ark:12345/x54xz321/s3/f8.05v.tiff
2+
\_________________/ \__/\___/ \______/\____/\_______/
3+
| | | | | |
4+
| ARK Label | | Sub-parts Variants
5+
| | |
6+
Name Mapping Authority (NMA) | Assigned Name
7+
|
8+
Name Assigning Authority Number (NAAN)
9+
{: .bg-secondary-subtle }
10+

_config.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@ num_arks: "8.2 billion"
2727
num_dois: "257 million"
2828

2929
map_ark_orgs: "https://www.google.com/maps/d/viewer?mid=1ALGeRERECL36f2pg7pqrthUYNmuU43UM"
30-
ark_spec_current: "https://www.ietf.org/archive/id/draft-kunze-ark-41.html"
30+
ark_spec_current: "https://datatracker.ietf.org/doc/draft-kunze-ark/"
3131
naan_form_url: "https://docs.google.com/forms/d/e/1FAIpQLSf_847hNXtLGikR-XeDy1uT1AKd24DpHnt5UQh2i8ORRu7u-w/viewform"
3232
shoulder_form_url: "https://docs.google.com/forms/d/10J2VxsaeQG-IpkqZ6wpqAKqt8hYnMSf4bxdL8ktI-to/"
3333

content/_pages/about-ark-features.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -140,9 +140,9 @@ With inflection features, each ARK URL should be able to provide 3 things:
140140

141141
To see inflections in action, visit the following links:
142142

143-
- <https://texashistory.unt.edu/ark:/67531/metapth346793/>
144-
- <https://texashistory.unt.edu/ark:/67531/metapth346793/?>
145-
- <https://texashistory.unt.edu/ark:/67531/metapth346793/??>
143+
- <https://texashistory.unt.edu/ark:67531/metapth346793/>
144+
- <https://texashistory.unt.edu/ark:67531/metapth346793/?>
145+
- <https://texashistory.unt.edu/ark:67531/metapth346793/??>
146146

147147
The metadata returned is determined by the metadata schema and maintenance
148148
decisions you made when implementing ARKs.

content/_pages/about-ark-naans-and-systems.md

Lines changed: 7 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -21,15 +21,7 @@ solution.
2121
A NAAN is a number that uniquely identifies your institution, and appears near
2222
the start of the ARKs that your organization produces.
2323

24-
https://example.org/ark:/12345/x54xz321/s3/f8.05v.tiff
25-
\_________________/ \__/ \___/ \______/\____/\_______/
26-
| | | | | |
27-
| ARK Label | | Sub-parts Variants
28-
| | |
29-
Name Mapping Authority (NMA) | Assigned Name
30-
|
31-
Name Assigning Authority Number (NAAN)
32-
{: .bg-secondary-subtle }
24+
{% include content/anatomy2.html %}
3325

3426
The NAAN part of an ARK, following the “ark:” label, uniquely identifies the
3527
organization that assigned the Name part of the ARK. Often the initial access
@@ -106,15 +98,7 @@ The sections below describe the Noid software in more detail.
10698

10799
### Minting name strings
108100

109-
https://example.org/ark:/12345/x54xz321/s3/f8.05v.tiff
110-
\_________________/ \__/ \___/ \______/\____/\_______/
111-
| | | | | |
112-
| ARK Label | | Sub-parts Variants
113-
| | |
114-
Name Mapping Authority (NMA) | Assigned Name
115-
|
116-
Name Assigning Authority Number (NAAN)
117-
{: .bg-secondary-subtle }
101+
{% include content/anatomy2.html %}
118102

119103
The “assigned name” in an ARK is the part of the ARK string that your
120104
organization is responsible for making unique. Appended to your NAAN, it
@@ -179,7 +163,7 @@ Most ARKs are created by organizations that advertise (“publish”) them based
179163
at their own resolvers. For example, this ARK was published based at the
180164
ark.bnf.fr resolver:
181165

182-
https://ark.bnf.fr/ark:/12148/btv1b8449691v/f29
166+
https://ark.bnf.fr/ark:12148/btv1b8449691v/f29
183167

184168
Having to run and maintain your own resolver is the cost of complete autonomy.
185169
Using your own resolver also lets you do branding via the hostname, the
@@ -201,7 +185,7 @@ Suffix passthrough is a feature of the N2T resolver that allows you to assign
201185
a single identifier to large complex objects with many files while still being
202186
able to refer to each distinct file.
203187

204-
Suppose you have a registered ARK, https://n2t.net/ark:/12345/6789, that
188+
Suppose you have a registered ARK, https://n2t.net/ark:12345/6789, that
205189
redirects to the web server page,
206190

207191
https://a.example.org/dataset542
@@ -216,9 +200,9 @@ What suffix passthrough does is to let your one registered ARK act as if you
216200
had also registered these three ARKs below, which would resolve to the pages
217201
above, respectively:
218202

219-
https://n2t.net/ark:/12345/6789/volume3
220-
https://n2t.net/ark:/12345/6789/volume3/part2
221-
https://n2t.net/ark:/12345/6789/volume3/part2.pdf
203+
https://n2t.net/ark:12345/6789/volume3
204+
https://n2t.net/ark:12345/6789/volume3/part2
205+
https://n2t.net/ark:12345/6789/volume3/part2.pdf
222206

223207
In this case, suffix passthrough saved your having to maintain registrations
224208
for three more pages. In fact, it works for an unlimited number of pages. You

content/_pages/about-ark-namespaces.md

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -27,10 +27,10 @@ be further extended by a shoulder.
2727
<div class="table-responsive" markdown=1>
2828
| ***Set of all ARKs starting*** | ***Associated namespace*** | ***Example ARK in that namespace*** |
2929
|--------------------------------|----------------------------------------|-------------------------------------|
30-
| ark:/ | All ARKs | ark:/99999/fk4gt2m |
31-
| ark:/12345/ | ARKs under the NAAN 12345 | ark:/12345/p987654 |
32-
| ark:/12345/x5 | ARKs under the 12345/x5 *shoulder* | ark:/12345/x5wf6789 |
33-
| ark:/12345/x5wf6789/ | ARKs under the 12345/x5wf6789 *object* | ark:/12345/x5wf6789/c2/s4.pdf |
30+
| ark: | All ARKs | ark:99999/fk4gt2m |
31+
| ark:12345/ | ARKs under the NAAN 12345 | ark:12345/p987654 |
32+
| ark:12345/x5 | ARKs under the 12345/x5 *shoulder* | ark:12345/x5wf6789 |
33+
| ark:12345/x5wf6789/ | ARKs under the 12345/x5wf6789 *object* | ark:12345/x5wf6789/c2/s4.pdf |
3434
{: .table .table-striped .table-hover }
3535
</div>
3636

@@ -61,12 +61,12 @@ non-overlapping namespaces.
6161
Technically, a *shoulder* is a sub-namespace under a NAAN. It is the set of all
6262
ARKs starting with a short, fixed extension to the NAAN. For example, in
6363

64-
ark:/12345/x5wf6789/c2/s4.pdf
64+
ark:12345/x5wf6789/c2/s4.pdf
6565
{: .bg-secondary-subtle }
6666

6767
the shoulder, /x5, extends the NAAN, 12345. The short designation, /x5, isn’t
6868
very unique, so the fully qualified, globally unique designation should be
69-
used (for example, ark:/12345/x5). There is [more information about
69+
used (for example, ark:12345/x5). There is [more information about
7070
implementing shoulders].
7171

7272
## ARK shoulder as namespace

content/_pages/about-ark-overview.md

Lines changed: 6 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -59,25 +59,25 @@ The type of a URL-based identifier can often be spotted by how the URL starts,
5959
but that’s not true for ARKs, which are spotted by an internal “ark:” label
6060
that comes after the URL hostname. For example, here is an ARK,
6161

62-
https://n2t.net/ark:/67531/metadc107835/
62+
https://n2t.net/ark:67531/metadc107835/
6363

6464
that gets you to a dissertation. ARKs are high-functioning identifiers that
6565
lead you to things and to descriptions of those things. For example, adding
6666
‘?’ on the end of the above ARK should get you to its description:
6767

68-
https://n2t.net/ark:/67531/metadc107835/?
68+
https://n2t.net/ark:67531/metadc107835/?
6969

7070
A common internet **identifier** is a URL, or part of a URL. For example, this
7171
core ARK identifier,
7272

73-
ark:/12148/btv1b8449691v/f29
73+
ark:12148/btv1b8449691v/f29
7474

7575
appears inside two different URLs (Uniform Resource Locators, also known as
7676
web links or web addresses):
7777

78-
https://ark.bnf.fr/ark:/12148/btv1b8449691v/f29
78+
https://ark.bnf.fr/ark:12148/btv1b8449691v/f29
7979

80-
https://n2t.net/ark:/12148/btv1b8449691v/f29
80+
https://n2t.net/ark:12148/btv1b8449691v/f29
8181

8282
ARKs are especially good at being **persistent identifiers** (PIDs).
8383

@@ -127,14 +127,7 @@ the object.
127127

128128
Here is a diagrammed example:
129129

130-
https://example.org/ark:/12345/x54xz321/s3/f8.05v.tiff
131-
\_________________/ \__/ \___/ \______/\____/\_______/
132-
| | | | | |
133-
| ARK Label | | Sub-parts Variants
134-
| | |
135-
Name Mapping Authority (NMA) | Assigned Name
136-
|
137-
Name Assigning Authority Number (NAAN)
130+
{% include content/anatomy2.html %}
138131

139132
*A peek at ARK anatomy. You can spot an ARK by its internal* *<span
140133
class="has-inline-color" style="color:#c88c0a">label</span>.*

content/_pages/about-ark-shoulders-faq-en.md

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@ By sending an email to the [ARK mailing list](https://groups.google.com/forum/#
2121

2222
To understand this FAQ you should first read this [introduction to shoulders]({{ site.baseurl }}/about/ark-faq-en#shoulder). Briefly, a *shoulder* is a sub-[namespace]({{ site.baseurl }}/about/ark-namespaces) under a NAAN. This sub-namespace is identified by a short, fixed alphanumeric extension to the NAAN. For example, in
2323

24-
ark:/12345/x5wf6789/c2/s4.pdf
24+
ark:12345/x5wf6789/c2/s4.pdf
2525

2626
the shoulder, `/x5`, extends the NAAN, `12345`.
2727

@@ -39,35 +39,35 @@ Some more detail is given in response to the next question.
3939

4040
Many people make the initial mistake of adding a "/" between the end of the shoulder and the rest of the ARK, for example,
4141

42-
ark:/12345/x5/wf6789/c2/s4.pdf
43-
^ WRONG!
42+
ark:12345/x5/wf6789/c2/s4.pdf
43+
^ WRONG!
4444

4545
It's natural to want to visually mark the shoulder's end, but it's prohibited by ARK rules.
4646

4747
Why? The reason is that adding a "`/`" after "`/x5`" makes two false assertions:
4848

49-
1. that `ark:/12345/x5` also names an actual object, and
50-
2. that the original object (`ark:/12345/x5/wf6789/c2/s4.pdf`) is contained in it.
49+
1. that `ark:12345/x5` also names an actual object, and
50+
2. that the original object (`ark:12345/x5/wf6789/c2/s4.pdf`) is contained in it.
5151

5252
Adding a "`/`" might make the shoulder boundary obvious to in-house ARK administrators, but recall that they are trained specialists. The end user has no business knowing your internal operational details, and if they did you would risk their trying to hold you to account for their inferences (eg, about consistent support levels across objects sharing the apparent containing object). Less transparency about administrative structure hides messy details and can save you user-support time in the end.
5353

5454
In fact, in-house ARK administrators always know where the shoulder ends, provided it was chosen using the "first-digit convention". A *primordinal shoulder* is a sequence of one or more [betanumeric]({{ site.baseurl }}/about/ark-faq-en#betanumeric) characters ending in a digit. This means that the shoulder is all letters (often just one) after the NAAN up to and including the first digit encountered after the NAAN. Another advantage of primordinal shoulders is that there is an infinite number of them possible under any NAAN.
5555

5656
### **How do I implement a shoulder?**
5757

58-
There are different ways to implement a shoulder. Fundamentally, a shoulder is the deliberate practice of assigning ARKs that start with a particular extension to a NAAN. You could implement two shoulders simply by assigning ARKs beginning `ark:/12345/x8` only to apples and ARKs beginning `ark:/12345/x9` only to oranges.
58+
There are different ways to implement a shoulder. Fundamentally, a shoulder is the deliberate practice of assigning ARKs that start with a particular extension to a NAAN. You could implement two shoulders simply by assigning ARKs beginning `ark:12345/x8` only to apples and ARKs beginning `ark:12345/x9` only to oranges.
5959

60-
If you use a service that stores ARKs in the [N2T.net]({{ site.baseurl }}/about/n2t-global-resolver) resolver, such as [ezid.cdlib.org](https://ezid.cdlib.org/), then you can supplement that practice in two different ways. First, you could take advantage of N2T's [suffix passthrough](https://ezid.cdlib.org/learn/suffix_passthrough) feature by creating a short ARK, such as [ark:/99152/p0](https://n2t.net/ark:/99152/p0), that looks and acts like a shoulder. To make it work, it suffices for that ARK to redirect to a server URL that can handle all the ARKs on that shoulder (eg, the Smithsonian does this), and you wouldn't have to store or manage any other ARKs on that shoulder at N2T. Second, the EZID service (and perhaps others), associates a shoulder with a [minter]({{ site.baseurl }}/about/ark-faq-en#betanumeric) service and an API access point.
60+
If you use a service that stores ARKs in the [N2T.net]({{ site.baseurl }}/about/n2t-global-resolver) resolver, such as [ezid.cdlib.org](https://ezid.cdlib.org/), then you can supplement that practice in two different ways. First, you could take advantage of N2T's [suffix passthrough](https://ezid.cdlib.org/learn/suffix_passthrough) feature by creating a short ARK, such as [ark:99152/p0](https://n2t.net/ark:99152/p0), that looks and acts like a shoulder. To make it work, it suffices for that ARK to redirect to a server URL that can handle all the ARKs on that shoulder (eg, the Smithsonian does this), and you wouldn't have to store or manage any other ARKs on that shoulder at N2T. Second, the EZID service (and perhaps others), associates a shoulder with a [minter]({{ site.baseurl }}/about/ark-faq-en#betanumeric) service and an API access point.
6161

6262
A completely different kind of shoulder "creation" step is needed to implement a shoulder under one of the few *shared* NAANs (below).
6363

6464
### **Is there a quick way to get started creating test ARKs?**
6565

66-
Yes. Instead of reserving a 99999 shoulder, if your organization already has its own NAAN, you can immediately create and use a "quick test ARK". This is an ARK that starts with ark:/99999/9NNNNN\_, where NNNNN represents the NAAN (preceded by '9' and followed by '\_'). There is no need to register a quick test namespace since it is automatically set aside for each NAAN. As with any prefix, there is an infinite number of possible test ARKs in each NAAN's quick test namespace. Two versions of an example quick test ARK belonging to the BnF (NAAN 12148\) are
66+
Yes. Instead of reserving a 99999 shoulder, if your organization already has its own NAAN, you can immediately create and use a "quick test ARK". This is an ARK that starts with ark:99999/9NNNNN\_, where NNNNN represents the NAAN (preceded by '9' and followed by '\_'). There is no need to register a quick test namespace since it is automatically set aside for each NAAN. As with any prefix, there is an infinite number of possible test ARKs in each NAAN's quick test namespace. Two versions of an example quick test ARK belonging to the BnF (NAAN 12148\) are
6767

68-
https://ark.bnf.fr/ark:/99999/912148_testxyz
68+
https://ark.bnf.fr/ark:99999/912148_testxyz
6969

70-
https://n2t.net/ark:/99999/912148_testxyz
70+
https://n2t.net/ark:99999/912148_testxyz
7171

7272
Note that N2T.net is configured to forward any quick test ARK it receives (second version above) to the appropriate local resolver (first version).
7373

content/_pages/about-comparing-arks-and-other-identifiers.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -59,7 +59,7 @@ These are the major persistent identifier types (or schemes).
5959
They also have very similar structure, as seen in the examples below,
6060
consisting of four parts:
6161

62-
https://n2t.net/ark:/99999/12345
62+
https://n2t.net/ark:99999/12345
6363
https://doi.org/10.99999/12345
6464
https://handle.net/10.99999/12345
6565
https://purl.org/99999/12345

content/_pages/about-identifier-concepts-and-conventions.md

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -54,7 +54,7 @@ branded plastic key-cover.
5454
: : : : : :
5555
v v v v v v
5656
|..........................|....+.....|...|......|.|
57-
https://OwlBike.example.org/ark:/13030/tqb3kh97gh8w <---- Example Key
57+
https://OwlBike.example.org/ark:13030/tqb3kh97gh8w <---- Example Key
5858
doi:10.30/tqb3kh97gh8w with parallel
5959
hdl:13030/tqb3kh97gh8w parts in other
6060
urn:13030:tqb3kh97gh8w id schemes.
@@ -116,7 +116,7 @@ An easy way to extend the NAAN with a shoulder so that one will always have an
116116
unlimited supply of non-conflicting shoulders is to adhere to the
117117
“primordinal” (first digit) convention. In this case each shoulder is a string
118118
of one of more letters ending in a digit (inclusive). For example,
119-
“ark:/13030/b3th89n” would have fixed shoulder prefix “b3”, and the 13030 NAAN
119+
“ark:13030/b3th89n” would have fixed shoulder prefix “b3”, and the 13030 NAAN
120120
could then enjoy an infinite set of potential future shoulders, including,
121121

122122
b3, c3, d3, ...
@@ -242,10 +242,10 @@ scheme permits formal disclosure of hierarchy and equivalence in name
242242
extensions; if used in an ARK, ‘/’ indicates containment and ‘.’ indicates
243243
variation. For example,
244244

245-
ark:/13030/tqb3kh8z/ # names an object containing...
246-
ark:/13030/tqb3kh8z/chap3 # that in turn contains...
247-
ark:/13030/tqb3kh8z/chap3/fig5.jpg # that is a variant of...
248-
ark:/13030/tqb3kh8z/chap3/fig5.pdf # and so forth
245+
ark:13030/tqb3kh8z/ # names an object containing...
246+
ark:13030/tqb3kh8z/chap3 # that in turn contains...
247+
ark:13030/tqb3kh8z/chap3/fig5.jpg # that is a variant of...
248+
ark:13030/tqb3kh8z/chap3/fig5.pdf # and so forth
249249
{: .bg-secondary-subtle }
250250

251251
## The “NCDA” check character convention

content/_pages/about-running-minters-and-resolvers.md

Lines changed: 11 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -25,8 +25,8 @@ Another unique feature of ARKs is that hyphens (‘-‘) may appear but are
2525
*identity inert*, meaning that strings that differ only by hyphens are
2626
considered identical; for example, these strings
2727

28-
ark:/12345/141e86dc-d396-4e59-bbc2-4c3bf5326152
29-
ark:/12345/141e86dcd3964e59bbc24c3bf5326152
28+
ark:12345/141e86dc-d396-4e59-bbc2-4c3bf5326152
29+
ark:12345/141e86dcd3964e59bbc24c3bf5326152
3030
{: .bg-secondary-subtle }
3131

3232
identify the same thing. The reason for this feature is that text formatting
@@ -61,7 +61,7 @@ vowels helps avoid accidentally creating words that users can misconstrue.
6161

6262
Regarding assignment, one common strategy is to leverage legacy identifiers.
6363
For example, a museum moth specimen number cd456f9_87 might be advertised
64-
under the ark:/12345/cd456f9_87. Some legacy identifiers may need to be
64+
under the ark:12345/cd456f9_87. Some legacy identifiers may need to be
6565
altered in view of ARK character restrictions. The second common strategy is
6666
to make up entirely new strings for your ARKs. In this case it is important to
6767
consider whether to make them *opaque* or non-opaque (or a bit of both).
@@ -171,15 +171,19 @@ called Template Handles) for any identifier types.
171171

172172
The URL (https or http) form of the ARK is preferred, for example,
173173

174-
https://n2t.net/ark:/99166/w66d60p2
174+
https://n2t.net/ark:99166/w66d60p2
175175
{: .bg-secondary-subtle }
176176

177177
An ARK meant for external use is generally advertised (released, published,
178178
disseminated) in this way in order to be an *actionable* *identifier*. If a
179-
more compact visual display of an ARK is needed, it should be hyperlinked; for
180-
example, a compact display of an HTML hyperlink can be achieved with
179+
more compact visual display of an ARK is needed, it should be hyperlinked,
180+
as in
181181

182-
<a href="https://n2t.net/ark:/99166/w66d60p2"> ark:/99166/w66d60p2 </a>
182+
&nbsp;&nbsp;&nbsp;&nbsp; <a href="https://n2t.net/ark:99166/w66d60p2"> ark:99166/w66d60p2 </a>
183+
184+
which was achieved with the HTML hyperlink
185+
186+
<a href="https://n2t.net/ark:99166/w66d60p2"> ark:99166/w66d60p2 </a>
183187
{: .bg-secondary-subtle }
184188

185189
An important decision is whether your URL-based ARKs will use the hostname of

0 commit comments

Comments
 (0)