Mapping namespace qualified element names to URIs

a proposal

It is necessary to map namespace qualified element names (QNames) to URIs for a variety of purposes but particularly in RDF. The RDF Model and Syntax specification directs this mapping to occur via concatenation of the namespace URI with the local name. This is acceptable when the namespace URI does not end with a character which cannot be used to begin an element name (an NCName) i.e. a Letter or '_', because the first non Letter or '_' encountered from the end of the URI can be used to delimit the namespace URI from the element name. Yet when the URI ends in a Letter or '_', several URI, NCName pairs may map to the same concatenated URI.

It is proposed for namespace URIs that when a namespace URI ends in a Letter or '_' that a '#' be inserted between the namespace URI and the element tag name to create the resultant URI. When such a URI is resolvable to a resource of media type text/html or text/xml, the fragment identifier resolves to an identifier of the element name. When the document is of type text/html, the identifier might point to a section which describes the element. When the document is of type text/xml (or application/xml) and the base document contains an RDF Schema, the identifier is expected to point to the Property or Class definition for the element name.

This mapping has the additional effect of constraining the vocabulary or grammar for a given namespace to those specified by the authority which controls the base URI. In particular when resolution of the URI involves a DNS lookup, the ultimate authority is the Administrative Contact for the root DNS name, though this contact may delegate authority for derivatives of this DNS entry as it sees fit. For example given a root DNS entry:

openhealth.org

ftp://openhealth.org

http://www.openhealth.org

http://www.openhealth.org/RDF/

are derivatives which might be administered independently. If the namespace URI does resolve to a document, the absense of a particular fragment identifier might indicate that the element name is not part of the vocabulary associated with the namespace URI. In any case, given this mapping of a namespace qualified element name to a URI, the ability to create new element names within a given namespace URI qualified XML namespace is the same as the ability to create new URIs derived from the namespace URI.

Jonathan Borden

The Open Healthcare Group

September 17, 2000