Altova XMLSpy 2024 Professional Edition 

Generar esquemas JSON a partir de instancias JSON

Inicio Anterior Inicio Siguiente

XMLSpy puede generar esquemas JSON a partir de documentos de instancia JSON y de instancias JSON5. Gracias a esta característica ya no es necesario crear el esquema a mano y desde cero. Tras generar el esquema, podrá modificarlo o ampliarlo según sus requisitos.

 

Generar el esquema

Siga estos pasos para generar un esquema a partir de una instancia JSON:

 

1.El documento activo debe ser el documento de instancia JSON.

2.En la pestaña JSON de la ventana Información, haga clic en el icono en forma de flecha situado junto a Validación con esquema y, en el menú contextual, haga clic en el comando Generar esquema JSON (imagen siguiente, comandos relacionados con Avro solamente disponibles en la edición Enterprise Edition). Si lo prefiere, también puede seleccionar el comando de menú DTD/Schema | Generar DTD o esquema.

JSONInfoWindow

3.Ahora aparece el cuadro de diálogo "Generar esquema JSON" (imagen siguiente). Aquí puede indicar cómo se lleva a cabo la generación. Haga clic en Aceptar.

4.La aplicación solicita una ruta de acceso y nombre de archivo para el esquema JSON que se generará. Cuando haga clic en Guardar el esquema se generará y será el documento activo de la vista. El archivo de esquema generado se asignará al archivo de instancia, sobrescribiendo cualquier asignación realizada con anterioridad. Para cambiar la asignación, haga clic en el comando Seleccionar esquema JSON del menú contextual (imagen anterior).

 

Configuración para generar el esquema JSON

Puede configurar las opciones de generación de esquemas JSON en el cuadro de diálogo "Generar esquema JSON" (imagen siguiente). Consulte la sección previa para más información sobre cómo acceder a este cuadro de diálogo.

JSONGenerateJSONSchemaDlg

Detectar tuplas de matriz

Una tupla de matriz es la secuencia de ítems de una matriz. Por ejemplo, esta matriz tiene una tupla de tres ítems: [ 1, 2, "abc" ]. Para la validación de matrices el esquema puede especificar si debe tenerse en cuenta o no el orden y el tipo de datos de los ítems de las matrices (tuplas). Si marca la casilla Detectar tuplas de matriz, entonces se tendrá en cuenta el orden y el tipo de datos de los ítems. Dependiendo de lo que se detecte, se creará una definición en el esquema. Esta definición puede configurarse con estas opciones:

 

Número de elementos de la tupla: puede especificar un máximo y un mínimo de elementos de tupla. Si una tupla de la instancia tiene un número de elementos comprendido entre este máximo y mínimo, la matriz se detecta y se define.

Limitar detección a tipos simples: solamente se tendrán en cuenta las tuplas que tengan ítems de tipo simple (tipos atómicos string, number, integer, boolean y null).

Limitar detección a matrices que tengan el mismo nombre: solamente se tendrán en cuenta las matrices que se definan como valores de propiedades que tengan el mismo nombre. Por ejemplo, en este fragmento de datos JSON, las matrices marcadas en rojo son valores de propiedades llamadas a1 (marcadas con fondo azul): {"object1": [ { "a1": [ 1, 2, "abc" ] },  { "a1": [ 3, 4, "def" ] }, { "a1": [ 5, 6, "ghi" ] } ] }.

Número mínimo de matrices: puede especificar el número mínimo de matrices necesarias para la detección de matrices.

 

 

Otras opciones

 

Omitir el orden de los nombres de propiedad de los objetos: si no marca esta opción, se comprueba el orden de las propiedades de los objetos y se recrea de la forma lo más exacta posible. De lo contrario, no se comprueba el orden.

Intentar que el formato de cadena coincida: el esquema puede especificar que los tipos de datos string tengan un formato concreto. Si marca esta opción, XMLSpy intentará detectar el formato de cadena y en la medida de lo posible añadirá una definición de formato a las cadenas.

Convertir matrices simples en locales: una matriz simple es aquella cuyos ítems tienen el mismo tipo de datos simple. Si marca esta opción, todas las matrices simples se definirán localmente en el esquema, en lugar de usar definiciones globales a las que se hace referencia localmente.

Convertir objetos simples en locales un objeto simple es aquél cuyos valores de propiedades tienen el mismo tipo de datos simple. Si marca esta opción, todos los objetos simples se definirán localmente en el esquema, en lugar de usar definiciones globales a las que se hace referencia localmente.

 

Nota:después de generar el esquema JSON puede convertir en globales las definiciones locales de los objetos y matrices. Para más información consulte el apartado Definiciones globales y locales.

 

© 2017-2023 Altova GmbH