You would need to use xsl:number with a count attribute pattern equal to the match pattern you have used if you want the elements with different names to be counted together.
--
Diese Nachricht wurde von meinem Android Mobiltelefon mit GMX Mail gesendet.
"Jesper Tverskov jesper(_dot_)tverskov(_at_)gmail(_dot_)com" <xsl-list-service(_at_)lists(_dot_)mulberrytech(_dot_)com>schrieb:
Hi list
I have reduced the problem to this:
Input:
<items>
<a.x/>
<b.x/>
<a.x/>
</items>
Full Stylesheet:
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="2.0">
<xsl:output method="text"/>
<xsl:strip-space elements="*"/>
<xsl:template match="*[substring-before(local-name(), '.') = 'a']">
<xsl:number/>
</xsl:template>
</xsl:stylesheet>
Result:
12
That is what I want!
But if I change input to (one x added to first element name):
<items>
<a.xx/>
<b.x/>
<a.x/>
</items>
Result is
11
Several Saxon processors tested from inside Oxygen.
Any suggestions?
Cheers
Jesper Tverskov
http://www.xmlplease.com