Re: RDFa test case #1 missing @profile?

Hi Norm,

I have to respectfully disagree with you. I've added my comments inline.

You said in response to Shane:
> The point of a @profile isn't just for GRDDL. It's not magic that's
>  important, it's (1) expression of the author's intent and (2) the
>  ability to "follow your nose". Consider the following document:
>
>  <html xmlns="http://www.w3.org/1999/xhtml"
>       xmlns:dc="http://purl.org/dc/elements/1.1/">
>  <head>
>  <title>My document</title>
>  </head>
>  <body>
>  <p>
>  <img src="/path/to/my/image.jpg" />
>  <span about="/user/markb/photo/23456"
>       property="dc:title">Sunset in Nice</span>
>  </p>
>  </body>
>  </html>
>
>  Given that HTML has historically had an extension policy of "ignore
>  unknowns", there is nothing about this document that can or should
>  suggest that any RDF triples follow from it. I, as the author of an
>  XHTML document with no awareness of RDFa cannot possibly be held
>  responsible for RDF assertions that RDFa may think follow from this
>  document.

The example you give uses @about and @property, neither of which
exists in HTML or XHTML, but they do now exist in XHTML+RDFa. If an
author uses either of these attributes then I think it's pretty clear
that they are using XHTML+RDFa.

However, you are quite right that technically, since HTML took the
approach that unknown attributes should be ignored, it's possible that
our author could be using @about and @property in some other way, so
we should look at that.

The safest approach to take, to protect those authors, would be to
continue to ignore the attributes. However, that would mean that we
can never extend HTML or XHTML. It's probably too late for that,
anyway, since we're already on version 4.01 of HTML; no current
browser insists on the presence of DTDs before it processes 4.01, so
all of the attributes that are in 4.01 that weren't in version 3
should by rights not be processed unless the DTD is present. I think
we need to accept that in all modern browsers the processing/rendering
part is independent of the validation part, and so trying to protect
attributes from future processing rules is nigh on impossible.

But we should note, too, that the HTML spec never guaranteed that you
could safely use your own made-up attributes for ever, anyway.

It's true that the HTML spec says that a processor should ignore
unknown attributes, but that was meant to be a sensible alternative to
simply bailing out with an 'unknown attribute' error. The 'ignore the
attributes' part of HTML was certainly never regarded as a way to
allow authors to simply make up their own attributes--in fact, there
is nothing in the spec that says the attributes should even be
reflected in the DOM. In short, our author who is using attributes in
some 'custom' way is on shakey ground, since the attribute could at
any point be used in a new version of the language. (Which is, of
course, why many of the modern Ajax libraries either use @class, or
their own namespace qualified attributes, when adding new features.)


>  Adding a profile attribute to this document is what the *author* does
>  to make it reasonable and correct to license RDF assertions.
>
>  It also has the significant benefit that it gives me, a human, reading
>  the document a pointer to something that describes what assertions
>  might be licensed.
> Without the profile, this is *and must be* only a
> vanilla XHTML document where the about and property attributes are
> totally ignored.

@profile is pretty ill-defined in HTML, but what little it says
concerns the setting of values in @rel and @rev, and has nothing to do
with extra attributes. The only thing that deals with extra attributes
and elements is the doc type, so if we wanted to be ultra-cautious
then the only route open to us is to insist that the doc type is
checked before an RDFa processor begins.

But that then means that any RDFa content you add to your blog, or via
some CMS, will never get processed unless you have full control over
the pages. We felt that these were just the kinds of use-cases that
could help to move the semantic web on a notch, and therefore
insisting on a certain doc type was too high a price to pay.

So, to recap, although many people in the discussions were sympathetic
to the argument--and indeed many argued for exactly this position for
quite a long time!--the conclusion was that we didn't actually need to
be so prescriptive, and there was benefit to not being so.

But even if the argument is made again for insisting on the presence
of some indicator, before we know for certain that the author is not
using @about and @property in some private way, @profile is definitely
not the answer (as I've written about before).

Best regards,

Mark

-- 
  Mark Birbeck

  mark.birbeck@x-port.net | +44 (0) 20 7689 9232
  http://www.x-port.net | http://internet-apps.blogspot.com

  x-port.net Ltd. is registered in England and Wales, number 03730711
  The registered office is at:

    2nd Floor
    Titchfield House
    69-85 Tabernacle Street
    London
    EC2A 4RR

Received on Monday, 3 March 2008 21:12:10 UTC