电脑技术学习

JSP+XML实现网页内容动态显示的方案

dn001

“standalone=yes ,XML声明还可以有standalone特性,它说明,文档是否在这一个文件里需要从处部导入文件。如果XML文档在一个文件里完成,那么standalone特性的值就设置为“yes。

然后,根据业务的需要规范定义页面上要显示的元素,以及定义它们的元素名称,元素名称可以是中文的,这样对数据描述更加简单明了,这是HTML无法实现的。元素是文档的主要逻辑部件,由开始和结束标记界定,格式为:

< 元素名称 属性名1=“属性值1 属性名2=“属性值2>

元素的内容

< /元素名称>

元素的内容,可以直接写在页面上,也可以从数据库中取得。

文档中还可以包括实体声明和实体引用。简单地说,实体分为一般实体和参数实体。参数实体只能出现在DTD中,一般实体出现在一根元素开始的主XML文档中。实体声明格式为:。一般实体的引用很简单:“&实体名称;,参数实体的引用与一般实体的引用类似:“%实体名称;。实体是功能强大的工具,提供了管理大量内容的便捷机制。

写好后检查XML文档,确保文档的格式正确和有效。一个格式正确的XML文档满足:

每一元素必须有起始和结束标注;

必须有一个,而且只有一个称为根元素或文件元素的元素,并且它不出现在其他任何元素的内容中;

它包含一个或多个元素

正确的定义和表示空元素;

和结束标记可以使用大写或小写,但它们必须匹配;

以起始标签和结束标签为界的各个元素必须正确地嵌套,不允许出现交叉;

属性值必须使用引号括起来;

此文件中直接或间接引用的每一个己析实休都是格式正确的;

它满足XML规范中定义的所有其他的格式正确性约束。

2、 使用XSL显示XML文档

XSL(eXtensible stylesheet language)是描述XML文档样式的一种语言,是由W3C制定的。XSL处理程序读取XML文档和XSL样式单,基于处理程序在XSL样式单中找到的指令,输出新的XML文档。XSL样式表就是对XML文档中类的描述文件,描述文件说明的是如何使用格式化词汇将类实例转换为一个XML文档。同时,XSL样式表也必须是组织良好的XML。

XSL有三个组成的模块:XSL模式(XSL Patern)、XSL名域(XSL Namespace)、fo名域(fo Namespace)。使用XSL样式单可有三种主要方式将XML文档转换成其他格式:XML文档和相关的样式单都是用于客户端(Web浏览器)的,然后客户端程序按照样式单中指定格式转换文档,并将它呈现给用户;服务器将XSL样式单应用于XML文档,以便此文档能够转换成其他某种格式(通常为HTML),并把转换后的文档发送到客户端程序(Web浏览器);使用第三方程序将源XML文档转换成其他某种格式(通常为HTML),才把此文档放置在服务器上,服务器和客户程序只处理转换后的文档。由于,大多数浏览器是IE,而且IE对XSL的支持又好,第一种方法常被采用。

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相似。

另外,CSS也可以应用到XML文档,但CSS决定了页面的视觉外观,不会改变源文档的结构。CSS和XSL是互相补充,各有特色的。

标签: