functx:sequence-node-equal

Se duas sequências têm os mesmos nós XML, na mesma ordem

Descrição

A função functx:sequence-node-equal devolve um valor booleano que diz se os dois argumentos têm os mesmos nós, na mesma ordem. A comparação é pela identidade do nó, e não pelo conteúdo.

Parâmetros

Descrição

seq1:node()

a primeira sequência de nós

seq2:node()

a segunda sequência de nós

Exemplos

Os exemplos abaixo usam este documento de entrada:

<xsl:variable name="in-xml" as="item()*">
  <authors>
     <author>
        <fName>Kate</fName>
        <lName>Jones</lName>
     </author>
     <author>
        <fName>John</fName>
        <lName>Doe</lName>
     </author>
   </authors>
</xsl:variable>

<xsl:variable name="anAuthor" as="item()*">
  <author>
     <fName>Kate</fName>
     <lName>Jones</lName>
  </author>
</xsl:variable>

XPath

Resultado

Explicação

functx:sequence-node-equal($in-xml/author/*, $in-xml/*/*)

true

As duas expressões selecionam os mesmos nós, na mesma ordem.

functx:sequence-node-equal($in-xml/author, ($in-xml/author[2],$in-xml/author[1]))

false

A ordem dos nós é diferente.

functx:sequence-node-equal($in-xml/author[1], $anAuthor)

false

Os nós têm o mesmo conteúdo, mas não são o mesmo nó.

Veja também