您的位置:首页 > 其它

[XML]学习笔记(一)XML简介

2016-03-22 21:41 357 查看
一、XML扩展标注语言——eXtensibleMarkup Language

二、标记语言:由一些格式标记/控制标记所组成。

a) 专用标记语言:如HTML,Word,WPS等;

b) 通用标记语言:如SGML(标准通用标记语言),XML等;

三、HTML的优点:

a) 标记有限:不过100个,便于学习;

b) 语法要求宽松:大小写不敏感,控制标记也不一定要配对使用;

c) 和HTML相关的应用软件很多。

HTML的缺点:

a) 标记确定:用户无法设计出适合自己领域的特殊标记;

b) 本质是一种格式显示语言,不适合对信息进行结构化的描述;

c) 标准不统一:只有通过浏览器的翻译和解释才能看出效果。

四、XML的优点:

a) 可以创建标记和文法结构;

b) 可以实现不同数据源之间的数据交换;

c) 一种数据多种显示:将信息的数据部分和细细的样式显示部分进行了区分,可以给同一份数据添加多种样式显示效果;

d) 实现数据的分布式处理:将原来必须由服务器端处理的许多负载都分配到了客户端上处理;

e) 简单易学且功能强大;

f) XML不能完全取代HTML:XML和HTML在Internet上承担的责任并不是完全一样的。HTML关心的是信息在浏览器中的显示效果,而XML关心的则是信息的保存方式,不但HTML不能被XML所取代,从某种意义上来说XML还离不开HTML,因为XML数据的显示往往需要被转变成HTML文档才能被浏览器识别。而且HTML先入为主,已经成为主流的数据表示。

五、<?xmlversion=”1.0”?>

这是一条预处理指令,是有关XML的声明部分,如果文件全是由英文字符编写的,则此行可以省略,否则必不可少且必须在第一行。

六、XSL与CSS

a) CSS:

<?xml-stylesheet type=”text/css” href=”***.css”?>

CSS样式语言中的功能有限,如XML文档中的某个标记的数据只能被显示一遍。

b) XSL:

<?xml-stylesheet type=”text/xsl” href=”***.xsl”?>

XSL也是一种XML文件,使用时首先读出XML中的数据,然后再将数据套用XSL文件中的格式,形成一个完整的HTML代码。

XSL是XML的专用样式语言,不想CSS既可以配合HTML进行样式显示,也可以配合XML进行样式显示。

XSL可以从XML数据文件中直接提取数据,同时套上特定的格式然后显示,这意味着XML文档中同一个数据可以显示多遍,而CSS做不到,因为CSS显示XML数据文档的做法是依次地扫描XML文档中的所有标记,给各个标记添加样式并显示出来。

e.g.

XML文件:

<?xmlversion="1.0" encoding="UTF-8"?>
<?xml-stylesheettype = "text/xsl" href = "1-15.xsl"?>
<Jason>
<title>XML</title>
<author>JasonChan</author>
</Jason>


XSL文件:

<?xmlversion="1.0" encoding="UTF-8"?>
<xsl:stylesheet version="2.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:fo="http://www.w3.org/1999/XSL/Format" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:fn="http://www.w3.org/2005/xpath-functions">
<xsl:template match="/">
<html>
<head>
<title>hello the world</title>
</head>
<body bgcolor="#ccccff">
<h1 align="center"><xsl:value-of select = "Jason"/></h1>
</body>
</html>
</xsl:template>
</xsl:stylesheet>


显示效果如下:

七、 DTD(DocumentType Defination)文档类型定义:一种定义标记语言的语言

XML文件没有对标记与标记之间的相互嵌套关系进行严格的定义,DTD就是用来将标记和文档结构进行严格的定义。

XML文件中需要加入<!DOCTYPEJason SYSTEM "test.dtd">来声明这些标记的定义文件,其中<!DOCTYPE是该声明语句的开始部分,Jason为文档根元素标记,SYSTEM为系统的一个关键字,"test.dtd"是文档结构定义文件的路径。

e.g.

XML文档:

<?xmlversion="1.0" encoding="UTF-8"?>
<?xml-stylesheettype = "text/xsl" href = "1-15.xsl"?>
<!DOCTYPEJason SYSTEM "test.dtd">
<Jason>
<title>XML</title>
<author>JasonChan</author>
<sex>male</sex>
<age>21</age>
<school>ECNU</school>
</Jason>


DTD文档:

<?xmlversion="1.0" encoding="UTF-8"?>
<!ELEMENTJason(title,author)>
<!ELEMENTtitle (#PCDATA)>
<!ELEMENTauthor(sex,age,school)>
<!ELEMENTsex (#PCDATA)>
<!ELEMENTage (#PCDATA)>
<!ELEMENT school(#PCDATA)>


八、合法的(validating)XML文档:

带有文档类型定义并且标记的书写方法符合DTD有关定义的XML文档。否则为良构的(Well-Formed)XML文档。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: