Predicates and children
match="foo[@bar]" finds foo elements that have are children of the current node, and have a bar attribute
match="foo/@bar" finds bar attributes of foo children of the current node
if this is in an apply-templates, then the current node in the matching template will be the foo element in the first case but an _attribute node_ in the second.
match="foo/@bar" does not mean `children' it means `next step' and at each step you can change axis along which to travel, here you have @ which is short for attribute::, and no specified axis is short for child:: so the above is really
which means get bar attributes of foo children.
xsl:value-of vs xsl:apply-templates
Using value-of just gets you the character data, so if there is any xml markup in the content of the current element then that won't get output from that markup.
xsl:if test question
'1' is the string 1, on which you can't do a less than test. You want the number 1, so use
<xsl:when test="$counter < 1">
> What I am trying to do is simply to test if the number of ELT is less > than 1
If that's all you want to do with the count, you don't need a variable at all:
<xsl:when test="count(ELT) = 0">
since it's a count frrom a node list, it can't be negative, so = 0 seems a simpler test than < 1.
In fact that is just testing whether there are any ELT, for which you don't need count() as an empty node list counts as false,
You mean XSLT code for syntax highlighting? I'm not aware of pure XSLT based solution (although with XSLT 2.0 RE support you can do a lot), but there is Saxon extension XSLTHL (http://sourceforge.net/projects/xslthl) which can be used for syntax highlighting. It is also integrated in DocBook XSL stylesheets: xmlguru.cz
Jacek Radajewski adds
I wrote my own templates to do generic XML syntax highlighting, but then found XML verbatim (HTML output) by Oliver Becker - http://www2.informatik.hu-berlin.de/~obecker/XSLT/
I've created an equivalent FO stylesheet and added support for coloring prefixes by name and ability to select (via XPath) XML elements for emphasis.
The stylesheets can be found here sourceforge