Fellow XSLers,
How can I use a string param passed on the command line as an XPath?
E.g., if I have this XML:
<library>
<book>
<title>Bob</title>
</book>
</library>
and I want to have a general-purpose XSL that I can pass an XPath to
output any desired XML fragment. So I tried this:
<xsl:output method="xml" indent="yes"/>
<xsl:param name="xpath"/> <!-- passed on command line as a param -->
<xsl:template match="/">
<xsl:copy-of select="$xpath"/>
</xsl:template>
passing xpath="/library/book[title='Bob']". But of course, it just
outputs this:
/library/book[title='Bob']
while I really wanted the node at that XPath:
<book>
<title>Bob</title>
</book>
Is there a function or syntax in XSLT 1 or 2 that will evaluate the
XPath at run-time?
(BTW, I'm using SaxonPE 9.3 on Linux, if that matters.)
Thanks so much for any help!
--Rich
Richard Fozzard, Computer Scientist
Geospatial Metadata at NGDC: http://www.ngdc.noaa.gov/metadata
Cooperative Institute for Research in Environmental Sciences (CIRES)
Univ. Colorado & NOAA National Geophysical Data Center, Enterprise Data Systems
325 S. Broadway, Skaggs 1B-305, Boulder, CO 80305
Office: 303-497-6487, Cell: 303-579-5615, Email:
richard(_dot_)fozzard(_at_)noaa(_dot_)gov
--~------------------------------------------------------------------
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
To unsubscribe, go to: http://lists.mulberrytech.com/xsl-list/
or e-mail: <mailto:xsl-list-unsubscribe(_at_)lists(_dot_)mulberrytech(_dot_)com>
--~--