Transformaciones JSON con XSLT/XQuery

www.altova.com Imprimir este apartado Página anterior Subir un nivel Página siguiente

Inicio >  Guía y referencia del usuario > JSON y esquemas JSON >

Transformaciones JSON con XSLT/XQuery

Las expresiones XPath/XQuery 3.1 se pueden utilizar con asignaciones, conjuntos u objetos JSON. El resultado es que se pueden transformar documentos JSON con documentos XSLT 3.0, XQuery 3.1 y XQuery Update 3.0 usando XMLSpy.

 

Esto nos permite:

 

Un documento JSON activo se puede consultar con expresiones XPath/XQuery 3.1 desde la ventana de resultados XPath/XQuery
Un documento JSON activo se puede transformar con un archivo XSLT o XQuery
Un archivo XSLT o XQuery activo se puede ejecutar en un archivo de origen JSON

 

Estas funciones se describen con más detalle a continuación.

 

Nota:        puede familiarizarse con las transformaciones JSON usando los archivos JSON, XSLT y XQuery que encontrará en la carpeta Examples, en el proyecto Examples, que encontrará en la carpeta de la aplicación: C:\Documents and Settings\<usuario>\Mis Documentos\Altova\XMLSpy2019\Examples.

 

Consultar un documento JSON desde la ventana de resultados XPath/XQuery

Se pueden consultar documentos JSON con expresiones XPath/XQuery 3.1 en la ventana ventana de resultados XPath/XQuery (imagen siguiente). Seleccione el icono Xpath 3.1 o el icono XQuery 3.1 y asegúrese de que la ventana se encuentra en modo de evaluación JSON (véase el siguiente apartado).

XPathXQueryWindow4JSON01

El siguiente apartado explica la evaluación de documentos JSON en modo de evaluación JSON. (Para más información sobre la ventana XPath/XQuery y su uso, consulte Ventana de resultados: XPath/XQuery.)

 

Modo de evaluación JSON

El modo de evaluación JSON consiste en los siguientes puntos:

 

La ventana XPath/XQuery puede estar en modo de evaluación XML o en modo de evaluación JSON. El botón de modo de evaluación muestra qué modo está activo en ese momento. En la imagen anterior la ventana está en modo de evaluación JSON.
Observe que en la imagen anterior los botones de modo de evaluación XML/JSON aparecen en gris, lo que indica que están deshabilitados. Cuando los botones están deshabilitados no se pueden activar ni desactivar. Por el contrario, si los botones están habilitados (no aparecen en gris), entonces se puede cambiar el modo de evaluación de la ventana.
El estado habilitado/deshabilitado de los botones de modo de evaluación XML/JSON depende del alcance de la evaluación (el valor del campo Dónde; véase imagen anterior). En lo que respecta al estado habilitado/deshabilitado de los botones de modo de evaluación, los valores de alcance de la evaluación se dividen en dos grupos: (i) archivo único (archivo actual) y (ii) múltiples archivos (archivos abiertos, proyecto, carpeta).
Si se selecciona un único archivo para el alcance de la evaluación (imagen anterior), entonces el modo de la ventana (JSON o XML) se determina en base a la extensión del archivo. Si el archivo es conforme a JSON se activa el modo de evaluación JSON; si el archivo no es conforme a JSON se activa el modo de evaluación XML. Como conocemos el tipo de archivo, se activa el modo de evaluación correcto y se deshabilitan ambos botones para que no sea posible cambiar el modo de evaluación.
Si se selecciona la opción de archivos múltiples (archivos abiertos, proyecto, carpeta), entonces los dos botones de evaluación quedan habilitados y es posible activar un modo u otro (JSON o XML). El modo de evaluación predeterminado para un alcance de evaluación de archivos múltiples es XML.
En modo de evaluación XML, se procesarán los archivos conforme a XML y se ignorarán los archivos JSON.
En modo de evaluación JSON, se procesarán los archivos conforme a JSON y se ignorarán los archivos XML.
Las expresiones JSON también pueden consultarse en modo depuración.

 

La expresión XPath/XQuery

En expresiones XPath/XQuery, use características que sean válidas para consultar documentos JSON, como el operador lookup y las funciones array. Tenga en cuenta que:

 

La opción Definir como origen la selección actual en el documento está deshabilitada, por lo que las expresiones deben ser absolutas y no pueden ser relativas.
Conforme teclea la expresión, la función de finalización automática sugiere opciones contextuales para completarla (imagen siguiente).

XPXQWindowJSONAutoComplete

El icono Copia la XPath de la selección actual al campo de edición crea una expresión XQuery para la selección del documento JSON archivo y la copia en el campo de edición. Para hacer una selección en el documento JSON, coloque el cursor dentro de un objeto o seleccione parte de un objeto.

 

En la imagen siguiente hay dos expresiones XPath/XQuery que se han usado para consultar el documento JSON MusicLibrary.json (imagen siguiente), que puedes encontrar en el proyecto Examples en la carpeta C:\Documents and Settings\<usuario>\Mis Documentos\Altova\XMLSpy2019\Examples.

Click to expand/collapse

 

Expresión XPath/XQuery: ?Artists?1?Albums?2?Name

XPXQWindowJSON01

Expresión XPath/XQuery: ?*

XPXQWindowJSON02

 

Resultados

Los resultados muestran el componente JSON seleccionado en la expresión XPath/XQuery en la parte izquierda de la Ventana de resultados y el valor del componente en la parte derecha. Los mapas y las matrices de la parte izquierda de la ventana se pueden expandir haciendo clic en el icono '+'. Los valores de los componentes expandidos se muestran en la parte derecha de la ventana.

 

Transformar un documento JSON con XSLT/XQuery

Para transformar un documentos JSON activo con XSLT 3.0, XQuery 3.1 o XQuery Update 3.0 haga lo siguiente:

 

Transformación XSLT 3.0: haga clic en XSL/XQuery | Transformación XSL, busque el archivo XSLT 3.0 y haga clic en Aceptar.
Transformación XQuery 3.1 or XQuery Update 3.0: haga clic en XSL/XQuery | Ejecutar XQuery Update, busque el archivo XQuery 3.1 or XQuery Update y haga clic en Aceptar.

 

Esto generará el archivo transformado, que se puede visualizar directamente en XMLSpy.

 

Nota:el depurador XSLT/XQuery se puede iniciar desde un documento JSON, pero los puntos de interrupción y de seguimiento solamente se pueden establecer en el documento XSLT o XQuery.

 

Archivos JSON como origen para un documento XSLT/XQuery

Para ejecutar un documento activo XSLT o XQuery en un archivo de origen JSON, haga lo siguiente:

 

Documento Active XSLT 3.0: haga clic en XSL/XQuery | Transformación XSL, busque el archivo JSON y haga clic en Aceptar.
Documento Active XQuery 3.1 or XQuery Update 3.0: haga clic en XSL/XQuery | Ejecutar XQuery Update, busque el archivo JSON y haga clic en Aceptar.

 

Esto generará el documento transformado, que se puede visualizar directamente en XMLSpy.

 

Nota:el depurador XSLT/XQuery se puede iniciar desde un documento XSLT o XQuery y se puede asignar un documento JSON como entrada para la sesión de depuración. Sin embargo, los puntos de interrupción y de seguimiento solamente se pueden establecer en el documento XSLT o XQuery.

 

 


© 2019 Altova GmbH