W3C home > Mailing lists > Public > public-html@w3.org > December 2009

Re: ISSUE-76: If we fixed namespaces, does RDFa still have problems?

From: Manu Sporny <msporny@digitalbazaar.com>
Date: Sun, 13 Dec 2009 20:29:24 -0500
Message-ID: <4B2594F4.6070700@digitalbazaar.com>
To: "public-html@w3.org" <public-html@w3.org>
Aryeh Gregor wrote:
> On Fri, Dec 11, 2009 at 1:27 AM, Manu Sporny <msporny@digitalbazaar.com> wrote:
>> RDFa 1.1 will allow for the use of RDFa without declaring any namespaces
>> and using vocabularies and keywords instead. For example:
>>
>> <p vocab="http://example.org/foaf.html" about="#robert" typeof="Person">
>>   My name is <span property="name">Robert Ennals</span>.
>> </p>
> 
> While this is simpler than actually declaring namespaces, is it
> necessary to throw in a URL for vocab="" if the vocabulary is meant to
> be used by in-page JavaScript and not used by third-party sources? 

The short answer is: We don't think that this very specific use-case
"exclusively page-specific data" is one that needs to be solved by
Microdata /or/ RDFa in HTML5. The case where the meta-data isn't used by
2nd or 3rd parties (outside the page) already has two solutions in
HTML5: class="my-meta-data" or data-x="my-data".

So, this is largely a non-issue for both Microdata and RDFa.

> I
> believe this is one of the use-cases for microdata, although I guess
> it hasn't historically been something RDFa is very concerned about.

I don't think data "to be used by in-page JavaScript and not used by
third-party sources" is a use-case for Microdata any more than it is a
use case for RDFa. That does not mean, however, that both Microdata and
RDFa aren't capable of addressing this use case:

Microdata:

<div itemscope>
 <p>My name is <span itemprop="name">Aryeh Gregor</span>.</p>
</div>

RDFa:

<div about="#me" vocab="myvocab.html">
 <p>My name is <span property="name">Aryeh Gregor</span>.</p>
</div>

or

<div about="#me" xmlns:myvoc="http://ficticious.url/vocab#">
 <p>My name is <span property="myvoc:name">Aryeh Gregor</span>.</p>
</div>

Microdata does make addressing this particular use case easier in that
there is less markup, but again... I don't think this use case is one
that Microdata or RDFa should solve in HTML5.

> For instance:
> 
> [[
> USE CASE: Annotate structured data that HTML has no semantics for, and
>    which nobody has annotated before, and may never again, for private use or
>    use in a small self-contained community.
> ]]
> http://lists.whatwg.org/htdig.cgi/whatwg-whatwg.org/2009-April/019374.html
> 
> It doesn't seem like a URL should have to be specified in this case.
> The author of the page should be able to change the names used in the
> event of a conflict, just like he could change the names of CSS
> classes, JavaScript functions, etc.  The idea would be that you could
> store structured data in the page and retrieve it conveniently via the
> JavaScript APIs.

Why wouldn't you just use the custom data attributes to do this in HTML5?

The point here is that there is a significant difference between
"in-page, private page use only" and "used by a small self-contained
community". It was a mistake to conflate the two in the use case. Each
has its own solution - data-* for the first, and either Microdata or
RDFa for the second.

If you're more concerned about the second case, then I can make
arguments for why RDFa is the more robust solution over Microdata, if
you'd like to hear those arguments?

-- manu

-- 
Manu Sporny (skype: msporny, twitter: manusporny)
President/CEO - Digital Bazaar, Inc.
blog: Bitmunk 3.2 Launched - The Legal P2P Music Network
http://blog.digitalbazaar.com/2009/11/30/bitmunk-3-2-launched/
Received on Monday, 14 December 2009 01:29:54 UTC

This archive was generated by hypermail 2.3.1 : Thursday, 29 October 2015 10:15:55 UTC