[XSL-LIST Mailing List Archive Home] [By Thread] [By Date] [Recent Entries] [Reply To This Message]

Re: Dynamic XPath expression (I know it doesnt work in

Subject: Re: Dynamic XPath expression (I know it doesnt work in XSLT1.0)
From: Matt Dittbenner <mbditt@xxxxxxxxxxxxxxxxx>
Date: Thu, 26 Aug 2004 14:12:18 -0500
dittbenner
We had "tested" the dyn:evaluate function in xsltproc. In our "tests" it seemed to almost double the time it took.

We just "tested" the saxon:evaluate function (in saxon) and it doesn't noticably increase the parse time. That pleases me.

Love....
Matt

P.S....this is driving me insane

Josh Canfield wrote:

"since it increases the parse time so much...."

I'm very surprised by this statement, do you have any data that
supports the statement? Specifically that the parse time is increased?

Doing any sort of dynamic compilation of xpath is going to increase
the run time of the transformation. Using the built-in evaluate
functions seems like it would be the most efficient solution...

Josh

On Thu, 26 Aug 2004 12:38:47 -0500, Matt Dittbenner
<mbditt@xxxxxxxxxxxxxxxxx> wrote:


Hello,

After some pretty exhaustive searching on the web, I have decided to
join the list. I have noticed in the archives that more than one person
has had the same issue as I have...how to create an XPath expression
dynamically (from a variable, etc). The answer to these questions was to
use any of the available *:evaluate functions. I would like to try to
avoid that, since it increases the parse time so much....and that is not
acceptable.

My question is if there is any other way to accomplish this, for example
using XSLT2.0. I have found little information about the newer XSLT
recommendation, and the information I have found is fairly cryptic (at
least to me). Here is a more detailed example of what I am trying to do:

===================================
doc.xml
<tag2>Data I want...</tag2>

template.xhtml
<p>
  <getContent path="tag2/text()"/>
</p>

stylesheet.xsl
<xsl:variable name="path" select="/p/getContent/@path" />
<xsl:value-of select="document('doc.xml')/$path"/>
===================================

In an ideal world, stylesheet.xsl would use the XPath expression from
the attribute in template.xhtml to access another document (doc.xml) and
then grab the data located there. How do I do this?!

Thanks in advance,
Matt Dittbenner

Current Thread

PURCHASE STYLUS STUDIO ONLINE TODAY!

Purchasing Stylus Studio from our online shop is Easy, Secure and Value Priced!

Buy Stylus Studio Now

Download The World's Best XML IDE!

Accelerate XML development with our award-winning XML IDE - Download a free trial today!

Don't miss another message! Subscribe to this list today.
Email
First Name
Last Name
Company
Subscribe in XML format
RSS 2.0
Atom 0.3
Site Map | Privacy Policy | Terms of Use | Trademarks
Free Stylus Studio XML Training:
W3C Member
Stylus Studio® and DataDirect XQuery ™are products from DataDirect Technologies, is a registered trademark of Progress Software Corporation, in the U.S. and other countries. © 2004-2011 All Rights Reserved.