3XX issue

So implementing the TCN support, I hit a problem with

http://www.w3.org/1999/xhtml
which redirects to
http://www.w3.org/1999/xhtml/
the Alternates response header is misunderstood, except in the context 
of the updated base URL http://www.w3.org/1999/xhtml/

Thus I modified by software to update it's notion of the current base 
URL after a 3XX redirect (which as far as I can tell is the meaning of 
'base')

But, this makes some of the GRDDL conventions problematic after a redirect.

As an example consider the multiprofile test that my software used to 
pass, but now fails.

My guess is the reason for the failure is the redirect on:
http://purl.org/NET/erdf/profile
to
http://research.talis.com/2005/erdf/profile

The profile uses the glean-profile library function, which uses a same 
document reference rdf:about="" to make the subject for the 
grddl:profileTransformation triples.

Because of the change in the way I am handling redirects, this same 
document referenced is now being interpreted as about 
http://research.talis.com/2005/erdf/profile
rather than being as about http://purl.org/NET/erdf/profile

I think this is pedantically correct, and was motivated by the case 
http://www.w3.org/1999/xhtml/ where the server returns relative URIs (in 
the Alternate header) which assumes that my software is making such an 
interpretation of the base URI

Now, this relates to the following text in the spec:
[[
If

     * an information resource PDOC, identified by an IRI PNAME has a 
GRDDL result that includes a triple whose
           o subject is PDOC, whose
           o predicate is the property 
<http://www.w3.org/2003/g/data-view#profileTransformation>, and whose
           o object is TX,
     * and an information resource IR has an XML representation with 
root node NODE that has a metadata profile name PNAME,

then TX is a GRDDL transformation of NODE.
]]
hmmm

A possible reading, which my software is currently making, is that the 
redirect says that the information resource is identified by
http://research.talis.com/2005/erdf/profile

and the metadata profile name is
http://purl.org/NET/erdf/profile

and so the transform does not fire.

===
If this is the correct reading, then a fix would be to add an (HTML) 
base element to
http://research.talis.com/2005/erdf/profile
declaring it to be
http://purl.org/NET/erdf/profile

My software would still get this wrong, and it is possibly unclear which 
URI should be used as the base URI when parsing the RDF/XML output of 
the glean-profile transform.

Is this at all clear?
Or do I need to try and write this message all over again.

Jeremy




-- 
Hewlett-Packard Limited
registered Office: Cain Road, Bracknell, Berks RG12 1HN
Registered No: 690597 England

Received on Monday, 16 April 2007 17:22:32 UTC