Home > Articles > Programming > Java

  • Print
  • + Share This
Like this article? We recommend

What's at the End of a Namespace URI?

Lack of standardization has led to a weird kind of "don't ask, don't tell" namespace definition policy on the part of the W3C and surrounding standards bodies. Basically, a namespace is whatever you want it to be—in some cases it's an XML schema; in others, an RDF schema. In some cases, it's just a convention or documentation associated with a particular namespace URI that actually points to nothing. (You just have to click your heels together and believe in it!)

In the context of RDF documents, more often than not what you'll find at the end of a namespace URI is an RDF schema. For instance, if you copy the namespace URI from the previous example (http://purl.org/dc/elements/1.1/) and paste it into another browser's address bar, what you'll see on your screen is an RDF Schema representing all the possible elements in the Dublin Core version 1.1 element set. This schema is defined in RDF, of course, so up at the top you'll see another namespace URI (xmlns:rdfs="http://www.w3.org/2000/01/rdf-schema#") that tells you where to go to look for the RDF definition for RDF schema elements. These elements show up further down in the document (prefixed by rdfs:) to define elements such as the title element used in the previous example. It's all delightfully recursive!

<rdf:Property rdf:about="http://purl.org/dc/elements/1.1/title">
<rdfs:label xml:lang="en-US">Title</rdfs:label>
<rdfs:comment xml:lang="en-US">A name given to the resource.
</rdfs:comment>
<dc:description xml:lang="en-US">
Typically, a Title is a name by which the resource is formally known.
</dc:description>
<rdfs:isDefinedBy rdf:resource="http://purl.org/dc/elements/1.1/"/>
<dcterms:issued>1999-07-02</dcterms:issued>
<dcterms:modified>2002-10-04</dcterms:modified>
<dc:type
rdf:resource="http://dublincore.org/usage/documents/principles/#element"/>
<dcterms:hasVersion
rdf:resource="http://dublincore.org/usage/terms/history/#title-004"/>
</rdf:Property>

The above bit of RDF schema gives you not only a textual description of this schema element, but also information such as when it was created and last modified, and where you can go to find some usage principles for the element.

  • + Share This
  • 🔖 Save To Your Account