【发布时间】:2011-10-18 21:00:47
【问题描述】:
我需要从互联网上加载一个Schema 对象,但我不知道该怎么做。 URL 类似于https://.../.../schema.xsd。
你有什么提示吗?
【问题讨论】:
标签: java xml validation schema
我需要从互联网上加载一个Schema 对象,但我不知道该怎么做。 URL 类似于https://.../.../schema.xsd。
你有什么提示吗?
【问题讨论】:
标签: java xml validation schema
您链接到的 JavaDoc 提到“[a] Schema 对象通常是从 SchemaFactory 创建的。”
而SchemaFactory 有this nice newSchema method 接受URL。
【讨论】:
比如说你想从 XSD 做 XML 验证:
static boolean validateXMLAgainstXSD(String xml, String xsd) {
try {
SchemaFactory schemaFactory = SchemaFactory.newInstance(XMLConstants.W3C_XML_SCHEMA_NS_URI);
Schema schema = schemaFactory.newSchema(new StreamSource(xsd));
Validator validator = schema.newValidator();
validator.validate(new StreamSource(xml));
return true;
}
catch(Exception ex) {
return false;
}
}
【讨论】: