Subject: Re: Selection based on attribute value
From: Phil Lanch <phil@xxxxxxxxxxxxxxx>
Date: Thu, 09 Dec 1999 16:56:46 +0000
|
Try something like these 2:
<xsl:value-of
select="//Portal:ScreenPreferences/Portal:Screen[@primary='true']/Portal:screenTitle"/>
<xsl:value-of
select="//Portal:ScreenPreferences/Portal:Screen[@primary='true']/Portal:screenColor"/>
(If you're already inside a template for Portal:ScreenPreferences, you
can obvoiusly shorten those expressions.)
The key bit is [@primary='true'].
When we've gotten to Portal:Screen, we have a node-list of all the
Portal:Screen nodes: then [@primary='true'] selects from that list just
those nodes that have a primary attribute with value "true" -- which
happens to be just the one node. Then it's simple to get it's children.
Brett McLaughlin wrote:
>
> Given the following XML document fragment:
>
> <Portal:ScreenPreferences>
> <Portal:Screen primary="true">
> <Portal:screenTitle>Portal</Portal:screenTitle>
> <Portal:screenColor>#FFCC66</Portal:screenColor>
> </Portal:Screen>
> <Portal:Screen>
> <Portal:screenTitle>Services</Portal:screenTitle>
> <Portal:screenColor>#CC6600</Portal:screenColor>
> </Portal:Screen>
> <Portal:Screen>
> <Portal:screenTitle>Intranet</Portal:screenTitle>
> <Portal:screenColor>#0099CC</Portal:screenColor>
> </Portal:Screen>
> <Portal:Screen>
> <Portal:screenTitle>Control Panel</Portal:screenTitle>
> <Portal:screenColor>#CC9933</Portal:screenColor>
> </Portal:Screen>
> <Portal:Screen>
> <Portal:screenTitle>E-Commerce</Portal:screenTitle>
> <Portal:screenColor>#339900</Portal:screenColor>
> </Portal:Screen>
> <Portal:Screen>
> <Portal:screenTitle>Preferences</Portal:screenTitle>
> <Portal:screenColor>#CCEECC</Portal:screenColor>
> </Portal:Screen>
> </Portal:ScreenPreferences>
>
> I want (in my XSL stylesheet) to be able to get the color and title for the
> <Portal:Screen> element where the attribute 'primary' has the value true. I
> will take care of all the IMPLIED rules and so forth in the DTD; I just am
> not sure how to select this data... any help is appreciated.
--
bah...glugglug...humbug
phil
*witnesh relocation program alumnush*
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
|