URI
Click on the red underlined text to get to the source
... This document describes a DDDS Application for resolving Uniform
Resource Identifiers (URI). It does not define the DDDS Algorithm or
a Database ...
...
Uniform Resource Identifiers (URI) have been a significant advance in
retrieving Internet-accessible resources. However, their brittle
...
... identifiers for Internet resources in order to overcome most of the
problems with URIs. RFC 1737 [6] sets forth requirements ...
... framework is
that the resolution system must be separate from the way names are
assigned. This is in marked contrast to most URIs, which identify
the host to contact and the protocol to use. Readers are referred to
...
... can provide information on individual resources, potentially
including the resource itself. To accomplish this, we "rewrite" the
URI into a Key following the rules found in the DDDS. This document
describes URI Resolution ...
... URI into a Key following the rules found in the DDDS. This document
describes URI Resolution as an application of the DDDS and specifies
the use of at least one Database ...
...
From the point of view of this system, there is no theoretical
difference between resolving URIs in the general case and URNs in the
specific case. Operationally however, there is a difference that
...
... URNs in the
specific case. Operationally however, there is a difference that
stems from URI resolution possibly not becoming of widespread use.
If URN resolution is collapsed into generic URI resolution ...
... URI resolution possibly not becoming of widespread use.
If URN resolution is collapsed into generic URI resolution, URNs may
suffer by the lack of adoption of URI resolution ...
... URI resolution, URNs may
suffer by the lack of adoption of URI resolution.
The solution is to allow for shortcutting for URN ...
... The solution is to allow for shortcutting for URN resolution. In the
following specification generic URI resolution starts by inserting
rules for known URI schemes ...
... URI resolution starts by inserting
rules for known URI schemes into the 'uri.arpa.' registry. For the
'URN ...
... registry. For the
'URN:' URI scheme, one of the rules found in 'uri.arpa.' would be for
the 'urn' URI scheme. This rule would simply delegate to the
...
... URN:' URI scheme, one of the rules found in 'uri.arpa.' would be for
the 'urn' URI scheme. This rule would simply delegate to the
'urn.arpa.' zone for additional NAPTRs based on the URN namespace ...
... NAPTRs based on the URN namespace.
Essentially, the URI Resolution Rewrite Rule for 'URN:' is the URN
...
... Therefore, this document specifies two DDDS Applications. One is for
URI Resolution and the other is for URN Resolution. Both are
technically identical but by separating the two URN ...
...
The Application Unique String is the URI or URN for which an
authoritative server is being located. This URI ...
... URI or URN for which an
authoritative server is being located. This URI or URN MUST be
canonicalized and hex encoded according to the "absolute-uri ...
... In the URI case, the first known key is created by taking the URI
scheme. In the URN case, the first known key is the Namespace
Identifier. For example, the URI ...
... URI
scheme. In the URN case, the first known key is the Namespace
Identifier. For example, the URI 'http://www.example.com/' would
have a 'http' as its Key. The URN 'urn:foo:foospace' would have
...
... SRV [9] records exist.
See Section 5 for additional information on how URI and URN
Resolution use the SRV record ...
... service identifiers that make up the 'rs' production are generic
for both URI and URN resolution since the input value types itself
based on the URI scheme ...
... URI and URN resolution since the input value types itself
based on the URI scheme. The list of valid services are defined in
...
... services are:
I2L: given a URI return one URI that identifies a location where the
original URI ...
...
I2L: given a URI return one URI that identifies a location where the
original URI can be found.
...
... URI return one URI that identifies a location where the
original URI can be found.
I2Ls: given a URI ...
... URI can be found.
I2Ls: given a URI return one or more URIs that identify multiple
locations where the original URI ...
...
I2Ls: given a URI return one or more URIs that identify multiple
locations where the original URI can be found.
...
... URI return one or more URIs that identify multiple
locations where the original URI can be found.
I2R: given a URI ...
... URI can be found.
I2R: given a URI return one instance of the resource identified by
that URI.
...
... I2R: given a URI return one instance of the resource identified by
that URI.
I2Rs: given a URI ...
... URI.
I2Rs: given a URI return one or more instances of the resources
identified by that URI.
...
... I2Rs: given a URI return one or more instances of the resources
identified by that URI.
I2C: given a URI ...
... resource.
I2N: given a URI return one URN that names the resource (Caution:
equality with respect to URNs ...
... protocol identifiers that are valid for the 'protocol' production
MUST be defined by documents that are specific to URI resolution. At
present the THTTP [10] protocol is the only such specification.
...
... services field is insufficient since there are
additional semantics surrounding URI resolution that are not defined
within the protocols. For example, if Z39.50 were to be specified as
...
... valid protocol it would have to additionally define how it would
encode requests for specific services, how the URI is encoded, and
what information is returned.
...
... domain-names.
The output of the First Well Known Rule for the URI Resolution
Application is the URI's scheme. In order to convert this to a
...
... The output of the First Well Known Rule for the URI Resolution
Application is the URI's scheme. In order to convert this to a
unique key in this Database the string '.uri.arpa.' is appended to
...
... UTF-8. The allowed input characters are all those characters that
are allowed anywhere in a URI. The characters allowed to be in a Key
are those that are currently defined for DNS domain ...
... The service fields say that if we speak of foolink, we will be able
to issue either the I2L, I2C or I2R requests to obtain a URI or ask
some complicated questions about the resource. The Resource
Cataloging and Distribution Service ...
... 12] could be used to get
some metadata for the resource, while THTTP could be used to get a
URI for the current location of the resource.
Assuming our client ...
... probes
to DNS for resolving most URIs would approach one.
Note that the example NAPTR records ...
... Also note that there could have been an additional first step where
the URN was resolved as a generic URI by looking up urn.uri.arpa.
The resulting rule would have specified that the NID be extracted
...
... CID URI Scheme Example ...
... (Note that this example is chosen for pedagogical purposes, and does
not conform to the CID URI scheme.)
The first step in the resolution process is to find out about the CID ...
... The first step in the resolution process is to find out about the CID
scheme. The scheme is extracted from the URI, prepended to
'.uri.arpa.', and the NAPTR for 'cid.uri.arpa.' looked up in the DNS ...
... Since there is only one record, ordering the responses is not a
problem. The replacement field is empty, so the pattern provided in
the regexp field is used. We apply that regexp to the entire URI to
see if it matches, which it does. The \2 part of the substitution
expression returns the string "example.com". Since the flags field ...
... client has enough to be able to contact that server and ask it
questions about the cid URI.
Recall that the regular expression ...
... Resolving an HTTP URI Scheme ...
... URN systems were in place now, there would still be a
tremendous number of host based URIs. It should be possible to
develop a URI resolution system that can also provide location
...
... host based URIs. It should be possible to
develop a URI resolution system that can also provide location
independence for those URIs.
...
... develop a URI resolution system that can also provide location
independence for those URIs.
Assume we have the URI ...
... URIs.
Assume we have the URI for a very popular piece of software that the
publisher wishes to mirror at multiple sites around the world:
...
... "/^http:\\/\\/([^\\/:]+)/\\1/i").
Applying this pattern to the URI extracts "www.example.com". Looking
up NAPTR records for that might return:
...
... Dynamic Delegation Discovery System (DDDS)
Part Five: URI.ARPA Assignment Procedures" (RFC 3405 [5 ...
...
o If a record at a particular order matches the URI, but the client
doesn't know the specified protocol and service ...
... The order field is what lets site administrators say "all requests
for URIs matching pattern x go to server 1, all others go to
server 2".
...
... Dynamic Delegation Discovery System
(DDDS) Part Five: URI.ARPA Assignment Procedures (RFC 3405)" [5 ...
... his answers on our questions. Finally, we would like to acknowledge
our enormous intellectual debt to the participants in the Knoxville
series of meetings, as well as to the participants in the URI and URN
working groups ...
... Dynamic Delegation Discovery System (DDDS) Part Four: The Uniform Resource Identifiers (URI) Resolution Application", . ...
... Mealling, M., "Dynamic Delegation Discovery System (DDDS) Part Five: URI.ARPA Assignment Procedures", RFC 3405y, October 2002. ...
... Berners-Lee, T., Fielding, R. and L. Masinter, "Uniform Resource Identifiers (URI): Generic Syntax", RFC 2396(-> 3986std66), August 1998. ...
