This excerpt insists on the potential abstract nature of the pointed resource. In the sequel, the abstraction hierarchy and relationship between URL, URN and URI is clearly described: […] A Uniform Resource Identifier (URI) is a compact sequence of characters that identifies an abstract or physical resource. […]RFC 3986 from IETF
[…] URI can be further classified as a locator, a name, or both. The term "Uniform Resource Locator" (URL) refers to the subset of URIs that, in addition to identifying a resource, provide a means of locating the resource by describing its primary access mechanism (e.g., its network "location"). The term "Uniform Resource Name" (URN) has been used historically to refer to both URIs under the "urn" scheme [RFC2141], which are required to remain globally unique and persistent even when the resource ceases to exist or becomes unavailable, and to any other URI with the properties of a name. […]idem
[…] System identifiers (and other XML strings meant to be used as URI references) MAY contain characters that, according to [IETF RFC 2396] and [IETF RFC 2732], must be escaped before a URI can be used to retrieve the referenced resource. The characters to be escaped are the control characters #x0 to #x1F and #x7F (most of which cannot appear in XML), space #x20, the delimiters '<' #x3C, '>' #x3E and '"' #x22, the unwise characters '{' #x7B, '}' #x7D, '|' #x7C, '\' #x5C, '^' #x5E and '`' #x60, as well as all characters above #x7F. Since escaping is not always a fully reversible process, it MUST be performed only when absolutely necessary and as late as possible in a processing chain. In particular, neither the process of converting a relative URI to an absolute one nor the process of passing a URI reference to a process or software component responsible for dereferencing it SHOULD trigger escaping. When escaping does occur, it MUST be performed as follows: 1. Each character to be escaped is represented in UTF-8 [Unicode] as one or more bytes. 2. The resulting bytes are escaped with the URI escaping mechanism (that is, converted to %HH, where HH is the hexadecimal notation of the byte value). 3. The original character is replaced by the resulting character sequence. […]World Wide Web Consortium
Pattern | Value | Result |
---|---|---|
http://{server}:{*}/{*}.jpg | http://barnum:80/circus/jumper.jpg | Matches=yes ; server=”barnum” |
http://barnum:80/circus/acrobats/juggler.jpg | Matches=yes ; server=”barnum” | |
https://barnum:80/circus/jumper.jpg | Matches=no | |
http://{server}/{{path}}/{object} | http://barnum:80/circus/jumper.gif | Matches=yes server=”barnum:80” path=”circus” object=”jumper.gif” |
http://barnum:80/circus/acrobats/juggler.jpg | Matches=yes server=”barnum:80” path=”circus/acrobat” object=”juggler.gif” | |
http://{server}/{path}/{object} | http://barnum:80/circus/jumper.gif | Matches=yes server=”barnum:80” path=”circus” object =”jumper.gif” |
http://barnum:80/circus/acrobats/juggler.jpg | Matches=yes server=”barnum:80” path=”circus” object =”acrobats/juggler.jpg” |