This is the mail archive of the
xsl-list@mulberrytech.com
mailing list .
Multiple search
- From: "Wampler, David" <DWampler at e-Cognita dot com>
- To: "'XSL-List at lists dot mulberrytech dot com'" <XSL-List at lists dot mulberrytech dot com>
- Date: Mon, 17 Jun 2002 08:41:01 -0400
- Subject: [xsl] Multiple search
- Reply-to: xsl-list at lists dot mulberrytech dot com
I've encountered an out of memory problem with the following template.
Basically I just want to be able to search for 20 different parameters. The
results depend on all parameters.
<xsl:stylesheet
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
version="1.0">
<xsl:output method="xml"/>
<xsl:param name="Element1" select="'*'"/>
<xsl:param name="Element2" select="'*'"/>
<xsl:param name="Element3" select="'*'"/>
....continues for 20 parameters.
<xsl:variable name="Element1Nodes"
select="Pipelines/Pipeline[$Element1!='*'][Element1=$Element1]|Pipelines/Pip
eline[$Element1='*']"/>
<xsl:variable name="Element2Nodes"
select="$Element1Nodes[$Element2!='*'][Element2=$Element2]|$Element1Nodes[$E
lement2='*']"/>
<xsl:variable name="Element3Nodes"
select="$Element2Nodes[$Element3!='*'][Element3=$Element3]|$Element2Nodes[$E
lement3='*']"/>
.....continues for 20 parameters
<xsl:template match="/">
<Pipelines>
<xsl:call-template name="Pipeline1"/>
</Pipelines>
</xsl:template>
<xsl:template name="Pipeline1">
<Pipeline>
<xsl:copy-of select="$Element3Nodes"/>
</Pipeline>
</xsl:template>
</xsl:stylesheet>
xml looks like this....
<Pipelines>
<Pipeline>
<Element1>data</Element1>
<Element2>data</Element2>
<Element3>data</Element3>
</Pipeline>
<Pipeline>
<Element1>data</Element1>
<Element2>data</Element2>
<Element3>data</Element3>
</Pipeline>
</Pipelines>
The user can enter any or all parameters. If none are entered, it assumes
that it will display * (all) for each element. Any help is greatly
appreciated.
Thanks.
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list