XML/XSLT stylesheet/every
every and some operator
<source lang="xml">
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> greater than 4, print "Yes," otherwise</xsl:text> <xsl:text> print "No" </xsl:text> <xsl:value-of select="if (some $m in $English-months satisfies (string-length($m) > 4)) then "Yes" else "No""/> <xsl:text> </xsl:text> <xsl:text> If EVERY month name has a string-</xsl:text> <xsl:text>length() greater than 4, print "Yes," </xsl:text> <xsl:text>otherwise print "No" </xsl:text> <xsl:value-of select="if (every $m in $English-months satisfies (string-length($m) > 4)) then "Yes" else "No""/> <xsl:text> </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 </source>