XML Editor
Sign up for a WebBoard account Sign Up Keyword Search Search More Options... Options
Chat Rooms Chat Help Help News News Log in to WebBoard Log in Not Logged in
Show tree view Topic
Topic Page 1 2 3 4 5 6 7 8 9 Go to previous topicPrev TopicGo to next topicNext Topic
Postnext
Kevin YSubject: Need help for newbie!
Author: Kevin Y
Date: 18 Feb 2009 09:19 AM
Dear All, I have been working on designing a new xls and the xml provided has a few loops that are like the following. You see that some loops has multiple sets of Element_67/Element_380:

/Loop-FST
-Element_67
-Element_380
-Element_67_1
-Element_380_1
-Element_67_2
-Element_380_2
-Element_67_3
-Element_380_3

/Loop-FST
-Element_67
-Element_380
-Element_67_1
-Element_380_1
-Element_67_2
-Element_380_2
-Element_67_3
-Element_380_3
-Element_67_4
-Element_380_4
-Element_67_5
-Element_380_5

/Loop-FST
-Element_67
-Element_380
-Element_67_1
-Element_380_1
-Element_67_2
-Element_380_2

I want to have something similar to the following but with only one line of definition where 'x'='_1' or '_2' or '_3' or however many on the xml loop:

<xsl:for-each select="Loop-FST">
Title:<xsl:value-of select="Element-67x"/>
Subject:<xsl:value-of select="Element-380x"/>
</xsl:for-each>

Postnext
John BamptonSubject: Need help for newbie!
Author: John Bampton
Date: 19 Feb 2009 01:21 AM
Here, try something like this


<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="2.0">
<xsl:template match="/">

<xsl:for-each select="roots/Loop-FST">
<loopfirst>
<xsl:for-each select="*">

<xsl:if test="substring(name(),1,9) = 'Element_6' ">
<xsl:value-of select="."></xsl:value-of>
the elements 6
</xsl:if>
<xsl:if test="substring(name(),1,9) = 'Element_3' ">
<xsl:value-of select="."></xsl:value-of>
the elements 3
</xsl:if>
</xsl:for-each>
</loopfirst>
</xsl:for-each>

</xsl:template>
</xsl:stylesheet>

Thanks, John Bampton.

Posttop
James DurningSubject: Need help for newbie!
Author: James Durning
Date: 24 Feb 2009 11:44 AM
<xsl:variable name="number" select="1"/> <!-- change it here -->
<xsl:variable name="baseTitle" select="Element_67"/>

<xsl:variable name="nodeName">
<xsl:value-of select="$baseTitle"/>
<xsl:if test="$number &gt; 0">_<xsl:value-of select="$number"/></xsl:if>
</xsl:variable>
...

Title: <xsl:value-of select="*[local-name() = $nodeName]"/>

 
Topic Page 1 2 3 4 5 6 7 8 9 Go to previous topicPrev TopicGo to next topicNext Topic
Download A Free Trial of Stylus Studio 6 XML Professional Edition Today! 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

Log In Options

Site Map | Privacy Policy | Terms of Use | Trademarks
Stylus Scoop XML Newsletter:
W3C Member
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.