Comparación XML de la plataforma

El conector de comparación XML permite realizar una comparación estructural de dos documentos XML. Devuelve un árbol de diferencias que indica qué elementos XML se han añadido o eliminado y , para elementos XML modificados, qué diferencias existen con respecto a los atributos o el texto del cuerpo.

Instalar el conector

Utilizar el conector

El conector se utiliza automáticamente al comparar archivos con la extensión .xml.
Por omisión, la comparación XML utiliza el método de comparación desordenado (Unordered), que pasa por alto el orden de aparición de los elementos XML en el documento y los compara de forma que se emparejen los elementos más similares. Existe también un método de comparación ordenado (Ordered), que simplemente compara los elementos XML exactamente por el orden de aparición en el documento. En la mayoría de los casos, este método de comparación no se utilizará.
El método de comparación puede cambiarse desde una lista desplegable de la barra de herramientas de la vista de estructuras.

Si un documento XML contiene elementos que pueden identificarse de forma exclusiva mediante un atributo o el texto de un elemento hijo, es aconsejable crear un esquema de correlación de ID para este tipo de documento XML.

Consulte la sección Guía de aprendizaje y ejemplos para obtener más información acerca de la utilización del conector.

Esquemas de correlación de ID

Un esquema de correlación de ID especifica, para los elementos XML, un atributo o el texto de un elemento hijo que identifica este elemento de forma exclusiva. Esto garantiza que, en el proceso de comparación, se emparejarán los elementos correctos y consecuentemente se compararán entre sí. Si no se especifica ninguna correlación de ID para un elemento XML, se utiliza un algoritmo de comparación general. Sin embargo, este algoritmo de comparación general no siempre devuelve el resultado deseado. La razón de este comportamiento es que el algoritmo de comparación general busca una coincidencia de los nodos de los dos árboles analizados que deben compararse que minimiza las diferencias. El resultado es que, con frecuencia, se emparejan dos elementos XML que son estructuralmente similares pero que representan dos entidades de información completamente diferentes.

Entradas ordenadas

Al utilizar la comparación desordenada por omisión (son o sin correlaciones de ID), a veces es aconsejable especificar que los hijos de determinados elementos se comparen de forma ordenada en lugar de mediante el método desordenado habitual. Por ejemplo, al comparar archivos ANT, el orden de aparición de los hijos de elementos target es importante.
En tales casos, puede crearse una entrada ordenada. Una entrada ordenada especifica que los hijos directos de un elemento XML, identificado por su vía de acceso, se compararán de forma ordenada (sin embargo, los atributos se siguen comparando de forma desordenada). Los hijos de estos hijos se seguirán comparando de forma desordenada, a menos que se especifique lo contrario.

Definir esquemas de correlación de ID y entradas ordenadas

Los esquemas de correlación de ID pueden crearse de tres formas:
  1. Ampliando el punto de extensión idMapping
  2. Utilizando la página de preferencias de comparación XML.
  3. Utilizando el botón Crear esquema de correlación de ID nuevo de la barra de herramientas y el menú de contexto
El primer procedimiento crea un esquema de correlación denominado interno. Un esquema de correlación de ID interno no puede editarse durante la ejecución. Sin embargo, mediante el botón Copia editable de la página de preferencias puede crearse una copia editable del esquema de correlación de ID interno.
El segundo y tercer procedimiento crean esquemas de correlación denominados de usuario. Los crea el usuario durante la ejecución y pueden modificarse en cualquier momento en la página de preferencias.

Los esquemas de correlación internos y de usuario pueden asociarse con una extensión de archivo. Como resultado, al comparar dos archivos XML que tengan esta extensión de archivo, se utilizará automáticamente el esquema de correlación de ID que tenga esta extensión.

Al crear o editar la correlación de ID de un elemento XML determinado, deben especificarse cuatro elementos (consulte el ejemplo):

  1. El elemento name.
  2. El elemento path. Se trata de la vía de acceso del elemento que va desde el directorio raíz del documento XML al padre del elemento.
  3. El nombre del ID que identificará el elemento
  4. Si el nombre de ID del punto es el nombre de un atributo del elemento o el nombre de uno de sus hijos (en cuyo caso se utilizará como ID el texto de este elemento hijo).


Puntos de extensión

Sólo hay un punto de extensión disponible en el conector de comparación XML. Se utiliza para crear esquemas de correlación de ID internos: