RDF

In certain cases, especially where the data contained in the documents is metadata describing other documents, you may want to look at the Resource Description Framework (RDF). RDF can be written in an XML syntax, but its data model is built around more generic graphs instead of XML’s strictly hierarchical trees. When you process an XML document using XML tools, you get a tree—a collection of nested containers holding information. When you process an RDF document using RDF tools—even if the RDF is encoded as XML—you get a collection of “triples.” In English, a triple takes the rather stilted form "Subject has a Property whose value is Object.” For example, “W. Scott Means has an email address whose value is .” However, to make the identification of subjects, properties, and objects less ambiguous, these are all named with URIs, so we’d actually write "http://www.oreillynet.com/cs/catalog/view/au/751?x-t=book.view&CMP=IL7015 has the property http://www.w3.org/2000/10/swap/pim/contact#mailbox, whose value is mailto:smeans@ewm.biz.” In XML, this would be written as shown in Example 16-7.

Example 16-7. An RDF statement encoded in XML
<?xml version="1.0"?>
<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
             xmlns:contact="http://www.w3.org/2000/10/swap/pim/contact#">
   
  <contact:Person rdf:about=
"http://www.oreillynet.com/cs/catalog/view/au/751?x-t=book.view&amp;CMP=IL7015">
    <contact:mailbox rdf:resource="mailto:smeans@ewm.biz"/>
   
</rdf:RDF>

The advantage to ...

Get XML in a Nutshell, 3rd Edition now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.