为了与客户的应用程序交互,我们使用
XML文档.也就是说,我们通过HTTP发送XML并以相同的方式接收响应XML文档.客户指定了两个描述请求和
回复格式的XML模式.一切正常,直到有一天客户开始在响应XML中使用CDATA部分.我们设置我们的解析器没有注意CDATA部分,所以我们没有解释它们.
我的问题是:谁在这里弄错了?我试图在XML标准中找到答案,但我仍然不确定.我想我不能在XSD中使用或不使用CDATA,是吗?如果是这样,是不是就XSD达成一致意见,但是必须就CDATA部分达成单独的协议?或者有人必须准备解析CDATA和普通文本?
我对你的个人观点和任何官方声明都很感兴趣.谢谢!
许多XML解析器将文本和CDATA分开,这是不幸的.
错误是你的:普通文本块和CDATA之间没有语义差异,因此发送者可以根据手头文本的需要自由选择它们.
好消息是,调整代码应该是一件简单的事情.