Re: [xsl] union/intersection on attribute values

Subject: Re: [xsl] union/intersection on attribute values
From: Dan Diebolt <dandiebolt@xxxxxxxxx>
Date: Sat, 21 Apr 2001 11:26:58 -0700 (PDT)
DC on set1 and  set2> select="item/@set1[. = /items/item/@set2]"
DC on set1 less set2> select="item/@set1[not(. = /items/item/@set2)]"
DC on set2 less set1> select="item/@set2[not(. = /items/item/@set1)]"

FN>select="string(item/@set2[not(. = /items/item/@set1)])"
FN>is an alternative way of de-duping the results.

string() doesn't dedup the Venn pieces for me. 

DC, can you elaborate your approach using count()?
FN, can you elaborate your approach using string()?

Regards,

Dan

XSL:
<xsl:template match="items">
  <xsl:variable name="In1and2" select="string(item/@set1[. =
/items/item/@set2])"/>
 In1and2=<xsl:value-of select="$In1and2"/><br/>
 
 <xsl:variable name="In1not2" select="string(item/@set1[not(. =
/items/item/@set2)])"/>
 <xsl:value-of select="string(item/@set1[not(. = /items/item/@set2)])"/><br/>
 In1not2=<xsl:value-of select="$In1not2"/><br/>
 
 <xsl:variable name="In2not1" select="string(item/@set2[not(. =
/items/item/@set1)])"/>
 In2not1=<xsl:value-of select="$In2not1"/><br/>
</xsl:variable>

XML Fragment:  
<items>
 <item id="1" set1="A"/>
 <item id="2" set1="B"/>
 <item id="3" set1="C"/>
 <item id="4" set2="A"/>
 <item id="5" set2="C"/>
 <item id="6" set2="D"/>
 <item id="7" set2="D"/>
 <item id="8" set2="D"/>
 <item id="9" set2="E"/>
 <item id="a" set2="E"/>
 <item id="b" set2="F"/>
</items>


__________________________________________________
Do You Yahoo!?
Yahoo! Auctions - buy the things you want at great prices
http://auctions.yahoo.com/

 XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list


Current Thread