On Aug 9, 2005, at 5:11 PM, David Powell wrote:
No, we just need to warn publishers (and extension authors) that the
base URI of Simple Extension elements is not significant, and that
they must not expect it to be preserved.
Either the software understands the foreign markup, in which case it
might recognize a relative URI, in which case it should apply the
correct base URI, or it doesn't, in which case everything in the
foreign markup is just a semantics-free string.
The problem could hypothetically arise when someone extracts
properties from the foreign markup, stuffs them in a tuple store, and
then when the software that knows what to do with comes along and
retrieves it and recognizes the relative URI and can't do much
because the base URI is lost.
So... IF you know how to handle some particular extension, AND IF you
expect to handle it when the extension data has been ripped out of
the feed and stored somewhere without any context, THEN you shouldn't
use a relative reference. Alternatively, IF you want to empower
extensions to process they data they understand, AND IF you want to
rip that data out of the feed and store it somewhere, THEN it would
be smart to provide software an interface to retrieve context, such
as feed-level metadata and the base URI.
Sounds like implementor's-guide material to me.
And, to whoever said relative references are "fragile": Wrong. When
you have to move bales of web content around from one place to
another, and just supposing hypothetically that you have internal
links, relative references are robust, absolute URIs are fragile. -Tim