EXSLT - set:difference - Implementer Page

Version: 1
Status: stable
User Page: index.html
XML Definition: set.difference.xml
Function Package: set.difference.zip

Function Syntax

node-set set:difference(node-set, node-set)

Template Syntax

<xsl:call-template name="set:difference">
   <xsl:with-param name="nodes1" select="node-set" />
   <xsl:with-param name="nodes2" select="node-set" />
</xsl:call-template>

The set:difference function returns the difference between two node sets - those nodes that are in the node set passed as the first argument that are not in the node set passed as the second argument.

The set:difference template applies templates to these nodes in set:difference mode. By default, the nodes are copied by this template, so that a result tree fragment consisting of the nodes is returned.

An implementation of this extension function in the EXSLT set namespace must conform to the behaviour described in this document.

Implementations

Built-in support for set:difference is available in the following XSLT processors:

ProcessorProcessor VersionImplemented Version
4XSLT, from 4Suite.0.12.0a31
SAXON from Michael Kay6.31
jd.xslt from Johannes Döbler1.0.91
libxslt from Daniel Veillard; implementation by Thomas Broyer1.0.191
Xalan-J from Apache2.4.D11

The following implementations of set:difference are available:

LanguageImplemented VersionCreatorDateDownload
XSLT Template1Jeni Tennison2001-03-28set.difference.template.xsl
EXSLT Function1Jeni Tennison2001-03-28set.difference.function.xsl

Use Cases

Use Case Package: set.difference.use-cases.zip

The following use cases illustrate the functionality of set:difference.

DetailsCalling StylesheetXML DataExpected ResultCategoryTemplate
1set.difference.1.xslset.difference.data.1.xmlset.difference.result.1.xmlexampleN

Change History

Submitted: 2001-03-28
Creator: Jeni Tennison(http://www.jenitennison.com)

Returns the nodes in the first node set that are not in the second node set.

VersionModifiedByDetails
1.12001-05-08Jeni Tennison

Added a description of how the template-equivalent to the function works.

1.22001-05-22Jeni Tennison
  • Added vendor implementations in Saxon and 4XSLT
  • Changed status to stable
1.32001-06-11Jeni Tennison

Added vendor implementation in jd.xslt.

1.42001-08-23Jeni Tennison

Added vendor implementation in libxslt.

1.52002-08-20Craig Stewart

Added Xalan-J implementation to the list.

1.62002-11-12Craig Stewart

Updated 4XSLT version to 0.12.0a3.

Copyright

http://www.exslt.org/set/functions/difference/set.difference.html last modified 2002-11-12