一、XML
XML(eXtensible Markup Language??可扩展标记语言)是一种 扩展的源标记语言,是可以定义其他语言的语言。
XML与HTML对比:
HTML语法容错性大,数据和显示都在一起,检索数据困难较大。
HTML没有这种明确的对象来完成该操作。
XML克服了HTML的种种不足,将网络上传输的文档规范化,并赋予标签一定的含义。
XML作为一种网络系统中通用的数据交换格式迅速得到了支持,使用XML的实际好处有:
结构化??建立有任何复杂层次的数扭模型。
可扩展性??根椐需要定义新的标识。
验证??检查数据在结构上的正确性。
独立与媒介??以多种方式发布内容。 5Hp站长资讯
5Hp站长资讯
独立于供应商和平台??使用标准的商业软件甚至文本工具处理任何符合(XML标准)的文档。
XML文档可以通过可扩展样式语言XSL(Extensible Style Language XSL)转换和格式化XML文档。从而实现数据和页面样式的分离。
二、用JSP技术实现XML
三、开发环境
1、编辑工具
现在,开发XML文档的工具越来越来多,从链接大型公司数据库
UltraEdit 由IDM Computer Solution 公司开发,可到http://www.ibmcomp.com或http://www.ultraedit.com免费下载有限期使用版。它是界面类似于Windows
XML Writer 这个软件是由Wattle Software-Chris Howard 开发的,可从http://XMLwriter.net下载(试用)。在Window 95/98/2000 and Windows NT4下使用,也有着大家熟悉的Windows界面,提供了工程管理环境,可能刨建、查看工程,工程下包含文件,用户可自定义工具条、快捷键,并且可为命令选择显示图标。可用XSL样式表转换XML文件为HTML文件,不仅可使用XSL,而且可以使用XQL,用DTD或XML Schema 对XML进行检验,用XML格式直接的将CSS结合到XML,提供在线帮助功能,并且它对中文的支持较好。
2、XML服务器
由于XML技术有很大的发展潜力,众多厂商提供了自己的XML服务器,其中有Apache、Microsoft、Sun等。
3、浏览XML的工具
现在,大多数方案是将XML存储在数据库中,当需要时取出代码,将其与数据结合起来,使用XSL将其转换为HTML,然后发送到浏览器。所以浏览XML一般选用IE可Netscape, 而且版本越新对XML文档支持越好。
四、具体实现
1、 规范定义XML文档中元素名称
首先定义XML文档头部,包括XML遵循的规范、编码方式、注释等。例如:
< ?xml version=”1.0” encoding=”gb2312” standalone=”yes”?>
“encoding=”gb2312” ”,如果没有这个声明,必须使用Unicode,以UTF-8或UTF-16作为编号方式。如果文件中使用了中文,就必须进行编码声明。
然后,根据业务的需要规范定义页面上要显示的元素,以及定义它们的元素名称,元素名称可以是中文的,这样对数据描述更加简单明了,这是HTML无法实现的。元素是文档的主要逻辑部件,由开始和结束标记界定,格式为:
< 元素名称 属性名1=“属性值1” 属性名2=“属性值2”>
元素的内容
< /元素名称>
元素的内容,可以直接写在页面上,也可以从数据库中取得。
文档中还可以包括实体声明和实体引用。简单地说,实体分为一般实体和参数实体。参数实体只能出现在DTD中,一般实体出现在一根元素开始的主XML文档中。实体声明格式为:。一般实体的引用很简单:“&实体名称;”,参数实体的引用与一般实体的引用类似:“%实体名称;”。实体是功能强大的工具,提供了管理大量内容的便捷机制。 #p#分页标题#e#
写好后检查XML文档,确保文档的格式正确和有效。一个格式正确的XML文档满足:
每一元素必须有起始和结束标注;
必须有一个,而且只有一个称为根元素或文件元素的元素,并且它不出现在其他任何元素的内容中;
它包含一个或多个元素
正确的定义和表示空元素;
和结束标记可以使用大写或小写,但它们必须匹配;
以起始标签和结束标签为界的各个元素必须正确地嵌套,不允许出现交叉;
属性值必须使用引号括起来;
此文件中直接或间接引用的每一个己析实休都是格式正确的;
它满足XML规范中定义的所有其他的格式正确性约束。
2、 使用XSL显示XML文档
XSL(eXtensible stylesheet language)是描述XML文档样式的一种语言,是由W3C制定的。XSL处理程序读取XML文档和XSL样式单,基于处理程序在XSL样式单中找到的指令,输出新的XML文档。XSL样式表就是对XML文档中类的描述文件,描述文件说明的是如何使用格式化词汇将类实例转换为一个XML文档。同时,XSL样式表也必须是组织良好的XML。
XSL转换语言通过将XML树形结构变换成另一个XML树形结构来操作。这种语言含有操作符,此操作符用来从树形结构中选择特定节点、对节点重新排序以及输出节点。在XML文档中引用XSL的说明如下:
< ?xsl-stylesheet type=”text/xsl” href=”mystyle.xsl”?>
表明该XML文档引用的XSL样式单为mystyle.xsl。内容与形式分离使XML文档更偏重于数据本身,而不受显示方式的细枝末节的影响。而且可以通过定义不同的样式单可以使用相同的数据呈现出不同的显示外观,实现XML数据的可重用性。
首先定义构造部分输出的模块,或对来自XML源文件中的数据应用模板。转换模板包含在元素xsl:template中,模板可定义一组将源文档转换为结果树的规则,确定要处理的节点。然后匹配模式,一个模式是一个字符串,它用于匹配XML源文件中的一个元素。用@匹配属性节点。再用XSL中的元素转换XML文档中的元素。用XSL可以非常方便地实现同HTML中同样的表单定义。只要将要在表单中的元素放入定义好的XSL模板中即可,表单的名称、提义方式等属性与HTML中的定义相同。同样的表格的范围、样式,页面的显示风格、脚本等的定义也都与HTML相似。
经过XSL转换后XML文档表单提交到JSP页面或Servlet进行处理。这部分可以完全和页面处理分开,可以实现控制逻辑的完全独立。
3、 XML文档数据的输出
XML的主要应用包括交换信息、定义文档类型、说明信息,信息以一种结构化的基于文本格式的方式表达,可以很容易地进行传输、转换和阐释。对数据的处理可以全部放在javabean或servlet中进行,与页面的显示完全分开。
在JSP中生成XML文档很简单,仍然可使用CSS或XSL来转换和显示XML。一个具有XML模板的JSP页面,其实质就是在XML文档模板中,在适当的地方加入JAVA代码和JSP标记。在页面中加入< %@page contentType=”text/xml”% >即可以将JSP页,以XML文档形式显式出来,同时把动态数据放入< % % >标记内。对生成的XML同样可以用XSL样式单进行格式转换和样式定义等。
4、 XML与JAVA结合
许多网络开发者得出结论:XML和JAVA是完美的一对,因为彼此十分相辅相成,XML有助于独立平台、易提取信息的文档和数据。JAVA有助于独立平台,易于处理的面向对象的应用软件解决方案,能驱动XML广泛接受的应用是在HTML的限制下难以实现的那些应用,可分为下列四类:
需要网络客户端协调各种不同类型数据库的应用。
力图将比例可观的处理工作从服务器端分布于客户端的应用。
要求客户端将同一数据以不同的形式展现给不同的使用者的应用。
智能网络代理应个别用户的要求搜索定制信息的应用。
JAVA平台提供了在网络上安全而方便地传播代码的基础,XML技术则为数据提供了同样的能力,这是一种清晰地、平台独立地表示内容的方法。在众多编程语言中,JAVA是使用XML的优秀平台,XML又是JAVA应用的优秀数据表示方法。XML和JAVA都与Internet关系密切,XML被设计成为一个优化的,灵活的可读格式,可直接用于Internet;而JAVA从一开始就支持Socket,HTTP,HTML和服务器。它们都支持Unicode。因而很容易实现本地化应用,正如JAVA向程序员提供了表达复杂数据结构和面向对象模型的能力一样,用XML表达复杂的层次化数据模型是很理想的。
XML结合JSP技术结构明确、条理清析、简单易懂,是开发动态网站的一条快速而便捷的开发途径。
评论 {{userinfo.comments}}
{{child.content}}
{{question.question}}
提交