Suffix Passthrough Explained

What is Suffix Passthrough?

Illustration of suffix passing from the end of a submitted ARK to the end of a registered target URL.

Suffix Passthrough (SPT) is a feature that lets you add any suffix to an identifier, and when a user selects ("clicks on") the identifier, the suffix is added to the end of the identifier's location (target) URL. It dramatically reduces the maintenance burden by permitting one identifier to stand in for many identifiers.

The transformation of an identifier into its final location URL is done by a web server called a resolver, and the transformation is called resolution. Typically a web browser uses the resolver to find the final location URL, which it then displays in its location bar. Currently SPT works only for ARK identifiers and only with the Name-to-Thing (N2T) resolver.

Basically, Suffix Passthrough makes every ARK the root of its own "namespace". Any user-added suffix, which is a common way to form sub-object identifiers, will be passed through to the registered target object. For example, a dataset with 10,000 component parts and just this one "ancestor" ARK,

http://n2t.net/ark:/12345/x98765

would effectively allow access to 10,000 ARKs, but only require you to manage the ancestor ARK. Those sub-object ARKs might look like:

http://n2t.net/ark:/12345/x98765/study1/location1/day1.cs
http://n2t.net/ark:/12345/x98765/study1/location3/day19.cs
...
http://n2t.net/ark:/12345/x98765/study92/location18/day96.xlsx

When a user clicks on one, it is submitted to N2T. Failing to find it registered, N2T scans backwards starting from the end of the user-supplied ARK string and stops at the first ancestor ARK that is registered.

The part that was scanned over, stretching from the first registered ancestor ARK to the end of the original string, comprises the suffix.

http://n2t.net/ark:/12345/x98765/study92/location18/day96.xlsx
\______________________________/\____________________________/
ancestor ARK suffix

Then it redirects the user's browser to the ancestor's target URL, appending the suffix that it scanned. So if the ancestor ARK's target was,

http://n2t.net/ark:/12345/x98765 --> http://datazoo.example.com/carbon288
\______________________________/ \__________________________________/
ancestor ARK ancestor ARK's target URL

the user would be (hypothetically) redirected to

http://datazoo.example.com/carbon288/study92/location18/day96.xlsx
\__________________________________/\____________________________/
ancestor's target URL suffix

Note that SPT is only useful when the target server can respond to the suffixes it receives. For example, you would not instruct users how to add suffixes to the above ARK unless the target server was prepared to provide access to its 10,000 sub-objects. Fortunately, SPT is easy to illustrate in some cases, such as when the target server extends resource names with query strings or ordinary URL paths.

Rule: if identifier A has target T, suffix passthrough means the extended identifier A/X has targetT/X.

Using more words, for an identifier A stored in N2T that has the target URL T, if you add a suffix X to A and resolve (eg, click on) the URL A/X, you will be redirected to the URL T/X.

Some limitations and exceptions apply. For example, during the backwards scan, potential ancestor ARKs are tested (to see if they are registered) only at each "word" boundary, where a word here means a string of letters and digits. Also, scanning stops when the NAAN (the 5-digit number after the "ark:/") is reached.

Suffix Passthrough Examples

You can see SPT in action by clicking on the extended ARKs below. These are "ARKs" (for illustration purposes only, not long-term stable) that are not registered in the N2T resolver, but are formed by adding a suffix to an ARK that is registered.

Example 1. One registration standing in for several CDL service page "ARKs".

Example 2. One registration standing in for any number of Wikipedia article "ARKs".

Example 3. One registration standing in for any number of internet search "ARKs".

You can experiment easily by pasting this registered ARK,

http://n2t.net/ark:/12345/fk3

into your browser's location field and appending (no spaces) a "search term" suffix of your choice.