Validate an XML file with a given XSD file

Hello,
Are there any tools in Matlab that will check that an xml file coforms to a given xml schema (.xsd) file?
Thanks!

Answers (2)

You can call Java libraries from MATLAB.
Example pure Java code can be found at stackoverflow.com. Translated to Java calls from MATLAB:
schemaFileName = "MySchema.xsd";
xmlFileName = "MyXML.xml";
schemaFile = java.io.File(schemaFileName);
xmlFile = java.io.File(xmlFileName);
schemaFactory = javax.xml.validation.SchemaFactory.newInstance(javax.xml.XMLConstants.W3C_XML_SCHEMA_NS_URI);
schema = schemaFactory.newSchema(schemaFile);
validator = schema.newValidator();
fileInputStream = java.io.FileInputStream(xmlFile);
streamSource = javax.xml.transform.stream.StreamSource(fileInputStream);
validator.validate(streamSource); % throws an exception if not valid
As of now, there is no in-built function in MATLAB to validate the given XML file with the XSD given by the user.

Categories

Asked:

on 30 Oct 2019

Answered:

on 6 Feb 2020

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!