我有一个Java程序,我必须根据XSD模式验证XML消息。到现在为止还挺好。但是现在我得到了一个新的要求,其中验证的一部分基于XML消息的内容而不同。基于XML内容的XSD验证
因此,基于一个场(1)的某些字段是的nillable与否和一些枚举是不同的值。但是,我无法在验证之前解析文档...所以我应该如何处理这个问题?
1)有2个不同的XSD文件,处理XML文本(=丑陋的),并提取一个字段来决定XSD应该用什么?
2)有3个不同的XSD文件。 2个不同的选项和1个联盟,我们可以通过匹配2个选项的方式进行验证?我们可以正确地解析XML,提取字段并决定使用哪个更具体的XSD进行额外验证?
3)其他选项?
你是什么意思,你'不能在验证之前解析文档'? – maximdim 2012-03-30 14:56:43
那么如果文档没有被验证,它可能是非常无效的XML,因此解析会产生一个异常。 – hcpl 2012-04-02 09:50:27