Re: xml-stylesheet base resource identifier

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

So, please, as slowly and explicitly as possible, help me follow the
steps, because I'm still not seeing why any change is required.

Bjoern Hoehrmann writes:

> * Henry S. Thompson wrote:
>>I think the document itself answers that question, by saying
>>
>> "The semantics of the pseudo-attributes are exactly as with <LINK
>>  REL="stylesheet"> in HTML 4.0"
>
> HTML 4.01 refers to RFC 1808 for this purpose, while xml-stylesheet
> refers to RFC 2396.

The reference to RFC 2396 is _only_ for the purposes of discussing
same-document references.  For better or worse, the _only_ reference
which addresses your question is the one to HTML 4.0.  So the _only_
place we need look for an answer is in HTML 4.0, right?.

>>Turning to HTML 4.0 [2] we find:
>>
>> "User agents must calculate the base URI according to the following
>>  precedences (highest priority to lowest):
>>
>> "1. The base URI is set by the BASE element.
>>
>> "2. The base URI is given by meta data discovered during a protocol
>>     interaction, such as an HTTP header (see [RFC2616]).
>>
>> "3. By default, the base URI is that of the current document. Not all
>>     HTML documents have a base URI (e.g., a valid HTML document may
>>     appear in an email and may not be designated by a URI). Such HTML
>>     documents are considered erroneous if they contain relative URIs and
>>     rely on a default base URI."
>>
>>Clause 1 clearly don't apply, but clauses 2 and 3 seem to me to give a
>>complete answer.
>
> It is not clear to me that 1) does not apply e.g. in case of a XHTML
> document using both xml-stylesheet and <base/> or whethet such a
> document could possibly be conforming as HTML 4.01 requires that no
> relative references are used prior to the <base/> element (if any);
> of course, that restriction applies only to elements, not processing
> instructions. In any case, neither the XHTML nor the xml-stylesheet
> specifications explain how to process this case.

So I agree that the situation with this document:

<?xml-stylesheet type='text/css' href='my.css'?>
<html xmlns="http://www.w3.org/1999/xhtml">
 <head>
  <base href="http://www.w3.org/Style/"/>
 . . .
</html>

is unclear, and that the *XML Stylesheet* REC should be amended to
cover it.  I _think_ I think that amendment should be to make clear
that wrt the semantics for the 'href' pseudo-attribute the resolving
of relative URIs should follow only clauses (2) and (3) of [1],
because detecting the error is likely to be difficult and therefore
unimplemented -- what do you think?

>>I'm sorry to be dense, but I can't think of a document in which the
>>XML Base quote above "does not apply" to an xml-stylesheet PI --
>>Bjoern, could you please illustrate your point?
>
> Let F be a XML document format for which the specification does not
> normatively reference the XML Base specification

[I don't see the relevance, but let's carry on]

> and let D be a XML document that conforms to F with a xml-stylesheet
> PI that conforms to the xml-stylesheet specification. Since XML Base
> applies only to docuemnt formats for which the specification
> normatively references XML Base, it does not apply to D. A simple
> example is
>
>   <?xml-stylesheet href='foo'?><x/>

OK, so stipulate that only the *XML Stylesheet* REC applies -- why
doesn't _its_ reference to HTML 4.0 for the semantics of 'href' tell
us what we need to know?

> Now let F be the SVG 1.1 specification and D be an SVG 1.1 document
> with a xml-stylesheet processing instruction. We can now argue that,
> because SVG 1.1 normatively references XML Base, that specification
> applies to the PI in D. We can also argue that because the xml-
> stylesheet specification does not normatively reference XML Base,
> that specification does not apply to the PI in D.

So, fine, *XML Base* applies, and it says, with respect to cases like
this:

  "the base URI of the document entity or external entity containing
   the processing instruction."

So once again, we have a clear answer.

> The XML Base specification does not explain whether, in case of
> processing instructions, the requirements apply regardless of what
> the specification of the processing instruction refers to XML Base,

Indeed.  All it says is

 "*5 Conformance*

   An application conforms to XML Base if it calculates base URIs in
   accordance with the conditions set forth in this specification."

SVG says it conforms, so to conform to SVG you have to play by the XML
Base rules, so the SVG example is covered.

> but it is very clear that it does not apply when there is no such
> normative reference at all.

I think it's clear that it doesn't -- there's no suggestion anywhere
that *XML Base* describes _post-hoc_ mandatory behaviour for any XML
application.

> But this is all irrelevant, the xml-stylesheet specification does
> not define what the base resource identifier for any given xml-
> stylesheet processing instruction is

I think I've shown how it does define that for the two examples above,
and so I'm left with only the XHTML case uncovered -- is there
anything else?

> simply adding the definition to the errata document is much, much
> less work than continuing this discussion.

Maybe it would help if I saw the definition you'd like to see added --
could you draft a suggested corrigendum?

Thanks,

ht

[1] http://www.w3.org/TR/REC-html40/struct/links.html#h-12.4.1
- -- 
 Henry S. Thompson, HCRC Language Technology Group, University of Edinburgh
                     Half-time member of W3C Team
    2 Buccleuch Place, Edinburgh EH8 9LW, SCOTLAND -- (44) 131 650-4440
            Fax: (44) 131 650-4587, e-mail: ht@inf.ed.ac.uk
                   URL: http://www.ltg.ed.ac.uk/~ht/
[mail really from me _always_ has this .sig -- mail without it is forged spam]
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.6 (GNU/Linux)

iD8DBQFFIQ1bkjnJixAXWBoRAjxFAJ9XEsMjvGhpY28fi7EZRfR6VjL6KwCeNiAB
orhhip3PaEfLGRNs0Pn+cs8=
=7srq
-----END PGP SIGNATURE-----

Received on Monday, 2 October 2006 13:38:08 UTC