[英]How to validate a document using a grammar in Xerces
我有以下情况
-我即时创建XML文档(DocumentImpl)(使用数据)。 因此,XML永远不会写入磁盘。
-我即时创建XSD方案(使用数据定义),这些也从未写入磁盘。 语法带有断言很复杂,因此需要将其用作XMLSchema v1.1
-我将XSD方案中的语法(SchemaGrammar)存储在哈希图中,这是因为相同的语法经常使用多次。
现在我的问题是
我想根据语法验证文档。 我知道该使用哪种语法。 通过相应的data-definition-name找到它们。
我的问题是我找不到如何执行此操作的示例代码,因为在准备好对象的同时,所有示例似乎都可以在流或文件中运行。
我认为它的工作方式如下:
`
XMLGrammarPoolImpl pool = new XMLGrammarPoolImpl();
pool.putGrammar(grammar);
XMLSchema11Factory factory = new XMLSchema11Factory();
Schema schema = factory.newSchema(pool);
Validator validator = schema.newValidator();
DOMSource source = new DOMSource(document);
validator.validate(source);
`
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.