第3章XML的有效性DTD.pptVIP

  • 11
  • 0
  • 约 54页
  • 2016-12-03 发布于重庆
  • 举报
第3章XML的有效性DTD

* 3.5 DTD对属性声明 属性是描述元素的额外信息的,是对元素的修饰与补充。 一般地,信息详实的XML文档都具有一个特点,元素通过属性来描述边缘信息。 * * 元素属性的声明 DTD 中某个元素的属性的声明语法如下: 对于多个属性,比如: 两个属性的声明也可以写成: !ATTLIST element-name attr-name attr-type attdesc !ATTLIST element-name attr1 attr-type1 attdesc1 attr2 attr-type2 attdesc2 !ATTLIST element-name attr1 attr-type1 attdesc1 !ATTLIST element-name attr2 attr-type2 attdesc2 * ATTLIST 中的属性类型 类型 描述 CDATA 字符数据“Character data”,不包括转义内容的纯文本内容。 文本中的标签不会被当作标记,实体也将不会得到扩展。 (value1|value2|..) 由 value1、value2 等构成的一个枚举类型,属性值必取其中 之一。 NMTOKEN 表示属性的值必须是有效的 XML 名称标记(Name Token)。 NMTOKENS 由空格隔开的多个 NMTOKEN。 ID 表示属性的值在文档中是唯一的。 IDREF 表示属性的值引用另一个属性的 ID。 IDREFS 由空格隔开的多个 ID。 ENTITY 表示属性的值是一个实体。 ENTITIES 由空格隔开的多个 ENTITY。 NOTATION 表示属性的值是一个 NOTATION 的名称。 !ATTLIST element-name attr-name attr-type attdesc * ATTLIST 中的属性描述 属性描述 含义 value 该属性的缺省值为 value。 #REQUIRED 对于所属的元素来说,该属性是必须的。 #IMPLIED 对于所属的元素来说,该属性是可选的。 #FIXED value 该属性的值为固定值 value。 !ATTLIST element-name attr-name attr-type attdesc * 属性声明的示例 1 ①. !ATTLIST memo id ID #REQUIRED security (high|low) high keywords NMTOKENS #IMPLIED ②. !ATTLIST sender company CDATA #FIXED Microsoft memo 元素的属性 id 是必须的,并且该属性的值必须在整个文档中是唯一的;属性 security 的值可能为 high 或者 low,其缺省值为 high;属性 keywords 是可选的,如果出现,那么它的值应该是用空格隔开的若干个 XML 名称标记。 sender 元素的 company 属性的值为字符数据,并且固定为 Microsoft。 keywords = XML XPath XQuery、id=memo-2006-03-14“ 都是正确的属性取值 sender company=“Microsoft” / 是正确的 sender company=Schools / 则是错误的 * 属性声明的示例 2 ③. !ELEMENT Step EMPTY !ATTLIST Step id ID #REQUIRED !ELEMENT StepLink EMPTY !ATTLIST StepLink steps IDREFS #IMPLIED ④. !ATTLIST bulletlist icon ENTITY #IMPLIED !ENTITY bluedot SYSTEM icons/bluedot.png !ENTITY greendot SYSTEM icons/greendot.png bulletlist icon=bluedot 或者 bulletlist icon=greendot 都是正确的 如果在该文档中存在: Step id=step1/ Step id=step2/ 则 StepLink

文档评论(0)

1亿VIP精品文档

相关文档