home contribute faq download

FunctX XSLT Functions

functx:value-intersect

The intersection of two sequences of values

Google
Webxsltfunctions.com

Description

The functx:value-intersect function returns the intersection of the values in two sequences (values that appear in both sequences) in an implementation-defined order. It removes duplicates. This function is useful because the built-in intersect operator only works on nodes, not atomic values.

Arguments and Return Type

NameTypeDescription
$arg1 xs:anyAtomicType* the first sequence
$arg2 xs:anyAtomicType* the second sequence
return value xs:anyAtomicType*

XSLT Function Declaration

See XQuery definition.
<xsl:function name="functx:value-intersect" as="xs:anyAtomicType*"
              xmlns:functx="http://www.functx.com">
  <xsl:param name="arg1" as="xs:anyAtomicType*"/>
  <xsl:param name="arg2" as="xs:anyAtomicType*"/>

  <xsl:sequence select="
  distinct-values($arg1[.=$arg2])
 "/>

</xsl:function>

Examples

XPath ExampleResults
functx:value-intersect((1,2),(2,3))
2
functx:value-intersect((1,2,3),(2,3,4))
(2, 3)
functx:value-intersect((1,2,2,3),(2,3))
(2, 3)
functx:value-intersect((1,2,2,3),())
()

See Also

functx:value-unionThe union of two sequences of values
functx:value-exceptThe values in one sequence that aren't in another sequence

History

Published OnLast UpdatedContributor(s)
2006-06-272007-02-26W3C XML Query Working Group, XQuery 1.0 and XPath 2.0 Functions and Operators, http://www.w3.org/TR/xpath-functions/
Datypic XSLT Services

Recommended Reading:

XQuery