Re: Semantic Web User Agent Conformance

On Nov 23, 2007 10:14 AM, Renato Golin <> wrote:

> The only meaningful place I can see you could put magic numbers
> for all kinds of RDF is in the RDF header itself. such as:
> <rdf:RDF (...) magic_constant_1="42" (...)>

I'm not sure that that would ever be required, and it'd be an
extension to RDF/XML anyway. In the case of RDF Stylesheets I'm quite
sure you could get away with magic triples rather than using some kind
of attribute, though as I say I'm not entirely sure what form it
should take yet. It's mainly academic at this point, though I did try
my hand at making a language with mergeable stylesheets that can be
applied to streaming input. Cuts down on the network accesses.

Incidentally I noticed the other day that the application/rdf+xml RFC
is incorrect in its magic numbers section:

         Magic number(s): none

            Although no byte sequences can be counted on to consistently
            identify RDF, RDF documents will have the sequence
            "" to identify
            the RDF namespace. This will usually be towards the top of
            the document.
]]] -

Actually the following document is valid RDF/XML but doesn't use the
RDF namespace anywhere:

<SomeClass xmlns="">

Of course RDF/XML documents served using one of the generic XML media
types have to use <rdf:RDF>, or else there must be a hint given to the

> I always like to give the Mozilla/IE/Firefox history as an example to show
> that conformity, when compulsory, makes anyone's life much easier.

Heh, indeed. I don't mind walking on that thin blue line between
description and prescription.

> > that makes it hard when you want to merge mergeable stylesheets.
> You'll end up with a cascading rdf:type not necessarily compatible, I see...

Yeah, so just to spell it out if you have the following three documents:

<> a :Stylesheet .
- one.rdf

<> a :Stylesheet .
- two.rdf

<> a :Stylesheet .
- three.rdf

And then you do an RDF merge of them, in say cwm or whatever:

cwm one.rdf two.rdf three.rdf > output.rdf

Then output.rdf ends up being:

<one.rdf> a :Stylesheet .
<two.rdf> a :Stylesheet .
<three.rdf> a :Stylesheet .

Whereas of course you wanted <output.rdf> a :Stylesheet. For that
reason you should probably dispatch on some required part of the
stylesheet language, or there could literally be a magic triple

> Maybe some easy-to-use-batteries-included programming
> language will come for the semantic web

I sorta dread that happening, really, because it's already been
attempted over a span of years with N3Logic which fits exactly what
you've said: it's not a very good programming language by itself. Part
of what I'm doing with the work of which this thread is a spinoff is
trying to engineer a better approach to the generic handling of RDF.

> Anyway, standards are to be enforced or all of us will go crazy
> figuring out every single possibility that might happen.

Yup! Cf. TAG's TagSoupIntegration-54 issue:

Sean B. Palmer,

Received on Friday, 23 November 2007 10:32:11 UTC