|
[XSL-LIST Mailing List Archive Home] [By Thread] [By Date] [Recent Entries] [Reply To This Message] RE: Keys off of variable xml source
That should be <xsl:key name="k" match="entry" use="@code"/> and <xsl:attribute name="value"> <xsl:value-of select="key('k', $code)/@value"/> </xsl:attribute> MK > -----Original Message----- > From: Michael Kay [mailto:mike@xxxxxxxxxxxx] > Sent: 01 April 2005 18:01 > To: xsl-list@xxxxxxxxxxxxxxxxxxxxxx > Subject: RE: Keys off of variable xml source > > > > > > The reason for a lookup xml source is to act as a cross-reference to > > data in the main xml source. So, I need to reference all elements > > who's ID = 123 but my match is expressed as a code value "abc". The > > code "abc" maps to 123 in my lookup. > > > So, I'm still scratching my head wondering how I might > effectively put > > the external file to use with keys, but thinking it won't work, the > > context would strictly be of the main xml source. > > I'm not sure which part of the explanation you didn't understand. > > lookup.xml > > <lookup> > <entry code="abc" value="123"/> > <entry code="xyz" value="987"/> > </lookup> > > main.xml > > <data> > <reading code="abc"/> > </data> > > required output > > <data> > <reading value="123"/> > </data> > > stylesheet > > <xsl:transform .... > > <xsl:key name="k" match="entry" use="code"/> > > <xsl:template match="*"> > <xsl:copy><xsl:copy-of > select="@*"/><xsl:apply-templates/></xsl:copy> > </xsl:template> > > <xsl:template match="reading"> > <reading> > <xsl:variable name="code" select="@code"/> > <xsl:for-each select="document('lookup.xml')"> > <xsl:attribute name="value"><xsl:value-of > select="key('k', $code)"/> > </xsl:for-each> > </reading> > </xsl:template> > > or in 2.0 > > <xsl:template match="reading"> > <reading value="{key('k', @code, document('lookup.xml'))}"/> > </xsl:template> > > Michael Kay > http://www.saxonica.com/
|
PURCHASE STYLUS STUDIO ONLINE TODAY!Purchasing Stylus Studio from our online shop is Easy, Secure and Value Priced! Cast Your Vote
We need your help – Vote for DataDirect XML Products!
Winners and finalists announced at SOA World Conference in November. Download The World's Best XML IDE!Accelerate XML development with our award-winning XML IDE - Download a free trial today! Subscribe in XML format
|







