Performing XML Validation in Integration Server
Validate XML to ensure that the structure and content of the XML are valid. To validate an XML document, invoke the pub.schema:validate service. This service instructs the validation engine to validate an XML document by comparing it to a specified IS schema or an IS document type. The XML document is valid if it complies with the structural and content constraints described in the IS schema or IS document type. The pub.schema:validate service returns a string that indicates whether validation was successful and an errors variable (an IData array) that contains any validation errors.
By validating an XML document, you can ensure that the XML document contains the elements and attributes that:
Are organized in the structure or format that subsequent services expect
Contain values that are of the data type that subsequent services expect
For example, if you receive an XML document containing new employee information, you might want to validate the information to ensure it contains an employee name, address, telephone number, and date of birth before executing subsequent services. Additionally, you might want to validate the date of birth to make sure that it conforms to a specific date format.
Integration Server performs XML validation for web service requests that it receives an for web service requests that it produces automatically. Integration Server validates the request and response against the collection of IS elements that represent the WSDL on Integration Server, such as IS document types, IS schemas, service signatures, and the web service descriptor.
Note: | When validating supplied XML, if the XML contains an element defined to be of simple type with a pattern constraining facet, by default, Integration Server uses Perl pattern matching to evaluate element content. However, if watt.core.datatype.usejavaregex is set to true, during XML validation, Integration Server uses the Java regular expression compiler and Integration Server performs pattern matching as described by java.util.regex.pattern. |
Note: | If you want Integration Server to skip validation of references to elements that are not namespace qualified made from within a namespace- qualified element, set the watt.core.validation.skipNoNamespaceReference server configuration property to true. |
Related Topics