You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@xalan.apache.org by dm...@apache.org on 2001/06/22 23:23:46 UTC

cvs commit: xml-xalan/test/tests/conf/select select14.xsl select14.xml select41.xml select41.xsl select42.xml select42.xsl select43.xml select43.xsl select44.xml select44.xsl select45.xml select45.xsl select46.xml select46.xsl select47.xml select47.xsl select48.xml select48.xsl select49.xml select49.xsl select50.xml select50.xsl select51.xml select51.xsl select52.xml select52.xsl select53.xml select53.xsl select54.xml select54.xsl select55.xml select55.xsl select56.xml select56.xsl select57.xml select57.xsl select58.xml select58.xsl select59.xml select59.xsl select60.xml select60.xsl select61.xml select61.xsl select62.xml select62.xsl select63.xml select63.xsl select64.xml select64.xsl select65.xml select65.xsl select66.xml select66.xsl

dmarston    01/06/22 14:23:46

  Added:       test/tests/conf/select select14.xsl select14.xml
                        select41.xml select41.xsl select42.xml select42.xsl
                        select43.xml select43.xsl select44.xml select44.xsl
                        select45.xml select45.xsl select46.xml select46.xsl
                        select47.xml select47.xsl select48.xml select48.xsl
                        select49.xml select49.xsl select50.xml select50.xsl
                        select51.xml select51.xsl select52.xml select52.xsl
                        select53.xml select53.xsl select54.xml select54.xsl
                        select55.xml select55.xsl select56.xml select56.xsl
                        select57.xml select57.xsl select58.xml select58.xsl
                        select59.xml select59.xsl select60.xml select60.xsl
                        select61.xml select61.xsl select62.xml select62.xsl
                        select63.xml select63.xsl select64.xml select64.xsl
                        select65.xml select65.xsl select66.xml select66.xsl
  Log:
  NIST test cases, with varying degrees of modification
  
  Revision  Changes    Path
  1.1                  xml-xalan/test/tests/conf/select/select14.xsl
  
  Index: select14.xsl
  ===================================================================
  <?xml version="1.0"?>
  <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
  
    <!-- FileName: select14 -->
    <!-- Document: http://www.w3.org/TR/Xpath -->
    <!-- DocVersion: 19991116 -->
    <!-- Section: 3.3 Node Sets -->
    <!-- Purpose: Node-set union using mixed axes --><!-- Expression013 in NIST suite -->
    <!-- Creator: Carmelo Montanez, adapted by David Marston -->
  
  <xsl:template match="/doc/sub1/child2">
    <out>
      <xsl:for-each select="preceding-sibling::child1|//child3">
        <xsl:value-of select="."/><xsl:text>
  </xsl:text>
      </xsl:for-each>
    </out>
  </xsl:template>
  
  <xsl:template match="text()"/><!-- To suppress other output -->
  
  </xsl:stylesheet>
  
  
  1.1                  xml-xalan/test/tests/conf/select/select14.xml
  
  Index: select14.xml
  ===================================================================
  <?xml version="1.0"?>
  <doc>
    <sub1>
      <child1>preceding sibling number 1</child1>
      <child2>current node</child2>
      <child3>following sibling number 3</child3>
    </sub1>
    <sub2>
      <c>cousin 1</c>
      <c>cousin 2</c>
      <child3>cousin 3</child3>
    </sub2>
  </doc>
  
  
  1.1                  xml-xalan/test/tests/conf/select/select41.xml
  
  Index: select41.xml
  ===================================================================
  <?xml version="1.0"?>
  <doc>
    <sub1>
      <child1>child1</child1>
    </sub1>
    <sub2>
      <child2>child2</child2>
    </sub2>
  </doc>
  
  
  1.1                  xml-xalan/test/tests/conf/select/select41.xsl
  
  Index: select41.xsl
  ===================================================================
  <?xml version="1.0"?>
  <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
  
    <!-- FileName: select41 -->
    <!-- Document: http://www.w3.org/TR/Xpath -->
    <!-- DocVersion: 19991116 -->
    <!-- Section: 3.3 Node Sets -->
    <!-- Purpose: NodeSet union using two absolute location paths--><!-- Expression001 in NIST suite -->
    <!-- Creator: Carmelo Montanez -->
  
  <xsl:template match="/">
    <out><xsl:text>
  </xsl:text>
      <xsl:apply-templates select = "/doc/sub1/child1|/doc/sub2/child2"/>
    </out>
  </xsl:template>
  
  <xsl:template match="*">
    <xsl:value-of select="."/><xsl:text>
      </xsl:text>
  </xsl:template>
  
  </xsl:stylesheet>
  
  
  1.1                  xml-xalan/test/tests/conf/select/select42.xml
  
  Index: select42.xml
  ===================================================================
  <?xml version="1.0"?>
  <doc>
    <sub1>
      <child1>child1</child1>
    </sub1>
    <sub2>
      <child2>child2</child2>
    </sub2>
  </doc>
  
  
  1.1                  xml-xalan/test/tests/conf/select/select42.xsl
  
  Index: select42.xsl
  ===================================================================
  <?xml version="1.0"?>
  <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
  
    <!-- FileName: select42 -->
    <!-- Document: http://www.w3.org/TR/Xpath -->
    <!-- DocVersion: 19991116 -->
    <!-- Section: 3.3 Node Sets -->
    <!-- Purpose: NodeSet union using absolute and relative location paths-->
    <!-- Creator: Carmelo Montanez --><!-- Expression002 in NIST suite -->
  
  <xsl:template match="/">
    <out><xsl:text>
  </xsl:text>
      <xsl:for-each select="doc">
        <xsl:apply-templates select = "sub1/child1|/doc/sub2/child2"/>
      </xsl:for-each>
    </out>
  </xsl:template>
  
  <xsl:template match="*">
    <xsl:value-of select="."/><xsl:text>
      </xsl:text>
  </xsl:template>
  
  </xsl:stylesheet>
  
  
  
  
  1.1                  xml-xalan/test/tests/conf/select/select43.xml
  
  Index: select43.xml
  ===================================================================
  <?xml version="1.0"?>
  <doc>
    <sub1 pos="1">
      <child1>descendant number 1</child1>
    </sub1>
    <sub2 pos="2">
      <child1>descendant number 2</child1>
    </sub2>
  </doc>
  
  
  1.1                  xml-xalan/test/tests/conf/select/select43.xsl
  
  Index: select43.xsl
  ===================================================================
  <?xml version="1.0"?>
  <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
  
    <!-- FileName: select43 -->
    <!-- Document: http://www.w3.org/TR/Xpath -->
    <!-- DocVersion: 19991116 -->
    <!-- Section: 3.3 Node Sets -->
    <!-- Purpose: NodeSet union using the ancestor axis -->
    <!-- Creator: Carmelo Montanez --><!-- Expression003 in NIST suite -->
  
  <xsl:template match="/">
    <out>
      <xsl:for-each select="//child1">
        <xsl:apply-templates select="ancestor::sub1|ancestor::sub2"/>
      </xsl:for-each>
    </out>
  </xsl:template>
  
  <xsl:template match="*">
    <xsl:value-of select="@pos"/>
  </xsl:template>
  
  </xsl:stylesheet>
  
  
  
  
  1.1                  xml-xalan/test/tests/conf/select/select44.xml
  
  Index: select44.xml
  ===================================================================
  <?xml version="1.0"?>
  <doc>
    <sub pos="1">
      <child>child number 1</child>
      <sub-sub pos="1sub">
        <child>grandchild number 1</child>
      </sub-sub>
    </sub>
    <sub0 pos="2-no">
      <child>child number 2</child>
      <sub pos="2.5">
        <child>grandchild number 2</child>
      </sub>
    </sub0>
    <sub pos="3">
      <child>child number 3</child>
      <subno pos="3.5-no">
        <child>grandchild number 3</child>
      </subno>
    </sub>
    <sub0 pos="4-no">
      <child>child number 4</child>
      <sub-sub pos="4sub">
        <child>grandchild number 4</child>
      </sub-sub>
    </sub0>
  </doc>
  
  
  1.1                  xml-xalan/test/tests/conf/select/select44.xsl
  
  Index: select44.xsl
  ===================================================================
  <?xml version="1.0"?>
  <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
  
    <!-- FileName: select44 -->
    <!-- Document: http://www.w3.org/TR/Xpath -->
    <!-- DocVersion: 19991116 -->
    <!-- Section: 3.3 Node Sets -->
    <!-- Purpose: NodeSet union using the ancestor-or-self axis -->
    <!-- Creator: Carmelo Montanez --><!-- Heavily modified from Expression004 in NIST suite -->
  
  <xsl:template match="/">
    <out>
      <xsl:for-each select="//child"><!-- 8 different ones -->
        <xsl:apply-templates select="ancestor-or-self::sub | ancestor-or-self::sub-sub"/>
      </xsl:for-each>
    </out>
  </xsl:template>
  
  <xsl:template match="*">
    <xsl:value-of select="@pos"/><xsl:text>,</xsl:text>
  </xsl:template>
  
  </xsl:stylesheet>
  
  
  
  
  1.1                  xml-xalan/test/tests/conf/select/select45.xml
  
  Index: select45.xml
  ===================================================================
  <?xml version="1.0"?>
  <doc>
    <book>
      <author>
        <name real="no">Carmelo Montanez</name>
        <chapters>Nine</chapters>
        <bibliography></bibliography>
      </author>
    </book>
    <book>
      <author>
        <name real="na">David Marston</name>
        <chapters>Seven</chapters>
        <bibliography></bibliography>
      </author>
    </book>
    <book>
      <author>
        <name real="yes">Mary Brady</name>
        <chapters>Ten</chapters>
        <bibliography></bibliography>            
      </author>
    </book>
  </doc>
  
  
  1.1                  xml-xalan/test/tests/conf/select/select45.xsl
  
  Index: select45.xsl
  ===================================================================
  <?xml version="1.0"?>
  <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
  
    <!-- FileName: select45 -->
    <!-- Document: http://www.w3.org/TR/Xpath -->
    <!-- DocVersion: 19991116 -->
    <!-- Section: 3.3 Node Sets -->
    <!-- Purpose: test union operator using two paths with predicates. -->
    <!-- Creator: Carmelo Montanez --><!-- Expression005 in NIST suite -->
  
  <xsl:template match = "doc">
    <out><xsl:text>
  </xsl:text>
      <xsl:for-each select = "book">
        <xsl:apply-templates select= "author[name/@real='no']|author[name/@real='yes']"/>
      </xsl:for-each>
    </out>
  </xsl:template>
  
  <xsl:template match="*">
    <xsl:value-of select="name"/><xsl:text>
      </xsl:text>
  </xsl:template>
  
  </xsl:stylesheet>
  
  
  1.1                  xml-xalan/test/tests/conf/select/select46.xml
  
  Index: select46.xml
  ===================================================================
  <?xml version="1.0"?>
  <doc attr1="attribute 1 " attr2="attribute 2">
    <sub1>
      <child1>child number 1</child1>
    </sub1>
    <sub2>
      <child2>child number 2</child2>
    </sub2>
  </doc>
  
  
  1.1                  xml-xalan/test/tests/conf/select/select46.xsl
  
  Index: select46.xsl
  ===================================================================
  <?xml version="1.0"?>
  <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
  
    <!-- FileName: select46 -->
    <!-- Document: http://www.w3.org/TR/Xpath -->
    <!-- DocVersion: 19991116 -->
    <!-- Section: 3.3 Node Sets -->
    <!-- Purpose: NodeSet union using the attribute axis -->
    <!-- Creator: Carmelo Montanez --><!-- Expression006 in NIST suite -->
  
  <xsl:template match="/">
    <out><xsl:text>
  </xsl:text>
      <xsl:for-each select="doc">
        <xsl:apply-templates select="attribute::attr1|attribute::attr2"/>
      </xsl:for-each>
      <xsl:text>
  </xsl:text></out>
  </xsl:template>
  
  <xsl:template match="*">
    <xsl:value-of select="."/>
  </xsl:template>
  
  </xsl:stylesheet>
  
  
  
  
  1.1                  xml-xalan/test/tests/conf/select/select47.xml
  
  Index: select47.xml
  ===================================================================
  <?xml version="1.0"?>
  <doc>
    <sub1 pos="1">
      <child1>child number 1</child1>
    </sub1>
    <sub2 pos="2">
      <child2>child number 2</child2>
    </sub2>
  </doc>
  
  
  1.1                  xml-xalan/test/tests/conf/select/select47.xsl
  
  Index: select47.xsl
  ===================================================================
  <?xml version="1.0"?>
  <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
  
    <!-- FileName: select47 -->
    <!-- Document: http://www.w3.org/TR/Xpath -->
    <!-- DocVersion: 19991116 -->
    <!-- Section: 3.3 Node Sets -->
    <!-- Purpose: NodeSet union using the child axis -->
    <!-- Creator: Carmelo Montanez --><!-- Expression007 in NIST suite -->
  
  <xsl:template match="/">
    <out>
      <xsl:for-each select="doc">  
        <xsl:apply-templates select = "child::sub1|child::sub2"/>
      </xsl:for-each>
    </out>
  </xsl:template>
  
  <xsl:template match="*">
    <xsl:value-of select = "@pos"/>
  </xsl:template>
  
  </xsl:stylesheet>
  
  
  
  
  1.1                  xml-xalan/test/tests/conf/select/select48.xml
  
  Index: select48.xml
  ===================================================================
  <?xml version="1.0"?>
  <doc>
    <book>
      <author>
        <name real="no">Carmelo Montanez</name>
        <chapters>Nine</chapters>
        <bibliography></bibliography>
      </author>
    </book>
    <book>
      <author>
        <name real="na">David Marston</name>
        <chapters>Seven</chapters>
        <bibliography></bibliography>
      </author>
    </book>
    <book>
      <author>
        <name real="yes">Mary Brady</name>
        <chapters>Ten</chapters>
        <bibliography></bibliography>            
      </author>
    </book>
  </doc>
  
  
  1.1                  xml-xalan/test/tests/conf/select/select48.xsl
  
  Index: select48.xsl
  ===================================================================
  <?xml version="1.0"?>
  <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
  
    <!-- FileName: select48 -->
    <!-- Document: http://www.w3.org/TR/Xpath -->
    <!-- DocVersion: 19991116 -->
    <!-- Section: 3.3 Node Sets -->
    <!-- Purpose: test union operator on two paths, each with complex predicate. -->
    <!-- Creator: Carmelo Montanez --><!-- Expression008 in NIST suite -->
  
  <xsl:template match = "doc">
    <out><xsl:text>
  </xsl:text>
      <xsl:for-each select = "book">
        <xsl:apply-templates select= "author[(name/@real='no' and position()=1)]|author[(name/@real='yes' and position()=last())]"/>
      </xsl:for-each>
    </out>
  </xsl:template>
  
  <xsl:template match="*">
    <xsl:value-of select="name"/><xsl:text>
      </xsl:text>
  </xsl:template>
  
  </xsl:stylesheet>
  
  
  1.1                  xml-xalan/test/tests/conf/select/select49.xml
  
  Index: select49.xml
  ===================================================================
  <?xml version="1.0"?>
  <doc attr1="attribute 1 " attr2="attribute 2">
    <sub1>
      <child1>descendant number 1</child1>
    </sub1>
    <sub2>
      <child2>descendant number 2</child2>
    </sub2>
  </doc>
  
  
  1.1                  xml-xalan/test/tests/conf/select/select49.xsl
  
  Index: select49.xsl
  ===================================================================
  <?xml version="1.0"?>
  <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
  
    <!-- FileName: select49 -->
    <!-- Document: http://www.w3.org/TR/Xpath -->
    <!-- DocVersion: 19991116 -->
    <!-- Section: 3.3 Node Sets -->
    <!-- Purpose: NodeSet union using the descendant axis -->
    <!-- Creator: Carmelo Montanez --><!-- Expression009 in NIST suite -->
  
  <xsl:template match="/">
    <out><xsl:text>
  </xsl:text>
      <xsl:for-each select="doc">
        <xsl:apply-templates select="descendant::child1|descendant::child2"/>
      </xsl:for-each>
    </out>
  </xsl:template>
  
  <xsl:template match="*">
    <xsl:value-of select="."/><xsl:text>
      </xsl:text>
  </xsl:template>
  
  </xsl:stylesheet>
  
  
  1.1                  xml-xalan/test/tests/conf/select/select50.xml
  
  Index: select50.xml
  ===================================================================
  <?xml version="1.0"?>
  <doc attr1="attribute 1 " attr2="attribute 2">
    <sub1>
      <child1>descendant number 1</child1>
    </sub1>
    <sub2>
      <child2>descendant number 2</child2>
    </sub2>
  </doc>
  
  
  1.1                  xml-xalan/test/tests/conf/select/select50.xsl
  
  Index: select50.xsl
  ===================================================================
  <?xml version="1.0"?>
  <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
  
    <!-- FileName: select50 -->
    <!-- Document: http://www.w3.org/TR/Xpath -->
    <!-- DocVersion: 19991116 -->
    <!-- Section: 3.3 Node Sets -->
    <!-- Purpose: NodeSet union using the descendant-or-self axis -->
    <!-- Creator: Carmelo Montanez --><!-- Expression010 in NIST suite -->
  
  <xsl:template match="/doc">
    <out>
      <xsl:apply-templates select="descendant-or-self::sub1|descendant-or-self::sub2"/>
    </out>
  </xsl:template>
  
  <xsl:template match="*">
    <xsl:value-of select = "."/>
  </xsl:template>
  
  </xsl:stylesheet>
  
  
  
  
  1.1                  xml-xalan/test/tests/conf/select/select51.xml
  
  Index: select51.xml
  ===================================================================
  <?xml version="1.0"?>
  <doc>
    <book>
      <author>
        <name real="no">Carmelo Montanez</name>
        <chapters>Nine</chapters>
        <bibliography></bibliography>
      </author>
    </book>
    <book>
      <author>
        <name real="yes">David Marston</name>
        <chapters>Seven</chapters>
        <bibliography></bibliography>
      </author>
    </book>
    <book>
      <author>
        <name real="yes">Mary Brady</name>
        <chapters>Ten</chapters>
        <bibliography></bibliography>            
      </author>
    </book>
  </doc>
  
  
  1.1                  xml-xalan/test/tests/conf/select/select51.xsl
  
  Index: select51.xsl
  ===================================================================
  <?xml version="1.0"?>
  <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
  
    <!-- FileName: select51 -->
    <!-- Document: http://www.w3.org/TR/Xpath -->
    <!-- DocVersion: 19991116 -->
    <!-- Section: 3.3 Node Sets -->
    <!-- Purpose: test union operator using predicates testing element and attribute nodes. -->
    <!-- Creator: Carmelo Montanez --><!-- Expression011 in NIST suite -->
  
  <xsl:template match = "doc">
    <out><xsl:text>
  </xsl:text>
      <xsl:for-each select = "book">
        <xsl:apply-templates select= "author[name='Mary Brady']|author[name/@real='no']"/>
      </xsl:for-each>
    </out>
  </xsl:template>
  
  <xsl:template match="*">
    <xsl:value-of select="name"/><xsl:text>
      </xsl:text>
  </xsl:template>
  
  </xsl:stylesheet>
  
  
  1.1                  xml-xalan/test/tests/conf/select/select52.xml
  
  Index: select52.xml
  ===================================================================
  <?xml version="1.0"?>
  <doc>
    <child1>child number 1</child1>
    <child2>child number 2</child2>
    <child3>Selection of this child is an error.</child3>
  </doc>
  
  
  1.1                  xml-xalan/test/tests/conf/select/select52.xsl
  
  Index: select52.xsl
  ===================================================================
  <?xml version="1.0"?>
  <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
  
    <!-- FileName: select52 -->
    <!-- Document: http://www.w3.org/TR/Xpath -->
    <!-- DocVersion: 19991116 -->
    <!-- Section: 3.3 Node Sets -->
    <!-- Purpose: test union operator where union yields empty set. -->
    <!-- Creator: Carmelo Montanez --><!-- Expression012 in NIST suite -->
  
  <xsl:template match = "doc">
    <out><xsl:text>
  </xsl:text>
      <xsl:apply-templates select = "//noChild1|//noChild2"/>
    </out>
  </xsl:template>
  
  <xsl:template match = "*">
    <xsl:value-of select = "."/><xsl:text>
      </xsl:text>
  </xsl:template>
  
  </xsl:stylesheet>
  
  
  1.1                  xml-xalan/test/tests/conf/select/select53.xml
  
  Index: select53.xml
  ===================================================================
  <?xml version="1.0"?>
  <doc>
    <sub1>
      <child1>preceding sibling number 1</child1>
      <child2>current node</child2>
      <child3>following sibling number 3</child3>
    </sub1>
  </doc>
  
  
  1.1                  xml-xalan/test/tests/conf/select/select53.xsl
  
  Index: select53.xsl
  ===================================================================
  <?xml version="1.0"?>
  <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
  
    <!-- FileName: select53 -->
    <!-- Document: http://www.w3.org/TR/Xpath -->
    <!-- DocVersion: 19991116 -->
    <!-- Section: 3.3 Node Sets -->
    <!-- Purpose: NodeSet union using the following-sibling and preceding-sibling axes -->
    <!-- Creator: Carmelo Montanez --><!-- Expression013 in NIST suite -->
  
  <xsl:template match="/">
    <out><xsl:text>
  </xsl:text>
      <xsl:for-each select = "//child2">
        <xsl:apply-templates select="preceding-sibling::child1|following-sibling::child3"/>
      </xsl:for-each>
    </out>
  </xsl:template>
  
  <xsl:template match="*">
     <xsl:value-of select="."/><xsl:text>
      </xsl:text>
  </xsl:template>
  
  </xsl:stylesheet>
  
  
  1.1                  xml-xalan/test/tests/conf/select/select54.xml
  
  Index: select54.xml
  ===================================================================
  <?xml version="1.0"?>
  <doc>
    <book author="Carmelo Montanez">book1</book>
    <book author="Mary Brady">book2</book>
    <book author="Carmelo Montanez">book3</book>
    <book author="Mary Brady">book4</book>
    <book author="Carmelo Montanez">book5</book>
    <book author="Mary Brady">book6</book>
    <book author="David Marston">book7</book>
    <book author="Rick Rivello">book8</book>
    <book author="Carmelo Montanez">book9</book>
    <book author="Mary Brady">book10</book>
    <book author="Carmelo Montanez">book11</book>
    <book author="Mary Brady">book12</book>
    <book author="Carmelo Montanez">book13</book>
    <book author="Lynne Rosenthal">book14</book>
    <book author="Carmelo Montanez">book15</book>
    <book author="Rick Rivello">book16</book>
    <article author="Mark Skall">article 1</article>
  </doc>
  
  
  1.1                  xml-xalan/test/tests/conf/select/select54.xsl
  
  Index: select54.xsl
  ===================================================================
  <?xml version="1.0"?>
  <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
  
    <!-- FileName: select54 -->
    <!-- Document: http://www.w3.org/TR/Xpath -->
    <!-- DocVersion: 19991116 -->
    <!-- Section: 3.3 Node Sets -->
    <!-- Purpose: NodeSet union using a function that returns a node set (key) and 
         an axis. -->
    <!-- Creator: Carmelo Montanez --><!-- Expression014 in NIST suite -->
  
  <xsl:key name="key1" match="book" use="@author"></xsl:key>
  
  <xsl:template match="doc">
    <out><xsl:text>
  </xsl:text>
      <xsl:apply-templates select="child::article|key('key1','Carmelo Montanez')"/>
    </out>
  </xsl:template>
  
  <xsl:template match = "*">
    <xsl:value-of select = "."/><xsl:text>
      </xsl:text>
  </xsl:template>
  
  </xsl:stylesheet>
  
  
  1.1                  xml-xalan/test/tests/conf/select/select55.xml
  
  Index: select55.xml
  ===================================================================
  <?xml version="1.0"?>
  <doc>
    <book author="Carmelo Montanez">book1</book>
    <book author="Mary Brady">book2</book>
    <book author="Carmelo Montanez">book3</book>
    <book author="Mary Brady">book4</book>
    <book author="Carmelo Montanez">book5</book>
    <book author="Mary Brady">book6</book>
    <book author="David Marston">book7</book>
    <book author="Rick Rivello">book8</book>
    <book author="Carmelo Montanez">book9</book>
    <book author="Mary Brady">book10</book>
    <book author="Carmelo Montanez">book11</book>
    <book author="Mary Brady">book12</book>
    <book author="Carmelo Montanez">book13</book>
    <book author="Lynne Rosenthal">book14</book>
    <book author="Carmelo Montanez">book15</book>
    <book author="Mark Skall">book16</book>
  </doc>
  
  
  1.1                  xml-xalan/test/tests/conf/select/select55.xsl
  
  Index: select55.xsl
  ===================================================================
  <?xml version="1.0"?>
  <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
  
    <!-- FileName: select55 -->
    <!-- Document: http://www.w3.org/TR/Xpath -->
    <!-- DocVersion: 19991116 -->
    <!-- Section: 3.3 Node Sets -->
    <!-- Purpose: NodeSet union using a function that returns a node set (key) as each term. -->
    <!-- Creator: Carmelo Montanez --><!-- Expression015 in NIST suite -->
  
  <xsl:key name="key1" match="book" use="@author"></xsl:key>
  <xsl:key name="key2" match="book" use="@author"></xsl:key>
  
  <xsl:template match="/">
    <out><xsl:text>
  </xsl:text>
      <xsl:apply-templates select="key('key1','Mary Brady')|key('key2','Rick Rivello')"/>
    </out>
  </xsl:template>
  
  <xsl:template match="*">
    <xsl:value-of select="."/><xsl:text>
      </xsl:text>
  </xsl:template>
  
  </xsl:stylesheet>
  
  
  1.1                  xml-xalan/test/tests/conf/select/select56.xml
  
  Index: select56.xml
  ===================================================================
  <?xml version="1.0"?>
  <doc>
    <book>
      <author>
        <name real="no">Carmelo Montanez</name>
        <chapters>Nine</chapters>
        <bibliography></bibliography>
      </author>
    </book>
    <book>
      <author>
        <name real="yes">David Marston</name>
        <chapters>Seven</chapters>
        <bibliography></bibliography>
      </author>
    </book>
    <book>
      <author>
          <name real="yes">Mary Brady</name>
          <chapters>Ten</chapters>
          <bibliography>
          <author>
            <name>Lynne Rosenthal</name>
            <chapters>Five</chapters>
          </author>          
        </bibliography>
      </author>
    </book>
  </doc>
  
  
  1.1                  xml-xalan/test/tests/conf/select/select56.xsl
  
  Index: select56.xsl
  ===================================================================
  <?xml version="1.0"?>
  <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
  
    <!-- FileName: select56 -->
    <!-- Document: http://www.w3.org/TR/Xpath -->
    <!-- DocVersion: 19991116 -->
    <!-- Section: 3.3 Node Sets -->
    <!-- Purpose: test union operator at different nesting levels (same element) -->
    <!-- Creator: Carmelo Montanez --><!-- Expression016 in NIST suite -->
  
  <xsl:template match = "doc">
    <out><xsl:text>
  </xsl:text>
      <xsl:for-each select = "book">
        <xsl:apply-templates select= "author/name|author/bibliography/author/name"/>
      </xsl:for-each>
    </out>
  </xsl:template>
  
  <xsl:template match="*">
    <xsl:value-of select="."/><xsl:text>
      </xsl:text>
  </xsl:template>
  
  </xsl:stylesheet>
  
  
  1.1                  xml-xalan/test/tests/conf/select/select57.xml
  
  Index: select57.xml
  ===================================================================
  <?xml version="1.0"?>
  <doc>
    <book>
      <author>
        <name real="no">Carmelo Montanez</name>
        <chapters>Nine</chapters>
        <bibliography></bibliography>
      </author>
    </book>
    <book>
      <author>
        <name real="yes">David Marston</name>
        <chapters>Seven</chapters>
        <bibliography></bibliography>
      </author>
    </book>
    <book>
      <author>
        <name real="yes">Mary Brady</name>
        <chapters>Ten</chapters>
        <bibliography>
          <author>
            <name>Lynne Rosenthal</name>
            <chapters>Five</chapters>
          </author>          
        </bibliography>
      </author>
    </book>
  </doc>
  
  
  1.1                  xml-xalan/test/tests/conf/select/select57.xsl
  
  Index: select57.xsl
  ===================================================================
  <?xml version="1.0"?>
  <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
  
    <!-- FileName: select57 -->
    <!-- Document: http://www.w3.org/TR/Xpath -->
    <!-- DocVersion: 19991116 -->
    <!-- Section: 3.3 Node Sets -->
    <!-- Purpose: test union operator at different nesting levels (different elements) -->
    <!-- Creator: Carmelo Montanez --><!-- Expression017 in NIST suite -->
  
  <xsl:template match = "doc">
    <out><xsl:text>
  </xsl:text>
      <xsl:for-each select = "book">
        <xsl:apply-templates select= "author/name|author/bibliography/author/chapters"/>
      </xsl:for-each>
    </out>
  </xsl:template>
  
  <xsl:template match="*">
    <xsl:value-of select="."/><xsl:text>
      </xsl:text>
  </xsl:template>
  
  </xsl:stylesheet>
  
  
  1.1                  xml-xalan/test/tests/conf/select/select58.xml
  
  Index: select58.xml
  ===================================================================
  <?xml version="1.0"?>
  <doc>
    <book>
      <author>
        <name real="na">David Marston</name>
        <chapters>Seven</chapters>
        <bibliography></bibliography>
      </author>
    </book>
    <book>
      <author>
        <name real="yes">Mary Brady</name>
        <chapters>Ten</chapters>
        <bibliography></bibliography>            
      </author>
    </book>
  </doc>
  
  
  1.1                  xml-xalan/test/tests/conf/select/select58.xsl
  
  Index: select58.xsl
  ===================================================================
  <?xml version="1.0"?>
  <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
  
    <!-- FileName: select58 -->
    <!-- Document: http://www.w3.org/TR/Xpath -->
    <!-- DocVersion: 19991116 -->
    <!-- Section: 3.3 Node Sets -->
    <!-- Purpose: test union operator where one of the members is empty -->
    <!-- Creator: Carmelo Montanez --><!-- Expression018 in NIST suite -->
  
  <xsl:template match = "doc">
    <out><xsl:text>
  </xsl:text>
      <xsl:for-each select = "book">
        <xsl:apply-templates select= "author/name|author/noElement"/>
      </xsl:for-each>
    </out>
  </xsl:template>
  
  <xsl:template match="*">
    <xsl:value-of select="."/><xsl:text>
      </xsl:text>
  </xsl:template>
  
  </xsl:stylesheet>
  
  
  1.1                  xml-xalan/test/tests/conf/select/select59.xml
  
  Index: select59.xml
  ===================================================================
  <?xml version="1.0"?>
  <doc>
    <child>Selection of this child is an error.</child>
    <child high="3">Selection of this child is an error.</child>
    <child wide="4">Selection of this child is an error.</child>
    <child wide="4" high="3">Selection of this child is an error.</child>
    <child wide="3">E</child>
    <child wide="3" high="3">F</child>
    <child wide="3" deep="3">G</child>
    <child wide="4" deep="2">Selection of this child is an error.</child>
    <child wide="4" deep="2" high="3">Selection of this child is an error.</child>
    <child wide="3" deep="2">J</child>
    <child wide="3" deep="3" high="3">K</child>
    <child deep="2">Selection of this child is an error.</child>
    <child deep="2" high="3">Selection of this child is an error.</child>
    <child deep="3">N</child>
    <child deep="3" high="3">O</child>
    <child wide="4" deep="3">P</child>
  </doc>
  
  
  1.1                  xml-xalan/test/tests/conf/select/select59.xsl
  
  Index: select59.xsl
  ===================================================================
  <?xml version="1.0"?>
  <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
  
    <!-- FileName: select59 -->
    <!-- Document: http://www.w3.org/TR/Xpath -->
    <!-- DocVersion: 19991116 -->
    <!-- Section: 3.3 Node Sets -->
    <!-- Purpose: test union operator using overlapping node-sets. Results should
         always be output in doc order regardless of order of select attribute. -->
    <!-- Creator: Carmelo Montanez (original) --><!-- Expression019 in NIST suite -->
    <!-- Creator: Paul Dick (this version) -->
  
  <xsl:key name="which" match="child" use="@wide|@deep"/>
  <xsl:key name="one" match="child" use="@deep"/>
  <xsl:key name="two" match="child" use="@wide"/>
  
  <xsl:template match="doc">
    <out><xsl:text>
  </xsl:text>
  <xsl:apply-templates select = "child[@wide='3']|child[@deep='3']"/>,
  <xsl:apply-templates select = "child[@deep='3']|child[@wide='3']"/>,
  <xsl:apply-templates select = "key('which','3')"/>,
  <xsl:apply-templates select = "key('one','3') | key('two','3')"/>,
  <xsl:apply-templates select = "child[@wide='3'] | key('one','3')"/>,
  <xsl:apply-templates select = "key('two','3') | document('select59.xml')/child[@wide='3'] | child[@deep='3']"/>,
  </out>
  </xsl:template>
  
  <xsl:template match = "*">
  <xsl:value-of select = "."/>
  </xsl:template>
  
  </xsl:stylesheet>
  
  
  1.1                  xml-xalan/test/tests/conf/select/select60.xml
  
  Index: select60.xml
  ===================================================================
  <?xml version="1.0"?>
  <doc>
    <sub1>
      <child1>child1</child1>
    </sub1>
    <sub2>
      <child2>child2</child2>
    </sub2>
  </doc>
  
  
  1.1                  xml-xalan/test/tests/conf/select/select60.xsl
  
  Index: select60.xsl
  ===================================================================
  <?xml version="1.0"?>
  <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
  
    <!-- FileName: select60 -->
    <!-- Document: http://www.w3.org/TR/Xpath -->
    <!-- DocVersion: 19991116 -->
    <!-- Section: 3.3 Node Sets -->
    <!-- Purpose: NodeSet union using two relative location paths-->
    <!-- Creator: Carmelo Montanez --><!-- Expression020 in NIST suite -->
  
  <xsl:template match="/">
    <out><xsl:text>
  </xsl:text>
      <xsl:for-each select = "doc">
        <xsl:apply-templates select = "sub1/child1|sub2/child2"/>
      </xsl:for-each>
    </out>
  </xsl:template>
  
  <xsl:template match="*">
    <xsl:value-of select = "."/><xsl:text>
      </xsl:text>
  </xsl:template>
  
  </xsl:stylesheet>
  
  
  1.1                  xml-xalan/test/tests/conf/select/select61.xml
  
  Index: select61.xml
  ===================================================================
  <?xml version="1.0"?>
  <doc>
    <sub1>
      <child1>self content number 1</child1>
    </sub1>
    <sub2>
      <child2>self content number 2</child2>
    </sub2>
  </doc>
  
  
  1.1                  xml-xalan/test/tests/conf/select/select61.xsl
  
  Index: select61.xsl
  ===================================================================
  <?xml version="1.0"?>
  <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
  
    <!-- FileName: select61 -->
    <!-- Document: http://www.w3.org/TR/Xpath -->
    <!-- DocVersion: 19991116 -->
    <!-- Section: 3.3 Node Sets -->
    <!-- Purpose: NodeSet union using the self axis -->
    <!-- Creator: Carmelo Montanez --><!-- Expression021 in NIST suite -->
  
  <xsl:template match="doc">
    <out><xsl:text>
  </xsl:text>
      <xsl:for-each select = "//child1|//child2">
        <xsl:apply-templates select = "self::child1|self::child2"/>
      </xsl:for-each>
    </out>
  </xsl:template>
  
  <xsl:template match = "*">
    <xsl:value-of select="."/><xsl:text>
      </xsl:text>
  </xsl:template>
  
  </xsl:stylesheet>
  
  
  
  
  1.1                  xml-xalan/test/tests/conf/select/select62.xml
  
  Index: select62.xml
  ===================================================================
  <?xml version="1.0"?>
  <doc>
    <child1>1</child1>
    <child2>2</child2>
  </doc>
  
  
  1.1                  xml-xalan/test/tests/conf/select/select62.xsl
  
  Index: select62.xsl
  ===================================================================
  <?xml version="1.0"?>
  <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
  
    <!-- FileName: select62 -->
    <!-- Document: http://www.w3.org/TR/Xpath -->
    <!-- DocVersion: 19991116 -->
    <!-- Section: 3.3 Node Sets -->
    <!-- Purpose: union of two absolute (//) paths -->
    <!-- Creator: Carmelo Montanez --><!-- Expression022 in NIST suite -->
  
  <xsl:template match = "doc">
    <out>
      <xsl:apply-templates select = "//child1|//child2"/>
    </out>
  </xsl:template>
  
  <xsl:template match = "*">
    <xsl:value-of select = "."/>
  </xsl:template>
  
  </xsl:stylesheet>
  
  
  
  
  1.1                  xml-xalan/test/tests/conf/select/select63.xml
  
  Index: select63.xml
  ===================================================================
  <?xml version="1.0"?>
  <doc>
    <child1>1</child1>
    <child2>2A</child2>
    <child2>2B</child2>
    <child3>3A</child3>
    <child3>3B</child3>
    <child4>4</child4>
    <child5>5</child5>
  </doc>
  
  
  1.1                  xml-xalan/test/tests/conf/select/select63.xsl
  
  Index: select63.xsl
  ===================================================================
  <?xml version="1.0"?>
  <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
  
    <!-- FileName: select63 -->
    <!-- Document: http://www.w3.org/TR/Xpath -->
    <!-- DocVersion: 19991116 -->
    <!-- Section: 3.3 Node Sets -->
    <!-- Purpose: test union operator used three times in an expression -->
    <!-- Creator: Carmelo Montanez --><!-- Expression023 in NIST suite -->
  
  <xsl:template match = "doc">
    <out>
      <xsl:for-each select = "//child5|//child2|//child4">
        <xsl:value-of select="."/>
      </xsl:for-each>
    </out>
  </xsl:template>
  
  </xsl:stylesheet>
  
  
  1.1                  xml-xalan/test/tests/conf/select/select64.xml
  
  Index: select64.xml
  ===================================================================
  <?xml version="1.0"?>
  <doc>
    <article author="Carmelo Montanez">article 1</article>
    <book author="Mary Brady">book2</book>
    <book author="Carmelo Montanez">book3</book>
    <book author="Mary Brady">book4</book>
    <book author="Carmelo Montanez">book5</book>
    <book author="Mary Brady">book6</book>
    <book author="David Marston">book7</book>
    <book author="Rick Rivello">book8</book>
    <book author="Carmelo Montanez">book9</book>
    <book author="Mary Brady">book10</book>
    <book author="Carmelo Montanez">book11</book>
    <book author="Mary Brady">book12</book>
    <book author="Carmelo Montanez">book13</book>
    <book author="Lynne Rosenthal">book14</book>
    <book author="Carmelo Montanez">book15</book>
    <book author="Mark Skall">book16</book>
  </doc>
  
  
  1.1                  xml-xalan/test/tests/conf/select/select64.xsl
  
  Index: select64.xsl
  ===================================================================
  <?xml version="1.0"?>
  <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
  
    <!-- FileName: select64 -->
    <!-- Document: http://www.w3.org/TR/Xpath -->
    <!-- DocVersion: 19991116 -->
    <!-- Section: 3.3 Node Sets -->
    <!-- Purpose: test union operator using a variable and a function. -->
    <!-- Creator: Carmelo Montanez --><!-- Expression024 in NIST suite -->
  
  <xsl:key name="key1" match="book" use="@author"></xsl:key>
  
  <xsl:template match = "doc">
    <xsl:variable name = "var1" select = "//article"></xsl:variable>
    <out><xsl:text>
  </xsl:text>
      <xsl:apply-templates select = "$var1|key('key1','Lynne Rosenthal')"/>
    </out>
  </xsl:template>
  
  <xsl:template match = "*">
    <xsl:value-of select = "."/><xsl:text>
      </xsl:text>
  </xsl:template>
  
  </xsl:stylesheet>
  
  
  1.1                  xml-xalan/test/tests/conf/select/select65.xml
  
  Index: select65.xml
  ===================================================================
  <?xml version="1.0"?>
  <doc>
    <child1>Text for variable</child1>
    <child2>Text for location Path</child2>
    <child3>Selection of this child is an error.</child3>
  </doc>
  
  
  1.1                  xml-xalan/test/tests/conf/select/select65.xsl
  
  Index: select65.xsl
  ===================================================================
  <?xml version="1.0"?>
  <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
  
    <!-- FileName: select65 -->
    <!-- Document: http://www.w3.org/TR/Xpath -->
    <!-- DocVersion: 19991116 -->
    <!-- Section: 3.3 Node Sets -->
    <!-- Purpose: test union operator using a variable and an axis. -->
    <!-- Creator: Carmelo Montanez --><!-- Expression025 in NIST suite -->
  
  <xsl:template match = "doc">
    <xsl:variable name = "var1" select = "//child1"></xsl:variable>
    <out><xsl:text>
  </xsl:text>
      <xsl:apply-templates select = "$var1|child::child2"/>
    </out>
  </xsl:template>
  
  <xsl:template match = "*">
    <xsl:value-of select = "."/><xsl:text>
      </xsl:text>
  </xsl:template>
  
  </xsl:stylesheet>
  
  
  1.1                  xml-xalan/test/tests/conf/select/select66.xml
  
  Index: select66.xml
  ===================================================================
  <?xml version="1.0"?>
  <doc>
    <child1>child number 1</child1>
    <child2>child number 2</child2>
    <child3>Selection of this child is an error.</child3>
  </doc>
  
  
  1.1                  xml-xalan/test/tests/conf/select/select66.xsl
  
  Index: select66.xsl
  ===================================================================
  <?xml version="1.0"?>
  <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
  
    <!-- FileName: select66 -->
    <!-- Document: http://www.w3.org/TR/Xpath -->
    <!-- DocVersion: 19991116 -->
    <!-- Section: 3.3 Node Sets -->
    <!-- Purpose: test union operator using variables. -->
    <!-- Creator: Carmelo Montanez --><!-- Expression013 in NIST suite -->
  
  <xsl:template match = "doc">
    <xsl:variable name = "var1" select = "//child1"></xsl:variable>
    <xsl:variable name = "var2" select = "//child2"></xsl:variable>
    <out><xsl:text>
  </xsl:text>
      <xsl:apply-templates select = "$var1|$var2"/>
    </out>
  </xsl:template>
  
  <xsl:template match = "*">
    <xsl:value-of select = "."/><xsl:text>
      </xsl:text>
  </xsl:template>
  
  </xsl:stylesheet>
  
  

---------------------------------------------------------------------
To unsubscribe, e-mail: xalan-cvs-unsubscribe@xml.apache.org
For additional commands, e-mail: xalan-cvs-help@xml.apache.org