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...@locus.apache.org on 2000/12/15 20:19:43 UTC

cvs commit: xml-xalan/test/tests/conf/modes modes10.xsl modes01.xsl modes02.xml modes02.xsl modes03.xml modes03.xsl modes04.xml modes04.xsl modes05.xml modes05.xsl modes06.xml modes06.xsl modes07.xml modes07.xsl modes08.xml modes08.xsl modes09.xml modes09.xsl modes10.xml modes01.xml

dmarston    00/12/15 11:19:42

  Added:       test/tests/conf/modes modes10.xsl modes01.xsl modes02.xml
                        modes02.xsl modes03.xml modes03.xsl modes04.xml
                        modes04.xsl modes05.xml modes05.xsl modes06.xml
                        modes06.xsl modes07.xml modes07.xsl modes08.xml
                        modes08.xsl modes09.xml modes09.xsl modes10.xml
                        modes01.xml
  Log:
  Copy of tests in Lotus/IBM repository
  
  Revision  Changes    Path
  1.1                  xml-xalan/test/tests/conf/modes/modes10.xsl
  
  Index: modes10.xsl
  ===================================================================
  <?xml version="1.0"?>
  <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
  
    <!-- FileName: MODES10 -->
    <!-- Document: http://www.w3.org/TR/xslt -->
    <!-- DocVersion: 19991116 -->
    <!-- Section: 5.7 Modes -->
    <!-- Creator: David Marston -->
    <!-- Purpose: Show that we only go into a mode via apply-templates.
       You can't put a mode on call-template, and the fact that you call a named
       template that has a mode specifier doesn't mean you are in that mode. -->
  
  <xsl:template match="/">
    <out>
      <xsl:apply-templates select="doc" mode="a"/>
    </out>
  </xsl:template>
  
  <xsl:template match="doc" mode="a" priority="3">
    <xsl:text>Found doc...</xsl:text>
    <xsl:call-template name="scan"/>
  </xsl:template>
  
  <!-- The following template is both applied in mode a and called -->
  <xsl:template name="scan" match="*" mode="a" priority="2">
    <xsl:text>Scanned </xsl:text><xsl:value-of select="name(.)"/><xsl:text>
  </xsl:text>
    <xsl:apply-templates/>
  </xsl:template>
  
  <xsl:template match="x" priority="4">
    <xsl:text>Found x, no mode: </xsl:text><xsl:value-of select="."/><xsl:text>
  </xsl:text>
    <xsl:apply-templates mode="a"/>
  </xsl:template>
  
  <xsl:template match="x" mode="a" priority="4">
    <xsl:text>Found x, mode a: </xsl:text><xsl:value-of select="@test"/><xsl:text>
  </xsl:text>
  </xsl:template>
  
  <xsl:template match="text()">
    <xsl:text>modeless text: </xsl:text><xsl:value-of select="."/><xsl:text>
  </xsl:text>
  </xsl:template>
  
  <xsl:template match="text()" mode="a">
    <xsl:text>mode a text: </xsl:text><xsl:value-of select="."/>
  </xsl:template>
  
  </xsl:stylesheet>
  
  
  
  1.1                  xml-xalan/test/tests/conf/modes/modes01.xsl
  
  Index: modes01.xsl
  ===================================================================
  <?xml version="1.0"?> 
  <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
  
    <!-- FileName: MODES01 -->
    <!-- Document: http://www.w3.org/TR/xslt -->
    <!-- DocVersion: 19991116 -->
    <!-- Section: 5.7 Modes -->
    <!-- Creator: Paul Dick -->
    <!-- Purpose: Simple test of xsl:apply-templates with mode. -->
  
  <xsl:template match="/">
    <out>
      <xsl:apply-templates select="doc/a" mode="a"/>
    </out>
  </xsl:template>
    
  <xsl:template match="a" mode="a">
    <xsl:text>mode-a:</xsl:text><xsl:value-of select="."/>
  </xsl:template>
  
  <xsl:template match="a">
    <xsl:text>no-mode:</xsl:text><xsl:value-of select="."/>
  </xsl:template>
   
  </xsl:stylesheet>
  
  
  
  1.1                  xml-xalan/test/tests/conf/modes/modes02.xml
  
  Index: modes02.xml
  ===================================================================
  <?xml version="1.0"?> 
  <doc>
  <a test="a attribute">brown-fox</a>
  </doc>
  
  
  1.1                  xml-xalan/test/tests/conf/modes/modes02.xsl
  
  Index: modes02.xsl
  ===================================================================
  <?xml version="1.0"?> 
  <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
  
    <!-- FileName: MODES02 -->
    <!-- Document: http://www.w3.org/TR/xslt -->
    <!-- DocVersion: 19991116 -->
    <!-- Section: 5.7 Modes -->
    <!-- Purpose: Test of moded template calling xsl:apply-templates 
         on another template. -->
  
  <xsl:template match="/">
    <out>
      <xsl:apply-templates select="doc" mode="b"/>
    </out>
  </xsl:template>
    
  <xsl:template match="a" mode="a">
    <xsl:text>mode-a:</xsl:text><xsl:value-of select="."/>
  </xsl:template>
  
  <xsl:template match="a">
    <xsl:text>no-mode:</xsl:text><xsl:value-of select="."/>
  </xsl:template>
   
  <xsl:template match="doc" mode="b">
    mode-b: <xsl:apply-templates select="a"/>
  </xsl:template>
  
  </xsl:stylesheet>
  
  
  
  1.1                  xml-xalan/test/tests/conf/modes/modes03.xml
  
  Index: modes03.xml
  ===================================================================
  <?xml version="1.0"?> 
  <doc>
    <a test="a attribute">a-text</a>
  </doc>
  
  
  1.1                  xml-xalan/test/tests/conf/modes/modes03.xsl
  
  Index: modes03.xsl
  ===================================================================
  <?xml version="1.0"?> 
  <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
  
    <!-- FileName: MODES03 -->
    <!-- Document: http://www.w3.org/TR/xslt -->
    <!-- DocVersion: 19991116 -->
    <!-- Section: 5.7 Modes -->
    <!-- Purpose: Test of xsl:apply-templates with mode not found. -->
  
  <xsl:template match="/">
    <out>
      <xsl:apply-templates select="doc/a" mode="z"/>
    </out>
  </xsl:template>
    
  <xsl:template match="text()" mode="a">
    <xsl:text>mode-a:</xsl:text><xsl:value-of select="."/>
  </xsl:template>
  
  <xsl:template match="text()">
    <xsl:text>no-mode:</xsl:text><xsl:value-of select="."/>
  </xsl:template>
   
  </xsl:stylesheet>
  
  
  
  1.1                  xml-xalan/test/tests/conf/modes/modes04.xml
  
  Index: modes04.xml
  ===================================================================
  <?xml version="1.0"?> 
  <doc>
    <a test="a attribute">a-text</a>
  </doc>
  
  
  1.1                  xml-xalan/test/tests/conf/modes/modes04.xsl
  
  Index: modes04.xsl
  ===================================================================
  <?xml version="1.0"?> 
  <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
  
    <!-- FileName: MODES04 -->
    <!-- Document: http://www.w3.org/TR/xslt -->
    <!-- DocVersion: 19991116 -->
    <!-- Section: 5.7 Modes -->
    <!-- Purpose: Simple test of xsl:apply-templates with no mode,
       but with same-pattern template that has a mode available. -->
  
  <xsl:template match="/">
    <out>
      <xsl:apply-templates select="doc/a"/>
    </out>
  </xsl:template>
    
  <xsl:template match="a" mode="a">
    <xsl:text>mode-a:</xsl:text><xsl:value-of select="."/>
  </xsl:template>
  
  <xsl:template match="a">
    <xsl:text>no-mode:</xsl:text><xsl:value-of select="."/>
  </xsl:template>
   
  </xsl:stylesheet>
  
  
  
  1.1                  xml-xalan/test/tests/conf/modes/modes05.xml
  
  Index: modes05.xml
  ===================================================================
  <?xml version="1.0"?> 
  <doc>
    <a test="a attribute">a-text</a>
  </doc>
  
  
  1.1                  xml-xalan/test/tests/conf/modes/modes05.xsl
  
  Index: modes05.xsl
  ===================================================================
  <?xml version="1.0"?> 
  <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
  
    <!-- FileName: MODES05 -->
    <!-- Document: http://www.w3.org/TR/xslt -->
    <!-- DocVersion: 19991116 -->
    <!-- Section: 5.7 Modes -->
    <!-- Purpose: Simple test of xsl:apply-templates with mode, using the default rule. -->
  
  <xsl:template match="/">
    <out>
      <xsl:apply-templates select="doc/a" mode="a"/>
    </out>
  </xsl:template>
    
  <xsl:template match="text()" mode="a">
    <xsl:text>mode-a:</xsl:text><xsl:value-of select="."/>
  </xsl:template>
  
  <xsl:template match="text()">
    <xsl:text>no-mode:</xsl:text><xsl:value-of select="."/>
  </xsl:template>
   
  </xsl:stylesheet>
  
  
  
  1.1                  xml-xalan/test/tests/conf/modes/modes06.xml
  
  Index: modes06.xml
  ===================================================================
  <?xml version="1.0"?> 
  <doc>
    <a test="a attribute">a-text</a>
  </doc>
  
  
  1.1                  xml-xalan/test/tests/conf/modes/modes06.xsl
  
  Index: modes06.xsl
  ===================================================================
  <?xml version="1.0"?> 
  <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0"
                  xmlns:foo="http://foo.com">
    
    <!-- FileName: MODES06 -->
    <!-- Document: http://www.w3.org/TR/xslt -->
    <!-- DocVersion: 19991116 -->
    <!-- Section: 5.7 Modes -->
    <!-- Purpose: Test of xsl:apply-templates with mode, using a qualified name. -->
  
  <xsl:template match="/">
    <out>
      <xsl:apply-templates select="doc/a" mode="foo:a"/>
    </out>
  </xsl:template>
    
  <xsl:template match="text()" mode="a">
    <xsl:text>mode-a:</xsl:text><xsl:value-of select="."/>
  </xsl:template>
  
  <xsl:template match="text()" mode="foo:a">
    <xsl:text>mode-foo:a:</xsl:text><xsl:value-of select="."/>
  </xsl:template>
  
  <xsl:template match="text()">
    <xsl:text>no-mode:</xsl:text><xsl:value-of select="."/>
  </xsl:template>
   
  </xsl:stylesheet>
  
  
  
  1.1                  xml-xalan/test/tests/conf/modes/modes07.xml
  
  Index: modes07.xml
  ===================================================================
  <?xml version="1.0"?> 
  <doc>
    <a test="a attribute">a-text</a>
  </doc>
  
  
  1.1                  xml-xalan/test/tests/conf/modes/modes07.xsl
  
  Index: modes07.xsl
  ===================================================================
  <?xml version="1.0"?> 
  <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0" 
                  xmlns:foo="http://foo.com">
  
    <!-- FileName: MODES07 -->
    <!-- Document: http://www.w3.org/TR/xslt -->
    <!-- DocVersion: 19991116 -->
    <!-- Section: 5.7 Modes -->
    <!-- Purpose: Test of xsl:apply-templates with mode, using a non-qualified 
         name, but with a qualified name in scope. -->
  
  <xsl:template match="/">
    <out>
      <xsl:apply-templates select="doc/a" mode="a"/>
    </out>
  </xsl:template>
    
  <xsl:template match="text()" mode="a">
    <xsl:text>mode-a:</xsl:text><xsl:value-of select="."/>
  </xsl:template>
  
  <xsl:template match="text()" mode="foo:a">
    <xsl:text>mode-foo:a:</xsl:text><xsl:value-of select="."/>
  </xsl:template>
  
  <xsl:template match="text()">
    <xsl:text>no-mode:</xsl:text><xsl:value-of select="."/>
  </xsl:template>
   
  </xsl:stylesheet>
  
  
  
  1.1                  xml-xalan/test/tests/conf/modes/modes08.xml
  
  Index: modes08.xml
  ===================================================================
  <?xml version="1.0"?> 
  <doc>
    <a test="a attribute">a-text</a>
    <b test="b attribute">b-text</b>
  </doc>
  
  
  1.1                  xml-xalan/test/tests/conf/modes/modes08.xsl
  
  Index: modes08.xsl
  ===================================================================
  <?xml version="1.0"?> 
  <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
  
    <!-- FileName: MODES08 -->
    <!-- Document: http://www.w3.org/TR/xslt -->
    <!-- DocVersion: 19991116 -->
    <!-- Section: 5.7 Modes -->
    <!-- Purpose: Test of several modes being available. -->
  
  <xsl:template match="doc">
    <out><xsl:text>&#010;</xsl:text>
      <xsl:apply-templates select="a" mode="a"/>
      <xsl:apply-templates select="a" mode="b"/>
      <xsl:apply-templates select="a" mode="c"/>
      <xsl:apply-templates select="a" mode="d"/>
      <xsl:apply-templates select="a" mode="e"/>
      <xsl:apply-templates select="b" mode="a"/>
      <xsl:apply-templates select="b" mode="b"/>
    </out>
  </xsl:template>
  
  <xsl:template match="a" mode="a">
    <xsl:text>modeA: </xsl:text><xsl:value-of select="."/>
    <xsl:text>&#010;</xsl:text>
  </xsl:template>
  
  <xsl:template match="a" mode="b">
    <xsl:text>modeB: </xsl:text><xsl:value-of select="."/>
    <xsl:value-of select="@test"/>
    <xsl:text>&#010;</xsl:text>
  </xsl:template>
  
  <xsl:template match="a" mode="c">
    <xsl:text>modeC: </xsl:text><xsl:value-of select="."/>
    <xsl:text>&#010;</xsl:text>
  </xsl:template>
  
  <xsl:template match="a" mode="d">
    <xsl:text>modeD: </xsl:text><xsl:value-of select="."/>
    <xsl:value-of select="@test"/>
    <xsl:text>&#010;</xsl:text>
  </xsl:template>
  
  <xsl:template match="a" mode="e">
    <xsl:text>modeE: </xsl:text><xsl:value-of select="."/>
    <xsl:text>&#010;</xsl:text>
  </xsl:template>
  
  <xsl:template match="*" mode="a">
    <xsl:text>modeA: </xsl:text><xsl:value-of select="."/>
    <xsl:text>&#010;</xsl:text>
  </xsl:template>
  
  <xsl:template match="*" mode="b">
    <xsl:text>modeB: </xsl:text><xsl:value-of select="."/>
    <xsl:text>&#010;</xsl:text>
  </xsl:template>
  
  </xsl:stylesheet>
  
  
  1.1                  xml-xalan/test/tests/conf/modes/modes09.xml
  
  Index: modes09.xml
  ===================================================================
  <?xml version="1.0"?> 
  <letters>
    <letter>a</letter>
    <letter>b</letter>
    <letter>c</letter>
    <punct>$</punct>
    <number>6</number>
    <letter>h</letter>
    <number>9</number>
  </letters>
  
  
  1.1                  xml-xalan/test/tests/conf/modes/modes09.xsl
  
  Index: modes09.xsl
  ===================================================================
  <?xml version="1.0"?>
  <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
  
    <!-- FileName: MODES09 -->
    <!-- Document: http://www.w3.org/TR/xslt -->
    <!-- DocVersion: 19991116 -->
    <!-- Section: 5.4 -->
    <!-- Creator: David Marston -->
    <!-- Purpose: Test an apply-templates that has no select but has a mode. -->
  
  <xsl:template match="letters">
    <out>
      <xsl:apply-templates mode="char"/>
    </out>
  </xsl:template>
  
  <xsl:template match="letter" mode="char">
    <xsl:text>-</xsl:text><xsl:value-of select="."/>
  </xsl:template>
  
  <xsl:template match="number" mode="char">
    <xsl:text>#</xsl:text><xsl:value-of select="."/>
  </xsl:template>
  
  <!-- The "punct" nodes in the input will get processed under the default
       template, in char mode, which copies the content. -->
  
  <xsl:template match="letter">
    <xsl:text>We should not get this line!
  </xsl:text>
  </xsl:template>
  
  </xsl:stylesheet>
  
  
  
  1.1                  xml-xalan/test/tests/conf/modes/modes10.xml
  
  Index: modes10.xml
  ===================================================================
  <?xml version="1.0"?> 
  <doc>
    <x test="x attribute">content
      <y>why</y>
    </x>
  </doc>
  
  
  1.1                  xml-xalan/test/tests/conf/modes/modes01.xml
  
  Index: modes01.xml
  ===================================================================
  <?xml version="1.0"?> 
  <doc>
    <a test="a attribute">a-text</a>
  </doc>