Lists Home |
Date Index |
> Where such values are specified to be constants, is there a reason not
> to parse them immediately rather than to wait until the template element
> is processed.
You seem to be assuming that XST processing is interleaved with the XML
parsing of the stylesheet. This isn't always the case, MSXML for example
aways just uses a complete DOM as the input stylesheet: that DOM could
come from anywhere. If the stylesheet was parsed at all (rather than
having been built using dom methods) the whole stylesheet is parsed
before the XSLT engine ever sees it.
> the only (obvious) way to predict the
> result for all documents is to restrict the value domain to eliminate
> prefixes. For example, by restricting the domain from QNames to NCNames
in something like the name attribute of xsl:element then elimnating
prefixes doesn't seem to change anything, even if it's an NCName it is
subject to the default namespace so is just as "variable" as a name with
a prefix, it just happens to have a prefix that is the empty string (in
which case, as a matter of surface syntax, you also miss off the ":")
It's different for QNames in XPath (1.0) expressions as there NCNames have
fixed interpretation as being in the null namespace.
But your comment seems to imply that in the current specification you
think there is something unpredicatble (rather than something that you
think is a poor design). It is not at all clear to me that this is the
case. An XSLT stylesheet can always generate a result tree containing
the namespace information required. there is some unpredicatbility over
the linearisation but all allowed linearisations would have sufficient
information to ensure that any required namespace declarations will be
present in any linearisation of the output.
This message has been checked for all known viruses by Star Internet
delivered through the MessageLabs Virus Scanning Service. For further
information visit http://www.star.net.uk/stats.asp or alternatively call
Star Internet for details on the Virus Scanning Service.