JAXP:如何针对XML Schema验证org.w3c.dom.Document

MRa*_*ser 7 java xml validation xsd jaxp

如何org.w3c.dom.Document使用JAXP 验证(已经解析过)XML Schema?

bdo*_*han 13

您可以使用javax.xml.validation API.

SchemaFactory sf = SchemaFactory.newInstance(XMLConstants.W3C_XML_SCHEMA_NS_URI); 
URL schemaURL = // The URL to your XML Schema; 
Schema schema = sf.newSchema(schemaURL); 
Validator validator = schema.newValidator();
DOMSource source = new DOMSource(xmlDOM);
validator.validate(source);
Run Code Online (Sandbox Code Playgroud)

下面的示例演示了如何针对模式验证JAXB对象模型,但是您会发现使用DOM的DOMSource替换JAXBSource很容易:

  • @MRalwasser - 参见`SchemaFactory.setResourceResolver`.javadocs中有各种各样的好消息...... (2认同)