XML文档的基本结构

来源:互联网 发布:比较好玩的java游戏 编辑:程序博客网 时间:2024/05/21 03:28

1、  XML 的简介

XML是Extendible Markup Language的缩写,是可扩展的标记语言,Xml技术是w3c组织发布的,目前推荐遵循的是W3C组织于2000发布的XML1.0规范。

2、  XML出现的原因

在描述省县市的时候,不能很好的表示出来,而现实生活中经常出现这种现象。

在XML语言中,它允许用户自定义标签。一个标签用于描述一段数据;一个标签可分为开始标签和结束标签,在开始标签和结束标签之间,又可以使用其它标签描述其它数据,以此来实现数据关系的描述。

例如:

              标签:

                     <学生>

                            <学号>11</学号>

                            <姓名>王小五</姓名>

                     </学生>

3、  HTML和XML的不同

HTML是用于显示的,这是它存在的不足

XML是用于数据的传输网络传输数据,存储数据的

4、学习XML的根本

              最根本的目标在于能描述出关系图

              一个标签用于描述一段数据

              可用于配置文件的描述---struts-config.xml   hibernate.cfg.xml   

              可简化数据的交换

比如:linux平台-----》window平台的数据的交换,可用XML语句,具有跨平台性,和java是天生的一对

5、XML常见应用

        XML技术除用于保存有关系的数据之外,它还经常用作软件配置文件,以描述程序模块之间的关系。

在一个软件系统中,为提高系统的灵活性,它所启动的模块通常由其配置文件决定

              配置文件------软件的启动:例子

                     键一个config.xml的文档   

              <config>

                     <A>

                            <A1></A1>

                            <A2></A2>

</A>

                     <B>

                            <B1></B1>

                            <B2></B2>

</B>

              </config>

6、XML的文档规则:

XML文档的分类

•         格式不良好(malformed)的xml文档:完全没有遵守xml文的基本规范的xml文档。

•         格式良好(well-formed)的但无效的xml文档: 遵守xml文的基本规范,但没有使用dtd或schema定义语义约束的xml文档。

•         有效(valid)的xml文档:遵守xml文的基本规范,并使用dtd或schema定义语义约束,而且也完全遵守了dtd或schema定义语义约束的xml文档。

注意的事项:

              (1)双标签

                     必须有一个根节点

                     标签必须有合理的闭标签,标签要成对的出现

              (2)单标签也要合理的结束<BR/>,不要求

              (3)标签区分大小写

              (4)必须合理的嵌套,否则语法会检测除出来

              (5)在写的时候必须用双引号括起来

7、XML语法:

一个XML文件分为如下几部分内容:

              文档的声明部分,必须要第一行:<?xml version="1.0"?>

              元素:<起始标记>数据</终止标记>    <A2>dlsjll</A2>

              属性:<A type=””></A>----属性必须用双引号括起来

              注释:

              处理指令

具体步骤的详解:

XML语句------文档声明

       最简单的声明语法xml

              (1)<?xml version="1.0"?>

                     xml是一个处理指令

                     version是一种规范

                     在?和“之间没有空格

              (2)<?xml version="1.0" encoding=”utf-8”?>

                     Encoding是编码方式

                            编码出现的错误:

encoding=”utf-8”是向IE指定的编码方式,是在解析器解析的候使用的编码

在保存文件的时候必须也要指定字符集,并且和IE的编码方式一样才可以,是编码的过程,放到磁盘文件中

              (3)<?xml version="1.0" encoding=”utf-8” standalone=”yes”?>

                            Standalone是否是独立的文档

              注:声明必须是XML文档中的第一行的内容.。即<之前不能有任何空格和空行

元素1-----标签----

非空的元素一定是成对的标记

              <起始标记>

                     sdgsdddg

              <></>

</结束标记>

空元素:起始标记和接受标记是紧挨着的,空行和空格都没有,一般学成单标记的形式

       <起始标记></结束标记>---通常写成,并且带有属性---- <标记 type=“sdfg“/>

元素2

对于XML标签中出现的所有空格和换行,XML解析程序都会当作标签内容进行处理。

由于在XML中,空格和换行都作为原始内容被处理,所以,在编写XML文件时,使用换行和缩进等方式来让原文件中的内容清晰可读的“良好”书写习惯可能要被迫改变。

元素3----命名规范

一个XML元素可以包含字母、数字以及其它一些可见字符,但必须遵守下面的一些规范:

l       区分大小写,例如,<P>和<p>是两个不同的标记。

l       不能以数字或"_" (下划线)开头。

l       不能以xml(或XML、或Xml 等)开头。

l       不能包含空格。

l       名称中间不能包含冒号(:)。

属性

(1) 一个标签可以有多个属性,每个属性都有它自己的名称和取值

        例如:

              <input name=“text”>

(2) 属性值一定要用双引号(")或单引号(')引起来

(3) 定义属性必须遵循与标签相同的命名规范

(4) 多学一招:在XML技术中,标签属性所代表的信息,也可以被改成用子元素的形式来描述,例如:

              <input>

                    <name>text</name>

              </input>

在什么情况下设为属性、设为字标记

       <文档 最后修改日期=“2001/02/02“>  与整个文档有关的

       </文档>

注释:

       注释的格式:<!--注释的内容-->

       注意:

              XML声明之前不能有注释

              注释不能嵌套

              注释之间不能是-----,可以有标签

              标签体里不能出现大于号小于号,例如:

                     <年龄>3<9<年龄/>  是错的

                      第一种:可改成  <年龄>3&lt;9<年龄/>

                                   &gt       >   

                                   &quot     “”

                                   &        &amp

                     第二种:

                            CDATA区,可把里面的内容全部输出

<原样显示>

                   <![CDATA[输出原样显示的内容]]>

</原样显示>

处理指令-----PI

     处理指令,简称PI (processing instruction)。处理指令用来指挥解析引擎如何解析XML文档内容。

例如,在XML文档中可以使用xml-stylesheet指令,通知XML解析引擎,应用css文件显示xml文档内容。 <?xml-stylesheet type="text/css" href="1.css"?>

处理指令必须以“<?”作为开头,以“?>”作为结尾,XML声明语句就是最常见的一种处理指令。

XML的约束

       常用的约束技术

              XML  DTD

              DTD(Document Type Definition)  文档类型定义

                                   Book.dtd扩展名

                                   #PCDATA表示字符类型

                     外部的DTD

                            <!DOCTYPE 书架 SYSTEM “book.dtd”> 引入

              内部的DTD

                     <!DOCTYPE 根标记【】>

                     <!DOCTYPE 学生列表[

<!ELEMENT 学生列表(学生)*

]>

引用DTD约束

              <!DOCTYPE 根标记名 PBLIC “-//拥有者//主要内容”> 引入

DTD的语法细节:元素定义

              外连接:

<!ELEMENT 学生列表(学生)*> *代表控制出现的次数

<!ELEMENT 学生 (学号,姓名,性别,班级*)>  *表示班级出现的次数,为0次或多次

<!ELEMENT 学生 (学号,姓名,性别,班级+)>  +表示至少出现一次

<!ELEMENT 学生 (学号,姓名,性别,班级?)>   ?表示0次或者是1次

<!ELEMENT 学生 (学号,姓名,性别)>  学生标签里只能包含这三个标签,并且顺序必须相同

<!ELEMENT 学号 (#PCDATA)*>   #PCDATA表示是字符数据

<!ELEMENT  姓名 ANY>   没有限制姓名子标签中的类型,是任意的类型

<!ELEMENT 类别 (高职|普高)>   互斥的取值

    <类别><高职/></类别>  <高职/>时,必须这么写

<!ELEMENT 类别 (高职|普高)*>

    <类别><高职/><普高/></类别>

原创粉丝点击