RE: Last call comments on XML Base

[apologies for repeat--the comment list address bounced the first time. paul]

At 11:37 2000 07 10 -0700, Jonathan Marsh wrote:
>Martin wrote:
>> 1) XML Base says:
>>    ...[quote from section 4. elided]
>
>I have fixed this.  I ended up with the following wording:
>
>-----
>A relative URI appearing in an xml:base attribute is resolved against the
>base specified on the xml:base attribute appearing on the owning element's
>nearest ancestor that has an xml:base attribute element.
>
>A relative URI appearing in any other attribute value is resolved against
>the base specified in the xml:base attribute appearing on the element owning
>the attribute, if one exists, otherwise the xml:base attribute of the owning
>element's nearest ancestor that has an xml:base attribute.
>------
>
>Do you find this clear (as well as correct :-)?

I don't feel these words cover the case where the first (only) xml:base
in a document is relative, but such is allowable and means the xml:base
should be relative to the base URI of the document entity.  (The
original wording didn't either.)  In fact, in section 4 we should talk 
less about resolving relative URIs, and rather talk about setting the
base URI, and leaving how the base URI is used mostly to RFC 2396 except
insofar as how a relative URI reference in an xml:base itself is resolved
(which is definitely for the XML Base spec to say).

So my suggestion for rewording the beginning of section 4 follows:

  4. Resolving Relative URIs 

     When XML Base is supported, then an xml:base attribute
     specification on an element sets the current base URI
     for the scope of the entire element (including all
     attribute specifications within that element's start
     tag) until and unless overridden by an xml:base attribute
     specification on a descendant element.  That is, the base URI
     for every element is that determined by the xml:base attribute
     appearing on that element, if one exists, otherwise by the
     xml:base attribute of the nearest ancestor of that element
     having an xml:base attribute.

     The current base URI in force affects the resolution of
     relative URIs as follows:  

     * A relative URI appearing as the value of an xml:base
       attribute is resolved against the base URI in force
       within the scope of the parent element of the element
       containing the xml:base attribute or against the base 
       URI of the document entity if the element containing
       the xml:base attribute has no parent.

     * All other relative URIs are resolved against the base
       URI in force within the scope of the current element.
       This includes relative URIs in attribute specifications
       in the start tag of the current element, relative URIs
       in text content within the current element, and relative
       URIs appearing in the content of a processing instruction
       within the current element.

     In both cases, the process of resolving the base URI and
     relative URI is defined by RFC 2396 [IETF RFC 2396].

     The complete process for determing the base URI is
     defined by RFC 2396 [IETF RFC 2396] which is summarized
     as follows (highest priority to lowest):

     [then continue with the 4 points as in the current WD.]

paul

Received on Tuesday, 11 July 2000 00:48:12 UTC