我有一個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