Hi,
I am trying again here. Hope someone can help me on
this.
I have a test.xml and a name list in another xml file
called lookup.xml. I open the test.xml and also look
at the lookup.xml to see if there is any element
missing in the test.xml. If exists, I can just copy
the element into the result tree; if not, i can create
that one.
A template can do this job like:
<xsl:call-template name="replacement">
<xsl:with-param name="pName" select="'XX'"/>
<xsl:with-param name="defaultValue" select="'+'"/>
</xsl:call-template>
<xsl:template name="replacement">
<xsl:param name="pName"/>
<xsl:param name="defaultValue"/>
<xsl:choose>
<xsl:when test="*[name(.) = $pName]">
<xsl:copy-of select="?????"/>
</xsl:when>
<xsl:otherwise>
<xsl:element name="{$pName}">
<xsl:value-of select="$defaultValue"/>
</xsl:element>
</xsl:otherwise>
</xsl:choose>
</xsl:template>
test.xml:
<Member>
<XX>1</XX>
</Member>
I have to call the template replacement and pass the
pName as string since that is the thing I got from
lookup.xml. But in the template I just can NOT copy
that XX element and value because the pName is a
string. Is this the same problem like converting a
string into node-set? Or is there any workaround for
this.
Thanks
Dongling
__________________________________
Do you Yahoo!?
Yahoo! SiteBuilder - Free, easy-to-use web site design software
http://sitebuilder.yahoo.com
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list