Re: Inverse Properties in Microdata:, was Re: schema.org update, v1.8: added WebSite type; broadened isPartOf to relate CreativeWorks

mmmmm, could it be there's a misunderstanding on the working of
itemprop-reverse (and something that needs to be explained better in the
proposal)?

The way I understood it is that:
itemprop-reverse="memberOf" equals itemprop="member", or,
itemprop-reverse="hasPart" equals itemprop="isPartOf".

Meaning itemprop-reverse is meant to express the opposite value of a
property but not to express a reverse relation.

Dan Brickley, Martin Hepp and Thad Guidry, how do you see this?


2014-08-02 23:56 GMT+02:00 Gregg Kellogg <gregg@greggkellogg.net>:

> On Aug 1, 2014, at 7:50 AM, Dan Brickley <danbri@google.com> wrote:
>
> > On 1 August 2014 15:35, martin.hepp@ebusiness-unibw.org
> > <martin.hepp@ebusiness-unibw.org> wrote:
> >> Richard, Jarno:
> >>
> >> Note that the itemprop-reverse proposal does not imply that there
> should be no inverse properties in schema.org. It is just that we should
> be able to use properties in both directions without the need to define two
> properties, one for each direction. Inverse properties in the vocabulary
> can make sense in some cases (like in the ongoing thread).
> >>
> >> So we should be clear about the fact that advancing the
> itemprop-reverse proposal does not stop you from having both isPartOf and
> hasPart. We should define inverses formally in the vocabulary (e.g. by
> adding a property http://schema.org/inverseOf to the meta-model of
> schema.org).
> >
> > Indeed. Personally I'm pretty supportive of hasPart, although it is
> > hard to know where to draw the line. We didn't do it in the last
> > revision when the focus was more on WebSite and we generalized
> > isPartOf as a side effect. Both isPartOf and
> > http://schema.org/containedIn have the awkward characteristic that the
> > point from 'inner' things to 'outer', even while markup structure
> > generally starts with containers and has their parts 'inside' in
> > markup terms. We're taking a good look at Periodical this week so will
> > get back to you all on that asap.
> >
> > BTW
> https://www.w3.org/wiki/WebSchemas/Periodicals,_Articles_and_Multi-volume_Works
> > would benefit from "we think this is pretty much done" -style
> > read-throughs from other folk here. I've bounced it off a few more
> > contacts from the library/bibliographic world and it seems to about
> > right....
>
> I've updated my Microdata to RDF implementation [1] to support
> @itemprop-reverse, and need to clarify the interaction with @itemprop.
> Consider the following example:
>
>             <div itemscope itemtype="http://schema.org/Organization">
>               <span itemprop="name">Cryptography Users</span>
>               <div itemprop-reverse="memberOf" itemprop="member" itemscope
>                     itemtype="http://schema.org/OrganizationRole">
>                 <div itemprop-reverse="memberOf" itemprop="member"
> itemscope
>                         itemtype="http://schema.org/Person">
>                   <span itemprop="name">Alice</span>
>                 </div>
>                 <span itemprop="startDate">1977</span>
>               </div>
>             </div>
>
> This doubly-links a Role, using memberOf as the inverse of member. The
> resulting Turtle, would be:
>
>             @prefix schema: <http://schema.org/> .
>             @prefix md: <http://www.w3.org/ns/md#> .
>             <> md:item (_:a) .
>             _:a a schema:Organization;
>                 schema:name "Cryptography Users";
>                 schema:member _:b .
>             _:b a schema:OrganizationRole;
>                 schema:startDate "1977";
>                 schema:member _:c;
>                 schema:memberOf _:a .
>             _:c a schema:Person;
>                 schema:name "Alice";
>                 schema:memberOf _:b .
>
> However, it's not clear that Microdata would support having both @itemprop
> and @itemprop-reverse on the same element. I updated the Wiki to indicate
> no, but this needs to be clarified with WHATWG and this list.
>
> (I'm also considering just dropping the md:item list, as not being too
> useful; feedback on this would be appreciated.
>
> You can use this live through my distiller [2] (although, not the linter
> yet).
>
> Gregg
>
> [1] https://github.com/ruby-rdf/rdf-microdata
> [2] http://rdf.greggkellogg.net/distiller
>
> > Dan
> >
> >> Martin
> >>
> >>
> >>
> >>
> >> On 01 Aug 2014, at 15:56, Wallis,Richard <Richard.Wallis@oclc.org>
> wrote:
> >>
> >>> Agree that pushing for reverse property capability in Microdata is a
> good thing.
> >>>
> >>> However, I must harmonise with Jarno about hasPart [click, hasPart -
> click, hasPart - click..] as proposed in several places including the
> Periodicals, Articles, & Mult-Volume Works proposal.
> >>>
> >>> Describing something like a multi-volume work, for example it is quite
> possible that the individual parts are defined elsewhere on the web,
> without knowledge of the the multi-volume description
> >>>
> >>>
> >>> ~Richard
> >>>
> >>>
> >>> On 1 Aug 2014, at 09:59, Jarno van Driel <jarnovandriel@gmail.com>
> wrote:
> >>>
> >>>> "as Jarno knows, for he was involved in the discussion ;-)"
> >>>> hehe, it could well be I mentioned the existence of the proposal here
> and there.
> >>>>
> >>>> "Anyway, I'll take it to the HTML folks and report back."
> >>>> Great, that would help a lot!
> >>>>
> >>>> Although I have to say (running the risk I sound like a broken
> record) that I still believe adding an 'hasPart' property would help a lot
> as well. I see both the <link> pointing to an itemid and itemprop-reverse
> attribute as more advanced methods for mapping relations and fear that
> folks, who are not too familiar with either microdata, will overlook them.
> Having 'hasPart' as well will provide an easy and straightforward solution
> for a property I suspect will be use quite a lot. Especially if the
> schema.org provides sufficient examples on how to use it for layout
> entities like WebPage, WebSite, SiteNavigationElement, WebPageElement, etc.
> >>>>
> >>>>
> >>>> 2014-08-01 9:10 GMT+02:00 Dan Brickley <danbri@google.com>:
> >>>> On 1 August 2014 07:52, martin.hepp@ebusiness-unibw.org
> >>>> <martin.hepp@ebusiness-unibw.org> wrote:
> >>>>> There is a fully-fledged proposal to add inverse properties to
> microdata:
> >>>>>
> >>>>>    https://www.w3.org/wiki/WebSchemas/InverseProperties
> >>>>>
> >>>>> (as Jarno knows, for he was involved in the discussion ;-)
> >>>>
> >>>> And I well remember too. We had also already begun a discussion on the
> >>>> WHATWG list, so the issue is well established.
> >>>>
> >>>>> Maybe we can ask Dan to look into this matter again? It would really
> help to have this feature.
> >>>>
> >>>> I think it is indeed time to revisit. I didn't want to push for
> >>>> @itemprop-reverse until the Role work stabilised, but now that is done
> >>>> I believe it's time. That said, there is still sometimes justification
> >>>> for adding a reverse property, and the site software now supports
> >>>> linking such pairs where they exist (e.g. see
> >>>> http://schema.org/alumni). Anyway, I'll take it to the HTML folks and
> >>>> report back.
> >>>>
> >>>> Dan
> >>>>
> >>>>> Best wishes / Mit freundlichen Grüßen
> >>>>>
> >>>>> Martin Hepp
> >>>>>
> >>>>>
> >>>>> On 01 Aug 2014, at 00:40, Jarno van Driel <jarnovandriel@gmail.com>
> wrote:
> >>>>>
> >>>>>> "I notice you don’t have an itemprop attribute in your first <div>
> element.  Was that intentional?"
> >>>>>>
> >>>>>> That would only have been possible if 'hasPart' (which isn't part
> of the specification) could have been used (or itemprop-reverse="isPartOf").
> >>>>>>
> >>>>>> Because there is no inverse property of 'isPartOf', nor a reverse
> mechanism for microdata, Juraj is bound to chain the entities together by
> making use of <link itemprop="isPartOf" href="[itemid-value]">.
> >>>>>>
> >>>>>> A cumbersome method, that now can be applied where it first
> couldn't. All be it but one that can be improved still.
> >>>>>>
> >>>>>>
> >>>>>> 2014-07-31 17:52 GMT+02:00 Jason Johnson (BING) <
> jasjoh@microsoft.com>:
> >>>>>> I notice you don’t have an itemprop attribute in your first <div>
> element.  Was that intentional?
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>> From: Juraj Kabát [mailto:kabat.juraj@gmail.com]
> >>>>>> Sent: Tuesday, July 29, 2014 8:08 AM
> >>>>>> To: public-vocabs@w3.org
> >>>>>> Cc: W3C Web Schemas Task Force
> >>>>>> Subject: Re: schema.org update, v1.8: added WebSite type;
> broadened isPartOf to relate CreativeWorks
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>> When Ill try to add isPartOf property to ItemList, Im getting this
> warning:
> >>>>>>
> >>>>>> WARNING: isPartOf field not specified in http://schema.org/ItemList
> >>>>>>
> >>>>>> Example snippet:
> >>>>>> <body itemid="#WebPage" itemscope itemtype="
> http://schema.org/CollectionPage">
> >>>>>>    <div class="products" itemscope itemtype="
> http://schema.org/ItemList">
> >>>>>>        <meta content="Unordered" itemprop="itemListOrder">
> >>>>>>        <link itemprop="isPartOf" href="#WebPage">
> >>>>>>
> >>>>>>        <div itemtype="http://schema.org/Product" itemscope
> itemprop="itemListElement">
> >>>>>>        <img src="[url]" itemprop="image">
> >>>>>>        <a href="[url]" itemprop="url"><span
> itemprop="name">[name]</span></a>
> >>>>>>      <span itemtype="http://schema.org/Offer" itemscope
> itemprop="offers">
> >>>>>>            <span itemprop="price">[price]</span>
> >>>>>>      </span>
> >>>>>>        </div>
> >>>>>>
> >>>>>>        <div itemtype="http://schema.org/Product" itemscope
> itemprop="itemListElement">
> >>>>>>        <img src="[url]" itemprop="image">
> >>>>>>        <a href="[url]" itemprop="url"><span
> itemprop="name">[name]</span></a>
> >>>>>>      <span itemtype="http://schema.org/Offer" itemscope
> itemprop="offers">
> >>>>>>            <span itemprop="price">[price]</span>
> >>>>>>      </span>
> >>>>>>        </div>
> >>>>>>
> >>>>>>    </div>
> >>>>>> </body>
> >>>>>>
> >>>>>>
> >>>>>> But when Ill add isPartOf property to each ItemListElement,
> everything works like expected.
> >>>>>> What am I missing here? ItemList extends CreativeWork as well...
> >>>>>>
> >>>>>> Why can't I chain whole ItemList to parent but instead of that I
> have to repeat myself for every element in list?
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>> On Mon, Jul 28, 2014 at 10:20 PM, Jarno van Driel <
> jarnovandriel@gmail.com> wrote:
> >>>>>>
> >>>>>> Personally I most of all like the addition of WebSite (and it's
> creative example) as well as the reworked 'isPartOf' most and I've already
> started to implementing them.  :-)
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>> But I would have been an even happier camper if 'hasPart' would
> have been introduced as well. And even though chaining WebSite > WebPage >
> WebPageElements > CreativeWork now can be achieved, without abusing
> 'mentions' for this, it unfortunately is quite cumbersome in microdata
> because one has to use itemid quite a lot, eg:
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>> <body itemid="#WebPage" itemscope itemtype="
> http://schema.org/WebPage">
> >>>>>>
> >>>>>> <nav itemid="#SiteNavigationElement" itemscope itemtype="
> http://schema.org/SiteNavigationElement">
> >>>>>>
> >>>>>> <link itemprop="isPartOf" href="#WebPage">
> >>>>>>
> >>>>>> <ul>
> >>>>>>
> >>>>>> <li itemscope itemtype="http://schema.org/WebPage"
> itemid="#WebPage-1">
> >>>>>>
> >>>>>> <link itemprop="isPartOf" href="#SiteNavigationElement">
> >>>>>>
> >>>>>> <a itemprop="url" href="[some-page-url]">
> >>>>>>
> >>>>>> <span itemprop="name">[some-page-name]</span>
> >>>>>>
> >>>>>> </a>
> >>>>>>
> >>>>>> <ul>
> >>>>>>
> >>>>>> <li itemscope itemtype="http://schema.org/WebPage">
> >>>>>>
> >>>>>> <link itemprop="isPartOf" href="#WebPage-1" />
> >>>>>>
> >>>>>> <a itemprop="url" href="[some-page-url]">
> >>>>>>
> >>>>>> <span itemprop="name">[some-page-name]</span>
> >>>>>>
> >>>>>> </a>
> >>>>>>
> >>>>>> </li>
> >>>>>>
> >>>>>> <li itemscope itemtype="http://schema.org/WebPage">
> >>>>>>
> >>>>>> <link itemprop="isPartOf" href="#WebPage-1" />
> >>>>>>
> >>>>>> <a itemprop="url" href="[some-page-url]">
> >>>>>>
> >>>>>> <span itemprop="name">[some-page-name]</span>
> >>>>>>
> >>>>>> </a>
> >>>>>>
> >>>>>> </li>
> >>>>>>
> >>>>>> </ul>
> >>>>>>
> >>>>>> </li>
> >>>>>>
> >>>>>> </ul>
> >>>>>>
> >>>>>> </nav>
> >>>>>>
> >>>>>> </body>
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>> I'm still quite pleased with the update is as though.
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>> 2014-07-28 17:43 GMT+02:00 Dan Brickley <danbri@google.com>:
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>> previous update (1.7),
> >>>>>> http://lists.w3.org/Archives/Public/public-vocabs/2014Jul/0012.html
> >>>>>>
> >>>>>> A small schema.org update just went live:
> >>>>>>
> >>>>>> 1. We add a new CreativeWork type, "WebSite"
> >>>>>>
> >>>>>> http://schema.org/WebSite
> >>>>>>
> >>>>>> "A WebSite is a set of related web pages and other items typically
> >>>>>> served from a single web domain and accessible via URLs."
> >>>>>>
> >>>>>> The example shows the use of this with SearchAction.
> >>>>>>
> >>>>>> 2. We adopt the proposal made by the bibextend group and other
> >>>>>> collaborators, to broaden isPartOf. It now relates any CreativeWork
> to
> >>>>>> any other CreativeWork
> >>>>>>
> >>>>>> http://schema.org/isPartOf
> >>>>>>
> >>>>>> see also
> https://www.w3.org/wiki/WebSchemas/Periodicals,_Articles_and_Multi-volume_Works
> >>>>>>
> >>>>>> 3. Potential Actions documentation
> >>>>>>
> >>>>>> The previously PDF-only Potential Actions document is now on the
> site in HTML:
> >>>>>>
> >>>>>> http://schema.org/docs/actions.html
> >>>>>>
> >>>>>> 4. Adopted some markup fixes from Stephane Corlosquet (thanks!)
> >>>>>>
> >>>>>> https://github.com/rvguha/schemaorg/pull/71
> >>>>>>
> >>>>>> 5. Improved consistency of encoding / associatedMedia description
> >>>>>> (thanks Dan Scott!)
> >>>>>>
> >>>>>> https://github.com/rvguha/schemaorg/pull/35
> >>>>>>
> >>>>>> 6. Updated some out-of-date sections of the FAQ: it now mentions
> >>>>>> Yandex appropriately, acknowledges that there's life beyond
> Microdata
> >>>>>> (i.e. RDFa, JSON-LD), and doesn't talk about "version 0.9 draft" any
> >>>>>> more.
> >>>>>>
> >>>>>> https://github.com/rvguha/schemaorg/pull/69
> >>>>>>
> >>>>>> Thanks all :)
> >>>>>>
> >>>>>> Dan
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>
> >>>>
> >>>
> >>
> >
>
>

Received on Sunday, 3 August 2014 11:45:51 UTC