DTD约束XML

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 <!ELEMENT books (book+)>
2 <!ELEMENT book (name,price)>
3 <!ATTLIST book
4  id ID #REQUIRED
5 >
6 <!ELEMENT name (#PCDATA) >
7 <!ELEMENT price (#PCDATA) >

bookstore.xml文件:

1 <?xml version="1.0" encoding="UTF-8"?>
2 <!DOCTYPE books SYSTEM "bookstore.dtd">
3 <books>
4 <book id="book_code_1">
5 <name>JAVA</name>
6 <price>$99</price>
7 </book>
8 </books>
时间: 2024-08-01 10:45:53

DTD约束XML的相关文章

xml语法、DTD约束xml、Schema约束xml、DOM解析xml

今日大纲 1.什么是xml.xml的作用 2.xml的语法 3.DTD约束xml 4.Schema约束xml 5.DOM解析xml 1.什么是xml.xml的作用 1.1.xml介绍 在前面学习的html语言,html是超文本标记语言,使用html语言规定好的标签来封装文本数据.而html使用的标签html语言规定好的,每个标签都有自己特定的功能. xml语言,可扩展的标记语言,这门语言它没有定义任何的标记,而标记是由使用者自己来定义,但是由于标签名称以及属性名称都由用户自己来命名,导致别人在使

用DTD约束XML详解及示例

文档类型定义(DTD)可定义合法的XML文档构建模块.它使用一系列合法的元素来定义文档的结构. dtd的三种引入方式    (1)引入外部的dtd文件        <!DOCTYPE 根元素名称 SYSTEM "dtd路径">     (2)使用内部的dtd文件       <!DOCTYPE 根元素名称 [ <!ELEMENT person (name,age)> <!ELEMENT name (#PCDATA)> <!ELEMENT

【代码笔记】XML深入学习:DTD约束与DTD语法(1)

2015-12-27 文件名    student.xml 1 <?xml version="1.0" encoding="GB2312" standalone="no"?> 2 <!--大家好,我是注释--> 3 <!--2015.12.27--> 4 <!DOCTYPE students SYSTEM "student.dtd"> 5 <!--这里没写盘符,及表示当前目

xml技术DTD约束定义

XML约束 在XML技术中,可以编写一个文档来约束一个xml文档的书写规范,这称之为XML约束为什么需要XML约束? class.xml <stu><面积>?人怎么会有面积元素? xml 文件标签可以随便写,dtd可以对其有所要求按照合理的需求写 xml文件约束--dtd document type definition 文档类型定义作用: 定义xml标签约束,使开发者按照定义书写,也可以约束html文件 使用: 在项目中如需要一个xml文件,项目经理 可定义一个dtd文件,要求所

XML内部DTD约束

<?xml version="1.0" encoding="UTF-8"?> <!-- 内部DTD --> <!-- XML:extensible markup language 可扩展标记语言 --> <!-- DTD约束:document type definition 文档类型定义 --> <!-- + 1~n * 0~n ? 0~1 --> <!-- The markup declaratio

XML的DTD约束

DTD约束:DTD的声明和引用 1.内部DTD文档 <!DOCTYPE 根元素 [定义内容]> 2.外部DTD文档 <!DOCTYPE 根元素 SYSTEM "DTD文件路径"> 或者 <!DOCTYPE 根元素 PUBLIC "DTD名称" "DTD文件的URL">  3.DTD元素基本语法: <!ELEMENT 元素名称  类别> 或 <!ELEMENT 元素名称 (元素内容)> -

xml之dtd约束

DTD:Document Type Definition 文档定类型定义. 作用:是用来约束XML的书写规范. 写法: 内部声明: 假如 DTD 被包含在您的 XML 源文件中,它应当通过下面的语法包装在一个 !DOCTYPE 声明中:<!DOCTYPE根元素 [元素声明]> 外部声明: 本地: <!DOCTYPE 根元素 SYSTEM "dtd文件名"> 外地(网上): <!DOCTYPE 根元素 PUBLIC "dtd的名称" &q

XML DTD约束 对xml文件的crud的查询Read Retrieve操作 xml递归遍历

本地的dtd文档 xml中引入dtd文档 <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE 书架 SYSTEM "book.dtd"> <书架> <书> <书名>Java就业培训教程</书名> <作者>张孝祥</作者> <售价>39.00</售价> </书> <书

Java 模拟servlet执行、DTD约束、Schema约束、dom4j解析(读写xml)

模拟servlet执行 浏览器请求WEB服务器上的资源,WEB服务器返回给浏览器 浏览器的入口不同(访问路径),访问的资源也不同. 我们需要使用xml约束(DTD或schema);为了获得xml的内容,我们需要使用dom4j进行解析. XML(不同路径(/hello)执行不同的资源( HeIIoMyServlet)) XML可扩展的标记语言  标签可自定义的 包下创建xml 文件   new → other  →  XMLFile 粘贴web-app_ 2_ 3.dtd文件 复制web-app_