xsl-list
[Top] [All Lists]

Re: [xsl] string set difference

2010-12-16 12:17:45
At 2010-12-16 20:06 +0200, Andriy Gerasika wrote:
Please help how to calculate set difference between string sequences in XSLT 2.0? (not node-sets)

This is simply the use of a predicate using "=" based on the principle of comparing sets of values.

I hope the example below helps.

. . . . . . . Ken

t:\ftemp>type andriy.xsl
<?xml version="1.0" encoding="US-ASCII"?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform";
                xmlns:xsd="http://www.w3.org/2001/XMLSchema";
                version="2.0">

<xsl:output method="text"/>

<xsl:template match="/">
  <xsl:variable name="s1" as="xsd:string*" select="'a','b','c','d','e','f'"/>
  <xsl:variable name="s2" as="xsd:string*" select="'c','d','e','f','g','h'"/>
  Difference: <xsl:value-of select="$s1[not(.=$s2)],$s2[not(.=$s1)]"/>
  Intersection: <xsl:value-of select="$s1[.=$s2]"/>
</xsl:template>

</xsl:stylesheet>

t:\ftemp>xslt2 andriy.xsl andriy.xsl

  Difference: a b g h
  Intersection: c d e f
t:\ftemp>




--
Contact us for world-wide XML consulting & instructor-led training
Crane Softwrights Ltd.          http://www.CraneSoftwrights.com/s/
G. Ken Holman                 mailto:gkholman(_at_)CraneSoftwrights(_dot_)com
Legal business disclaimers:  http://www.CraneSoftwrights.com/legal


--~------------------------------------------------------------------
XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list
To unsubscribe, go to: http://lists.mulberrytech.com/xsl-list/
or e-mail: <mailto:xsl-list-unsubscribe(_at_)lists(_dot_)mulberrytech(_dot_)com>
--~--

<Prev in Thread] Current Thread [Next in Thread>