Search This Blog

Wednesday, March 12, 2008

Extensible Resource Identifier (XRI) Resolution Version 2.0

OASIS announced the release of an approved Committee Draft 03 of
"Extensible Resource Identifier (XRI) Resolution Version 2.0" for
fifteen-day public review 26-March-2008. The Relax-NG schema files
referenced normatively in the prose specification document are also
available separately. Extensible Resource Identifier (XRI) provides
a uniform syntax for abstract structured identifiers. Because XRIs
may be used across a wide variety of communities and applications
(as Web addresses, database keys, filenames, object IDs, XML IDs,
tags, etc.), no single resolution mechanism may prove appropriate for
all XRIs. However, in the interest of promoting interoperability,
this specification defines a simple generic resource description
format called XRDS (Extensible Resource Descriptor Sequence), a
standard protocol for requesting XRDS documents using HTTP(S) URIs,
and standard protocol for resolving XRIs using XRDS documents and
HTTP(S) URIs. Both generic and trusted versions of the XRI resolution
protocol are defined (the latter using HTTPS (RFC 2818) and/or
signed SAML assertions. In addition, an HTTP(S) proxy resolution
service is specified both to provide network-based resolution services
and for backwards compatibility with existing HTTP(S) infrastructure.
Resolution is the function of dereferencing an identifier to a set
of metadata describing the identified resource. For example, in DNS,
a domain name is typically resolved using the UDP protocol into a set
of resource records describing a host. If the resolver does not have
the answer cached, it will start by querying one of the well-known
DNS root nameservers for the fully qualified domain name. Since domain
names work from right to left, and the root nameservers know only
about top level domains, they will return the NS (name server)
records for the top-level domain. The resolver will then repeat the
same query to those name servers and 'walk down the tree' until the
domain name is fully resolved or an error is encountered. A simple
non-recursing resolver will rely on a recursing nameserver to do
this work. For example, it will send a query for the fully qualified
domain name to a local nameserver. If the
nameserver doesn't have the answer cached, it will resolve the domain
name and return the results back to the resolver (and cache the
results for subsequent queries). XRI resolution follows this same
architecture except at a higher level of abstraction, i.e., rather
than using UDP to resolve a domain name into a text-based resource
descriptor, it uses HTTP(S) to resolve an XRI into an XML-based
resource descriptor called an XRDS document.

No comments: