XML读取器是否应忽略XML文件中的连续空格?

Cod*_*ats 2 xml xmldom

在我的工作中,我们有自己的XML类来构建DOM,但我不确定应该如何处理连续的空格?

例如

<some-text>
Hello     World
</some-text>
Run Code Online (Sandbox Code Playgroud)

当这被读入DOM时,文本节点是否应该在Hello和World之间包含连续的空格,或者只是将它缩小到一个空格?

或者XML源是否应该像这样编写:

<some-text>
Hello &nbsp;&nbsp;&nbsp;&nbsp;World
</some-text>

或者如果没有  可能比#32; ?

Wim*_*nen 5

听到有人在没有查看XML规范的情况下实现XML处理器,这有点令人不安.

XML 1.0规范,第2.10节"白色空间处理"(强调我的):

在编辑XML文档时,通常可以方便地使用"空格"(空格,制表符和空行)来分隔标记以提高可读性.这样的空白区域通常不打算包含在文档的交付版本中.另一方面,应该在交付版本中保留的"重要"空白区域是常见的,例如在诗歌和源代码中.

XML处理器必须始终将文档中未标记的所有字符传递给应用程序.验证XML处理器还必须通知应用程序哪些字符构成元素内容中出现的空格.

名为xml:space的特殊属性可以附加到元素,以表示在该元素中应由应用程序保留空白的意图.在有效文档中,如果使用此属性,则必须声明此属性.声明时,必须以枚举类型的形式给出,其值为"default"和"preserve"中的一个或两个.例如: ...