This is the mail archive of the xsl-list@mulberrytech.com mailing list .


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

Re: multiple XML tags -> single output


zbrown@linuxcare.com wrote:
> OK, the docs I've got say that '//issue' will match all <issue> elements
> anywhere in the document. As opposed to 'issue' which only matches children
> in the current context.

True, but...

<xsl:value-of select="//issue/@num"/> 

Here you are selecting the 'num' attribute of *all* issue elements in the
document.

xsl:value-of takes the string-value of its select attribute and makes a
text node out of it in the result tree. Check the XPath spec and see that
the string-value of a node-set is the string-value of only the *first*
node in the set.

So no matter what the current node is, this will only ever give you the
value of the first num attribute of the first issue element that has one.
Is this really what you want?

Also, the concat() function is standard XPath/XSLT and will work with your
processor. You just need to be sure the paths are correct. Doing 3
xsl:value-of instructions in a row is relatively wasteful.

   - Mike
____________________________________________________________________
Mike J. Brown, software engineer at            My XML/XSL resources: 
webb.net in Denver, Colorado, USA              http://skew.org/xml/


 XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]