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
K KSubject: XSL finding a node based on value of other node + multilevel sorting
Author: K K
Date: 07 Mar 2012 08:46 AM
Hello,

possibly a dump question, but I have not been finding what I was looking for some time.

My XML(excerpt):
---------------

<thesaurus>
<term>
<title>defense</title>
<narrowerterm>defense skills</narrowerterm>
<narrowerterm>defense actions</narrowerterm>
</term>
<term>
<title>defense skills</title>
<broaderterm>defense</broaderterm>
<narrowerterm>skill cd</narrowerterm>
<narrowerterm>skill xy</narrowerterm>
<narrowerterm>skill ab</narrowerterm>
</term>
<term>
<title>defense actions</title>
<broaderterm>defense</broaderterm>
<narrowerterm>actions against xy</narrowerterm>
<narrowerterm>actions against ab</narrowerterm>
</term>
</thesaurus>
---------------

MY XSL:
---------------
<xsl:template match="thesaurus">
<html>
<body>
<xsl:for-each-group select="term" group-by="title">
<xsl:sort select="title"/>
<xsl:choose>
<xsl:when test="broaderterm">
</xsl:when>
<xsl:otherwise>
<xsl:choose>
<xsl:when test="use">
</xsl:when>
<xsl:otherwise>
<p>
<xsl:value-of select="current-grouping-key()"/><br/>
<xsl:for-each select="narrowerterm">
.<xsl:value-of select="."/><br/>
<xsl:for-each select="???"/>
..<xsl:value-of select="narrowerterm"/><br/>
</xsl:for-each>
</xsl:for-each>
</p>
</xsl:otherwise>
</xsl:choose>
</xsl:otherwise>
</xsl:choose>
</xsl:for-each-group>
</body>
</html>
</xsl:template>
---------------

What I want
---------------

defense
.defense actions
..actions against ab
..actions against xy
.defense skills
..skill ab
..skill cd
..skill xy

---------------

That's where I am
---------------

defense
.defense skills
.defense actions

---------------

Basically there are two things I need to figure out:

1) multilevel sorting

2) on the third level where I put the ???: how to select another <term> which has the <title> that equals the <narrowerterm> of the <term> currently use.

I hope this is clear enough.

Thanks a lot!

All the best

KK

Posttop
Ivan PedruzziSubject: XSL finding a node based on value of other node + multilevel sorting
Author: Ivan Pedruzzi
Date: 07 Mar 2012 09:22 AM
Which Stylus Studio version are you running?

<<"These boards are part of the Stylus Studio Developer Network. They are a service to users of Stylus Studio only.">>

If you download, register and start developing XSLT using Stylus
Studio you will have access to the forum resources.

http://www.stylusstudio.com/xml_download.html

Hope this helps
Stylus Studio Team

 
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.