博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
2. DTD约束XML
阅读量:5235 次
发布时间:2019-06-14

本文共 1341 字,大约阅读时间需要 4 分钟。

XML引用DTD约束:

1. 内部引用,内部定义DTD:

<!DOCTYPE    根元素    [ 各种元素声明 ]>
 
2. 引用系统本地DTD:
<!DOCTYPE    根元素    SYSTEM    "DTD文件的URL.dtd">
 
3. 引用公共DTD
<!DOCTYPE    根元素    PUBLIC    "DTD名称"    "DTD文件的URL">
例子:
我们在创建XHTML时,就有这种引用公共DTD的方式获取网络DTD,是W3C定义好的。
<!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
"http://java.sun.com/dtd/web-app_2_3.dtd">

 
DTD语法:
1. 元素的定义:
<!ELEMENT    元素名称    元素类型>
元素类型是指这个元素,有几个子元素,或者说,这个元素是什么类型(文本等)。
 
1)包含多个子元素:
<!ELEMENT    book    (name,price)>
用逗号分隔元素,表示必须按照这个书写顺序来书写XML
<!ELEMENT    book    (name|price)>
用 | 分隔,表示name和price任选其一,只能使用一个
 
1-1) 限定符:
+:一次或多次
*:0次或多次
?:0次或一次
<!ELEMENT    store    (book+)>
 
2) 无子标签的元素类型:
<!ELEMENT    name    (#PCDATA)> 
EMPTY:用于定义空元素(没有#号,没有括号)
ANY:表示元素内容为任意类型(没有#号,没有括号)
<!ELEMENT name ANY> 
 
3) 组合方式:
<!ELEMENT    MYFILE    ( ( TITLE*, AUTHOR?, EMAIL )*  |  COMMENT )    >
MYFILE元素下面,出现( TITLE*, AUTHOR?, EMAIL )0次或多次,或者COMMENT出现一次。
( TITLE*, AUTHOR?, EMAIL ),如果出现的话,必须按照定义的顺序。
 
2. 属性的定义
格式:
< ! ATTLIST    元素名
    属性名1    属性类型    默认值
    属性名2    属性类型    默认值
>

属性类型:字符、唯一ID、.........

CDATA  字符数据

ID     唯一的id

 

默认值:是否必填,是否固定,固定值是多少。

#REQUIRED  属性值是必须的

#IMPLIED   属性值不是必须的

#FIXED value   属性值是固定的


 

例子一枚:

 bookstore.dtd文件:

1 
2
3
6
7

 bookstore.xml文件:

1 
2 3
4
5
JAVA
6
$99
7
8

转载于:https://www.cnblogs.com/lee-hao/p/4545155.html

你可能感兴趣的文章
条件断点 符号断点
查看>>
VMware12 + Ubuntu16.04 虚拟磁盘扩容
查看>>
水平垂直居中
查看>>
MySQL简介
查看>>
设计模式之桥接模式(Bridge)
查看>>
jquery的$(document).ready()和onload的加载顺序
查看>>
Python Web框架Django (五)
查看>>
.net学习之继承、里氏替换原则LSP、虚方法、多态、抽象类、Equals方法、接口、装箱拆箱、字符串------(转)...
查看>>
【codevs1033】 蚯蚓的游戏问题
查看>>
【程序执行原理】
查看>>
python的多行注释
查看>>
连接Oracle需要jar包和javadoc文档的下载
查看>>
UVA 10976 - Fractions Again?!
查看>>
Dreamweaver cc新版本css单行显示
查看>>
【android】安卓的权限提示及版本相关
查看>>
JavaScript可否多线程? 深入理解JavaScript定时机制
查看>>
IOS基础学习
查看>>
PHP 导出 Excell
查看>>
Java基础教程——网络基础知识
查看>>
自己到底要的是什么
查看>>