Share via


Tarea XML

La tarea XML se usa para trabajar con datos XML. Mediante esta tarea, un paquete puede recuperar documentos XML, aplicar operaciones a los documentos mediante las hojas de estilos Extensible Stylesheet Language Transformations (XSLT) y expresiones XPath, combinar varios documentos, o bien validar, comparar y guardar los documentos actualizados en archivos y variables.

Esta tarea habilita un paquete de Integration Services para modificar de forma dinámica los documentos XML en tiempo de ejecución. Puede usar la tarea XML para los siguientes objetivos:

  • Cambiar el formato de un documento XML. Por ejemplo, la tarea puede obtener acceso a un informe que reside en un archivo XML y aplicar dinámicamente una hoja de estilos XSLT para personalizar la presentación del documento.

  • Seleccionar secciones de un documento XML. Por ejemplo, la tarea puede obtener acceso a un informe que reside en un archivo XML y aplicar dinámicamente una expresión XPath para seleccionar una sección del documento. La operación también puede obtener y procesar valores en el documento.

  • Combinar documentos de varios orígenes. Por ejemplo, la tarea puede descargar informes de varios orígenes y combinarlos dinámicamente en un solo documento XML completo.

Puede incluir datos XML en un flujo de datos mediante un origen XML para extraer valores de un documento XML. Para obtener más información, vea Origen XML.

La primera acción que realiza la tarea XML es recuperar un documento XML específico. Esta acción se genera en la tarea XML y se produce automáticamente. El documento XML recuperado se usa como origen de los datos para la operación que realiza la tarea XML.

Las operaciones de XML de comparación (Diff), combinación (Merge) y revisión (Patch) requieren dos operandos. El primer operando especifica el documento XML de origen. El segundo operando también especifica un documento XML, cuyo contenido depende de los requisitos de la operación. Por ejemplo, la operación de comparación compara dos documentos: por lo tanto, el segundo operando especifica otro documento XML similar con el que se compara el documento XML de origen.

La tarea XML puede usar una variable o un administrador de conexión de archivo como origen, o incluir los datos XML en una propiedad de tarea.

Si el origen es una variable, la variable especificada contiene la ruta del documento XML.

Si el origen es un administrador de conexión de archivos, el administrador de conexión de archivos especificado proporciona la información de origen. El administrador de conexión de archivos se configura de forma independiente de la tarea XML y se hace referencia a él en la tarea XML. La cadena de conexión para el administrador de conexión de archivos especifica la ruta del archivo XML. Para obtener más información, vea Administrador de conexión de archivos.

La tarea XML se puede configurar para guardar el resultado de la operación en una variable o en un archivo. Si se guarda en un archivo, la tarea XML usa un administrador de conexión de archivos para tener acceso al archivo. También puede guardar los resultados del DiffGram generado por la operación de comparación en archivos y variables.

Operaciones XML predefinidas

La tarea XML incluye un conjunto predefinido de operaciones para trabajar con documentos XML. Estas operaciones se describen en la siguiente tabla.

Operación

Descripción

Comparación (Diff)

Compara dos documentos XML. Usando el documento XML de origen como documento base, la operación de comparación lo compara con otro documento XML, detecta sus diferencias y escribe las diferencias en un documento DiffGram XML. Esta operación incluye propiedades para personalizar la comparación.

Combinación (Merge)

Combina dos documentos XML. Usando el documento XML de origen como documento base, la operación de combinación agrega el contenido de un segundo documento en el documento base. La operación puede especificar una ubicación de combinación dentro del documento base.

Revisión (Patch)

Aplica el resultado de la operación de comparación, denominada documento DiffGram, en un documento XML para crear un nuevo documento principal que incluye contenido del documento DiffGram.

Validación (Validate)

Valida el documento XML con una Definición de tipo de documento (DTD) o esquema de definición del esquema XML (XSD).

XPath

Realiza consultas y evaluaciones XPath.

XSLT

Realiza transformaciones XSL en documentos XML.

Operación de comparación

La operación de comparación se puede configurar para usar un algoritmo de comparación diferente dependiendo de si la comparación debe ser rápida o precisa. La operación también se puede configurar para seleccionar automáticamente una comparación rápida o precisa según el tamaño de los documentos que se comparan.

La operación de comparación incluye un conjunto de opciones que personalizan la comparación XML. Las opciones se describen en la siguiente tabla.

Opción

Descripción

IgnoreComments

Valor que especifica si se comparan los nodos de comentarios.

IgnoreNamespaces

Valor que especifica si se comparan el identificador uniforme de recursos (URI) de espacio de nombres de un elemento y sus nombres de atributos. Si esta opción se establece en true, dos elementos que tienen el mismo nombre local pero un espacio de nombres diferente se consideran idénticos.

IgnorePrefixes

Valor que especifica si se comparan los prefijos de nombres de elementos y atributos. Si esta opción se establece en true,, dos elementos que tienen el mismo nombre local pero un URI de espacio de nombres y prefijos diferentes se consideran idénticos.

IgnoreXMLDeclaration

Un valor que especifica si se comparan las declaraciones XML.

IgnoreOrderOfChildElements

Valor que especifica si se compara el orden de los elementos secundarios. Si esta opción se establece en true, los elementos secundarios que se diferencian solamente por su posición en una lista de elementos del mismo nivel se consideran idénticos.

IgnoreWhiteSpaces

Valor que especifica si se comparan los espacios en blanco.

IgnoreProcessingInstructions

Valor que especifica si se comparan las instrucciones de procesamiento.

IgnoreDTD

Valor que especifica si se pasa por alto el DTD.

Operación de combinación

Al utilizar una instrucción XPath para identificar la ubicación de combinación en el documento de origen, se espera que esta instrucción devuelva un único nodo. Si la instrucción devuelve varios nodos, solo se utiliza el primero. El contenido del segundo documento se combina bajo el primer nodo que devuelve la consulta de XPath.

Operación XPath

La operación XPath se puede configurar para usar diferentes tipos de funcionalidad de XPath.

  • Seleccione la opción Evaluación para implementar funciones XPath tales como sum().

  • Seleccione la opción Lista de nodos para devolver los nodos seleccionados como un fragmento XML.

  • Seleccione la opción Valores para devolver el valor de texto interno de todos los nodos seleccionados, concatenados en una cadena.

Operación de validación

La operación de validación se puede configurar para usar una Definición de tipo de documento (DTD) o un esquema de definición del esquema XML (XSD).

Codificación de documentos XML

La tarea XML únicamente admite la mezcla de documentos Unicode. Esto significa que la tarea puede aplicar la operación de combinación únicamente a documentos con una codificación Unicode. El uso de otras codificaciones hará que la tarea XML genere un error.

Nota

Las operaciones de comparación y revisión incluyen una opción para omitir la declaración XML en los datos XML del segundo operando, lo que permite usar documentos que tienen otras codificaciones en estas operaciones.

Para comprobar que se puede usar el documento XML, revise la declaración XML. La declaración debe especificar explícitamente UTF-8, que indica una codificación Unicode de 8 bits.

La etiqueta siguiente muestra la codificación Unicode de 8 bits.

<?xml version="1.0" encoding="UTF-8"?>

Mensajes de registro personalizados disponibles en la tarea XML

La siguiente tabla contiene las entradas del registro personalizadas para la tarea XML. Para obtener más información, vea Implementar inicios de sesión en paquetes y Mensajes personalizados para registro.

Entrada del registro

Descripción

XMLOperation

Proporciona información sobre la operación que realiza la tarea.

Configurar la tarea XML

Puede establecer propiedades a través del Diseñador de SSIS o mediante programación.

Para obtener más información acerca de las propiedades que puede establecer en el Diseñador de SSIS, haga clic en uno de los temas siguientes:

Para obtener más información sobre cómo establecer propiedades en el Diseñador SSIS, haga clic en el tema siguiente:

Configurar la tarea XML mediante programación

Para obtener más información sobre cómo establecer estas propiedades mediante programación, haga clic en el tema siguiente:

Recursos externos

Icono de Integration Services (pequeño) Manténgase al día con Integration Services

Para obtener las descargas, artículos, ejemplos y vídeos más recientes de Microsoft, así como soluciones seleccionadas de la comunidad, visite la página de Integration Services en MSDN:


Para recibir notificaciones automáticas de estas actualizaciones, suscríbase a las fuentes RSS disponibles en la página.