Проверка XML-файла по нескольким определениям схемы

Я пытаюсь проверить XML-файл по ряду различных схем (извините за надуманный пример):

a.xsd b.xsd c.xsd

В частности, c.xsd импортирует b.xsd и b.xsd, импортирует a.xsd, используя:

<xs:include schemaLocation="b.xsd"/>

Я пытаюсь сделать это через Xerces следующим образом:

XMLSchemaFactory xmlSchemaFactory = new XMLSchemaFactory();
Schema schema = xmlSchemaFactory.newSchema(new StreamSource[] { new StreamSource(this.getClass().getResourceAsStream("a.xsd"), "a.xsd"),
                                                         new StreamSource(this.getClass().getResourceAsStream("b.xsd"), "b.xsd"),
                                                         new StreamSource(this.getClass().getResourceAsStream("c.xsd"), "c.xsd")});     
Validator validator = schema.newValidator();
validator.validate(new StreamSource(new StringReader(xmlContent)));

но при этом не удается правильно импортировать все три схемы, что приводит к невозможности разрешения имени 'blah' к (n) 'группе' составная часть.

Я успешно проверил это, используяPythonно с реальными проблемамиJava 6.0 а такжеXerces 2.8.1, Кто-нибудь может подсказать, что здесь не так, или более простой подход к проверке моих документов XML?

Ответы на вопрос(6)

Ваш ответ на вопрос