Signing RDF graphs using XML-SIG


<Signature Id="MyFirstSignature" xmlns="http://www.w3.org/2000/09/xmldsig#">
 <SignedInfo>
   <CanonicalizationMethod Algorithm="http://www.w3.org/TR/2001/REC-xml-c14n-20010315"/>
   <SignatureMethod  Algorithm="http://www.w3.org/2000/09/xmldsig#dsa-sha1"/>

   <Reference URI="http://heddley.com/edd/foaf.rdf#xpointer(
         SELECT ?s ?p ?o
         WHERE { (?s foaf:mbox <mailto:mailto:edd@xml.com>)
                  (?s rdf:type foaf:Person)
                  (?s ?p ?o) }
    )" />

     <Transforms>
        <Transform Algorithm="http://www.hpl.hp.com/techreports/2003/HPL-2003-142.html" />
     </Transforms>

    <DigestMethod Algorithm="http://www.w3.org/2000/09/xmldsig#sha1"/>
    <DigestValue>j6lwx3rvEPO0vKtMup4NbeVu8nk=</DigestValue>
   </Reference>
 </SignedInfo>
 <SignatureValue>MC0CFFrVLtRlk=...
 </SignatureValue>
 <KeyInfo>
   <PGPData>
     <PGPKeyId>123k49d9rk...</PGPKeyId>>
   </PGPData>
 </KeyInfo>
 </Signature>