XML约束技术
来源:互联网 发布:淘宝复制链接不弹出来 编辑:程序博客网 时间:2024/06/05 09:53
为了使XML文档规范化,对XML文档的书写进行约束
XML DTD
XML文档(test.xml)
<?xml version="1.0" encoding="utf-8" ?>
<!DOCTYPE books SYSTEM "books.dtd">
<books>
<book>
<name>java</name>
<price>$16</price>
</book>
</books>
DTD约束文档(books.dtd)
<!ELEMENT books (book)>
<!ELEMENT book (name,price)>
<!ELEMENT name (#PCDATA)>
<!ELEMENT price (#PCDATA)>
<!ELEMENT book (name,price)>
<!ELEMENT name (#PCDATA)>
<!ELEMENT price (#PCDATA)>
也可以写在一起:
<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE users [
<!ELEMENT users (user*)>
<!ELEMENT user (id,username,password,email,birthday)>
<!ELEMENT id (#PCDATA)>
<!ELEMENT username (#PCDATA)>
<!ELEMENT password (#PCDATA)>
<!ELEMENT email (#PCDATA)>
<!ELEMENT birthday (#PCDATA)>
]>
<users>
<!DOCTYPE users [
<!ELEMENT users (user*)>
<!ELEMENT user (id,username,password,email,birthday)>
<!ELEMENT id (#PCDATA)>
<!ELEMENT username (#PCDATA)>
<!ELEMENT password (#PCDATA)>
<!ELEMENT email (#PCDATA)>
<!ELEMENT birthday (#PCDATA)>
]>
<users>
<user>
<id>1</id>
<username>1</username>
<password>1</password>
<email>1</email>
</user>
</users>
<id>1</id>
<username>1</username>
<password>1</password>
<email>1</email>
</user>
</users>
引入外部DTD
本地DTD <!DOCTYPE root-element SYSTEM "filename">
公共DTD<!DOCTYPE root-element PUBLIC "DTD-NAME" "URL">
元素声明
<!ELEMENT element-name category>
或
<!ELEMENT element-name (element-content)>
或
<!ELEMENT element-name (element-content)>
符号使用
category
属性定义
DTD属性
实体定义
实体定义有点像C中的宏定义
例:
定义实体:<!ENTITY string “Hello World!”>
使用实体:&string;
XML Schema
xml Schema使用预先定义好的元素和属性开发的,其本身就是XML文档(这与DTD不同),通过Schema再来规定XML实例文档。
由于一个XML实例文档可以引入多个Schema,为了避免元素重名问题,每个Schema都应有一个名称空间(这里使用URI来区分)。
在定义Schema文档时要用到预先定义的属性和元素,需要引入W3C组织规定的scheme,即xmlns="http://www.w3.org/2001/XMLSchema"
XML文档(test.xml)
<?xml version="1.0" encoding="utf-8" ?>
<books
xmlns="http://www.dy-pc.com"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.dy-pc.com test.xsd"
>
<book>
<name>java</name>
<price>$16</price>
</book>
</books>
约束文档(test.xsd)
<?xml version="1.0" encoding="utf-8" ?>
<schema xmlns="http://www.w3.org/2001/XMLSchema"
targetNameSpace="http://www.dy-pc.com"
elementFormDefault = "qualified"
>
<element name="books">
<complexType>
<sequence>
<element name="book">
<squence>
<element name="name" type="string" />
<element name="price" type="double" />
</squence>
</element>
</sequence>
</complexType>
</element>
</schema>
0 0
- XML约束技术-DTD约束
- XML约束技术
- XML约束技术之一:DTD约束
- xml约束技术之dtd
- xml约束技术之dtd
- xml--语法03--xml的约束技术
- xml的约束技术Schema、dtd
- XML约束-Schema约束
- XML约束--DTD约束
- XML约束--schema约束
- XML约束_schema约束
- XML约束
- XML约束
- XML约束
- xml约束
- xml约束
- xml约束
- xml约束
- unity入门教程之使用四元数旋转向量
- 如何优化MySQL insert性能
- VisualStudio VS2010 统计代码行数
- web安全编程防御
- Android大图片导致内存问题小结
- XML约束技术
- Android之常见面试题
- GCD的多线程基础
- USACO天梯--Transformations
- 阿里云 lnmp 一键安装包配置路径
- 解决浏览器兼容性问题CSS(一)
- mysql删除数据库中所有表
- 类和对象理解
- Dao层设计