xsl-list
[Top] [All Lists]

Re: [xsl] Getting max/min numbers out of nested structure

2013-06-10 10:43:47
Michele R Combs wrote:
Given this nested structure (hope it comes through legibly):

<a>
      <b>
           <box>1</box>
           <box>1</box>
      </b>
      <b>
           <box>1</box>
           <box>2</box>
           <c>
                <box>2</box>
                <box>2</box>
           </c>
      </b>
</a>
<a>
      <b>
           <box>3</box>
           <box>4</box>
           <c>
                <box>6</box>
                <box>6</box>
           </c>
           <box>5</box>
           <box>5</box>
      </b>
      <b>
           <box>5</box>
           <box>5</box>
      </b>
</a>

What is the easiest way to find the max/min box numbers in each <a>?  That is, for the first <a> I want 
"1-2" and for the second <a> I want "3-6."  FYI, in the real data, rather than stopping at three 
nested levels (a, b, c) it can potentially go up to 12 (!!).  Normally I would simply grab the value from the first 
descendant and the value from the last descendant, but it turns out that sometimes the numbers aren't in order within the 
document tree (as shown in the second <a>) so that's not reliable enough.

  <xsl:template match="a">
    <xsl:variable name="max" select="max(.//box)"/>
    <xsl:variable name="min" select="min(.//box)"/>
  </xsl:template>

--~------------------------------------------------------------------
XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list
To unsubscribe, go to: http://lists.mulberrytech.com/xsl-list/
or e-mail: <mailto:xsl-list-unsubscribe(_at_)lists(_dot_)mulberrytech(_dot_)com>
--~--

<Prev in Thread] Current Thread [Next in Thread>