小编典典

XML 中的“独立”指令是什么意思?

all

standaloneXML 文档中的“”指令是什么意思?


阅读 68

收藏
2022-04-21

共1个答案

小编典典

standalone声明是告诉解析器忽略DTD中的任何标记声明的一种方式。此后,DTD
仅用于验证。

例如,考虑谦虚的<img>标签。如果您查看XHTML 1.0
DTD
,您会看到一个标记声明告诉解析器<img>标记必须是 EMPTY
并且拥有srcalt属性。当浏览器浏览 XHTML 1.0 文档并找到一个<img>标记时,它应该注意到 DTD
要求srcalt属性,如果它们不存在则添加它们。它也会自动关闭<img>标签,因为它应该是空的。这就是XML
规范
所指的“标记声明可以影响文档的内容”。然后,您可以使用standalone声明告诉解析器忽略这些规则。

您的解析器是否真的这样做是另一个问题,但符合标准的验证解析器(如浏览器)应该这样做。

请注意,如果您没有指定 DTD,那么独立声明“没有意义”,因此没有理由使用它,除非您还指定了 DTD。

2022-04-21