W3C home > Mailing lists > Public > www-rdf-interest@w3.org > September 2000

Mapping XML to RDF via XSLT: an implementation

From: Jonathan Borden <jborden@mediaone.net>
Date: Tue, 12 Sep 2000 19:17:31 -0400
Message-ID: <01ce01c01d0f$a353ffc0$0a2e249b@Synapse>
To: <xml-dev@lists.xml.org>, <www-rdf-interest@w3.org>
Cc: "Dan Connolly" <connolly@w3.org>
To support the simplified RDF syntax and mapping of colloquial XML to RDF
(http://www.openhealth.org/RDF/rdf_Syntax_and_Names.htm) I have used Dan
Connolly's rdfp.xsl as a base. This is useful to see how 'arbitrary' or
'colloquial' XML maps to a set of RDF triples, it also demonstrates how
current RDF XML serializations map to a set of RDF triples.

The XSLT is available at http://www.openhealth.org/RDF/rdfp.xsl

This mapping effects edge labelling of XML graphs and uses XPointer
generation to create URIs for XML/RDF nodes. Note that 2 forms of xpointer
generation are switched by a param, the default uses attribute values to
identify an element.

A number of examples have been scrapped from the M&S and are available in
http://www.openhealth.org/RDF/  see test5.xml -> result5.xml (actually there
are about 14 pairs).

What it doesn't yet support:

rdf:aboutEach
rdf:aboutEachAttr

Bugs:

Many I'm sure! This is a work in progress.

In developing the mapping, I've noticed an errata in the M&S, specifically

"and using this third abbreviated form as:
<rdf:RDF>
  <rdf:Description about="http://www.w3.org/Home/Lassila">
    <s:Creator>
      <s:Person about="http://www.w3.org/staffId/85740">
 <v:Name>Ora Lassila</v:Name>
 <v:Email>lassila@w3.org</v:Email>
      </s:Person>
    </s:Creator>
  </rdf:Description>
</rdf:RDF>
"
Note that <s:Person about="..."> needs to be changed to

<s:Person rdf:about="..."> under most any reasonable interpretation of
defaulting namespaces for attributes (my preference is strongly that *all*
rdf attributes be explicitly placed in the rdf NS).

Jonathan Borden
The Open Healthcare Group
http://www.openhealth.org
Received on Tuesday, 12 September 2000 19:27:58 UTC

This archive was generated by hypermail 2.4.0 : Friday, 17 January 2020 22:44:25 UTC