You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@xalan.apache.org by pa...@apache.org on 2001/08/02 21:42:57 UTC

cvs commit: xml-xalan/test/tests/capi/extensions cextension02.xsl cextension02.xml cextension01.xsl cextension01.xml

pauldick    01/08/02 12:42:57

  Added:       test/tests/capi/extensions cextension02.xsl cextension02.xml
                        cextension01.xsl cextension01.xml
  Log:
  Test cases for extensions
  
  Revision  Changes    Path
  1.1                  xml-xalan/test/tests/capi/extensions/cextension02.xsl
  
  Index: cextension02.xsl
  ===================================================================
  <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0"
                  xmlns:xalan="http://xml.apache.org/xalan">
  
    <!-- FileName: extend16 -->
    <!-- Document: http://www.w3.org/TR/xslt -->
    <!-- DocVersion: 19991116 -->
    <!-- Section: 14 Extensions -->
    <!-- Purpose: Testing Lotus-specific extensions. -->
   
  <xsl:variable name="ns0" select="/lists/*/*"/>
  <xsl:variable name="ns3" select="/lists/list3/*"/>
  <xsl:variable name="ns4" select="/lists/*/item"/>
  <xsl:variable name="ns5" select="/lists/list5/item"/>
  <xsl:variable name="ns6" select="/lists/*"/>
  
  <xsl:template match="/">
  <out>
  
  *****				DATA				*****
  ns0: /lists/*/*
  <xsl:for-each select="$ns0">
  	<xsl:value-of select="name()"/>=<xsl:value-of select="."/><xsl:text>,</xsl:text>
  </xsl:for-each>
  
  ns3: /lists/list3/*
  <xsl:for-each select="$ns3">
  	<xsl:value-of select="name()"/>=<xsl:value-of select="."/><xsl:text>,</xsl:text>
  </xsl:for-each>
  
  ns4: /lists/*/item
  <xsl:for-each select="$ns4">
  	<xsl:value-of select="name()"/>=<xsl:value-of select="."/><xsl:text>,</xsl:text>
  </xsl:for-each>
  
  ns5: /lists/list5/item
  <xsl:for-each select="$ns5">
  	<xsl:value-of select="name()"/>=<xsl:value-of select="."/><xsl:text>,</xsl:text>
  </xsl:for-each>
  
  ns6: /lists/*
  <xsl:for-each select="$ns6">
  	<xsl:copy/>
  </xsl:for-each>
  
  
  *****				TESTS				*****
  Intersection - ns0, ns3:
  <xsl:for-each select="xalan:intersection(lists/*/*, lists/list3/*)">
          <xsl:value-of select="."/>
          <xsl:if test="position() != last()">
          	<xsl:text>,</xsl:text>
  		</xsl:if>
  		<xsl:if test="position() = last()">
  			<xsl:text>: </xsl:text>
  		</xsl:if>
  </xsl:for-each>
  <xsl:copy-of select="xalan:intersection($ns3, $ns0)"/>
  
  Difference - ns6, ns5:
  <xsl:for-each select="xalan:difference(lists/*, lists/list5/item)">
          <xsl:value-of select="name(.)"/>
          <xsl:if test="position() != last()">
          	<xsl:text>,</xsl:text>
  		</xsl:if>
  		<xsl:if test="position() = last()">
  			<xsl:text>: </xsl:text>
  		</xsl:if>
  </xsl:for-each>
  
  Difference - ns5, ns6:
  <xsl:for-each select="xalan:difference($ns5, $ns6 )">
          <xsl:value-of select="."/>
          <xsl:if test="position() != last()">
          	<xsl:text>,</xsl:text>
  		</xsl:if>
  		<xsl:if test="position() = last()">
  			<xsl:text>: </xsl:text>
  		</xsl:if>
  </xsl:for-each>
  <xsl:copy-of select="xalan:difference($ns5, $ns6 )"/>
  
  Values of $ns4:
  <xsl:for-each select="$ns4">
  	<xsl:value-of select="."/>
  </xsl:for-each>
  Distinct - ns4:
  <xsl:for-each select="xalan:distinct($ns4)">
          <xsl:value-of select="."/>
  </xsl:for-each>
  
  hasSameNodes - $ns0, lists/*/*:
  <xsl:if test="xalan:hasSameNodes($ns0, lists/*/*)">
      <WHOA_It_is_True/>
  </xsl:if>
  
  evaluate - lists//*/@* ...
  <xsl:value-of select="xalan:evaluate('lists//*/@*')"/>
  <xsl:value-of select="xalan:evaluate('lists//*/@a2')"/>
  <xsl:value-of select="xalan:evaluate('lists/list3/*/@a2')"/>
  <xsl:value-of select="xalan:evaluate('//list3//@a1')"/><xsl:text> </xsl:text>
  <xsl:value-of select="xalan:evaluate('//list2//@a1 and //list3//@a2')"/>
  </out>
  </xsl:template>
  
  <xsl:template match="text()"/>
  
  </xsl:stylesheet>
  
  
  
  1.1                  xml-xalan/test/tests/capi/extensions/cextension02.xml
  
  Index: cextension02.xml
  ===================================================================
  <lists>
  <list>
  <item>A</item>
  <item>B</item>
  <item>C</item>
  <item>D</item>
  <item>E</item>
  </list>
  <list1>
  <item>A</item>
  <item>B</item>
  <item>C</item>
  <item>D</item>
  <item>E</item>
  </list1>
  <list2>
  <item>A</item>
  <item a1="B" a2="b">B</item>
  <item>C</item>
  </list2>
  <list3>
  <item>X</item>
  <item a1="Y" a2="y">Y</item>
  <item>Z</item>
  </list3>
  <list4>
  <item>X</item>
  <item>Y</item>
  <item>Z</item>
  <item>A</item>
  <item>B</item>
  <item>C</item>
  <item>D</item>
  <item>E</item>
  <item>A</item>
  <item>B</item>
  <item>C</item>
  <item>D</item>
  <item>E</item>
  <item>X</item>
  <item>Y</item>
  <item>Z</item>
  </list4>
  <list5>
  <item>X</item>
  <item>Y</item>
  <item>Z</item>
  <item>A</item>
  <item>B</item>
  <item>C</item>
  <item>D</item>
  <item>E</item>
  </list5>
  </lists>
  
  
  
  1.1                  xml-xalan/test/tests/capi/extensions/cextension01.xsl
  
  Index: cextension01.xsl
  ===================================================================
  <?xml version="1.0"?>
  <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0"
                  xmlns:cextend="http://xml.apache.org/xslt"
  		        xmlns:test="http://www.cnn.com"
          		xmlns:default="http://www.hello.com"
                  exclude-result-prefixes="test default cextend">
  
    <!-- FileName: extend14 -->
    <!-- Document: http://www.w3.org/TR/xslt -->
    <!-- DocVersion: 19991116 -->
    <!-- Section: 14 Extensions -->
    <!-- Purpose: Testing Lotus-specific extension "Nodeset". -->
   
  <xsl:strip-space elements="*"/>
  <xsl:output indent="yes"/>
               
  <xsl:template match="/">
     <out>
  	  <xsl:variable name="rtf">
  		<docelem xmlns="http://www.hello.com" xmlns:test="http://www.cnn.com">
  			<elem1>
  				<elem1a>ELEMENT1A</elem1a>
  				<elem1b>,ELEMENT1B</elem1b>
  			</elem1>
  			<elem2>
  				<elem2a>ELEMENT2A</elem2a>
  				<elem2b/>
  			</elem2>
  			<elem3>1</elem3>
  			<elem3>2</elem3>
  			<test:elem3>3</test:elem3>
  			<elem3>4</elem3>
  			<elem3>5</elem3>
  			<elem4>Yahoo</elem4>
  		</docelem>
  	  </xsl:variable>
  
  	  <xsl:value-of select="cextend:nodeset($rtf)/default:docelem/default:elem1"/><xsl:text>&#10;</xsl:text>
  
  	  <xsl:for-each select="cextend:nodeset($rtf)/default:docelem/*">
  		  <xsl:value-of select="name(.)"/><xsl:text>,</xsl:text>
  	  </xsl:for-each><xsl:text>&#10;</xsl:text>
  	   
  	  <xsl:for-each select="cextend:nodeset($rtf)/default:docelem/default:elem2/*">
  		  <xsl:value-of select="name(.)"/><xsl:text>,</xsl:text>
  	  </xsl:for-each><xsl:text>&#10;</xsl:text>
  
  	  <xsl:text>Apply-templates match=elem4: </xsl:text>
  	  <xsl:apply-templates select="cextend:nodeset($rtf)/default:docelem/default:elem4"/>
  
  	  <xsl:text>Sum: </xsl:text> 	  
  	  <xsl:value-of select="sum(cextend:nodeset($rtf)/default:docelem/default:elem3)"/><xsl:text>&#10;</xsl:text>
  
  	  <xsl:text>Count: </xsl:text> 	  
  	  <xsl:value-of select="count(cextend:nodeset($rtf)/default:docelem/default:elem3)"/><xsl:text>&#10;</xsl:text>
  
  	  <xsl:text>Number: </xsl:text> 	  
  	  <xsl:value-of select="number(cextend:nodeset($rtf)/default:docelem/default:elem3[2])"/><xsl:text>&#10;</xsl:text>
  
  	  <xsl:text>Name: </xsl:text>  
  	  <xsl:value-of select="name(cextend:nodeset($rtf)/*)"/><xsl:text>&#10;</xsl:text>
  
  	  <xsl:text>generate-id: </xsl:text>  
  	  <xsl:value-of select="generate-id(cextend:nodeset($rtf)/default:docelem/default:elem4)"/><xsl:text>&#10;</xsl:text>
  
  	  <xsl:text>Local-name: </xsl:text>
  	  <xsl:value-of select="local-name(cextend:nodeset($rtf)/*)"/><xsl:text>&#10;</xsl:text>
  
  	  <xsl:text>Namespace-uri: </xsl:text>
  	  <xsl:value-of select="namespace-uri(cextend:nodeset($rtf)/default:docelem)"/>,
  	  <xsl:value-of select="namespace-uri(cextend:nodeset($rtf)/default:docelem/default:elem1)"/>,
  	  <xsl:value-of select="namespace-uri(cextend:nodeset($rtf)/default:docelem/test:elem3)"/>: <xsl:value-of select="(cextend:nodeset($rtf)/default:docelem/test:elem3)"/>
  
  	  <xsl:text>&#10;</xsl:text>
  	  <xsl:text>&#10;</xsl:text>
  	  <xsl:text>xsl:copy-of($rtf): &#10; </xsl:text>
  	  <xsl:copy-of select="cextend:nodeset($rtf)/default:docelem"/><xsl:text>&#10;</xsl:text>
  
  	  <xsl:text>&#10;</xsl:text>
  	  <xsl:text>xsl:copy-of(elem1b): &#10; </xsl:text>
  	  <xsl:copy-of select="cextend:nodeset($rtf)/default:docelem/default:elem1/default:elem1b"/><xsl:text>&#10;</xsl:text>
  	  
  	  <xsl:text>&#10;</xsl:text>
  	  <xsl:text>xsl:copy-of(test:elem3): &#10; </xsl:text>
  	  <xsl:copy-of select="cextend:nodeset($rtf)/default:docelem/test:elem3"/><xsl:text>&#10;</xsl:text>
  
     </out>
  </xsl:template>
  
  <xsl:template match="default:elem4">
  	  <xsl:value-of select="."/>,
  </xsl:template>
    
  </xsl:stylesheet>
  
  
  
  1.1                  xml-xalan/test/tests/capi/extensions/cextension01.xml
  
  Index: cextension01.xml
  ===================================================================
  <?xml version="1.0"?> 
  <doc>
  </doc>
  
  

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