- From: Manu Sporny <msporny@digitalbazaar.com>
- Date: Wed, 29 Jul 2009 00:14:54 -0400
- To: RDFa TF list <public-rdf-in-xhtml-tf@w3.org>
Mark Birbeck wrote: > As Shane says, I think we've lost sight of the issue here. :) Right. Both Ben and Mark have outlined the current proposals. What we would like is markup like this: <span about="#ben" property="name">Ben</span> to generate the following triple: <#ben> <http://xmlns.com/foaf/0.1/name> "Ben" . Here is what each of them look like in their simplest forms (focusing on the : Ben's Proposal ------------------------------------------------------------------ Ben's proposal would have us do this (first processing stage): <span about=#ben profile="http://example.org/vocab#" property="name">Ben</span> *** NOTE: @profile may not be the attribute we re-use, but that's the current candidate -- don't focus on it too much. which would generate this triple: <#ben> http://example.org/vocab#name "Ben" . As far as the RDFa processor is concerned, that's it. The triple above would be generated by the RDFa parser and stored in a triple store for processing later on. The second processing stage (which has nothing to do with the RDFa processor) would look up the following vocabulary term: http://example.org/vocab#name and then detect the following triple in that vocabulary document: <http://example.org/vocab#name> owl:sameAs <http://xmlns.com/foaf/0.1/name> . The application layer would then understand that all ex:name are equivalent to foaf:name, thus this triple: <#ben> http://example.org/vocab#name "Ben" . would be equivalent to this triple: <#ben> <http://xmlns.com/foaf/0.1/name> "Ben" . Mark's Proposal ------------------------------------------------------------------ Mark's proposal supports an alternative that looks like Ben's proposal (on the surface, at least -- note the missing "#" at the end of the @profile value): <span about=#mark profile="http://example.org/vocab" property="name">Mark</span> The RDFa processor would: 1. Detect the @profile attribute on the SPAN element. 2. Fetch the external document specified in @profile. 3. Extract token mapping triples from that document via RDFa - we could re-use owl:sameAs or the new @token proposal. 4. Continue processing the document subtree using the newly loaded token mappings in addition to the token mappings the parser had already loaded. The end result, would be the following triple: <#mark> <http://xmlns.com/foaf/0.1/name> "Mark" . ------------------------------------------------------- Things of importance regarding Ben's proposal: 1. The RDFa processor doesn't have to support loading external documents in any way. The heavy lifting is passed on to the application layer. 2. We must change the way CURIEs are processed. 3. Mis-use of @profile could result in spurious triples: <div profile="http://example.org/vocab#"> <span property="foo">bar</span> </div> would result in: <> <http://example.org/vocab#foo> "bar" . even if there is no definition for <http://example.org/vocab#foo> in the vocabulary document. Things of importance regarding Mark's proposal: 1. The RDFa processor suddenly has to support loading external documents. The heavy lifting is done at the processor layer, not the application layer. 2. We must change the way CURIEs are processed. 3. Mis-use of @profile does not result in spurious triples. What did I miss? -- manu -- Manu Sporny (skype: msporny, twitter: manusporny) President/CEO - Digital Bazaar, Inc. blog: Bitmunk 3.1 Released - Browser-based P2P Commerce http://blog.digitalbazaar.com/2009/06/29/browser-based-p2p-commerce/
Received on Wednesday, 29 July 2009 04:15:31 UTC