XML声明节点是否强制?
我和我的同事讨论了XML声明节点(我在说这个=><?xml version =“1.0”encoding =“UTF-8”?>).
我相信对于被称为“有效XML”的东西,它需要一个XML声明节点. 我的同事指出,XML声明节点是optionnal,因为默认编码是UTF-8,版本总是为1.0.这是有道理的,但标准是什么呢? 简而言之,给出以下文件: <books> <book id="1"><title>Title</title></book> </book> 我们可以说: >它是有效的XML? 非常感谢你.
这个:
<?xml version="1.0" encoding="UTF-8"?> 不是处理指令 – 它是XML声明.其目的是在开始阅读文档的其余部分之前正确配置XML解析器. 它看起来像一个处理指令,但与实际处理指令不同,它不会是解析器创建的DOM的一部分. “有效”XML不是必需的. “有效”表示“表示定义良好的文档类型,如DTD或模式中所述”.没有模式或DTD,单词“有效”没有意义. 当他们真正意味着“形成良好”时,许多人误用“有效”.格式良好的XML文档遵循XML的基本语法规则. 由于存在版本和编码的默认值(分别为1.0和UTF-8),所以文档没有必要的XML声明. 对你的问题: >它是有效的XML? 您在这里混淆了几个XML概念(不用担心,这种混淆是常见的,部分原因在于这些概念重叠,名称被误用而非常常). >所有这些都由以组织为树的名称,值和属性组成的结构化数据开始.> XML最基本的意思是以文本形式表示这种结构化数据的语法(它是一种“标记语言”).这是当你将树序列化成一串字符时可以得到的,它可以用来将一串字符反序列化到树中.>文档通常是指代表序列化树的一串字符.它可以存储在通过网络发送或在内存中创建的文件中.>序列化和反序列化的规则是非常严格的.可以成功地将序列化成树的文档(“字符串”)据说是格式正确的.>这种树的语义(允许的元素,元素数量和顺序,命名空间,任何数量的复杂规则,真的)可以在所谓的DTD或模式中定义.如果一棵树遵循一套明确定义的语义,那么它被认为是有效的.>文档对象模型(DOM)一词是指结构化数据的标准化内存内表示.它是使用标准化方法访问此树的定义良好的API的名称.>节点是文档对象模型的基本数据结构. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |