Re: Processing Model and empty TERMorCURIEorAbsURI

I've interpreted it in my Ruby implementation [1], which you're welcome to borrow from, if you like. This version passes all the tests in the RDFa test suite, so I think it's fairly accurate of the intent. See below:

On Mar 29, 2011, at 2:52 AM, Sami Korhonen wrote:

I would like to get clarification on step 13 related issue:

“If the skip element<http://www.w3.org/TR/2010/WD-rdfa-core-20101026/#dfn-skip_element> flag is 'true' then the new evaluation context<http://www.w3.org/TR/2010/WD-rdfa-core-20101026/#dfn-evaluation_context> is a copy of the current context that was passed in to this level of processing, with the language<http://www.w3.org/TR/2010/WD-rdfa-core-20101026/#dfn-language> and list of URI mappings<http://www.w3.org/TR/2010/WD-rdfa-core-20101026/#dfn-list_of_uri_mappings> values replaced with the local values;”

If this is correct default vocabulary and local term mappings should not be passed to a new evaluation context when skip element flag is ‘true’. Is this intended?

In my implementation, if the skip element is set, then a new evaluation context is created with possible updates to base, language, uri_mappings, namespaces, term_mappings and default_vocabulary. (namespaces separate from URI mappings for XMLLiteral serialization, base because of non-HTML host languages). Re-examining the spec (7.5 step 13), it seems that your interpretation is correct, and mine is at odds; which may imply a problem either in the tests, or in the spec wording.

<div about=”#me”>
  <div profile=”http://example.org/rdfa/person/profile”>
    <span property=”:name”>X Ample</span>
  </div>
</div>

My second question concerns about empty TERMorCURIEorAbsURI. What is the correct way to handle them? Authors seem to be using empty @typeof quite regularly to create bnodes.

Specification says: “One or more 'types' for the new subject can be set by using @typeof. If present, the attribute may contain one or more URIs, obtained according to the section on URI and CURIE Processing, each of which is used to generate a triple as follows.”

In my implementation, if @typeof contains any value, even the empty string, it may be used to create a new subject; this my interpretation of "if @typeof is present". It does later go on to say "may contain one or more ...", which would more correctly be "may contain zero or more ..." to achieve the desired behavior.

Regards,
Sami Korhonen
University Of Eastern Finland
http://code.google.com/p/rdfa-core/

Gregg

[1] https://github.com/gkellogg/rdf-rdfa/blob/master/lib/rdf/rdfa/reader.rb

Received on Monday, 4 April 2011 18:46:36 UTC