Subject: Re: [xsl] accessing xml elements from current and external file From: Andrew Welch <andrew.j.welch@xxxxxxxxx> Date: Thu, 4 Aug 2011 14:16:12 +0100 |
In case you're interested, a good way of doing this is to use a key: <xsl:key name="config-options" match="d:options" use="."/> then you can do: <xsl:when test="key('config-options', /s:root/s:element[s:id = 1], $config-doc)"> where $config-doc is <xsl:variable name="config-doc" select="doc('configuration.xml')"/> It should be more efficient, and avoids the need to keep pointers in variables. cheers andrew On 4 August 2011 13:58, Mansour Al Akeel <mansour.alakeel@xxxxxxxxx> wrote: > Thank you all for the fast response. > Yep putting the root in a variable seems to be what I need. > It helped ! :) > > Thank you. > > > On Thu Aug 04,2011 08:42 am, Murray McDonald wrote: >> >> Hi Mansour, >> >> It's a problem of context -- you need to put a "pointer" to "/s:root" into a >> varible and then access it that way: >> >> <xsl:variable name="docroot" select="/s:root"/> >> >> >> Here is some code that explains what I am doing: >> <xsl:for-each >> select="document('configuration.xml')/d:config/d:options"> >> <option> >> <xsl:attribute name="label" > >> <xsl:choose> >> <xsl:when test="$docroot/s:element[ s:id=1 ]= ." > >> <xsl:value-of select="'true'" /> >> </xsl:when> >> </xsl:choose> >> </xsl:attribute> >> </option> >> </xsl:for-each> >> >> Murray > > -- Andrew Welch http://andrewjwelch.com
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
Re: [xsl] accessing xml elements fr, Mansour Al Akeel | Thread | [xsl] test on string-length of text, Bram Reader |
Re: [xsl] accessing xml elements fr, Mansour Al Akeel | Date | Re: [xsl] dynamic table in report, Mathis Mörke |
Month |