W3C home > Mailing lists > Public > public-vocabs@w3.org > March 2014

Re: schema.org Roles design

From: Jarno van Driel <jarno@quantumspork.nl>
Date: Thu, 27 Mar 2014 03:31:59 +0100
Message-ID: <CAFQgrbYz80ZgMkdDjA46ZzyMHjELYvqiJm1Bz+Nw81Fc1xRU8w@mail.gmail.com>
To: Jason Douglas <jasondouglas@google.com>
Cc: Aaron Bradley <aaranged@gmail.com>, Dan Brickley <danbri@google.com>, Ramanathan Guha <guha@google.com>, Gregg Kellogg <gregg@greggkellogg.net>, Public Vocabs <public-vocabs@w3.org>
"...What you wrote would be perfectly valid without that"
It also illustrates what partially confuses me when you run it through
Google's SDTT. The 'hasPos' of the Person refers back to the MovieRole
(item 1). A loop.
But if you lot say that's fine, I trust in that opinion. I always was under
the presumption that loops should be prevented. Good to discover I was
wrong in that.

"Publishers don't need to include that itemid in their markup"
OK, I thought I had figured it out but now I'm confused about @id again. Is
not having it in Microdata already suffice because everything is linked
together already; Are parsers able to get to the information that the
Person had a role in a movie, without having the @itemid as well, by
looking up into the chain?


On Wed, Mar 26, 2014 at 11:27 PM, Jason Douglas <jasondouglas@google.com>wrote:

>
>
> On Wed Mar 26 2014 at 3:21:34 PM, Jarno van Driel <jarno@quantumspork.nl>
> wrote:
>
>> Just to make sure I got it right (or wrong), I've had a try add
>> translating it to Microdata. Is this correct?
>>
>> <div itemscope itemtype="http://schema.org/Movie">
>>  <span itemprop="name">Ghostbusters</span>
>> <span itemprop="hasRole" itemid="movierole_678" itemscope itemtype="
>> http://schema.org/MovieRole">
>>  <span itemprop="characterName">Dr. Peter Venkman</span>
>> <span itemprop="actor" itemscope itemtype="http://schema.org/Person">
>>  <span itemprop="name">Bill Muray</span>
>> <link itemprop="hasRole" href="movierole_678">
>>  </span>
>> </span>
>> <div>
>>
>
> Thank you for writing that out, I think it helps explain the confusion.
>
> Publishers don't need to include that itemid in their markup.  What you
> wrote would be perfectly valid without that.
>
> Those IDs were included in the proposal for formal modeling reasons to
> show that the role can have identity.
>
>
>>
>>
>> On Wed, Mar 26, 2014 at 10:55 PM, Aaron Bradley <aaranged@gmail.com>wrote:
>>
>>> I'm baffled by @id as well.  Forget the RDFa/microdata/JSON-LD syntax
>>> differences for a moment, I've read the proposal but still don't know from
>>> whence the the @id values arise.
>>>
>>> In the PDF where does...
>>> @id "role321" come from? (e.g.1)
>>> @id "movierole_678" come from? (e.g. 2)
>>> @id "edurole25151" come from? (e.g. 3)
>>>
>>> Are these arbitrarily assigned by the coder?  Are these serial?  And are
>>> they resolvable to an IRI?
>>>
>>> And are they integral to the Role/hasRole proposal - that is, does
>>> everything break if they're not employed?  Am I correct in reading @ID in
>>> e.g. 1 ("role321") is the necessary entity referred to in order to have the
>>> "athlete property applied to the Role, instead of to a Team"?
>>>
>>> Now returning to the syntax, I'd certainly I'd love to see any one of
>>> these marked up with microdata. :)
>>>
>>> > it is important to find the right
>>> > balance between ease of adoption for publishers, expressivity, ease of
>>> > processing etc.
>>>
>>> I appreciate the perseverance of list members.  While my technical
>>> expertise is limited I'm no slouch either, and Jarno ain't a slouch at all
>>> - so if @id/@id-like functionality is crucial here it does have
>>> implications for the "ease of adoption for publishers".
>>>
>>>
>>>
>>> On Wed, Mar 26, 2014 at 2:22 PM, Dan Brickley <danbri@google.com> wrote:
>>>
>>>> On 26 March 2014 20:59, Jarno van Driel <jarno@quantumspork.nl> wrote:
>>>> > Well if @id has the same role as 'itemref' then could there also
>>>> please be
>>>> > some info explaining how that works, because to be honest, I sort of
>>>> > understand the proposal but am confused about @id/itemid. e.g. to me
>>>> it
>>>> > seems @id functions the same way as @resource does in RDFa, or at
>>>> least
>>>> > that's how I read it.
>>>>
>>>> The following are all similar in RDF-based languages - they identify
>>>> the entities being described:
>>>>
>>>> RDF/XML: about= (for subjects, i.e. the thing that has the property),
>>>> resource= (for objects, i.e. a thing that is a value of some property)
>>>> RDFa 1.0: about= (for subjects), resource= (for objects),
>>>> http://www.w3.org/TR/2008/REC-rdfa-syntax-20081014/#rdfa-attributes
>>>> RDFa 1.1: about= (for subjects), resource= (for objects),
>>>> http://www.w3.org/TR/rdfa-syntax/#A-about
>>>> http://www.w3.org/TR/rdfa-syntax/#A-resource
>>>> RDFa 1.1 Lite ... doesn't make this distinction; resource= works for
>>>> either . http://www.w3.org/TR/rdfa-lite/#resource
>>>> JSON-LD: @id http://www.w3.org/TR/json-ld/#node-identifiers
>>>> Microdata: itemid=
>>>>
>>>> http://www.whatwg.org/specs/web-apps/current-work/multipage/microdata.html#global-identifiers-for-items
>>>>
>>>> Most of these also have a way of using less-than-global local
>>>> identifiers too, as a way of joining up a graph structure from
>>>> different trees of markup. Microdata's itemref can also sometimes be
>>>> used for that purpose but as already discussed it is a different kind
>>>> of mechanism.
>>>>
>>>> > Wouldn't the Person linking back to the AmericanFootballRole create
>>>> an infinite loop?
>>>>
>>>> This is no more problematic than someone being their mother's son.
>>>> These languages are all oriented towards describing relationships; it
>>>> is natural that sometimes there will be loops.
>>>>
>>>> Dan
>>>>
>>>>
>>>
>>
Received on Thursday, 27 March 2014 02:32:27 UTC

This archive was generated by hypermail 2.3.1 : Tuesday, 6 January 2015 21:29:38 UTC