六狼论坛

 找回密码
 立即注册

QQ登录

只需一步,快速开始

新浪微博账号登陆

只需一步,快速开始

搜索
查看: 20|回复: 0

xmlStudy2-DTD

[复制链接]

升级  12%

18

主题

18

主题

18

主题

秀才

Rank: 2

积分
68
 楼主| 发表于 2013-2-4 19:19:20 | 显示全部楼层 |阅读模式
1.DTD
    内部DTD
      <!DOCTYPE 联系人列表[
        <!ELEMENT 联系人列表 (联系人)*>
        <!ELEMENT 联系人 (姓名,地址)>
        <!ELEMENT 地址 (街道,城市,省份)>
        <!ELEMENT 姓名 (#PCDATA)>
        <!ELEMENT 街道 (#PCDATA)>
        <!ELEMENT 城市 (#PCDATA)>
        <!ELEMENT 省份 (#PCDATA)>
      ]>
     外部DTD
        standalone=“no”
      <!DOCTYPE 根元素名 SYSTEM "外部DTD文件的URL">
     公用DTD
        <!DOCTYPE 根元素 PUBLIC "DTD名称" "外部DTD的URL">
        DTD名称只能包含字母、数字、空格和下面的符号:_%$#@()+:=/!*;?。同时,DTD名称还必须符合一些标准的规定。例如,ISO标准的DTD以“ISO”三个字母开头;被改进的非ISO标准的DTD以加号“+”开头;未被改进的非ISO标准的DTD以减号“-”开头。
2. <!ELEMENT 联系人(姓名,(电话|EMAIL))>
       |表示二者只能且必须取一
     在一个组中,只允许使用一种连接符(例如“,”或“|”)。因此把电话和EMAIL组成一组的括号必不可少
3. 定义空标记     <!ELEMENT HR EMPTY>

4. 元 字 符 含    义
+ 出现一次或多次
* 出现零次或多次
? 可选,不出现或出现一次
() 一组要共同匹配的表达式
| OR,或
, AND,要求严格遵从顺序要求
元素A
元素B
元素C 元素列表,无须遵从顺序


5.

属性值可有可无的属性
必须赋值的属性
固定取值的属性
定义缺省值的属性

<!ATTLIST 页面作者  
        年龄 CDATA #IMPLIED
        联系信息 CDATA #REQUIRED
        网站职务 CDATA #FIXED "页面作者"
        个人爱好 CDATA "上网">


6. 属性类型

CDATA
Enumerated
ID
IDREF
IDREFS
ENTITY
ENTITIES
NMTOKEN
NMTOKENS
NOTATION
关键字ENUMERATED是不出现在DTD定义中的

枚举属性定义方法:<!ATTLIST 肉 类型 ( 鸡肉 | 牛肉 | 猪肉 | 鱼肉 ) "鸡肉">

<!NOTATION 记号名 SYSTEM "MIME类型">    or    <!NOTATION 记号名 SYSTEM "URL路径名">
您需要登录后才可以回帖 登录 | 立即注册 新浪微博账号登陆

本版积分规则

快速回复 返回顶部 返回列表