XML之 ------ 基础知识详解

前端之家收集整理的这篇文章主要介绍了XML之 ------ 基础知识详解前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

XML

(Extensible Markup Language,可扩展标记语言)@H_403_11@

@H_403_11@

一、XML是什么

1、它与HTML一样,都是SGML (Standard Generalized Markup Language,标准通用标记语言)。@H_403_11@

2、XML是Internet环境中跨平台的,依赖于内容的技术,是当前处理结构化文档信息的有力工具。@H_403_11@

3、扩展标记语言XML是一种简单的数据存储语言,使用一系列简单的标记描述数据,而这些标记可以用方便的方式建立,虽然XML占用的空间比二进制数据要占用更多

的空间,但XML极其简单易于掌握和使用。

简单的说,就是类似于html中的标签功能,只不过,html中的标签都是规定好的,而xml中是自定义的。

例:

<XX大学>
  <部门>
     <信息学院>
       <教师s>
	       <教师 id="3319">
	          <姓名>Jack</姓名>
	          <性别>男</性别>
	          <年龄>28</年龄>
	       </教师>
      <教师s>
      <学生s>
        <班级 id="1206402"
	         <学生>
	            <学号>1</学号>
		          <姓名>张三</姓名>
		          <性别>男</性别>
		          <年龄>18</年龄>
		 </学生>
	       </班级>
      </学生s>
     </信息学院>
  </部门>
</XX大学>
@H_403_11@

二、XML的用途

XML是被设计为存储传输以及交换数据的。XML不是被设计为用来显示数据的。@H_403_11@

1、XML可以将HTML与数据分离

1)通过使用XML,数据可存储于HTML之外。

2)通过使用XML,可以在互不兼容的系统间交换数据。

例:

<?xml version="1.0" encoding="gb2312" ?>
<?xml-stylesheet type="text/css" href="code6_3.css"?>
<poem>
   <name>望庐山瀑布</name>
   <writer>唐.李白</writer>
   <contentA>日照香炉升紫烟</contentA>
   <contentB>遥看瀑布挂前川</contentB>
   <contentC>飞流直下三千尺</contentC>
   <contentD>疑是银河落九天</contentD>
</poem>

code6_3.css

@charset "gb2312";
poem{background-image: url(zf.jpg);
}
name{display:block;	
     font-family: 隶书;	
     font-size: 30pt;	
     letter-spacing:10pt;	
     text-align:center; }
writer{display:block;	
     font-family: 魏碑;
     font-size:10pt;	
     font-weight:bold;	
     letter-spacing:10pt;
     line-height:40pt;
     text-align:center;	
     color: Black; }
contentA{display:block;
     font-family: 隶书;	
     font-size: 20pt;	
     font-weight:bold;
     line-height:100%;
     letter-spacing:10pt;	
     text-align:center;	
     color: Black;
     font-weight: LIGHTER;
}
contentB{display:block;
     font-family: 隶书;	
     font-size: 20pt;	
     font-weight:bold;
     line-height:100%;
     letter-spacing:10pt;
     text-align:center;	
     color: Black;
     font-size:200%;
     font-weight: BOLDER;
}
contentC{display:block;
     font-family: 隶书;	
     font-size: 20pt;	
     font-weight:bold;
     line-height:100%;
     letter-spacing:10pt;	
     text-align:center;	
     color: Black;
     font-size:300%;
     font-weight: 700;
}
contentD{display:block;
     font-family: 隶书;	
     font-size: 20pt;	
     font-weight:bold;
     line-height:100%;
     letter-spacing:10pt;	
     text-align:center;	
     color: Black;
     font-size:400%;
     font-weight: 900;;
}
结果: @H_403_11@

注:要是没有这句:<?xml-stylesheet type="text/css" href="code6_3.css"?>

结果为:

2、XML和B2B

通过使用XML,可以在因特网上交换金融信息。@H_403_11@

3、XML可被用来共享数据

通过使用XML,纯文本文件可用于共享数据。通过使用XML,纯文本文件可用于存储数据。@H_403_11@

4、XML使数据更有用

通过使用XML,数据可供更多的用户使用。@H_403_11@

5、XML可被用来创建新的语言

XML是WAP和WML之母。 WAP(无线应用协议),是一项全球性的网络通信协议。WML(无线标记语言),被用来标记针对手持设备的因特网应用程序。@H_403_11@

@H_403_11@

三、XML的特点

1、与HTML的不同点比较

@H_403_11@

2、良好的格式

<name>张三</name>@H_403_11@

3、具有验证机制

1)DTD(Document Type Definition)@H_403_11@ 2)XML Schema@H_403_11@

4、灵活的WEB应用

XML中数据和显示格式是分离设计@H_403_11@

5、丰富的显示样式

XML数据定义打印、显示排版信息主要有3种方法@H_403_11@

6、XML是电子数据交换(EDI)的格式

XML是为互联网的数据交换而设计的@H_403_11@

7、便捷的数据处理

XML是以文本形式来描述的一种文件格式@H_403_11@

8、面向对象的特性

XML的文件是树状结构,同时也有属性,这非常符合面向对象方面的编程@H_403_11@

9、开放的标准

XML基于的标准是为Web进行过优化的@H_403_11@

10、选择性更新

通过XML,数据可以在选择的局部小范围内更新@H_403_11@

11、XML是一个技术大家族

XML是一套完整的方案,有一系列相关技术@H_403_11@

@H_403_11@

四、XML标记语法

1、XML语法基本点

1)XML要遵循规则W3C推荐规则规定的XML语法

2)XML文档只能包含一个根元素

3)所有XML元素必须包含结束标记

4)元素的开始标记和结束标记名称必须相同

5)XML元素不能重叠

6)所有属性值都必须使用引号@H_403_11@

@H_403_11@

2、标记的命名规则

1)名称的开头必须是字母或“_”;

2)标记名称中不能有空格;

3)名称的字符串只能包含“英文字母”、“数字”、“_”、“-”、“.”等字符。@H_403_11@

例如下面的标记就是合法标记<Name> <name> <_name> <li_name><li.name>

而下面是非法的标记:<.name> <li/name> <li%name> <li*name>@H_403_11@

@H_403_11@

3、标记的使用规则

1)必须具有根标记且根标记必须惟一

2)开始标记和结束标记需配对使用

3)标记不能交错使用

所谓标记的交错使用就是指如下情形的标记使用:<publisher> <ISBN>7-04-0147688</publisher> </ISBN>

在XML中这种标记的交错使用是非法的。应改成:<publisher> <ISBN>7-04-014768-8</ISBN> </publisher>

@H_403_11@

4、空标记的使用

所谓空标记指的是标记只有开始没有结束,又叫孤立标记。这种标记有的表示一种格式信息,例如<hr>在HTML中代表了一条直线,有的则保存一些数据信息。空标

记可写成“<标记名/>”的形式。

@H_403_11@

5、标记对大小写敏感

在XML中相配对的标记大小写需相同。如程序中出现</bookinfo>标记和</BOOKINFO>标记,则被认为是两个不同的标记,所以</bookinfo></BOOKINFO>被认为是

两个不配对的标记。 @H_403_11@

@H_403_11@

五、XML文档语法和数据结构

XML是一种语法要求十分严格的标记语言,因此语法有严格的限制。有关XML的基本语法一共有4条:@H_403_11@

1)文件的第一条语句必须是有关版本的声明;

2)标记的使用必须遵循上面的各规则

3)属性的值必须用双引号括起来;

4)特殊字符必须使用XML中特定的编码来表示。@H_403_11@

@H_403_11@

1、处理指令

1)处理指令是包含XML文档中的一些命令性语句,目的是告诉XML处理一些信息或执行一定的动作。@H_403_11@

2)处理指令的格式为:<?……?> 注:这里的?和<、>之间不能有空格。@H_403_11@

例如有关版本信息的声明指令:<?xml version=”1.0”?>@H_403_11@

解析:其中两个“<?”和“?>”是开始和结束的界定符号,“xml”是处理指令的命令名字。“version”命令中的属性,通常描述处理指令一个特定的细节,“1.0”是属性的值,代表

了对属性进行的某一方面的设定。@H_403_11@

@H_403_11@

2、XML的属性

XML允许为元素设置属性,用来为元素附加一些额外信息,这些信息与元素本身的信息内容有所不同。一个XML可以包含多个属性,从而存储一个或多个关于该元素

的数据。@H_403_11@

1)对于非空元素,属性的基本使用格式为:@H_403_11@

<开始标记 属性名称1=”属性值” 属性名称2=”属性值”…></结束标记>@H_403_11@

2)对于空元素,属性的基本使用格式为:

<空标记 属性名称1=”属性值” 属性名称2=”属性值”…>@H_403_11@

注:属性值也可以用单引号。

@H_403_11@

3、特殊字符的使用

@H_403_11@

4、XML文档中的注释

注释语句是其文档中其它形式语句进行提示或说明。XML文档中的注释和HTML文档中的注释是一样的,都是以下列开始符号和结束符号界定的一行或多行代码。@H_403_11@ <! --……-->

注释以灰色显示,表示是一些帮助信息,而不是程序的正式语句。语法解析器将完全忽略注释中的内容。另一点,注释不能出现在文档的第一行,文档的第一行必须是有

关版本信息的处理指令。@H_403_11@

@H_403_11@

5、程序中的文字CDATA标记

CDATA标记的作用是通知XML语法解析器,该标记代码包括文字标记都要当作纯文本来解析,并原封不动的将这段代码传给下一个XML应用程序。界定该段代码

开始和结束标记为:

<![CDATA[
 ……
 ]]>

@H_403_11@

6、XML文档的数据结构

XML的文档由文档头文档体构成。

文档体是指文档中内容信息所在的部分,例如根标记及其以内的所有元素、脚本等。其他的部分构成文档的头部。

文档的头部通常是一些声明信息或控制信息,如:处理指令和文档类型定义,其中文档类型定义不是必须的,但合法的XML文档必须具有该部分。

文档的“体”部是真正的数据信息,“头”部的信息都是为体部的信息服务的。

@H_403_11@

六、XML的相关技术

1、CSS

css网页编程【详解】

@H_403_11@

2、XSL

可扩展样式语言(eXtensible Style Language,XSL),是为了格式化XML页面而发展起来的一种标记语言,较CSS技术有许多优点。XSL包括变换语言

(Transformation Language)和格式语言(Formatting Language)。变换语言的主要功能是把数据从一种XML表示转换成另一种符合某一规范的表示,以满足某一特定

需要,这种功能使它成为了基于XML的电子商务、电子数据交换和无数据交换的有利工具;而格式化语言的功能是描述如何显示文档中的内容。@H_403_11@

@H_403_11@

3、DTD

文档类型定义(Document Type Definitions,DTD),就是定义一种标记语言。主要包括一门标记语言由几部分构成,该语言都是由哪些标记构成,这些标记的嵌

套关系如何,该语言中存在实体吗,(所谓实体,就是一些特殊字符或字符串的别名,例如HTML的“&nbsp;”),标记中可用属性吗,属性的取值该如何指定?说白了就

合法的XML文档的“法”之所在,这在XML文档中不是必须的部分。但这里建议尽量写出合法的XML文档,一则结构严谨,二则便于以后使用程序处理该文档。@H_403_11@

@H_403_11@

4、XMLSchema

虽然DTD在校验XML文档的有效性方面非常有用,但它仍然存在许多缺陷,例如,采用了非XML的语法规则、不支持多种多样的数据类型、扩展性较差等,这些缺

陷使DTD的应用受到了很大的限制。为了解决上述问题,以微软为首的众多公司提出了XMLSchema(大纲)。XMLSchema建立在XML之上,它的样子和一般的XML文

档完全相同,使得XML文档达到从内到外的完美统一。@H_403_11@

@H_403_11@

5、XML的链接语言

XML的链接语言目前主要有三部分构成,分别为Xlink 、Xpath和Xpointer。@H_403_11@

1)XLink支持一般的连接,就像在HTML链接一样,也支持更为复杂的链接。XLink不仅可以在XML文件之间建立链接,而且可以建立其他类型数据之间的链接。不仅如

此,还可描述与非XML文件之间的连接关系。@H_403_11@

2.)XPath主要是描述一个路径位置,而位置可以分成相对位置路径和绝对位置路径。一个相对位置路径事实上包含一连串的寻址步骤,每个寻址步骤是以斜线(/)进行分

隔的。整个相对位置路径就是这些寻址步骤从左到右结合在一起的。至于绝对路径本身就包含斜线(/),此处所使用的斜线代表的是根节点,它包括目前的节点。@H_403_11@

3)XML是结构化的文件,这使得借助文件结构进行内部定位成为可能,此时无须对文件本身进行修改,这就是XPointer。XPointer用于在资源内定位,它支持在XML文件

中定位元素、属性、字符串等内部结构。@H_403_11@

@H_403_11@

七、XML名称空间

<book xmlns="http://..."   xmlns:bo=" …">

XML是一种元标记语言,允许用户定义自己的标记,因此,很可能产生名字重复的情况。为了解决这个问题,W3C在1999年1月颁布了名称空间(NameSpace)

准。该标准对名称空间的定义是:XML名称空间提供了一套简单的方法,将XML文档和URI引用标识的名称相结合,来限定其中的元素和属性名。由此可知它

通过使用URI,解决了XML文档中标记重名的问题,从而确保任何一篇XML文档中使用的名字都是全球范围内独一无二的。

1、名称空间的声明

在使用名称空间之前,必须首先进行声明,名称空间的声明类似于前面元素的声明,将一个唯一的标识符号指定到一个URI或其他合法字符串上,使用前面定义的标

识符号作为标记的前缀,表示一类标记的出处。

名称空间具有继承性,也就是说,如果不明确声明子元素的名称空间,子元素将继承父元素的名称空间声明。但要注意的是,在默认声明的名称空间范围内,所有的

元素及其子元素不加前缀,而在显示声明的名称空间范围内,所有的元素及其子元素必须加前缀。

2、名称空间的范畴

名称空间的范畴就是名称空间起作用的范围。而范围就是声明该名称空间的元素及该元素中所有的子元素,除非是在该元素的某一个子元素上又声明了相同的名称空间。

猜你在找的XML相关文章