4

通过使用模式,是否有任何简单/简单的方法来验证 xml msg 的编码?

假设 xml 的第一行“不”值得信赖?例如忽略 ?xml version="1.0" encoding="UTF-8" ?

4

1 回答 1

8

不,除了二进制数据元素类型之外,模式不能指定编码类型,但这种编码仍将被文档本身的高级编码封装。如果您意识到架构是假设描述信息而不是传输格式,那么这是有道理的。XML 规范规定了文档传输信息,例如信息如何以最通用的方式表示和存储。Schema 用于验证通过 XML 存储的数据是否满足各方之间的某种语法限制。XML 规范中定义的序言(您提到的第一行)是存在(或不存在)是抱怨 XML 阅读器需要知道文档是如何编码的实体。

如果您有兴趣,这是 XML 1.1 规范中关于如何达成此协议的相关部分,更有趣的是投诉读者如何“猜测”编码,因此猜测序言可以阅读到阅读实际的编码属性: http ://www.w3.org/TR/xml11/#sec-guessing

于 2010-12-10T20:13:15.557 回答