Using DNS as a URN resolver
Asked Answered
L

1

6

I'm looking to either find or build a URN (Universal Resource Name) resolver, which would return 0 or more URIs for a given URN.

For example: urn:fooid:6e8bc430-9c3a-11d9-9669-0800200c9a66:foo might resolve to http://www.example.com/fooservice/6e8bc430-9c3a-11d9-9669-0800200c9a66/foo. The service would be aware of fooid-style URNs and know how to look-up the base-URL (http://www.example.com/fooservice/) from the GUID and convert the colons to slashes to make a complete URI.

I've searched for "URN resolvers" but there's not much out there. Then it occurred to me that--since DNS is all about quickly resolving addresses in a scalable and distributed fashion, and since it has been used for other applications (see here)--maybe it could be used to do the base-URL lookup part.

Has this been done before, and would it be a practical alternative to just using a conventional database?

Liliuokalani answered 29/3, 2011 at 16:56 Comment(0)
S
7

To do this in DNS you would need to use NAPTR records as part of a Dynamic Delegation Discovery System Application, as defined in RFC 3401, RFC 3402 and RFC 3403.

For URN resolution in particular, also see RFC 3404 and RFC 3405 which builds on the previous three to provide a standard way to map URNs to something else.

Ideally if this was a global general-purpose URN you would request a delegation of fooid within the urn.arpa. domain space.

Take a look at IANA's website to see the existing registered URN namespaces.

Seurat answered 6/4, 2011 at 20:33 Comment(0)

© 2022 - 2024 — McMap. All rights reserved.