[XSL-LIST Mailing List Archive Home] [By Thread] [By Date]

Re: [xsl] Searching text within a node


Subject: Re: [xsl] Searching text within a node
From: Michael Ludwig <milu71@xxxxxx>
Date: Tue, 4 Aug 2009 21:33:49 +0200

Lee schrieb am 04.08.2009 um 14:13:12 (-0500):
> 
> I have a block of xml that looks like the following.
> 
>  <Form>
>  <Names>
>   <LastName>Jones</LastName>
>   <LastName>Smith</LastName>
>   <LastName>Anderson</LastName>
>   </Names>
>   </form>

Not well-formed :-)

> I need to display blocks of code only if text matches the 
> text in any of the three nodes(or more) in LastName. So 
> you may have a block of code that should display only if 
> "Jones" is in the above nodes.

michael@wladimir:~/win-dev/XSLT :-) expand -t2 lee.xml
<?xml version="1.0"?>
<Form>
  <Names>
    <LastName>Jones</LastName>
    <LastName>Smith</LastName>
    <LastName>Anderson</LastName>
  </Names>
</Form>
michael@wladimir:~/win-dev/XSLT :-) expand -t2 lee.xsl 
<xsl:stylesheet version="1.0"
  xmlns:xsl="http://www.w3.org/1999/XSL/Transform">

  <xsl:param name="in" select="'Jones'"/>

  <xsl:template match="Form">
    <xsl:if test="$in = Names/LastName">
      <Match><xsl:copy-of select="$in"/></Match>
    </xsl:if>
  </xsl:template>

</xsl:stylesheet>
michael@wladimir:~/win-dev/XSLT :-) xsltproc lee.xsl lee.xml
<?xml version="1.0"?>
<Match>Jones</Match>
michael@wladimir:~/win-dev/XSLT :-) xsltproc --stringparam in x lee.xsl lee.xml
michael@wladimir:~/win-dev/XSLT :-) # no match, no output

Michael Ludwig


Current Thread
Keywords
xml