.. _deep-equal: ========== deep-equal ========== Se dois nós têm o mesmo conteúdo e os mesmos atributos Descrição ~~~~~~~~~ A função fn:deep-equal devolve true se as sequências $parameter1 e $parameter2 contêm os mesmos valores, na mesma ordem. Valores atômicos são comparados pelo valor tipado, com o operador eq. Se dois valores atômicos não puderem ser comparados (por exemplo, um número e uma string), a função devolve false em vez de dar erro. De forma simples, dois nós são deep-equal se têm os mesmos atributos e filhos (na mesma ordem) que também são deep-equal. .. list-table:: :widths: 40 60 :header-rows: 1 * - **Parâmetros** - **Descrição** * - parameter1:item() - a primeira sequência a comparar * - parameter2:item() - a segunda sequência a comparar * - collation:string() - a collation usada para comparar strings Exemplos ~~~~~~~~ Os exemplos abaixo usam este documento de entrada: .. code-block:: xml 784 784 .. list-table:: :widths: 50 50 :header-rows: 1 * - **XPath** - **Resultado** * - deep-equal( 1, 1 ) - true * - deep-equal( (1, 1), (1, 1) ) - true * - deep-equal( (1, 2), (1.0, 2.0) ) - true * - deep-equal( (1, 2), (2, 1) ) - false * - deep-equal( $prod1, $prod2 ) - true * - deep-equal( $prod1/number, $prod2/number ) - true Veja também ~~~~~~~~~~~ .. toctree:: :titlesonly: :glob: * :ref:`functx_sequence-deep-equal`. * :ref:`functx_distinct-deep`. * :ref:`functx_index-of-deep-equal-node`. * :ref:`functx_is-node-in-sequence-deep-equal`. * :ref:`functx_is-node-among-descendants-deep-equal`.