Как проверить XML-файл против данного xsd файла при парсинге его с синтаксическим анализатором саксофона?

Можно упростить EnforcePrimitiveType метод при помощи typeof(PrimitiveDataType).IsPrimitive свойство. Я пропускаю что-то?

6
задан Community 23 May 2017 в 12:08
поделиться

1 ответ

Предполагая Java 5 или более поздней версии, установите схему на SAXParserFactory :

SchemaFactory schemaFactory = SchemaFactory
    .newInstance(XMLConstants.W3C_XML_SCHEMA_NS_URI);
Schema schema = schemaFactory.newSchema(new File("myschema.xsd"));
SAXParserFactory saxFactory = SAXParserFactory.newInstance();
saxFactory.setSchema(schema);
SAXParser parser = saxFactory.newSAXParser();
parser.parse("data.xml", new DefaultHandler() {
  // TODO: other handler methods
  @Override
  public void error(SAXParseException e) throws SAXException {
    throw e;
  }
});

Вы обрабатываете ошибки проверки, переопределяя метод ошибки в вашем обработчике и действовать так, как считаете нужным.

3
ответ дан 17 December 2019 в 18:17
поделиться
Другие вопросы по тегам:

Похожие вопросы: