xsl-list
[Top] [All Lists]

RE: [xsl] Match nodes searching for attributes in children

2010-01-18 03:34:38
One curious thing though, I noticed that my xslt 
processor (xalan 2.7.1 and the one included in java) are not 
able to match attributes. Other people claim something like 
this is possible:

<xsl:template match="@attr">
or even:
<xsl:template match="@*">

It is indeed possible.

I once heard a rather nice description of the template matching model. On
one side of a high wall is someone performing an apply-templates
instruction. He selects a node, puts it in a bottle, and throws it over the
wall. On the other side of the wall are a number of match templates. They
each look at each bottle as it comes over, and decide whether they're
interested in that kind of node. If two of them are, they fight over it, and
one of them wins. If no-one is interested, it lands on the floor.

In your case you've got a template waiting for attribute nodes to be thrown
over the wall, but no-one is throwing them, so it never gets a chance to
catch the bottle and do its thing.

Even the default template will not match them. An empty 
stylesheet will copy only the text elements. It will be 
difficult for me to get help if the processors behave differently.

You've only described the behaviour of one processor. What's your evidence
that other processors behave differently?

Regards,

Michael Kay
http://www.saxonica.com/
http://twitter.com/michaelhkay 


--~------------------------------------------------------------------
XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list
To unsubscribe, go to: http://lists.mulberrytech.com/xsl-list/
or e-mail: <mailto:xsl-list-unsubscribe(_at_)lists(_dot_)mulberrytech(_dot_)com>
--~--