cocoon-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Kay Michael <Michael....@icl.com>
Subject RE: R:R:pathargs problem
Date Wed, 01 Mar 2000 16:25:21 GMT
> <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
> xsl:version="1.0">
> 
Relevant statements in the spec:
- An element from the XSLT namespace may have any attribute not from the
XSLT namespace, provided [it has a] non-null namespace URI.

I think it would be legitimate to interpret this as meaning that an XSLT
element must *not* have an attribute that *is* from the XSLT namespace,
otherwise the phrase "not from the XSLT namespace" would serve no purpose.
(But Saxon doesn't currently reject it, it ignores it).

- Vendors must not extend the XSLT namespace with additional elements or
attributes.

I certainly read this as saying that vendors must not attach a meaning to an
XSLT element or attribute if no meaning is defined for it in the standard.
So xsl:version must either be ignored or rejected.

- A processor is free to ignore such [additional] attributes, and must
ignore such attributes if it does not recognize the namespace URI. 

Since only the processor knows whether it has "recognized" a namespace URI,
I don't think this sentence adds anything. (Of course I recognize
"www.ibm.com", I saw it only last week...)

- In forwards-compatible mode (i.e. if version is not equal to 1.0), if the
element has an attribute that XSLT 1.0 does not allow the element to have,
then the attribute must be ignored. 

So if version="1.1", then specifying xsl:version="1.0" is allowed and has no
meaning. Except once again, the spec uses a phrase "does not allow" which is
thoroughly ambiguous.

- Appendix D, xsl:stylesheet, clearly shows the version attribute as
mandatory. There's nothing that says xsl:version can be used instead.

In short, I think the only question is whether xsl:version here should be
ignored or whether it should be rejected. It certainly isn't acceptable to
treat it as a synonym for "version", and omitting "version" is definitely an
error.

Saxon will currently ignore "xsl:version", but will complain if "version" is
absent.

Mike Kay

Mime
View raw message