xsl-list
[Top] [All Lists]

Re: unable to resolve intersect/union operator

2005-05-19 08:32:40
Sorry but its still not working out and Im getting quite sick of it !

David Carlisle wrote:

 > A/Value[for $a in . return /Parts/B/Value[contains(.,$a)]]


Heres what Ive done so far (which aint at the end of it)

<xsl:variable name="interim" select="$map/TopConcept/*[name()=$ATerm]"/>
<xsl:if test="$interim and $interim/B/Class[not(.=$notPresent)]">
<xsl:variable name="aVal" select="normalize-space($interim/A/Value)"/> <xsl:variable name="bVal" select="normalize-space($interim/B/Value)"/> <Test>Test: <xsl:value-of select="distinct-values($aVal[for $a in . return $bVal[contains(.,$a)]])" separator=", "/></Test>
</xsl:if>

Actual Output:
<Test>Test: Handle</Test>

Expected Output:
<Test>Test: Handle,Bolt</Test>

I have to bear in mind that the order of appearance of matching values may differ in the <B> node and might appear in either B/Class or B/Value.

I really am sorry for posting so many queries but I just cant seem to resolve this one ! My head's aching now ! Much appreciate your help.

Thanks
Rahil


--------------
input.xml
--------------
<Parts>
   <A>
    <Class id="123" type="none">Parts</Class>
    <Value id="345" type="CODED_TEXT">Handle</Value>
    <Value id="456" type="CODED_TEXT">Bolt</Value>
    <Value id="567" type="CODED_TEXT">Nut</Value>
   </A>
   <B>
    <Class id="none" type="Property">No ClassName</Class>
    <Value id="234" type="Property">hasProperty Handle</Value>
    <Value id="789" type="Property">hasProperty Screw</Value>
    <Value id="901" type="Property">hasProperty Bolt</Value>
   </B>
</Parts>

Expected match:
Handle, Bolt


Thanks

Rahil

--~------------------------------------------------------------------
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>
--~--