[XSL-LIST Mailing List Archive Home] [By Thread] [By Date] [Recent Entries] [Reply To This Message]

xsl: display only a specified node...

Subject: xsl: display only a specified node...
From: Jan Krattiger <jan.krattiger@xxxxxxxx>
Date: Mon, 14 Oct 2002 15:29:13 +0200
xsl display node name
hi folks

i'm not able to find a solution for that...and my xsl knowledge isn't that
good, so here's the situation:

XML:
<sequence stype="ondemand" broadcastID="00">
	<mark ID="m0001" name="testh" time="0:00:00">
		<index>
			<chapter lang="en" text="test1"/>
		</index>
	</mark>
	<mark ID="m0002" name="" time="0:00:20" />
	<mark ID="m0003" time="0:00:40" />
	<mark ID="m0004" time="0:01:00" />
	<mark ID="m0005" time="0:01:20">
		<index>
			<chapter lang="en" text="test2"/>
		</index>
	</mark>
</sequence>

this xml is used for the data itself and to build up a tree menu structure
like this (that works w/o problems):
						
			  frameset
-------------------------------------------------------
       tree menu frame			details frame
---------------------------	-------------------------
|sequence                 |   |                       |
| - mark 0:00:00 (m0001)  |   |                       |
|    - index              |   |                       |
| - mark 0:00:20 (m0002)  |   |                       |
| - mark 0:00:40 (m0003)  |   |                       |
| - mark 0:01:00 (m0004)  |   |                       |
| - mark 0:01:20 (m0005)  |   |                       |
|    - index              |   |                       |
---------------------------   -------------------------

functionality:

i click on sequence, and on the details frame the stype and broadcastID
attributes are shown (that works w/o problems).
i click on any mark, and the mark info (id / name / time)  is shown in the
details frame. (that works w/o problems)
i click on index under mark (m0001) and ONLY the index, that's belong to
m0001 should be displayed, but i get both...
the one from m0001 and m0005. here's the xsl:

<?xml version="1.0"?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
version="1.0">
<xsl:param name="page"/>   i get this from a asp script, so i know which
"tree element" was clicked 
<xsl:param name="markid"/> i get this from a asp script, so i know which
mark was clicked 
<xsl:template match="/">
...
	<body>	
		<xsl:apply-templates />
	</body>
...
</xsl:template>
<xsl:template match="sequence">
	<xsl:if test="$page = 'sequence'">
		...
			<xsl:value-of select="@broadcastID" />
		...
	</xsl:if>
	<xsl:apply-templates />
</xsl:template>
<xsl:template match="mark">
	<xsl:if test="$page = 'mark'">
		<xsl:if test="@ID=$markid">
			...
				<xsl:value-of select="@name" />
			...
		</xsl:if>	
	</xsl:if>
	<xsl:apply-templates />
</xsl:template>
<xsl:template match="index">
	<xsl:if test="$page = 'index'">
		<xsl:apply-templates/>
	</xsl:if>
</xsl:template>
<xsl:template match="chapter">
	...
		<xsl:value-of select="@text"/>
	...
</xsl:template>

the problem is that i can't really "identify" the index... so i can't check
which one the xsl should display
it should only show the info that belongs to the clicked tree-element. and
not all the childs from all the marks
as here in the bad example.

and as always please excuse my poor english...

thanks a lot


Jan M. Krattiger

Software Developer

Unit.Net AG
Thurgauerstrasse 54
CH - 8050 Zurich

Email:   jan.krattiger@xxxxxxxx       
Web:     http://unit.net



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


Current Thread

PURCHASE STYLUS STUDIO ONLINE TODAY!

Purchasing Stylus Studio from our online shop is Easy, Secure and Value Priced!

Buy Stylus Studio Now

Download The World's Best XML IDE!

Accelerate XML development with our award-winning XML IDE - Download a free trial today!

Don't miss another message! Subscribe to this list today.
Email
First Name
Last Name
Company
Subscribe in XML format
RSS 2.0
Atom 0.3
Site Map | Privacy Policy | Terms of Use | Trademarks
Free Stylus Studio XML Training:
W3C Member
Stylus Studio® and DataDirect XQuery ™are products from DataDirect Technologies, is a registered trademark of Progress Software Corporation, in the U.S. and other countries. © 2004-2013 All Rights Reserved.