Operadores
Existen cuadro operadores: (i) todos, (ii) cualquiera, (iii) uno y (iv) no. Los operadores sirven para especificar condiciones de validez y puede añadir un operador a cualquier definición. Para abrir el submenú de operadores, haga clic con el botón derecho en la definición donde desea agregar el operador y después seleccione Agregar secundario | Operador (imagen siguiente).
Estos operadores definen las condiciones necesarias para que la instancia sea válida:
Operador | Icono | Descripción |
Todos | Contiene uno o varios subesquemas (definiciones), añadidos como secundarios del operador. Una instancia es válida si es válida comparada con todos estos subesquemas. | |
Cualquiera | Contiene uno o varios subesquemas (definiciones), añadidos como secundarios del operador. Una instancia es válida si es válida comparada con uno de estos subesquemas como mínimo. | |
Uno | Contiene uno o varios subesquemas (definiciones), añadidos como secundarios del operador. Una instancia es válida si es válida comparada con exactamente uno de estos subesquemas. | |
No | Contiene exactamente un subesquema (definición), añadida como secundario del operador. Una instancia es válida si no es válida según la definición dada. |
En el ejemplo de la imagen siguiente el operador Uno contiene tres subesquemas secundarios (definiciones). Para que la instancia sea válida debe tener una estructura de datos JSON (en este punto de la estructura del documento) que coincida con uno de las tres definiciones del subesquema.
Los operadores son muy prácticos a la hora de especificar reglas de herencia y restricciones. Por ejemplo, en la imagen siguiente se usó el operador Todos para definir una matriz que contiene cadenas de texto únicas no vacías.