Chase N.Проверка правильности XML

Проверка правильности в Xerces Java


Использование Xerces для проверки правильности документа включает в себя те же базовые принципы, что и в предыдущем подразделе.

import org.apache.xerces.parsers.DOMParser; import java.io.File; import org.w3c.dom.Document; public class SchemaTest { public static void main (String args[]) { File docFile = new File("memory.xml"); try { DOMParser parser = new DOMParser(); parser.setFeature("http://xml.org/sax/features/validation", true); parser.setProperty( "http://apache.org/xml/properties/schema/external-noNamespaceSchemaLocation", "memory.xsd"); ErrorChecker errors = new ErrorChecker(); parser.setErrorHandler(errors); parser.parse("memory.xml");

} catch (Exception e) { System.out.print("Problem parsing the file."); } } }

Приложение непосредственно создает экземпляр DOMParser. Каждый парсер, созданный таким способом, имеет ряд свойств, одним из которых является возможность проверки правильности. Метод парсера setFeature() включает его.

Вы можете задать местоположение документа схемы внутри XML (как в ), или можете задать его в самом приложении, используя свойство парсера, как было показано выше.

Далее назначается обработчик ошибок. Заметьте, что это тот же класс, который вы использовали для обработки ошибок в JAXP. Ошибки те же, так что у вас нет необходимости кодировать отдельный класс.

Наконец, разберите документ. ErrorChecker докладывает о любых ошибках.

Таким способом все документы проверяются по DTD или схеме.



Содержание раздела