One of the issues in serializing RDF to XML, and extracting RDF from arbitrary or colloquial XML is that the XML object model (DOM) is a node labelled graph and the RDF object model forms an edge labelled graph.
Several mechanism have been proposed to simplifiy the RDF syntax: After implementing Sergey Melnik's simplified RDF syntax using Tim Connolly's rdfp.xsl as a base, I have subsequently implemented Tim Berniers-Lee's strawman syntax:
"The major difference between this syntax and RDF 1.0 M&S is that RDF edges correspond to 
elements, and RDF nodes are implicit. It is basically as the M&S syntax with
parseType=resourceis a default."
This proposal, with its attendant implementation has the following properties:
The current XSLT implementation incorporates Jason Diamond's original rdf.xsl (nice work!). I have placed a copy at http://www.openhealth.org/RDF/rdf.xsl which is <xsl:include>d into the current implementation:
http://www.openhealth.org/RDF/rdfExtractify.xsl
To use, also download http://www.openhealth.org/RDF/rdf.xsl into the same directory
In the Melnick proposal, class instances are named by use of the rdf:instance attribute. When we indicate that an element maps to a class instance through use of the rdf:type instance the member appears anonymous, or is it? As in the XLink2RDF proposal, nodes can be named using XPointer fragment identifiers. XPointers can be generated from an element using several techniques:
An example XML document using simplified RDF syntax
<t:person
	rdf:about="http://www.openhealth.org/people/JohnDoe.xml"
      	xmlns:t="http://www.openhealth.org/types">
    <t:name rdf:type="PersonName">           
        <t:first>John</t:first>
	<t:last>Doe</t:last>
    </t:name>
    <t:pid t:entity="NEMC">123-45-6789</t:pid>
    <t:SSN>000-11-1234</t:SSN>
    <t:patient rdf:type="Role">
    	 <t:primary-care-physician rdf:resource=".../DrJones.xml" />
    </t:patient>
    <t:address rdf:type="Address" loc="home">
      <t:street>750 Washington Street</t:street>
      <t:city>Boston</t:city>
      <t:state>MA</t:state>
    </t:address>
</t:person>
And transformed via rdfExtractify:
<rdf:RDF 
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#">
   
<rdf:Statement>
      <rdf:predicate 
rdf:resource="http://www.w3.org/1999/02/22-rdf-syntax-ns#type"/>
      
<rdf:subject 
rdf:resource="http://www.openhealth.org/people/JohnDoe.xml"/>
      
<rdf:object 
rdf:resource="http://www.openhealth.org/types#person"/>
   
</rdf:Statement>
   
<rdf:Statement>
      <rdf:predicate 
rdf:resource="http://www.openhealth.org/types#name"/>
      
<rdf:subject 
rdf:resource="http://www.openhealth.org/people/JohnDoe.xml"/>
      
<rdf:object rdf:resource="#/1/1"/>
   
</rdf:Statement>
   
<rdf:Statement>
      <rdf:predicate 
rdf:resource="http://www.w3.org/1999/02/22-rdf-syntax-ns#type"/>
      
<rdf:subject rdf:resource="#/1/1"/>
      
<rdf:object rdf:resource="PersonName"/>
   
</rdf:Statement>
   
<rdf:Statement>
      <rdf:predicate 
rdf:resource="http://www.openhealth.org/types#first"/>
      
<rdf:subject rdf:resource="#/1/1"/>
      
<rdf:object>John</rdf:object>
   
</rdf:Statement>
   
<rdf:Statement>
      <rdf:predicate 
rdf:resource="http://www.openhealth.org/types#last"/>
      
<rdf:subject rdf:resource="#/1/1"/>
      
<rdf:object>Doe</rdf:object>
   
</rdf:Statement>
   
<rdf:Statement>
      <rdf:predicate 
rdf:resource="http://www.openhealth.org/types#pid"/>
      
<rdf:subject 
rdf:resource="http://www.openhealth.org/people/JohnDoe.xml"/>
      
<rdf:object rdf:resource="#/1/2"/>
   
</rdf:Statement>
   
<rdf:Statement>
      <rdf:predicate 
rdf:resource="http://www.w3.org/1999/02/22-rdf-syntax-ns#type"/>
      
<rdf:subject rdf:resource="#/1/2"/>
      
<rdf:object 
rdf:resource="http://www.openhealth.org/types#pid"/>
   
</rdf:Statement>
   
<rdf:Statement>
      <rdf:predicate 
rdf:resource="http://www.openhealth.org/types#entity"/>
      
<rdf:subject rdf:resource="#/1/2"/>
      
<rdf:object>NEMC</rdf:object>
   
</rdf:Statement>
   
<rdf:Statement>
      <rdf:predicate 
rdf:resource="http://www.w3.org/1999/02/22-rdf-syntax-ns#value"/>
      
<rdf:subject rdf:resource="#/1/2"/>
      
<rdf:object>123-45-6789</rdf:object>
   
</rdf:Statement>
   
<rdf:Statement>
      <rdf:predicate 
rdf:resource="http://www.openhealth.org/types#SSN"/>
      
<rdf:subject 
rdf:resource="http://www.openhealth.org/people/JohnDoe.xml"/>
      
<rdf:object>000-11-1234</rdf:object>
   
</rdf:Statement>
   
<rdf:Statement>
      <rdf:predicate 
rdf:resource="http://www.openhealth.org/types#patient"/>
      
<rdf:subject 
rdf:resource="http://www.openhealth.org/people/JohnDoe.xml"/>
      
<rdf:object rdf:resource="#/1/4"/>
   
</rdf:Statement>
   
<rdf:Statement>
      <rdf:predicate 
rdf:resource="http://www.w3.org/1999/02/22-rdf-syntax-ns#type"/>
      
<rdf:subject rdf:resource="#/1/4"/>
      
<rdf:object rdf:resource="Role"/>
   
</rdf:Statement>
   
<rdf:Statement>
      <rdf:predicate 
rdf:resource="http://www.openhealth.org/types#primary-care-physician"/>
      
<rdf:subject rdf:resource="#/1/4"/>
      
<rdf:object 
rdf:resource="http://www.openhealth.org/people/DrJones.xml"/>
   
</rdf:Statement>
   
<rdf:Statement>
      <rdf:predicate 
rdf:resource="http://www.w3.org/1999/02/22-rdf-syntax-ns#type"/>
      
<rdf:subject 
rdf:resource="http://www.openhealth.org/people/DrJones.xml"/>
      
<rdf:object 
rdf:resource="http://www.openhealth.org/types#primary-care-physician"/>
   
</rdf:Statement>
   
<rdf:Statement>
      <rdf:predicate 
rdf:resource="http://www.openhealth.org/types#address"/>
      
<rdf:subject 
rdf:resource="http://www.openhealth.org/people/JohnDoe.xml"/>
      
<rdf:object rdf:resource="#/1/5"/>
   
</rdf:Statement>
   
<rdf:Statement>
      <rdf:predicate 
rdf:resource="http://www.w3.org/1999/02/22-rdf-syntax-ns#type"/>
      
<rdf:subject rdf:resource="#/1/5"/>
      
<rdf:object rdf:resource="Address"/>
   
</rdf:Statement>
   
<rdf:Statement>
      <rdf:predicate 
rdf:resource="file:/D:/rdf/test.xml#loc"/>
      
<rdf:subject rdf:resource="#/1/5"/>
      
<rdf:object>home</rdf:object>
   
</rdf:Statement>
   
<rdf:Statement>
      <rdf:predicate 
rdf:resource="http://www.openhealth.org/types#street"/>
      
<rdf:subject rdf:resource="#/1/5"/>
      
<rdf:object>750 Washington Street</rdf:object>
   
</rdf:Statement>
   
<rdf:Statement>
      <rdf:predicate 
rdf:resource="http://www.openhealth.org/types#city"/>
      
<rdf:subject rdf:resource="#/1/5"/>
      
<rdf:object>Boston</rdf:object>
   
</rdf:Statement>
   
<rdf:Statement>
      <rdf:predicate 
rdf:resource="http://www.openhealth.org/types#state"/>
      
<rdf:subject rdf:resource="#/1/5"/>
      
<rdf:object>MA</rdf:object>
   
</rdf:Statement>
</rdf:RDF>
And the reified result:
<rdf:RDF 
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#">
   
<rdf:Statement>
      <rdf:predicate 
rdf:resource="http://www.w3.org/1999/02/22-rdf-syntax-ns#type"/>
      
<rdf:subject rdf:resource="#/1/1"/>
      
<rdf:object 
rdf:resource="http://www.w3.org/1999/02/22-rdf-syntax-ns#Statement"/>
   
</rdf:Statement>
   
<rdf:Statement>
      <rdf:predicate 
rdf:resource="http://www.w3.org/1999/02/22-rdf-syntax-ns#predicate"/>
      
<rdf:subject rdf:resource="#/1/1"/>
      
<rdf:object 
rdf:resource="http://www.w3.org/1999/02/22-rdf-syntax-ns#type"/>
   
</rdf:Statement>
   
<rdf:Statement>
      <rdf:predicate 
rdf:resource="http://www.w3.org/1999/02/22-rdf-syntax-ns#subject"/>
      
<rdf:subject rdf:resource="#/1/1"/>
      
<rdf:object 
rdf:resource="http://www.openhealth.org/people/JohnDoe.xml"/>
   
</rdf:Statement>
   
<rdf:Statement>
      <rdf:predicate 
rdf:resource="http://www.w3.org/1999/02/22-rdf-syntax-ns#object"/>
      
<rdf:subject rdf:resource="#/1/1"/>
      
<rdf:object 
rdf:resource="http://www.openhealth.org/types#person"/>
   
</rdf:Statement>
   
<rdf:Statement>
      <rdf:predicate 
rdf:resource="http://www.w3.org/1999/02/22-rdf-syntax-ns#type"/>
      
<rdf:subject rdf:resource="#/1/2"/>
      
<rdf:object 
rdf:resource="http://www.w3.org/1999/02/22-rdf-syntax-ns#Statement"/>
   
</rdf:Statement>
   
<rdf:Statement>
      <rdf:predicate 
rdf:resource="http://www.w3.org/1999/02/22-rdf-syntax-ns#predicate"/>
      
<rdf:subject rdf:resource="#/1/2"/>
      
<rdf:object 
rdf:resource="http://www.openhealth.org/types#name"/>
   
</rdf:Statement>
   
<rdf:Statement>
      <rdf:predicate 
rdf:resource="http://www.w3.org/1999/02/22-rdf-syntax-ns#subject"/>
      
<rdf:subject rdf:resource="#/1/2"/>
      
<rdf:object 
rdf:resource="http://www.openhealth.org/people/JohnDoe.xml"/>
   
</rdf:Statement>
   
<rdf:Statement>
      <rdf:predicate 
rdf:resource="http://www.w3.org/1999/02/22-rdf-syntax-ns#object"/>
      
<rdf:subject rdf:resource="#/1/2"/>
      
<rdf:object rdf:resource="#/1/1"/>
   
</rdf:Statement>
   
<rdf:Statement>
      <rdf:predicate 
rdf:resource="http://www.w3.org/1999/02/22-rdf-syntax-ns#type"/>
      
<rdf:subject rdf:resource="#/1/3"/>
      
<rdf:object 
rdf:resource="http://www.w3.org/1999/02/22-rdf-syntax-ns#Statement"/>
   
</rdf:Statement>
   
<rdf:Statement>
      <rdf:predicate 
rdf:resource="http://www.w3.org/1999/02/22-rdf-syntax-ns#predicate"/>
      
<rdf:subject rdf:resource="#/1/3"/>
      
<rdf:object 
rdf:resource="http://www.w3.org/1999/02/22-rdf-syntax-ns#type"/>
   
</rdf:Statement>
   
<rdf:Statement>
      <rdf:predicate 
rdf:resource="http://www.w3.org/1999/02/22-rdf-syntax-ns#subject"/>
      
<rdf:subject rdf:resource="#/1/3"/>
      
<rdf:object rdf:resource="#/1/1"/>
   
</rdf:Statement>
   
<rdf:Statement>
      <rdf:predicate 
rdf:resource="http://www.w3.org/1999/02/22-rdf-syntax-ns#object"/>
      
<rdf:subject rdf:resource="#/1/3"/>
      
<rdf:object rdf:resource="PersonName"/>
   
</rdf:Statement>
   ...
   <rdf:Statement>
      
<rdf:predicate 
rdf:resource="http://www.w3.org/1999/02/22-rdf-syntax-ns#object"/>
      
<rdf:subject rdf:resource="#/1/13"/>
      
<rdf:object 
rdf:resource="http://www.openhealth.org/people/DrJones.xml"/>
   
</rdf:Statement>
   
<rdf:Statement>
      <rdf:predicate 
rdf:resource="http://www.w3.org/1999/02/22-rdf-syntax-ns#type"/>
      
<rdf:subject rdf:resource="#/1/14"/>
      
<rdf:object 
rdf:resource="http://www.w3.org/1999/02/22-rdf-syntax-ns#Statement"/>
   
</rdf:Statement>
   
<rdf:Statement>
      <rdf:predicate 
rdf:resource="http://www.w3.org/1999/02/22-rdf-syntax-ns#predicate"/>
      
<rdf:subject rdf:resource="#/1/14"/>
      
<rdf:object 
rdf:resource="http://www.w3.org/1999/02/22-rdf-syntax-ns#type"/>
   
</rdf:Statement>
   
<rdf:Statement>
      <rdf:predicate 
rdf:resource="http://www.w3.org/1999/02/22-rdf-syntax-ns#subject"/>
      
<rdf:subject rdf:resource="#/1/14"/>
      
<rdf:object 
rdf:resource="http://www.openhealth.org/people/DrJones.xml"/>
   
</rdf:Statement>
   
<rdf:Statement>
      <rdf:predicate 
rdf:resource="http://www.w3.org/1999/02/22-rdf-syntax-ns#object"/>
      
<rdf:subject rdf:resource="#/1/14"/>
      
<rdf:object 
rdf:resource="http://www.openhealth.org/types#primary-care-physician"/>
   
</rdf:Statement>
   
<rdf:Statement>
      <rdf:predicate 
rdf:resource="http://www.w3.org/1999/02/22-rdf-syntax-ns#type"/>
      
<rdf:subject rdf:resource="#/1/15"/>
      
<rdf:object 
rdf:resource="http://www.w3.org/1999/02/22-rdf-syntax-ns#Statement"/>
   
</rdf:Statement>
   
<rdf:Statement>
      <rdf:predicate 
rdf:resource="http://www.w3.org/1999/02/22-rdf-syntax-ns#predicate"/>
      
<rdf:subject rdf:resource="#/1/15"/>
      
<rdf:object 
rdf:resource="http://www.openhealth.org/types#address"/>
   
</rdf:Statement>
   
<rdf:Statement>
      <rdf:predicate 
rdf:resource="http://www.w3.org/1999/02/22-rdf-syntax-ns#subject"/>
      
<rdf:subject rdf:resource="#/1/15"/>
      
<rdf:object 
rdf:resource="http://www.openhealth.org/people/JohnDoe.xml"/>
   
</rdf:Statement>
   
<rdf:Statement>
      <rdf:predicate 
rdf:resource="http://www.w3.org/1999/02/22-rdf-syntax-ns#object"/>
      
<rdf:subject rdf:resource="#/1/15"/>
      
<rdf:object rdf:resource="#/1/5"/>
   
</rdf:Statement>
   
<rdf:Statement>
      <rdf:predicate 
rdf:resource="http://www.w3.org/1999/02/22-rdf-syntax-ns#type"/>
      
<rdf:subject rdf:resource="#/1/16"/>
      
<rdf:object 
rdf:resource="http://www.w3.org/1999/02/22-rdf-syntax-ns#Statement"/>
   
</rdf:Statement>
   
<rdf:Statement>
      <rdf:predicate 
rdf:resource="http://www.w3.org/1999/02/22-rdf-syntax-ns#predicate"/>
      
<rdf:subject rdf:resource="#/1/16"/>
      
<rdf:object 
rdf:resource="http://www.w3.org/1999/02/22-rdf-syntax-ns#type"/>
   
</rdf:Statement>
   
<rdf:Statement>
      <rdf:predicate 
rdf:resource="http://www.w3.org/1999/02/22-rdf-syntax-ns#subject"/>
      
<rdf:subject rdf:resource="#/1/16"/>
      
<rdf:object rdf:resource="#/1/5"/>
   
</rdf:Statement>
   
<rdf:Statement>
      <rdf:predicate 
rdf:resource="http://www.w3.org/1999/02/22-rdf-syntax-ns#object"/>
      
<rdf:subject rdf:resource="#/1/16"/>
      
<rdf:object rdf:resource="Address"/>
   
</rdf:Statement>
   
<rdf:Statement>
      <rdf:predicate 
rdf:resource="http://www.w3.org/1999/02/22-rdf-syntax-ns#type"/>
      
<rdf:subject rdf:resource="#/1/17"/>
      
<rdf:object 
rdf:resource="http://www.w3.org/1999/02/22-rdf-syntax-ns#Statement"/>
   
</rdf:Statement>
   
<rdf:Statement>
      <rdf:predicate 
rdf:resource="http://www.w3.org/1999/02/22-rdf-syntax-ns#predicate"/>
      
<rdf:subject rdf:resource="#/1/17"/>
      
<rdf:object rdf:resource="file:/D:/rdf/test.xml#loc"/>
   
</rdf:Statement>
   
<rdf:Statement>
      <rdf:predicate 
rdf:resource="http://www.w3.org/1999/02/22-rdf-syntax-ns#subject"/>
      
<rdf:subject rdf:resource="#/1/17"/>
      
<rdf:object rdf:resource="#/1/5"/>
   
</rdf:Statement>
   
<rdf:Statement>
      <rdf:predicate 
rdf:resource="http://www.w3.org/1999/02/22-rdf-syntax-ns#object"/>
      
<rdf:subject rdf:resource="#/1/17"/>
      
<rdf:object>home</rdf:object>
   
</rdf:Statement>
   
<rdf:Statement>
      <rdf:predicate 
rdf:resource="http://www.w3.org/1999/02/22-rdf-syntax-ns#type"/>
      
<rdf:subject rdf:resource="#/1/18"/>
      
<rdf:object 
rdf:resource="http://www.w3.org/1999/02/22-rdf-syntax-ns#Statement"/>
   
</rdf:Statement>
   
<rdf:Statement>
      <rdf:predicate 
rdf:resource="http://www.w3.org/1999/02/22-rdf-syntax-ns#predicate"/>
      
<rdf:subject rdf:resource="#/1/18"/>
      
<rdf:object 
rdf:resource="http://www.openhealth.org/types#street"/>
   
</rdf:Statement>
   
<rdf:Statement>
      <rdf:predicate 
rdf:resource="http://www.w3.org/1999/02/22-rdf-syntax-ns#subject"/>
      
<rdf:subject rdf:resource="#/1/18"/>
      
<rdf:object rdf:resource="#/1/5"/>
   
</rdf:Statement>
   
<rdf:Statement>
      <rdf:predicate 
rdf:resource="http://www.w3.org/1999/02/22-rdf-syntax-ns#object"/>
      
<rdf:subject rdf:resource="#/1/18"/>
      
<rdf:object>750 Washington Street</rdf:object>
   
</rdf:Statement>
   
<rdf:Statement>
      <rdf:predicate 
rdf:resource="http://www.w3.org/1999/02/22-rdf-syntax-ns#type"/>
      
<rdf:subject rdf:resource="#/1/19"/>
      
<rdf:object 
rdf:resource="http://www.w3.org/1999/02/22-rdf-syntax-ns#Statement"/>
   
</rdf:Statement>
   
<rdf:Statement>
      <rdf:predicate 
rdf:resource="http://www.w3.org/1999/02/22-rdf-syntax-ns#predicate"/>
      
<rdf:subject rdf:resource="#/1/19"/>
      
<rdf:object 
rdf:resource="http://www.openhealth.org/types#city"/>
   
</rdf:Statement>
   
<rdf:Statement>
      <rdf:predicate 
rdf:resource="http://www.w3.org/1999/02/22-rdf-syntax-ns#subject"/>
      
<rdf:subject rdf:resource="#/1/19"/>
      
<rdf:object rdf:resource="#/1/5"/>
   
</rdf:Statement>
   
<rdf:Statement>
      <rdf:predicate 
rdf:resource="http://www.w3.org/1999/02/22-rdf-syntax-ns#object"/>
      
<rdf:subject rdf:resource="#/1/19"/>
      
<rdf:object>Boston</rdf:object>
   
</rdf:Statement>
   
<rdf:Statement>
      <rdf:predicate 
rdf:resource="http://www.w3.org/1999/02/22-rdf-syntax-ns#type"/>
      
<rdf:subject rdf:resource="#/1/20"/>
      
<rdf:object 
rdf:resource="http://www.w3.org/1999/02/22-rdf-syntax-ns#Statement"/>
   
</rdf:Statement>
   
<rdf:Statement>
      <rdf:predicate 
rdf:resource="http://www.w3.org/1999/02/22-rdf-syntax-ns#predicate"/>
      
<rdf:subject rdf:resource="#/1/20"/>
      
<rdf:object 
rdf:resource="http://www.openhealth.org/types#state"/>
   
</rdf:Statement>
   
<rdf:Statement>
      <rdf:predicate 
rdf:resource="http://www.w3.org/1999/02/22-rdf-syntax-ns#subject"/>
      
<rdf:subject rdf:resource="#/1/20"/>
      
<rdf:object rdf:resource="#/1/5"/>
   
</rdf:Statement>
   
<rdf:Statement>
      <rdf:predicate 
rdf:resource="http://www.w3.org/1999/02/22-rdf-syntax-ns#object"/>
      
<rdf:subject rdf:resource="#/1/20"/>
      
<rdf:object>MA</rdf:object>
   
</rdf:Statement>
</rdf:RDF>
Comments are welcome
Jonathan Borden
September 21, 2000