用于XML验证的Java方法

时间:2014-06-18 06:50:49

标签: java xml hibernate validation xsd

我想验证java中的xml标记值。

方案:       假设我有以下数据

ELements: element1, element2, element3, element4, element5
Values: value1, value2, value3, value4, value5, value6, value7, value8

Now following are the possible combinations which I have to validate:
  1. Element1 can have value1/value2 ( element1->value1/value2 )
  2. Element2 can have value3/value4 ( element2->value3/value4 )
  4. Element3 can have value5 if element1 has value1 ( element3->value5 if element1->value1 )
     else Element3 can have value6 if element1 has value2 ( element3->value6 if element1->value2 )
  5. Element4 can have value7 if element1->value1 and element2->value4

我可以在一个java文件中对需求进行硬编码,但我想要一种灵活的方法,如果将来任何新条件出现,那么可以很容易地添加。

我想到了Hibernate验证,但后来才知道Java 6及更高版本支持它。我的约束是我必须使用Java 1.5

请建议适当的方法来满足上述要求。任何链接建议都可以。

注意:模式验证已在进行中。

3 个答案:

答案 0 :(得分:1)

探索Schematron以应用XML数据的业务规则

Schematron项目网站 - http://www.schematron.com

简介教程 - http://www.dpawson.co.uk/schematron/introduction.html, 请参阅教程中的元素到元素约束

另一个教程 - http://www.xml.com/lpt/a/1318

答案 1 :(得分:0)

查看http://docs.oracle.com/javase/1.5.0/docs/api/javax/xml/validation/package-summary.html。这有一些基本的验证技术,我猜你假设你有架构

答案 2 :(得分:0)

在java中使用 DOMParser 类。 它会对你有所帮助。