- From: Ivan Herman <ivan@w3.org>
- Date: Mon, 31 Oct 2011 18:00:29 +0100
- To: Gregg Kellogg <gregg@kellogg-assoc.com>
- Cc: W3C RDFWA WG <public-rdfa-wg@w3.org>
- Message-Id: <4FD9B96B-45C5-4C71-A0E1-CE0DD048E2BD@w3.org>
Just accumulating ideas... What if we restrict any change to @typeof in any case. In this sense @about and @typeof is different, so it may be enough to reduce the changes... Ivan On Oct 31, 2011, at 16:23 , Ivan Herman wrote: > Just another, maybe even more heretic point:-) > > What would be the consequences if > > - we changed the behaviour of the @rel/@typeof combination the same way as you propose @property/@typeof? To keep the symmetry between the two... > - we restricted the whole change to @typeof only which has a peculiar behaviour anyway... > > Just musing before going home... > > Ivan > > > > On Oct 31, 2011, at 13:22 , Ivan Herman wrote: > >> Gregg, >> >> (I hope it is all right to involve the group here) >> >> I understand the motivation, looking at some of the microdata examples although. But I am also afraid a bit of the 'story', so to say, ie, how would you really present this as a consistent model on RDFa rather than looking as a spaghetti code... >> >> 1. Difference between @rel and @property. If we take the minimalist approach, there is a good deal of consistency in the story: they behave mostly identically, except for the fact that @property does not generate chaining. That would still be true in a setting like >> >> <a property="blah" href="Foo"><span property="bar">Something</span></a> >> <a rel="blah" href="Foo"><span property="bar">Something</span></a> >> >> The difference between the two being what the subject is for the (? <bar> "Something"): chaining or not chaining. >> >> 2. However, your extra change would also mean that >> >> <a property="blah" about="Foo"><span property="bar">Something</span></a> >> <a rel="blah" about"Foo"><span property="bar">Something</span></> >> >> would be radically different, right? The first one would generate >> >> <> <blah> <Foo> . >> <Foo> <bar> "Something" . >> >> whereas the second would say... nothing. Indeed there would be hanging rels of the form (<Foo> <blah> ?) and those are not resolved. >> >> Now this may mean that the behaviour defined for @rel is not optimal, but I do not believe we should go there and change that, too... But what we would have is a very different behaviour between the two; I would have difficulties to provide a clear picture/mental model on the differences. Maybe it is only me... >> >> So my question is: what kind of consistent picture can we give on what @property does and what @rel does? The situation in RDFa 1.0 is clear for RDF people: one generates a Literal object the other an IRI Resource object. The minimalist extension of the @property behaviour means that they usually behave the same way, except that @rel controls also chaining and it is also to be used for substructures. This is still fine. But what would one say if with a maximalist extension is adopted? >> >> Ivan >> >> P.S. B.t.w., just to have a clear understanding... the minimalist @property behaviour would indeed not change the mapping of >> >> [[[ >> <div itemscope itemtype="http://schema.org/Event"> >> <div itemprop="offers" itemscope itemtype="http://schema.org/AggregateOffer"> >> Priced from: <span itemprop="lowPrice">$35</span> >> <span itemprop="offerCount">1938</span> tickets left >> </div> >> </div> >> ]]] >> >> its RDFa 1.1 expansion would be something like >> >> [[[ >> <div typeof="http://schema.org/Event"> >> <div rel="offers"> >> <div typeof="http:schema.org/AggregateOffer" > >> Priced from: <span property="lowPrice">$35</span> >> <span property="offerCount">1938</span> tickets left >> </div> >> </div> >> </div> >> ]]] >> >> with the maximalist @property behaviour I believe what would be needed is: >> >> [[[ >> <div typeof="http://schema.org/Event"> >> <div property="offers" typeof="http://schema.org/AggregateOffer"> >> Priced from: <span property="lowPrice">$35</span> >> <span property="offerCount">1938</span> tickets left >> </div> >> </div> >> ]]] >> >> >> >> On Oct 31, 2011, at 01:53 , Gregg Kellogg wrote: >> >>> On Oct 29, 2011, at 8:30 AM, Ivan Herman wrote: >>> >>>> >>>> On Oct 29, 2011, at 17:04 , Gregg Kellogg wrote: >>>> >>>>> On Oct 29, 2011, at 2:19 AM, "Ivan Herman" <ivan@w3.org> wrote: >>>>> >>>>>> I realized that your tests, both in this mail and on the wiki page, are based on the additional chaining behaviour you define for @property. SOrry about that, but at this moment I am still rather against that part of the changes, as I will explain in the answer to Ben's longer email... >>>>> >>>>> Only the last couple of tests involve chaining. I'd be fine if we left that part out. I'll separate them in my tests. >>>>> >>>>> What would the effect of @property with @typeof be? Would you expect @property to take on the literal value of the element? This would be the complete opposite if Microdata's behavior; wouldn't that be just a new source of errors? >>>> >>>> I do not know about microdata. But if I look at the RDFa structure, the consistent approach is that @typeof sets the subject just as it does anywhere else. If we changed that, this would be a complete mess: in most of the cases it sets the subject, and it is used as an object for @property... >>> >>> @typeof does set the subject, it just set's _new subject_. The affect of @property with @typeof is to create a relationship from _parent subject_ to _new subject_. If you look at most any schema.org example, it uses chaining using a similar rule: >>> >>> <div itemscope itemtype="http://schema.org/Event"> >>> <a itemprop="url" href="nba-miami-philidelphia-game3.html"> >>> NBA Eastern Conference First Round Playoff Tickets: >>> <span itemprop="name"> Miami Heat at Philadelphia 76ers - Game 3 (Home Game 1) </span> >>> </a> >>> >>> <meta itemprop="startDate" content="2016-04-21T20:00"> >>> Thu, 04/21/16 >>> 8:00 p.m. >>> >>> <div itemprop="location" itemscope itemtype="http://schema.org/Place"> >>> <a itemprop="url" href="wells-fargo-center.html"> >>> Wells Fargo Center >>> </a> >>> <div itemprop="address" itemscope itemtype="http://schema.org/PostalAddress"> >>> <span itemprop="addressLocality">Philadelphia</span>, >>> <span itemprop="addressRegion">PA</span> >>> </div> >>> </div> >>> >>> <div itemprop="offers" itemscope itemtype="http://schema.org/AggregateOffer"> >>> Priced from: <span itemprop="lowPrice">$35</span> >>> <span itemprop="offerCount">1938</span> tickets left >>> </div> >>> </div> >>> >>> Replace @itemprop with @property, remove @itemscope, and replace @itemtype with @typeof, and you pretty much have the proposed behavior. If you didn't do this, we'd need to add BNode identifiers where none were otherwise needed. >>> >>> Gregg >>> >> >> >> ---- >> Ivan Herman, W3C Semantic Web Activity Lead >> Home: http://www.w3.org/People/Ivan/ >> mobile: +31-641044153 >> PGP Key: http://www.ivan-herman.net/pgpkey.html >> FOAF: http://www.ivan-herman.net/foaf.rdf >> >> >> >> >> > > > ---- > Ivan Herman, W3C Semantic Web Activity Lead > Home: http://www.w3.org/People/Ivan/ > mobile: +31-641044153 > PGP Key: http://www.ivan-herman.net/pgpkey.html > FOAF: http://www.ivan-herman.net/foaf.rdf > > > > > ---- Ivan Herman, W3C Semantic Web Activity Lead Home: http://www.w3.org/People/Ivan/ mobile: +31-641044153 PGP Key: http://www.ivan-herman.net/pgpkey.html FOAF: http://www.ivan-herman.net/foaf.rdf
Attachments
- application/pkcs7-signature attachment: smime.p7s
Received on Monday, 31 October 2011 16:58:31 UTC