Mega Code Archive

 
Categories / XML / XSLT StyleSheet
 

Every and some operator

File: Data.xml File: Transform.xslt <?xml version="1.0"?> <xsl:stylesheet version="2.0"    xmlns:xsl="http://www.w3.org/1999/XSL/Transform"   xmlns:xs="http://www.w3.org/2001/XMLSchema">   <xsl:output method="text"/>     <xsl:variable name="English-months" as="xs:string*"     select="('January', 'February', 'March', 'April',               'May', 'June', 'July', 'August',               'September', 'October', 'November',               'December')"/>   <xsl:template match="/">     <xsl:text>  If ANY month name has a string-length() </xsl:text>     <xsl:text>&#xA;    greater than 4, print 'Yes,' otherwise</xsl:text>     <xsl:text>&#xA;    print 'No'&#xA;&#xA;         </xsl:text>     <xsl:value-of        select="if (some $m in $English-months satisfies                (string-length($m) &gt; 4)) then 'Yes' else 'No'"/>     <xsl:text>&#xA;</xsl:text>     <xsl:text>&#xA;&#xA;  If EVERY month name has a string-</xsl:text>     <xsl:text>length() &#xA;    greater than 4, print 'Yes,' </xsl:text>     <xsl:text>otherwise&#xA;    print 'No'&#xA;&#xA;         </xsl:text>     <xsl:value-of        select="if (every $m in $English-months satisfies                (string-length($m) &gt; 4)) then 'Yes' else 'No'"/>     <xsl:text>&#xA;</xsl:text>   </xsl:template> </xsl:stylesheet> Output:   If ANY month name has a string-length()      greater than 4, print 'Yes,' otherwise     print 'No'          Yes   If EVERY month name has a string-length()      greater than 4, print 'Yes,' otherwise     print 'No'          No