- From: Oskar Welzl <lists@welzl.info>
- Date: Fri, 20 Apr 2012 14:34:45 +0200 (CEST)
- To: public-rdfa@w3.org
Hi, I'm getting confused about what's subject and what's object when all three of @property, @resource and @typeof are used on the same element. The confusion started only when I realized that some tools behave differently from others here. Reading the spec doesn't help me much. So what I'd like to get is a clear answer on what's the correct interpretation; which tools are 'right'. The markup I have is <div property="accountablePerson editor" resource="http://www.welzl.info/id/oskar.welzl" typeof="Person"> in the following context (vocab set to schema.org): <div resource="http://rdfa.twoday.net/" typeof="Blog"> <!-- THIS IS THE LINE --> <div property="accountablePerson editor" resource="http://www.welzl.info/id/oskar.welzl" typeof="Person"> <p>Für den Inhalt verantwortlich:</p> <p> <span property="name">Oskar Welzl</span>, <span property="workLocation" typeof="Place" ><span property="name">Wien</span></span> </p> </div> </div> This was meant to be read as <http://rdfa.twoday.net/> a schema:Blog; schema:accountablePerson <http://www.welzl.info/id/oskar.welzl>; schema:editor <http://www.welzl.info/id/oskar.welzl> . <http://www.welzl.info/id/oskar.welzl> a schema:Person; schema:name "Oskar Welzl"; schema:workLocation [ a schema:Place; schema:name "Wien"] . Ruby and Python RDFa distillers give me exactly that. The @property uses @resource as its object, @typeof types this resource/object. Subject's taken from the parent. But when I run this through other tools, for example the The Structured Data Linter, the example above translates to this: - rdf:type schema:Blog - rdf:type http://schema.org/Person http://schema.org/accountablePerson Für den Inhalt verantwortlich: Oskar Welzl, Wien http://schema.org/editor Für den Inhalt verantwortlich: Oskar Welzl, Wien http://schema.org/name Oskar Welzl - rdf:type http://schema.org/Place http://schema.org/name Wien http://schema.org/workLocation Wien - Now here the typed resource turns into the subject for the @property given on the same element. Because of this, @property no longer has a @resource that can act as the object of the statement... and takes the whole text as its value, which isn't intended either. I would have accepted this as an error in one tool, but I also found other tools reading the statements in the same manner. (It seems to happen that whenever @typeof is used, the typed node is treated as the subject for the current statement.) Now what's right? Thanks, Oskar
Received on Friday, 20 April 2012 12:34:37 UTC