Subject: Re: [xsl] Dynamic variables? From: Martin Honnen <Martin.Honnen@xxxxxx> Date: Sun, 28 Nov 2010 18:44:51 +0100 |
I think this may be addressed in the FAQ, under "what can't XSLT do," but I'm not sure I'm understanding it correctly, specifically the question about referencing a variable whose name is referenced as an attribute in the XML. For example, suppose the XML looks like this:
<styles> <style name="basic" typeface="Optima" weight="normal" slant="roman"/> <style name="emphatic" typeface="Optima" weight="bold" slant="italic"/> </styles> . . . <p style="basic">This paragraph contains some<span style="emphatic">emphatic</span> text.</p>
I want to remember those "style" definitions so I can emit appropriate code when they are referenced. Is there a way to create variables whose names come from the @name attribute of the style elements, and reference them later by those names?
Consider to post the sample output you want to generate from above input. I think keys can help e.g. <xsl:key name="k1" match="styles/style" use="@name"/> and <xsl:template match="*[@style]"> <xsl:variable name="style" select="key('k1', @style)"/> <!-- now use the found style here --> ... </xsl:variable> --
Martin Honnen http://msmvps.com/blogs/martin_honnen/
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
[xsl] Dynamic variables?, Peter Davis | Thread | Re: [xsl] Dynamic variables?, Michael Kay |
[xsl] Dynamic variables?, Peter Davis | Date | Re: [xsl] Issue with Xalan nodeset, Martin Honnen |
Month |