XML和DTD

一、XML概述

1、XML是可扩展标记语言。是由W3C指定并维护的,目前最新的版本是1.0

2XML作用:

         2.1传输数据,它是一种通用的数据交换格式

         2.2配置文件。

二、xml语法

1XML的声明

         1.1语法:<?xml version="1.0" encoding="UTF-8"?>

         保存在磁盘上的文件编码要与声明的编码一致。

         encoding属性的默认 编码是:UTF-8

         1.2XML的声明必须出现在XML文档的第一行

2XML的注释

         2.1语法:<!--这是注释-->

         2.2注释不能出现在声明之前

3CDATA

         CDATA是Character Data的缩写

         把标签当做普通文本内容;

         示例:

                   <![CDATA[

                            <itcast>www.itcast.cn</itcast>

                   ]]>

三、DTD约束

         1、常用约束:DTD(Document Type Definition)文档类型定义

                            Schema

         2、格式良好的XML遵循XML语法的文档

            有效的XML遵守约束的文档。

                   有效的XML文档一定是格式良好的,但格式良好的不一定是有效的

         3、单独的DTD文档在保存时要以UTF-8编码进行保存

         4、编写DTD

                   4.1在XML文档中直接编写:

                            <?xml version="1.0" encoding="gbk"?>

                            <!DOCTYPE 书架 [

                                     <!ELEMENT 书架 (书+)>

                                               <!ELEMENT 书 (书名,作者,售价)>

                                               <!ELEMENT 书名 (#PCDATA)>

                                               <!ELEMENT 作者 (#PCDATA)>

                                               <!ELEMENT 售价 (#PCDATA)>

                                     ]>

                            <书架/>

                   4.2引入外部DTD 

                            4.2.1:当引用的DTD文档在本地时,采用如下方式:

                                     <!DOCTYPE 根元素 SYSTEM “DTD文档路径”>

                            4.2.2:当引用的DTD文档在公共网络上时,采用如下方式:

                                     <!DOCTYPE 根元素 PUBLIC “DTD名称” “DTD文档的URL”>

         5、定义元素:

                   语法:<!ELEMENT 元素名称 使用规则>

                   使用规则:

                            (#PCDATA):表示标签主体内容为普通字符串

                            EMPTY:表示标签没有主体内容

                            ANY:主体为任意内容

                            (子元素):标签中的子元素

                                     用逗号分开:按顺序出现

                                     用“|”:选择其中一个

                                     出现次数:

                                               如果元素后面没有+*?:表示必须且只能出现一次

                                               +:表示至少出现一次,一次或多次

                                               *:表示可有可无,零次、一次或多次

                                               ?:表示可以有也可以无,有的话只能有一次。零次或一次

         6、定义元素的属性

                   语法:<!ATTLIST 元素名称

                                     属性名称1 属性值类型 设置说明

                                     属性名称2 属性值类型 设置说明

                                     ....

                            >

                   属性值类型:

                            CDATA:普通文本数据

                            A|B|C "A":表示枚举值,只能从A、B、C中取其中一个,A为默认值

                            ID:表示取值不能重复

                   设置说明:

                            #REQUIRED:表示该属性必须出现

                            #IMPLIED:表示该属性可有可无

                            #FIXED:表示属性的取值为一个固定值。语法:#FIXED "固定值"

                            直接值:表示属性的取值为该默认值

posted @ 2013-10-28 19:26  yly123  阅读(241)  评论(0编辑  收藏  举报