Esquema de solicitud y respuesta
En el servicio REST para la ejecución de conjuntos de reglas, las solicitudes y respuestas siguen esquemas específicos, en función de si el XOM de conjunto de reglas se basa en clases XML o en clases Java™ . El esquema determina cómo se serializan los tipos.
El esquema de solicitud y respuesta se genera a partir de la firma del conjunto de reglas de destino.
- La parte de la solicitud consta de los elementos siguientes:
- Los parámetros IN e INOUT del conjunto de reglas, por orden alfabético.
- Opcionalmente, un ID de decisión si desea establecerlo en un valor específico.
- Opcionalmente, un filtro de rastreo.
- La parte de la respuesta consta de los elementos siguientes:
- Los parámetros INOUT e OUT del conjunto de reglas, por orden alfabético.
- El ID de decisión: el identificador predeterminado o el valor que establezca en la solicitud.
- El rastreo devuelto, en función del filtro que establezca en la solicitud.
La carga útil de XML se analiza en base a los archivos XSD generados. La respuesta de la ejecución se envía con el mismo formato que la solicitud de ejecución (XML o JSON).
Validación de la solicitud XML
La respuesta se devuelve en formato JSON:
- Si la solicitud es válida, la respuesta es una lista JSON vacía[].
- Si la solicitud no es válida, la herramienta devuelve la lista de errores. Cada error contiene los campos siguientes:
- Tipo: El tipo del error. Los valores posibles son"Error","Fatal"y"Warning".
- Línea: El número de la línea que contiene el error en el archivo .xml.
- Columna: El número de la columna que contiene el error en el archivo .xml.
- Mensaje: El mensaje de error
Estos son mensajes de error de ejemplo:
{"type": "Error", "line": 8, "column": 32, "message": "cvc-datatype-valid.1.2.1: 'falseee' is not a valid value for 'boolean'."}
{"type": "Error", "line": 9, "column": 22, "message": "cvc-datatype-valid.1.2.1: '5d' is not a valid value for 'integer'."}
{"type": "Fatal", "line": 39, "column": 24, "message": "The element type \"par:longParam\" must be terminated by the matching end-tag \"</par:longParam>\"."}