|
[XSL-LIST Mailing List Archive Home] [By Thread] [By Date] [Recent Entries] [Reply To This Message] Re: Evaluating XSLT Expressions At Run-Time
Hi,
You can just use:
<xsl:apply-templates select="*[name() = $Node_Name]" />
for:
> <xsl:apply-templates select="$Node_Name" />
As an example the following stylesheet:
<?xml version="1.0" encoding="UTF-8" ?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
version="1.0">
<xsl:template match="/">
<xsl:variable name="test" select="'x'"/>
<xsl:apply-templates select="//*[name()=$test]"/>
</xsl:template>
<xsl:template match="x">Got x!</xsl:template>
</xsl:stylesheet>
applied on
<?xml version="1.0" encoding="UTF-8"?>
<test>
<x></x>
<x><y></y></x>
</test>
will give you
<?xml version="1.0" encoding="utf-8"?>
Got x!
Got x!
HTH,
George
-------------------------------------------------------------
George Cristian Bina mailto:george@xxxxxxxxxxxxx
<oXygen/> XML Editor - http://www.oxygenxml.com/
----- Original Message -----
From: "Schwartz, Rechell R, ALABS" <rrschwartz@xxxxxxx>
To: <xsl-list@xxxxxxxxxxxxxxxxxxxxxx>
Sent: Friday, January 09, 2004 9:26 AM
Subject: Evaluating XSLT Expressions At Run-Time
> All,
>
> I was wondering if there was a way to evaluate XSLT Expressions at
> run-time without resorting to using extensions. Specifically, what I am
> trying to do is as follows (this is a simplified version to ease the
> explanation). I have 2 XML documents: one that has my real XML data and
> a second document that specifies the node names that are identified in
> my first document. Depending upon what node name is read from the second
> document, I want the string value of that node name to be used in the
> line <xsl:apply-templates select="$Node_Name" />, so that a different
> template is called depending upon what the string value of $Node_Name
> evaluates to. Any help would be greatly appreciated.
>
> <xsl:template match="ElementFromFirstXMLDoc">
> <xsl:variable name="Data" select="document('doc2.xml')/Data" />
> <xsl:for-each select="$Data/Node">
> <xsl:variable name="Node_Name" select="NodeName" />
> <xsl:apply-templates select="$Node_Name" />
> </xsl:template>
>
> Thanks,
> Rechell Schwartz
>
> XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
>
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
|
PURCHASE STYLUS STUDIO ONLINE TODAY!Purchasing Stylus Studio from our online shop is Easy, Secure and Value Priced! 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
|

Cart








