基于XML的网页设计.docx
- 文档编号:4355578
- 上传时间:2022-11-30
- 格式:DOCX
- 页数:38
- 大小:1,010.50KB
基于XML的网页设计.docx
《基于XML的网页设计.docx》由会员分享,可在线阅读,更多相关《基于XML的网页设计.docx(38页珍藏版)》请在冰豆网上搜索。
基于XML的网页设计
基于XML的网页设计
论文题目:
基于XML的网页设计
专业:
计算机及应用
学号:
0810********
姓名:
郭坤
指导教师姓名:
蔡贤涛
论文提交日期:
2010年11月
学位授予单位:
武汉大学计算机学院
摘要
本论文是基于XML的动态网页设计。
XML能够提供一种结构化的数据,它主要定义的是数据本身的结构和类型,而非HTML所描述的数据的显示和外观,实现了内容和显示的分离。
本论文分别用HTML和XML两种语言实现一个具有论坛功能、投票功能和新闻发布等功能的个人网页,通过对比,总结了XML相对于HTML的优势,并分析了两者的区别。
关键词:
XML;网页;ASP
ABSTRACT
ThispaperisbasedonXMLanddynamicwebdesign.XMLcanprovideastructureofthedata,anditmainlydefinesthedatastructuresandtypes,ratherthanHTMLdescriptionofthedatadisplayandappearance.Itachievedtheseparationbetweencontentanddisplay.Thispaperwasachievedbyusingtwolanguages---HTMLlanguageandXMLlanguagetoachieveaforumfunction,votingfunctionsandpressreleases,andotherfunctionsofapersonalwebpage.Bycontrast,itsummeduptheadvantagesofXMLcomparedwiththeHTML,andanalyzedofthedifferencesbetweenthetwolanguages.
Keywords:
XML,Webpage,ASP
第一节现实意义
(1)
第二节现实需求
(1)
第二章网页技术概述
(2)
第一节HTML的网页设计
(2)
第二节XML的网页设计(3)
第三节动态网页(12)
第三章XML网页设计的实现(16)
第一节网站前台展示(16)
第二节网站后台页面(17)
第三节数据库的设计(18)
第四节子功能模块处理(19)
第五节网页中的XML应用(24)
第四章体会与心得(30)
第一章绪论
第一节现实意义
随着计算机技术的日益发展,现代社会已经到了真正的信息时代。
在Internet飞速发展的今天,互联网成为人们快速获取、发布和传递信息的重要渠道,它在人们政治、经济、生活等各个方面发挥着重要的作用。
在政治方面,它会提高政府的工作效率,推动民主化进程;在文化生活方面,网络媒体拓宽了信息渠道,使思想文化更加多元化;在工作方式上,出现了按个人方便的时间上下班制或在家工作制。
特别是在经济生活方面,它正加速全球经济一体化进程,快速的信息交换模糊了地域界限的商务活动,使传统商业模式发生了深刻的革命,这场革命正影响着金融业、商业、制造业等一系列相关行业。
与传统媒体相比,互联网具有传播范围广、保留时间长、交互性强、成本低等优势,而这些优势注定了它将成为21世纪传媒界的先锋。
第二节现实需求
上世纪末期,中国互联网掀起建站高潮。
据CNNIC最新统计报告截止到2006年6月30日,我国网民人数达到了1.23亿人,与2005年同期相比增长了19.4%,国内外大批企业已经于互联网上排兵布阵,谁更好的抢占了网上的市场,谁就赢得了下一个阶段的主动。
Internet上发布信息主要是通过网站来实现的,获取信息也是要在Internet“海洋”中按照一定的检索方式将所需要的信息从网站上下载下来。
因此网页作为信息传递的载体,在Internet上的地位显而易见,它已成为政府、企事业单位信息化建设中的重要组成部分,从而倍受人们的重视。
由于互联网这种新媒体在通讯界的地位与日俱增,因此网页的开发制作有着巨大的现实需求。
第二章网页技术概述
第一节HTML的网页设计
一、HTML的定义
HTML(HyperTextMark-upLanguage)即超文本标记语言,是WWW的描述语言。
用于控制Web浏览器(如MicrosoftInternetExplorer等)显示文档的方式。
用HTML标记进行格式编排的文档称为HTML文档。
HTML文档必须具有正确的格式才能被浏览器软件正确识别和解释。
这类网页开发基础是HTML+script(超文本+脚本语言)。
由于HTML是在文本文件中通过标记来控制界面元素的显示,因此具有良好的可移植性。
通过脚本语言,可提供灵活控制的手段。
在WEB服务器端还可以通过CGI程序或ASP脚本语言,构造三层网络应用程序,进一步增加网页的交互性。
二、HTML网页的缺陷
在HTML文件中有许多不同的标记,这些标记都有它特定的位置与目的,如标记定义了文字的字形与字号,标记则将文字的格式定义为粗体字。
但是HTML并不完美,它只是一种表达的技术,基于HTML的网页仍然存在一些问题:
1.功能有限。
HTML语言是一种标记语言,其中的众多标记仅是一种显示标记,而不是内容标记。
标记本身不能揭示所包含内容的含义,计算机只能根据文档中各种标记在网络浏览器上产生特定的显示,却不能提取出文档所包含的内容信息。
这一缺陷限制了网上的信息搜索向着更精确和更有意义的方向发展。
2.可扩展性差。
标准的HTML规定了固定的标记集合,普通用户不能定义自己的标记。
这使得HTML语言很难扩展。
这严重地限制了HTML语言的处理能力,许多比较特殊和具有专门格式的信息,例如化学方程式、数学公式采用HTML语言都是无法表达的。
3.标准性差。
各个浏览器厂商为增强自己浏览器的功能和方便用户的使用,一再地在自己的浏览器产品上增加新的功能,使自己的浏览器产品具有更强大的处理能力,甚至允许当用户使用不完全标准的HTML标记时浏览器不会发生错误。
浏览器厂商对功能的扩展使得文档的兼容性下降,在一种浏览器上能够正常显示的HTML文件不一定能在另一种浏览器上正常显示,这种状况使得信息的传播和共享受到了极大的限制。
网页的编辑人员必须使用MicrosoftInternetExplorer和NetscapeNavigator都支持的标记,否则同一个HTML文件在这两种主流浏览器上就会得到不同的页面效果,甚至会发生错误。
网络浏览器这种非标准的发展趋势,给HTML文件的编辑者和使用者带来越来越多的问题。
第二节XML的网页设计
XML以其良好的语义及清晰的结构受到人们的推崇,是网络间进行数据交换的理想格式。
目前,世界上有很多标准化组织都在致力于基于网络资源标准化的研究,并制定了一些相应规范。
下图为标记语言的家族:
图2-1标记语言家族
一、XML的定义
XML是一种扩展标记语言,它使用有意义的标记、具有严格的语法控制、将网页的数据和显示分开来。
这些特性使开发者可以建立自己的有意义的标记,来描述网络信息,实现网络信息的标准化。
利用网页的数据和显示分开来的特性,可以把用XML描述的内容用各种不同的风格来显示,实现网页的个性化。
二、XML的特点
可扩展标记语言XML(eXtensibleMarkupLanguage)是一种源置标语言,它正像HTML一样同样依赖于描述一定规则的标签和能够读懂这些标签的应用处理工具来发挥它的强大功能[1]。
现在,它正影响着网络软件的设计,并为WorldWideWet上交换信息和构建通信基础结构提供了新的可能性。
XML既是标记语言,又是可扩展的(extensible)标记语言。
相对于HTML的优点是它将用户界面与结构化数据分隔开来。
这种数据与显示的分离使得集成不同来源的数据成为可能。
XML并非像HTML那样,提供了一组事先己经定义好了的标签,而是提供了一个标准,利用这个标准,XML允许用户创建自己的标签来标识任意内容文档的任意结构,并允许我们根据它所提供的规则,制定各种各样的标记语言。
1、扩展性
HTML标记只能用来指定文字的粗体或斜体的显示,XML却能够提供一个标示结构化数据的结构,声明与其相关的数据为如书名、售价、经销商、数量或其他任何数据元素。
随着互联网上许多机构已逐渐采用XML标记后,用户便可以借此搜索并操作任何应用程序中的数据,一旦找到所需的数据,便可借助任何方式通过网络传递,并在浏览器和其他应用程序中做进一步的处理和检查,只要接收数据的应用程序可以解读XML中的数据即可,至于数据来自何处,如何写入XML文件中,便无关紧要了。
2、数据的呈现与现实是分离的
XML最主要的功能是保持使用者界面与结构化数据的独立,在HTML中会使用标记来告诉浏览器将数据显示为斜体或粗体,在XML中,可以使样式表(XSL和CSS)定义数据的内容。
XML将数据的呈现及处理分开,让数据的交换就像用HTML显示数据一样简单,用XML编写的数据,可以借助网络传递到任何地方,也不需重组数据库或文件中的信息,只需要套用不同的样式表和应用程序,就可以按照希望的方式显示并处理数据了。
3、自定义XML的数据
DTD会附加在XML文件中,定义元素及元素之间的结构关系及文件规则,接受XML文件的应用程序没有所输入数据的说明时,DTD就可以协助识别数据。
一个XML处理程序可以核对输入的数据与DTD所定义的规则,以确认数据结构是否正确,由XML编写的数据均可自定义,因为描述所需的标注,已经包含在数据中了,XML是开放和具有弹性的格式,让信息的交换与转换更加容易。
例如,XML可以用来描述HTML页面,或用来描述包含在商业规则或电子商务交易中的对象数据,因为XML有别于HTML,所以XML可以包含在HTML文件中,借助在HTML页面内嵌XML数据,可以对传递来的数据采取不同的显示方式。
4、XMLSchema
Schema是XML文件规则的正式陈述,也就是XML的元素名称,它指定XML文件中所允许的元素及其可能的组合,提供和DTD相同的功能,不过,因为Schema语言的可扩展性,开发人员可以使用数据类型、继承性以及呈现规则来加强Schema,使Schema语言的功能远比DTD更为强大。
利用XMLSchema,让XML的数据可以描述本身的结构,因此,软件无需内建任何数据结构的陈述,就可以借助解读某些数据来了解其结构。
三、XML技术详述
(一)XML文件的组成
1、XML文件的基本组成
XML主要的目标之一就是提供文件数据内容的结构化,每一个XML文件都包含了逻辑结构与实体结构两部分,在逻辑结构中包含了文件中的元素与其结构的层次与顺序,而实体结构则包含了文件的数据内容,也就是通常看到的文件格式。
2、XML文件的逻辑结构
逻辑结构是指文件中各个不同元素的组织结构,逻辑结构代表文件构建的原则,一份完整的XML由声明、元素、处理指令与注释组成,其中有一些是可选择的对象,有一些是必要的对象,但通常可以将XML文件分成文件头与文件主体两部分。
(1)文件头
XML文件头是由两个基本组件所组成:
XML声明与DTD文件类型声明
a、XML声明
下面是一段XML声明,XML声明定义了文件所遵守XML规格的版本。
xmlversion="1.0"encoding="GB2312"standalone="yes"?
>
在这一行XML声明的程序代码中,
version="1.0"表示该文件遵守XML1.0的规范。
encoding="GB2312"表示如果在该文件中用到中文内容,就必须加上中文编码。
standalone="yes"表示该文件不会引用其他文件。
b、DTD声明
DTD声明必须编写在XML声明与文件主体之间,用于定义该文件中数据结构的规则。
若DTD文件类型定义是直接编写在XML文件头去中,使用内部DTD声明的方式来声明这些定义,不会引用到其他的文件,所以在XML声明中可以加上standalone="yes"。
DTD文件类型声明也可以指向一个包含所有或部分DTD文件类型声明的外部文件,这样的方式能够简化XML文件的复杂程度,当文件类型变更时只需要修改这个外部文件即可,不必去修改所有XML文件中的DTD声明,以达到快速开发与方便维护的目的。
(2)文件主体
文件主体是用来存放数据内容的区域。
XML文件中可以被应用程序运用的数据都在文件主体中。
所谓元素,也就是标记的名称,如
3、XML文件的实体结构
XML文件的实体结构是由文件中的内容所组成的,每个实体都有其名称与内容,实体可能只是文件中的一个代表字符,也可能是一个外部的文件,从逻辑结构来看,实体是先在文件头中被声明,然后在元素中被参照,只要是在DTD声明过,实体就可以在文件中被使用,而实体的参照会告诉处理器去取得实体的内容,并在文件中使用。
(二)XML文档的类型
基本上有两类相关的XML文档:
构造良好的(well-formed)XML文档和有效的(valid)XML文档。
本节主要介绍构造良好的XML文档应该满足的标准,简单地介绍了什么是有效的XML文档,以及用什么方式判断一个XML文档是一个有效的XML文档。
1、构造良好的XML文挡
构造良好的XML文档遵守XML语法的一般规则,这些规则比HTML和SGML的更为严格。
XML文件所有的标记都必须有结束标记,如
XML标识总是以左尖括弧或&开始,元素类型和属性名称是大小写区分的,属性需要引号等等。
下面将通过简单的实例阐述构造良好的XML文档有哪几个方面的要求。
(1)文件必须以XML声明开始
(2)含有数据的元素必须有开始和结束标记
(3)空标记的元素必须以/>作结束
(4)文件必须有一个根元素
(5)属性值必须使用引号
(6)<字符只能用在标记中,而&字符只能用在尸体参照中
2、构造有效的XML文档
一个有效的XML文件必须严格遵守XML所有的规范,也必须遵守XML规格书中对有效文件所规定的所有限制,所以XML处理器必须了解XML规格书中的有效性限制,并检查文件中任何可能违反限制的情况,若是发现错误,必须将错误信息传送给前端的应用程序。
除此之外,XML处理器必须依据DTD中所制定的规则检查XML文件的有效性,这样的检查与处理须花上许多时间,而且也不一定是必要的,所以XML只会支持符和规格文件的概念。
3、使现存HTML网页符合XML标准规格
目前互联网上许多网页的设计都十分粗糙,是因为没有采用XML,若按如下方式修正了错误,就会让网页变得整齐、显示速度更快而且更容易维护:
(1)结束所有的开始标记
(2)删除单独的标记,而且不要让元素交错重叠
(3)为属性加上引号
(4)使用根元素
(5)所有的标记都使用同样的大小写格式
(6)关闭空标记
(7)加上XML声明
(三)DTD文件类型定义
DTD(文件类型定义)提供了所有元素、属性与实体间的相互关系,DTD能够详细的描述文件的结构规则。
例如,DTD可以指定一个BOOK元素中只能有一个NAME子元素和PRICE子元素,但是可以有一个或一个以上的WRITER子元素,而INTRODUCTION子元素则是可有可无的。
DTD是以一连串的标记的定义来完成这些元素、实体或属性的显示。
1、为什么使用DTD
DTD可以被直接嵌入到所描述的文件中,也可以利用外部链接来使用,其中使用外部链接的DTD可以让网站上的XML文件共用同一个DTD规则,这样的文件类型已得到网上许多组织团体的认同[2],因此使DTD逐渐成为网络文件类型定义的新标准。
DTD使编写的程序能够识别从其他的地方传来的文件。
例如,如果医疗单位规定通用一种符合DTD的病历表示法,那么所有的医疗机构就能看得懂其他以医疗单位所制作的病历,当病人在外地或其他医疗机构求诊时,医师们就能够通过网络马上取得患者过去的病历数据,做更有效的诊断与处理。
DTD定义出了什么应该、什么不应该出现在文件之中,同时也建立出编辑器必须支持浏览或编辑元素所需要的标准,更重要的是它还建立出延伸的部分与被DTD判为无效的部分,这样就能避免软件供应商把持这些原本应该要开放的协定而垄断市场。
2、DTD的优点
使用DTD文件类型可以达到文件数据结构与格式的统一,这在许多应用上是相当重要的,因为除了能够确保文件结构与格式正确外,它还可以避免数据的遗漏。
(1)可重复使用
当文件类型定义好之后,就像一张蓝图,可以被重复使用,建立相同类型的文件,降低XML文件的创建成本。
不过,想要定义一份完整性高、适用性广的文件类型,并不是一件轻松的工作,往往需要很高的代价与很多的时间做统一与整合的工作,所以通常都是以特定的应用领域为定义范围。
(2)继承关系
称父对象为基础类别,以此基础类别作为建立其他对象的基础,用这种方式延伸出来的对象称为子类别,可以建立无数的子类别,也可以建立子类别别的子类别,这样,便可以重复使用已经存在的功能与特性,也可以修改以符合特殊需要,节省了许多编写与测试的时间。
(四)XSL文件的描述
扩展样式语言(eXtensibleStylesheetLanguage)简称XSL,是针对XML文件所建立的格式化语言,也可以说是XML的一种延伸应用,所以XSL在结构和语法上都与XML十分相似,用来定义XML文件之间如何转换的规则。
变形之后的XML文件可以使用原始文件中的markup和文件类型定义,也可以使用一组完全一致的标记。
1、为什么要使用XSL
XSL是为XML文件定义的一种标记语言,它将提供远远超过CSS的强大功能,如将元素再排序等。
实际上,简单的XML已可用CSS来解释,然而复杂度较高的结构化XML数据或XML文件只能依赖于XSL的极强的格式化能力展现给用户。
XSL样式表集合了一系列设计规则,以用于从XML文件中提取出信息,并将其转换成HTML等其他格式。
这种转换将采用一种公开的方式,使其更加容易方便地被程序员描述。
而且,XSL还将提供多种脚本语言的通道以满足更为复杂的应用需求。
尽管XSL是一项新的标记语言,但程序员完全可以继续充分发挥其所熟悉的HTML或脚本语言的优势。
XSL凭借其可扩展性能够控制无穷无尽的标签,而控制每个标签的方式也是不受限制的,这就给Web提供了高级的格式特性,例如旋转的文本、多列和独立区域。
它支持国际书写格式,可以在一页上混合使用从左至右、从右至左和从上至下的书写格式[3]。
2、XSL转换对XML提出的要求:
第一,允许显示XSL转换语言。
允许通过将XML转换为符合显示要求的语法和结构,或者转换成HTML以及XSL格式化对象语言来使XML数据的显示成为可能。
第二,直接浏览XML文档。
IE5能应用XSL形式来产生HTML文档,允许直接浏览XML文件。
第三,内容递送给下级浏览者。
XSL转换语言能在服务器上执行,以向客户级浏览者提供XML文档。
第四,通过查询、排序、过滤转换XML文档。
转换语言能被用在一个单一的语法中实现包括过滤、排序、汇总数据等多用途的转换。
3、XSL处理器转换示意图
图2-2XSL处理器转换示意图
4、XSL的作用
图2-3XSL的作用
(五)XML链接技术
Web迅速发展和普及的一个重要因素是HTML的应用。
而HTML真正强劲的地方在于它在文档中可嵌入超文本链接。
这些可以嵌入影像或让用户从一个HTML页面到另一个页面的链接,这种链接定义两个文档之间的关系。
这给用户提供了一种从当前页面中获得更多相关数据的途径。
同时,这也是用户在查询数据中所使用的典型方法。
为了查找数据,用户浏览某页面,同时在该页面中可能会发现更符合其要求的内容,而这些内容通过一个链接存放在不同的页面上。
而XML提供了超越HTML语言的强大的文档链接能力,使人们可以创建资源多相和复杂的链接,并可以轻松的定位文档的片断。
XML的链接技术分为两部分:
XLink和XPointer,XLink(XMLLinkingLanguage,XML链接语言)定义一文档如何与另一文档的链接,而XPointer(即XMLPointerLanguage,XML指针语言)定义文档的各部分如何寻址。
XLink中定义了两种链接,既简单链接和扩展链接,简单链接类似于HTML中的超链接,而扩展链接功能十分强大。
扩展链接可以提供多个链接目标,通过在扩展链接元素中插入locator子元素实现。
每个locator元素都指定一个超链接资源。
通过样式表,可以制作出友好的多超链接界面,如:
单击某段文本,就弹出一个下拉菜单,列出所有的相关链接,供读者读取。
(六)XML文件对象模型DOM
1、什么是DOM
DOM(DocumentObjectModel)是书写XML分析器的接口标准。
它可以使用不同的对象来代替XML文档的不同组成部分,利用这些对象的方法和属性来创建访问链接到Web网页中的XML文档。
该对象库还可以让用户构建XML语法树,并提供了更有效的方法来创建XML文档。
例如,用户可以用DOM搜集来自不同位置的数据,或者根据不同种类的数据源来自动创建XML文档。
下图为DOM在应用程序开发过程中所处地位的示意图:
图2-4DOM在应用程序开发过程中所处地位
从图中可以看出,应用程序并不是直接对XML文档进行操作的,而是首先由XML分析器对XML文档进行分析,然后,应用程序通过XML分析器所提供的DOM接口对分析结果进行操作,从而间接地实现了对XML文档的访问。
由于W3C把DOM定义为一套抽象的类而非正式实现DOM,因此,由独立的开发商来提供在具体平台和开发语言下标准接口的实现,所以,其具体实现在不同的平台或语言处理系统中是不同的。
2、DOM的使用
对于一个格式规范的XML文档,DOM是一个应用程序接口,它定义了文档的逻辑结构以及访问和操作该文档的方式。
使用DOM,应用程序开发人员可以创建文档,遍历文档的结构,增加、修改或者删除元素及其内容[4]。
DOM是一个文档对象模型,DOM中的对象特征允许应用程序和脚本动态地访问并更新文档的内容、结构与样式。
通过DOM节点对象树来访问树中的任何一个节点,就是通过DOM树对XML文档的遍历。
3、SAX接口与DOM接口比较
SAX(XML简单应用编程接口)利用基于事件的方式来处理XML文档。
基于事件是指SAX为开发者提供处理特定元素的方法,而不必要求在应用层次中处理之前预建的元素。
这带来的好处是没有必要的结构将不被创建;作为代替,将在任何感兴趣的事件发生时,调用应用程序源代码。
SAX不仅在处理元素子集时特别有效,而且是处理大规模XML文档的有用工具。
如果需要处理所有的元素,会碰到内存问题,因为建立众多对象十分耗费内存。
而SAX不必建立所有的元素,处理过程将实时进行,这与大量的传递调用正好相反。
SAX被提出的原因是解决一些不使用的DOM接口,它们的实现过于庞大且比较慢。
DOM是基于树型结构的,得到W3C推荐并符合API标准的接口规范。
而SAX是由事件驱动,并有广泛支持API标准的接口规范。
DOM适合于结构化编辑XML文档,如排序、记录移动和其它应用程序共享XML文档操作。
而SAX效率高(不创建显示数据
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 XML 网页 设计