- From: Ivan Herman <ivan@w3.org>
- Date: Mon, 01 Oct 2007 15:58:18 +0200
- To: Mark Birbeck <mark.birbeck@formsPlayer.com>
- CC: W3C RDFa task force <public-rdf-in-xhtml-tf@w3.org>
- Message-ID: <4700FCFA.60600@w3.org>
Mark Birbeck wrote: > Hi Ivan, > > I'm not sure if I'm following you here, so my apologies. > > Tthe only thing left to resolve on @instanceof is what should happen > if *both* @about and @resource are on the same element, along with > @instanceof. And even then, the only thing to resolve is whether > @instanceof takes its subject from @about or from @resource--the > behaviour of chaining is clearly defined, and unaffected. > > So the question I believe I have stumbled upon is this; @instanceof > appearing on its own on an element will generate a bnode (that's > already agreed): > > <div instanceof="foaf:Person"> > ... > </div> > > yields: > > _:div1 a foaf:Person . > O.k., it is good that this came up. So, a purely procedural issue (not to you, but the group!): has all the issues around @instanceof been 100% closed? I tried to look in the recent minutes, I found only: http://www.w3.org/2007/09/20-rdfa-minutes.html#item03 but it does not give a ful answer to the issues of - what happens if there is @instanceof with both @about/@resource - what happens if there is an @instancof only and nothing else I know that the current syntax document does give answers, but I was not sure whether this was a place holder only or a final decision. The second issue is raised by, eg, http://lists.w3.org/Archives/Public/public-rdf-in-xhtml-tf/2007Sep/0169.html but I have not seen any resolution or vote. No trace in the issues' list either. _It may be my fault_, in which case sorry... (Yes, all these do not affect chaining, but they do affect your issues, that is why I raise this...) Maybe it is a good time to look at the test cases I just submitted http://lists.w3.org/Archives/Public/public-rdf-in-xhtml-tf/2007Oct/0001.html and see whether the anticipated results are really what we want. That would put that part of the discussion behind us.... We can then look at your stuff:-) Ivan > However, if we take that behaviour to <head>, and add in some other metadata: > > <head instanceof="foaf:PersonalProfileDocument"> > <link rel="foaf:maker" href="#me" /> > </head> > > we get this: > > _:head1 a foaf:PersonalProfileDocument . > _:head1 foaf:maker <#me> . > > Now you could say that it's the author's own fault, but in keeping > with the idea of not 'messing with' the host language, I believe that > this is undesirable, and changes the behaviour of @rel in a way that > we should not be considering. Since we'd probably agree that it would > be better to generate this: > > <> a foaf:PersonalProfileDocument . > <> foaf:maker <#me> . > > I was simply suggesting that we take advantage of the fact that we > already say that there is an 'implied' @about="" on <head>, and that > what we needed to do was to draw that out a little more explicitly. > > (To put it a different way, I think it's quite easy to present this as > *not* an exception; the rules for obtaining a 'unique element > identifier' already say that @about takes precedence, so we need to be > clear that this rule should include implied values for @about--such as > the one on <head>--as well as 'real' values. It's not really very > different to saying that there is a default attribute value in a > schema.) > > If I've missed your disagreement then I apologise. :) > > Regards, > > Mark > > On 01/10/2007, Ivan Herman <ivan@w3.org> wrote: >> (This is also an answer to Niklas' response and your response to Niklas' >> response...) >> >> I am still not convinced:-( And the for the same reasons as before: I >> would like to avoid the type of spaghetti specification that says: "this >> is the general rule, but with these and these values the behaviour is >> different...". >> >> However. Let us make one step back. AFAIK, the rules of @instanceof are >> still _not_ cast in concrete. There were several alternatives in the >> past but I have not seen any final resolution around those. I also >> remember that the issue of what would happen with >> >> <div instanceof="bla:bla"> >> >> ie, when 'instanceof' was the only RDFa attribute. I know that the >> current rule are aimed at what you say, ie, a blank node is generated as >> a subject of instanceof and that should be chained down. But I also >> remember another line of thought by Ben who, essentially, said: >> >> [[[ >> @instanceof applies to the subject for all the children (ie, no special >> treatment for @about, just as if @instanceof was part of a a child >> element), _except_ when @instanceof is the only element, in which case >> it applies to the [current element] >> ]]] >> >> another way of defining @instanceof would be something like >> >> [[[ >> if the attributes @rel/@rev/@resources are present on the element, then >> @instanceof applies on [current object resource]; otherwise it applies >> on [current element] >> ]]] >> >> In both cases, your issue would become moot because, in both cases, >> >> <head instanceof="foaf:PersonalProfileDocument"> >> >> would yield exactly what you need. >> >> Bottomline: I would propose to postpone this issue until @instanceof is >> 100% defined and cast into the syntax document. (My test cases might >> help.) We can come back to this later. >> >> Ivan >> >> Mark Birbeck wrote: >>> Hi Ivan, >>> >>> Thanks for forcing me to think it through more. :) I think that there >>> is probably a neat way to write this using current mark-up, although >>> working through it has highlighted something that I think we need to >>> clarify. >>> >>> Sticking purely with trying to make the rdf:type use-case easier >>> (i.e., rather than the general use of RDF/RDFS namespaces), there is >>> nothing to stop us doing this: >>> >>> <html >>> xmlns="http://www.w3.org/1999/xhtml" >>> xmlns:foaf="http://xmlns.com/foaf/0.1/" >>> > >>> <head> >>> <title>My profile</title> >>> <link about="" instanceof="[foaf:PersonalProfileDocument]" /> >>> </head> >>> . >>> . >>> . >>> </html> >>> >>> It looks odd, since there is no @rel or @rev, but it is allowed by the >>> syntax. But once you go down that route, you might as well use the >>> following, which is also allowed by the syntax, and is probably much >>> clearer in terms of intent: >>> >>> <html >>> xmlns="http://www.w3.org/1999/xhtml" >>> xmlns:foaf="http://xmlns.com/foaf/0.1/" >>> > >>> <head about="" instanceof="[foaf:PersonalProfileDocument]"> >>> <title>My profile</title> >>> </head> >>> . >>> . >>> . >>> </html> >>> >>> Which brings us to the point that I think we need to clarify; what if >>> I wrote this: >>> >>> <head instanceof="[foaf:PersonalProfileDocument]"> >>> <title>My profile</title> >>> <meta property="dc:creator" content="John Doe" /> >>> </head> >>> >>> In our current rules this would generate a new bnode for <head>, and >>> the dc:creator property would apply to that, which I don't think is >>> desirable. But if we were to make it a little more explicit that the >>> 'identity' of <head> is the current document, unless overridden >>> *explicitly* by @about, then my rdf:type use-case falls out quite >>> neatly to the following mark-up: >>> >>> <html >>> xmlns="http://www.w3.org/1999/xhtml" >>> xmlns:foaf="http://xmlns.com/foaf/0.1/" >>> > >>> <head instanceof="[foaf:PersonalProfileDocument]"> >>> <title>My profile</title> >>> </head> >>> . >>> . >>> . >>> </html> >>> >>> I think that's actually quite clear from the point of view of what an >>> author is trying to do, and it has also exposed that we might need to >>> say a little more about what happens with the <head> element. >>> >>> What do you think? >>> >>> Regards, >>> >>> Mark >>> >>> >>> >>> On 01/10/2007, Ivan Herman <ivan@w3.org> wrote: >>>> Hm. You won't like me, but I am not sure I like it:-) >>>> >>>> Though is see the rationale, we create some sort of an odd case. At the >>>> moment the agreement is that a @rel value without a CURIE prefix is >>>> considered to be in >>>> >>>> http://www.w3.org/1999/xhtml/vocab# >>>> >>>> and that is it. This is a very clear and easy-to-follow rule. What you >>>> propose is that, well, this is true, _except_ for the value of >>>> instanceof that behaves differently. I am not sure it is good if we >>>> begin to introduce such exceptions. >>>> >>>> Or did I misunderstand you? >>>> >>>> A possible way out is to say that the 'rdf:' prefix (and probably the >>>> 'rdfs:' prefix) will always be added to the result of an RDFa processor >>>> with the usual values. This is not very nice either, but I would prefer >>>> to solve your problem that way... >>>> >>>> >>>> Ivan >>>> >>>> Mark Birbeck wrote: >>>>> Hello all, >>>>> >>>>> Whilst considering RDFa use in the wild, it occurred to me that >>>>> constructs like the following would almost certainly become quite >>>>> common: >>>>> >>>>> <html >>>>> xmlns="http://www.w3.org/1999/xhtml" >>>>> xmlns:foaf="http://xmlns.com/foaf/0.1/" >>>>> xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" >>>>> > >>>>> <head> >>>>> <title>My profile</title> >>>>> <link rel="rdf:type" resource="[foaf:PersonalProfileDocument]" /> >>>>> </head> >>>>> . >>>>> . >>>>> . >>>>> </html> >>>>> >>>>> If the author wants to avoid having to include the RDF namespace, they >>>>> would have to change their mark-up to look something like this: >>>>> >>>>> <html >>>>> xmlns="http://www.w3.org/1999/xhtml" >>>>> xmlns:foaf="http://xmlns.com/foaf/0.1/" >>>>> > >>>>> <head> >>>>> <title>My profile</title> >>>>> </head> >>>>> <body about="" instanceof="foaf:PersonalProfileDocument"> >>>>> . >>>>> . >>>>> . >>>>> </body> >>>>> </html> >>>>> >>>>> However, if we added an additional link type, such as 'a' or >>>>> 'instanceof', we could also allow the following mark-up: >>>>> >>>>> <html >>>>> xmlns="http://www.w3.org/1999/xhtml" >>>>> xmlns:foaf="http://xmlns.com/foaf/0.1/" >>>>> > >>>>> <head> >>>>> <title>My profile</title> >>>>> <link rel="instanceof" resource="[foaf:PersonalProfileDocument]" /> >>>>> </head> >>>>> . >>>>> . >>>>> . >>>>> </html> >>>>> >>>>> This avoids the need to declare the RDF namespace, and keeps the >>>>> metadata in the head of the document which seems more appropriate for >>>>> this particular kind of statement. >>>>> >>>>> Regards, >>>>> >>>>> Mark >>>>> >>>>> >>>> -- >>>> >>>> Ivan Herman, W3C Semantic Web Activity Lead >>>> Home: http://www.w3.org/People/Ivan/ >>>> 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/ >> 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/ PGP Key: http://www.ivan-herman.net/pgpkey.html FOAF: http://www.ivan-herman.net/foaf.rdf
Received on Monday, 1 October 2007 13:58:26 UTC