Sign Up
Search
Options
search
Chat
Help
News
Log in
Not Logged in
Home
»
Boards
»
Stylus Studio Developer Network
»
XSLT Help and Discussion
»
Concatenate Same Element
Topic
Topic Page
1
2
3
4
5
6
7
8
9
Prev Topic
Next Topic
next
Subject:
Concatenate Same Element
Author:
jr linnihan
Date:
24 Aug 2007 11:36 AM
I am new to XSLT programming and am trying to concatenate a series of elements that have the same name.
Here is a sample of my source XML:
<ordmsg>
<type>I</type>
<text>statement 1</text>
<text>statement 2</text>
<text>statement 3</text>
<text>statement 4</text>
<text>statement 5</text>
</ordmsg>
For my output I need to see:
<CommentType>I</CommentType>
<Text>statement 1 statement 2 statement 3 statement 4 statement 5</Text>
My XSLT currently looks like this:
<Comments>
<xsl:for-each select="ordmsg">
<Comment>
<xsl:attribute name="CommentType">
<xsl:value-of select="type" />
</xsl:attribute>
<xsl:attribute name="Text">
<xsl:choose>
<xsl:when test="text and string-length(normalize-space(text))=0">
<xsl:value-of select="'.'" />
</xsl:when>
<xsl:otherwise>
<xsl:value-of select="text" />
</xsl:otherwise>
</xsl:choose>
</xsl:attribute>
</Comment>
</xsl:for-each>
</Comments>
The problem with this is that it is only returning the first <Text> element "statement 1". I need it to combine all <Text> elements.
Any suggestions?
Thanks in advance.
next
Subject:
Concatenate Same Element
Author:
Minollo I.
Date:
24 Aug 2007 03:59 PM
...something like this?
<Comments>
<xsl:for-each select="ordmsg">
<Comment>
<xsl:attribute name="CommentType">
<xsl:value-of select="type"/>
</xsl:attribute>
<xsl:attribute name="Text">
<xsl:for-each select="text">
<xsl:choose>
<xsl:when test=". and string-length(normalize-space(.))=0">
<xsl:value-of select="'.'"/>
</xsl:when>
<xsl:otherwise>
<xsl:value-of select="."/>
</xsl:otherwise>
</xsl:choose>
</xsl:for-each>
</xsl:attribute>
</Comment>
</xsl:for-each>
</Comments>
top
Subject:
Concatenate Same Element
Author:
jr linnihan
Date:
24 Aug 2007 05:16 PM
Perfect.
Thanks!
Topic Page
1
2
3
4
5
6
7
8
9
Prev Topic
Next Topic
Powered by
Stylus Studio
, the world's leading
XML IDE
for
XML
,
XSLT
,
XQuery
,
XML Schema
,
DTD
,
XPath
,
WSDL
,
XHTML
,
SQL/XML
, and
XML Mapping
!
Go to Conference:
Select Conference
Stylus Studio Feature Requests
Stylus Studio Technical Forum
Website Feedback
XSLT Help and Discussion
XQuery Help and Discussion
Stylus Studio FAQs
Stylus Studio Code Samples & Utilities
Stylus Studio Announcements
go
Log In Options
Username:
Password:
Site Map
|
Privacy Policy
|
Terms of Use
|
Trademarks
Stylus Scoop XML Newsletter:
Stylus Studio® and DataDirect XQuery ™are from DataDirect Technologies, is a registered trademark of Progress Software Corporation, in the U.S. and other countries. © 2004-2016 All Rights Reserved.