Re: [xsl] matching attribute values that are in range

Subject: Re: [xsl] matching attribute values that are in range
From: Florent Georges <darkman_spam@xxxxxxxx>
Date: Wed, 19 Jul 2006 13:13:40 +0200 (CEST)
Jeff Sese wrote:

  Hi

> i'm trying to match an element that may have an attribute
> value that is in a range format (1-5), and is located on a
> separate xml document; how can i get my xpath to match?

  The interesting part is to get the right entries:

    ~/xslt/tests> cat number-ranges.xml
    <entries>
      <entry num="0"/>
      <entry num="1"/>
      <entry num="2"/>
      <entry num="3"/>
      <entry num="4"/>
      <entry num="5"/>
      <entry num="6"/>
      <entry num="7"/>
      <entry num="8"/>
    </entries>

    ~/xslt/tests> cat number-ranges.xsl
    <xsl:transform
        xmlns:xsl="http://www.w3.org/1999/XSL/Transform";
        version="1.0">

      <xsl:output indent="yes" omit-xml-declaration="yes"/>

      <xsl:template match="/">
        <xsl:variable name="range" select="'1-5'"/>
        <xsl:variable name="down-limit" select="
            number(substring-before($range, '-'))"/>
        <xsl:variable name="up-limit" select="
            number(substring-after($range, '-'))"/>
        <xsl:copy-of select="
            entries/entry[ @num &gt;= $down-limit
                             and @num &lt;= $up-limit ]"/>
      </xsl:template>

    </xsl:transform>

    ~/xslt/tests> saxon number-ranges.xml number-ranges.xsl
    Warning: Running an XSLT 1.0 stylesheet with an XSLT 2.0 processor
    <entry num="1"/>
    <entry num="2"/>
    <entry num="3"/>
    <entry num="4"/>
    <entry num="5"/>

  Regards,

--drkm

























	

	
		
___________________________________________________________________________ 
Dicouvrez un nouveau moyen de poser toutes vos questions quelque soit le sujet ! 
Yahoo! Questions/Riponses pour partager vos connaissances, vos opinions et vos expiriences. 
http://fr.answers.yahoo.com 

Current Thread