首页论坛图片汽车百科旅游美食诗词英语IT留学移民电影下载Archiver站点地图
当前位置: 易飞网 >> 首页 >> 电脑网络 >> XML学习资料 >> 正文

XML 中的常见问题 (四)

在 XML 对象模型中如何处理空白字符?

  有些时候,XML 对象模型将显示包含空白字符的 TEXT 节点。空白字符被截断后,多半会带来一些混乱。例如下面的 XML 例子:


  ]>

  Smith
  John


  生成下列树:


  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

 

     

 

21/212>