return the same values. I would have thought...
local-name( */child::* )
local-name( */*/* )
would be the same (which they aren't).
I can't see why you should think they are the same, the rule is fairly
simple that if you don't specify an attribute it is child:: so
*/*/*
is
child::*/child::*/child::*
just as
x/y/z
is
child::x/child::y/child::z
Could somebody help me reason out why it is this way?
I can't see what you would want the rule to be, why do you want
the child attribute to be inferred on one * and not the other?
<xsl:for-each select="*/child::*[local-name()=$v]">
</xsl:for-each>
read as I only want */* where they have a child named $v.
I am not sure what you mean. */* is all grandchildren, do you mean the
grandchildren have children named $v, that would be
*/*[*[local-name()=$v]]
David
_____________________________________________________________________
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.
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list