DTD

所有的 XML 文档(以及 HTML 文档)均由以下简单的构建模块构成, 其中元素是主要构建模块

  元素
  属性
  实体
  PCDATA
  CDATA


元素
  元素是XML以及HTML文档的主要构建模块
  元素可包含文本、其他元素或者空
  示例:

<body>some text</body>
<message>some text</message>

  body和message就是元素

属性

  属性用于提供有关元素的额外信息
  属性总是被置于某元素的开始标签中, 属性总是以名称/值的形式成对出现的

<img src="computer.gif" />

  元素的名称是 img
  属性的名称是src
  属性的值是computer.gif
  由于元素本身为空, 它被一个/关闭

实体
  实体是用来定义普通文本的变量, 所谓实体引用其实就是对实体的引用
  常见的HTML实体引用,比如"&nbsp;", 这个"无折行空格"实体在HTML中被用于在某个文档中插入一个额外的空格
  当文档被XML解析器解析时, 实体就会被展开

  以下为XML文件里的实体引用:

  实体引用 ==> 字符
  &lt;   ==>   <
  &gt;   ==>   >
  &amp;   ==>   &
  &quot;   ==>   "
  &apos;   ==>   '

PCDATA
  PCDATA, Parsed Character Data, 被解析的字符数据
  可把字符数据想象为XML元素的开始标签与结束标签之间的文本
  PCDATA是会被解析器解析的文本,这些文本将被解析器检查实体以及标记。
  文本中的标签会被当作标记来处理,而实体会被展开
  被解析的字符数据不应当包含任何 &、< 或者 > 字符, 需要使用 &amp;、&lt; 以及 &gt; 实体来分别替换它们

CDATA
  CDATA, Character Data, 字符数据
  CDATA是不会被解析器解析的文本
  在这些文本中的标签不会被当作标记来对待,其中的实体也不会被展开

原文地址:https://www.cnblogs.com/shiliye/p/13386470.html