Re: Semantic Web User Agent Conformance

On Nov 22, 2007 9:26 PM, Benjamin Nowack wrote:

> and the answer is simply: the API developer can't decide that, it
> has to be done by the app developer.

Well, consider the case of Linked Data. Imagine browsing the web in
the Tabulator... when you see a page that is potentially loadable, you
click it, right? Then Tabulator uses its default settings to parse it.
It doesn't give any level of configurability on what it can load to
the user.

Now it certainly could do. But imagine if, every time you clicked a
link in Tabulator, it asked you what N formats you want it to be able
to handle! Defaults are very handy.

> I do agree that it would make sense to
>  * collect and document possible mappings, and also

Yeah, there's some of that going on at the moment on the ESW Wiki. You
don't have to document the normative mappings though, i.e. the
conformance classes that languages with published specifications have.
Part of what I'm talking about here is making sure that future RDF
languages have usable conformance classes; a best practice, if you
will.

>  * potential extraction approaches (parsing, scraping, grddl,
>    30x following, ConNeg, etc.), and also

30x following and conneg is at the HTTP level... you don't need to
document those at all because RFC 2616 and its hundreds of
implementations cover it. Anything which implements RDF over HTTP
should implement those things.

GRDDL, of course, is specified too, but as I've said the default
conformance class isn't very useful because every program conforms to
it--it's more like advice than anything. The GRDDL Test Cases do,
however, as Chimezie Ogbuji noted to me yesterday, form one such line
in the sand which is more usable. There could be others, and we should
document those. It would be nice to express the capability of clients
in RDF too.

>  * approach-specific triggers to make it easier for SWUAs once
>    they decided which approaches to try.

I'm not sure what you mean by this; would you care to expand on it please?

> G = Graph('http://example.org/', 'rdfa hcard-vcard2001 openid-foaf hatom-rss')

What if you don't know what formats example.org is using? Note that
you can shortcut using the transform URI anyway, so you don't even
need to specify the last three of those arguments as long as the
transforms are in the first document--you wouldn't gain very much
speed. I think parsing to the end of <head> is probably reasonable to
do various format detections.

> But it's quite some work, either way.

Yes indeed...

-- 
Sean B. Palmer, http://inamidst.com/sbp/

Received on Friday, 23 November 2007 10:30:24 UTC