Files correlati : cg0.exe cg0700a.msk cg0700b.msk cg3.exe cg4.exe Bug : Commento: Merge 1.0 libraries
47 lines
1.4 KiB
XML
47 lines
1.4 KiB
XML
<?xml version="1.0"?>
|
|
|
|
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0"
|
|
xmlns:set="http://exslt.org/sets" >
|
|
|
|
<!-- Test set:intersection, difference -->
|
|
|
|
<xsl:variable name="i" select="//city[contains(@name,'i')]"/>
|
|
<xsl:variable name="e" select="//city[contains(@name,'e')]"/>
|
|
|
|
<xsl:template match="/">
|
|
<out>
|
|
Containing i and e:
|
|
<xsl:for-each select="set:intersection($i, $e)">
|
|
<xsl:value-of select="@name"/>;
|
|
</xsl:for-each>
|
|
Containing i and no e:
|
|
<xsl:for-each select="set:difference($i, $e)">
|
|
<xsl:value-of select="@name"/>;
|
|
</xsl:for-each>
|
|
Containing e and no i:
|
|
<xsl:for-each select="set:difference($e, $i)">
|
|
<xsl:value-of select="@name"/>;
|
|
</xsl:for-each>
|
|
|
|
<!-- test intersection and difference on empty sets -->
|
|
Containing i:
|
|
<xsl:for-each select="set:difference($i, /..)">
|
|
<xsl:value-of select="@name"/>;
|
|
</xsl:for-each>
|
|
Empty set:
|
|
<xsl:for-each select="set:intersection($i, /..)">
|
|
<xsl:value-of select="@name"/>;
|
|
</xsl:for-each>
|
|
Empty set:
|
|
<xsl:for-each select="set:intersection(/.., $i)">
|
|
<xsl:value-of select="@name"/>;
|
|
</xsl:for-each>
|
|
Empty set:
|
|
<xsl:for-each select="set:difference(/.., $i)">
|
|
<xsl:value-of select="@name"/>;
|
|
</xsl:for-each>
|
|
</out>
|
|
</xsl:template>
|
|
|
|
</xsl:stylesheet>
|