This content has been marked as final. Show 1 reply
This extract from the Namespaces in XML spec, section 2 defines the values that can be used as namespaces:
A namespace is declared using a family of reserved attributes. [...]The attribute's value, a URI reference, is the namespace name identifying the namespace. The namespace name, to serve its intended purpose, should have the characteristics of uniqueness and persistence. It is not a goal that it be directly usable for retrieval of a schema (if any exists). An example of a syntax that is designed with these goals in mind is that for Uniform Resource Names [RFC2141]. However, it should be noted that ordinary URLs can be managed in such a way as to achieve these same goals.
In turn, RFC 2396 characterizes two broad categories of URIs in section 1.2:
A URI can be further classified as a locator, a name, or both. The term "Uniform Resource Locator" (URL) refers to the subset of URI that identify resources via a representation of their primary access mechanism (e.g., their network "location"), rather than identifying the resource by name or by some other attribute(s) of that resource. The term "Uniform Resource Name" (URN) refers to the subset of URI that are required to remain globally unique and persistent even when the resource ceases to exist or becomes unavailable.
So, namespaces such as "urn:samples:atm" are useful to protect the namespace URIs in the XML document against relocation and reorganization. While it is recognized that the same effect can be achieved through well-designed URLs, URNs make clear that no location reference is intended. RFC 2141, section 2.1 provides the syntax for URNs.