Vin*_*vic 27
有效的XML是成功针对DTD进行验证的XML.
格式良好的XML是XML,它以正确的顺序关闭所有标签,如果它有一个声明,它首先在文件中具有适当的属性.
换句话说,有效性指的是语义,良好的形成指的是语法.
所以你可以使用格式错误的XML.
kjh*_*hes 26
有效意味着格式良好的XML满足指定模式给出的其他要求.
根据W3C XML建议:
[定义:数据对象是一个XML文档,如果它是 格式良好的,如本规范中所定义.此外,如果XML文档满足某些进一步的约束,则它是有效的.]
<a><b></a></b><或&用于内容而不是<或&.从技术上讲,XML中的组件名称允许使用冒号字符.然而,冒号应该只能在命名空间用途名称中使用:
注意:
XML Recommendation [ XML Names ]中的命名空间为包含冒号字符的名称赋予含义.因此,除了名称空间之外,作者不应在XML名称中使用冒号,但XML处理器必须接受冒号作为名称字符.
因此,另一种说法,命名空间结构良好的,在定义命名空间中的XML 1.0 W3C推荐标准暗含所有的良构的XML规则加上那些有关命名空间和命名空间前缀.
通俗地说,通常使用格式良好的术语,其中命名空间良好的形式将更精确.然而,这是一种较小的技术方式,其实际结果不如本答案中描述的格式良好与有效XML之间的区别.
har*_*rpo 16
正如其他人所说,格式良好的XML符合XML规范,有效的XML符合给定的模式.
另一种说法是,格式良好的XML是词法上的正确的(它可以被解析),而有效的XML在语法上是正确的(它可以与已知的词汇和语法相匹配).
XML文档在格式良好之前无法生效.所有XML文档都遵循相同的格式(W3推出的RFC).一个XML文档对某些模式有效,对其他模式无效.有许多模式语言,其中许多本身都是基于XML的.
小智 6
格式良好的XML是满足语言语法要求的XML.不缺少任何结束标签,让所有单件标签使用<whatever />而不是仅仅使用<whatever>,并以正确的顺序使用结束标签.
有效的XML是使用DTD并符合其所有要求的XML.因此,如果您不正确地使用属性,则违反DTD并且无效.
所有有效的XML都是格式良好的,但并非所有格式良好的XML都是有效的.
如果满足标准规定的所有 XML 文档的要求,XML 就是格式良好的 - 因此,例如具有单个根节点、正确嵌套节点、所有节点都具有结束标记(或在之前使用斜杠的空节点简写)右尖括号),引用的属性等。格式良好仅意味着它遵守 XML 规则,因此可以正确解析。
如果 XML 将根据 DTD 或模式进行验证,则它是有效的。这显然因情况而异 - 对一种模式有效的 XML 对另一种模式无效,即使它仍然是格式良好的。
如果 XML 格式不正确,则无法正确解析它 - 解析器只会抛出异常或报告错误。这是通用的,与您的 XML 包含什么无关。只有在解析后才能检查其有效性。此域或上下文相关,需要 DTD 或模式进行验证。对于简单的 XML 文档,您可能没有 DTD 或模式,在这种情况下您无法知道 XML 是否有效——概念或有效性在这种情况下根本不适用。当然,这并不代表你不能使用它,只是你无法判断它是否有效。
| 归档时间: |
|
| 查看次数: |
56715 次 |
| 最近记录: |