Operators "union" and "|" are equivalent. They take two sequences of nodes and return a sequence of all nodes that occur in either of these operands. All nodes in the final sequence are unique, it means that if both original sequences contain the same node this node appears just once in the final sequence (compare with "," operator).
|
XSLT
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="2.0"> <xsl:output method="xml" indent="yes" omit-xml-declaration="yes"/> <xsl:template match="/aaa"> <xxx> <xsl:value-of select="bbb union ccc"/> </xxx> <yyy> <xsl:value-of select="bbb | ccc"/> </yyy> <zzz> <xsl:value-of select="bbb | *[1] | *[2] | *[position() != last()]"/> </zzz> </xsl:template> </xsl:stylesheet> |
|
|
XML
<aaa> <bbb>B1</bbb> <bbb>B2</bbb> <ccc>C1</ccc> <ccc>C2</ccc> </aaa> |
Output
<xxx>B1 B2 C1 C2</xxx> <yyy>B1 B2 C1 C2</yyy> <zzz>B1 B2 C1</zzz> |
| Previous chapter: | Sequences |
| Next chapter: | Value-of |
| Previous page: | - - - |
| Next page: | Intersection of nodes |