User Agent conformance requirements for RDFa [was Re: RDFa and Web Directions North 2009]

Ian Hickson wrote:

> The RDFa community should decide whether or not browser involvement is
> ever going to be desired. I have often heard conflicting statements  
> here
> from proponents of RDF and RDFa, on the one hand that the idea is  
> to make
> browsers more usable, and on the other that there is no cost to  
> browser
> vendors. Both can't be true.

The two are not necessarily contradictory.

The minimum conformance requirement would be for browsers to do  
nothing other than what they currently do with RDFa: that is, add the  
attributes to the DOM tree just like they would with any other  
attributes. User agents would however be free to offer features  
beyond the minimal requirements - examples:

* when detecting RDFa that represents a person, the user agent could  
offer a pop-up menu allowing the user to e-mail or instant message  
that person, or add that person to the user's address book, or look  
up the person's biography on Wikipedia.
* when detecting RDFa that represents a book, the agent could offer  
to look the book up on Amazon[1], look up the author on Wikipedia,  
find other books by the same author, etc.
* when detecting RDFa that represents an event, the agent could offer  
to add it to the user's calendar, calculate the distance to travel to  
its location (from the user's current location, assuming that is  
known) and search for similar events in their area on upcoming.org if  
the user says the event is too far away.

The possibilities are almost unlimited - it is a matter for the  
developers of user agents to decide which they think will benefit  
their users, implement them and document them. Some features (e.g. a  
newt tracking system) would almost certainly be too esoteric for user  
agents to bother with, but they can always be developed as third- 
party plugins, bookmarklets[2] or online services with a web interface.

RDFa provides a shared data model and syntax for the development of  
these features. RDFa provides a level playing-field for interoperable  
implementations.

Existing browsers already fulfil the minimum conformance  
requirements, so even if it can be claimed that there is a "cost" for  
them to do so, it is clearly a cost that has already been "paid". The  
"no cost" claim seems to hold up, at least as far as I can see.

RDFa can be used by browser developers to make their user interface  
more useful and automate common tasks. This certainly will entail  
costs on their part, but goes beyond the minimal conformance  
requirements, so is optional.

I imagine developers would add such features after deciding on a case- 
by-case basis which are most useful and most likely to attract new  
users to their platforms, and ultimately result in an increase in  
revenue stream enough to cover their implementation costs. Such a  
process would surely not be so different from existing decision- 
making processes by browser developers? Although there would be an  
upfront development cost, development would only be undertaken if  
deemed to be ultimately profitable, so the net cost would actually  
not be a cost but rather a profit, assuming decisions were well made.

____
1. Note the recent "would Amazon use RDFa" discussion. Even if Amazon  
did not, a user agent that was able to identify mentions of books on  
blogs, in research papers and so on could get the book's title,  
author and (if provided) ISBN from RDFa and perform an Amazon API  
call using that information.
2. To make the development of such bookmarklets and scripts easier,  
some kind of RDFa API exposed via Javascript would be handy, but not  
essential. I imagine that scripts would test for its existence and  
use it if available, but otherwise load a pure Javascript RDFa  
toolkit. This is similar to how scripts currently use  
getElementsByClassName - for performance reasons they will check for  
a browser-native implementation, but otherwise fall back to a  
Javascript function.

-- 
Toby A Inkster
<mailto:mail@tobyinkster.co.uk>
<http://tobyinkster.co.uk>

Received on Tuesday, 17 February 2009 16:53:56 UTC