2015-10-27 46 views
-1

我有个问题,根据XSD验证XML的最佳方法是什么。我需要验证XML中允许的值,这可以使用枚举方便地在XSD中完成。问题是,允许的值列表非常大,并且在XSD中可以做到这一点。另一件事是,允许值可以随时更改,所以我想避免更改XSD架构。我正在考虑通过使用java来过滤这些值。例如。为每个填充了值的XML标签创建一些配置文件,并在验证XML时检查值。如果XML标签的内容不在配置文件中,则会引发错误。 我的另一个问题是,哪个解析器最适合这样做? XML文件包含40个XML元素/标记,一个XML文件可能包含大约40k条记录。 而我的最后一个问题是,如何更改解析器中默认的错误的英语语言?我已经阅读了一些使用解析器的教程,但是你的经验会非常有用。谢谢值xml在java中验证允许的值

例如:

<order>pancake</order>

<order>milk</order>

煎饼允许值,因此不会引发错误。牛奶是不允许的,所以会出现错误:牛奶不允许。

+0

是它的权利,你不希望在Java中XSD _or_枚举值是多少?那么你需要某种逻辑/限制值,例如从a-f开始,只有4个字母。 – Tobi

+0

是的,我不想在XSD中枚举值。他们可以用java枚举(我正在考虑一些java可读的配置文件,这很容易维护)。 – blackwidow

+0

没关系,所以读取配置文件,读取xml文件,并检查配置文件是否包含特定标签的值。 – Tobi

回答