XML Base and URI fragments

I am a little confused.

There seems to be no special rules for resolving fragments in Section 4 of
the XML Base WD.

Consider the following example from thisdoc.xml:

<myFragment ID="local_fragment"/>

<myElt xml:base="http://mydomain.com/thatdoc.xml">
	<myInnerElt href="#xpointer(id('remote_fragment'))"/>
	<myInnerElt href="#xpointer(id('local_fragment'))"/>
</myElt>

http://mydomain.com/thatdoc.xml is a valid URI and hence a valid base, but
is it dumb to want to use a resource as a base for fragments?

If so, no problem, I can rewite as:

<myFragment ID="local_fragment"/>

<myElt xml:base="http://mydomain.com/">
	<myInnerElt href="thatdoc.xml#xpointer(id('remote_fragment'))"/>
	<myInnerElt href="#xpointer(id('local_fragment'))"/>
</myElt>

If not, assume thatdoc.xml contains elements with IDs of 'remote_fragment'
and 'local_fragment'.  According to the current 'relative URI' rules, both
remote_fragment and local_fragment will be resolved by XPointer to point to
fragments in thatdoc.xml.  How would I indicate I want to refer to
thisdoc.xml#local_fragment instead of thatdoc.xml#local_fragment?

Note that specifying href="thisdoc.xml#xpointer(id('local_fragment'))" would
be unacceptable:  it may cause an application / browser to reload
thisdoc.xml.

If resources can be specified as base URIs then should XBase section 4 be
revised to cater for this?

Regards

Lee

Received on Thursday, 3 August 2000 06:49:46 UTC