[Home] [By Thread] [By Date] [Recent Entries]

  • From: Kay Michael <Michael.Kay@i...>
  • To: "'kgoss@i...'" <kgoss@i...>, xml-dev@x...
  • Date: Tue, 20 Jun 2000 10:11:23 +0100

>My problem is that if I'm given a few different parameters, how can I
easily
>and efficiently build an XSL search pattern that accounts for various
>positioning within the XML structure?

XSLT doesn't allow XPath queries to be constructed dynamically, so this is a
bit difficult. (Saxon has an extension to do this called saxon:evaluate()).

One thing you could use is a sequence of filter steps:

<xsl:variable name="v1" select="//client"/>
<xsl:variable name="v2"
   select="$v1[not($name)] | $v1[$name and $name=@name]"/>
<xsl:variable name="v3"
   select="$v2[not($version)] | $v1[$version and $version=@name]"/>

The union expression here really acts as a conditional expression: if
$version is null, it selects the first operand, otherwise it selects the
second.

>but can I use a series of $and$ directives

Only just spotted that. The reference to $and$ suggests you are not using
XSL, but the-language-that-Microsoft-refer-to-as-XSL. So ignore everything I
wrote until now, it's a different language.

Mike Kay

***************************************************************************
This is xml-dev, the mailing list for XML developers.
To unsubscribe, mailto:majordomo@x...&BODY=unsubscribe%20xml-dev
List archives are available at http://xml.org/archives/xml-dev/
***************************************************************************

Site Map | Privacy Policy | Terms of Use | Trademarks
Free Stylus Studio XML Training:
W3C Member