[
Lists Home |
Date Index |
Thread Index
]
> I agree that empty elements are a special class of those, but is the
> time it takes to analyse the schema to work out whether a type is
> empty likely to give a significant speed advantage over just checking
> whether the element has any children? It might if the document had
> huge numbers of those elements, or if the schema analysis only had to
> occur once. Otherwise, it's much less clear cut.
There is one example in XSLTMark where schema knowledge could make a
dramatic difference. It effectively does
<xsl:template match="row[id='0432']">
<html>
.. stuff ..
</html>
</xsl:template>
<xsl:template match="text()"/>
If you know that a row cannot contain another row then you can skip
processing 99.99% of the data.
The challenge when designing an optimizer is, of course, recognizing special
cases that are sufficiently common to be worth looking for. I don't know if
that's true here.
Michael Kay
Software AG
home: Michael.H.Kay@ntlworld.com
work: Michael.Kay@softwareag.com
|