在 XML 对象模型中如何处理空白字符? 有些时候,XML 对象模型将显示包含空白字符的 TEXT 节点。空白字符被截断后,多半会带来一些混乱。例如下面的 XML 例子: 生成下列树:
| Processing Instruction: xml DocType: person ELEMENT: person TEXT: ELEMENT: lastname TEXT: ELEMENT: firstname TEXT: |
名字和姓氏两边是只包含空白字符的 TEXT 节点,因为“person”元素的内容模型是 MIXED;它包含 #PCDATA 关键字。MIXED 内容模型指定元素之间可以有文本存在。因此,下面的内容也是正确的:
| My last name is Smith and my first name is John |
结果是类似于下面的树:
| ELEMENT: person TEXT: My last name is ELEMENT: lastname TEXT: and my first name is ELEMENT: firstname TEXT: |
如果没有单词“is”之后和 之前的空白字符,以及 之后和单词“and”之前的空白字符,那么句子便无法理解。因此,对于 MIXED 内容模型来说,文字组合、空白字符和元素都是相关的。对于非 MIXED 内容模型来说则不是这样。 要使只有空白字符的 TEXT 节点消失,请从“person”元素声明中删除 #PCDATA 关键字: 结果是下面清晰的树:
| Processing Instruction: xml DocType: person ELEMENT: person ELEMENT: lastname ELEMENT: firstname |
<  
1/2 1 2 下一页 尾页 |