Validate an XML File Against Multiple Schema Definitions

前端 未结 8 1542
囚心锁ツ
囚心锁ツ 2020-12-01 09:23

I\'m trying to validate an XML file against a number of different schemas (apologies for the contrived example):

  • a.xsd
  • b.xsd
  • c.xsd
8条回答
  •  萌比男神i
    2020-12-01 09:54

    So just in case anybody else runs into the same issue here, I needed to load a parent schema (and implicit child schemas) from a unit test - as a resource - to validate an XML String. I used the Xerces XMLSchemFactory to do this along with the Java 6 validator.

    In order to load the child schema's correctly via an include I had to write a custom resource resolver. Code can be found here:

    https://code.google.com/p/xmlsanity/source/browse/src/com/arc90/xmlsanity/validation/ResourceResolver.java

    To use the resolver specify it on the schema factory:

    xmlSchemaFactory.setResourceResolver(new ResourceResolver());
    

    and it will use it to resolve your resources via the classpath (in my case from src/main/resources). Any comments are welcome on this...

提交回复
热议问题