Mulesoft RAML – Especificación de API con esquema de cuerpo de solicitud y esquema de cuerpo de respuesta en archivo XSD anidado.
Estoy tratando de crear una especificación de API con un esquema de cuerpo de solicitud y un esquema de cuerpo de respuesta que hace referencia a dos archivos XSD OTACancelRQ.xsd y OTACancelRS.xsd.
Mi problema es que el archivo OTACancelRQ.xsd hace referencia a dos archivos XSD “OTACommonTypes.xsd” y “OTA_SimpleTypes.xsd” con una cadena xs:include.
Si uso esta especificación de API con un proyecto en Anypoint Studio y llamo al método OTACancelRQ con una solicitud de cuerpo XML, tengo un error que dice “No se puede resolver el nombre ‘OTAPayloadStdAttributes’ a un componente de ‘grupo de atributos'”, pero el componente ‘OTAPayloadStdAttributes’ está contenido en el archivo “OTACommonTypes.xsd”.
También intenté con el comando “xs:import”, pero el resultado final es el mismo “No se puede resolver el nombre ‘OTA_PayloadStdAttributes’ a un componente de ‘grupo de atributos'”.
Mi pregunta es: ¿es posible crear una especificación de API con un esquema XSD que haga referencia a otro archivo XSD local?
davy.ai
Sí, es posible crear una especificación de API con un esquema XSD que referencia otro archivo XSD local. De hecho, es una práctica común modularizar los esquemas XSD en componentes más pequeños y reutilizables.
Para resolver el error que estás encontrando, debes asegurarte de que los archivos XSD referenciados también estén incluidos o importados en tu documento de especificación de API. Dependiendo de la herramienta o plataforma que estés utilizando, puede haber diferentes formas de hacer esto.
En MuleSoft Anypoint Studio, puedes intentar los siguientes pasos:
Ten en cuenta que se utiliza la directiva
!include
para incluir los archivos XSD.Ten en cuenta que se utiliza el componente
http:validate-schema
para validar los cuerpos de solicitud y respuesta contra los esquemas XSD, especificando la ubicación de los archivos XSD.Con estos pasos, deberías poder crear una especificación de API que referencia archivos XSD locales y validar los cuerpos de solicitud y respuesta contra los esquemas XSD en tu aplicación Mule.