Xml+Xsl:内容与形式的完美分离

在制作网页的时候,我们希望它能够交互性好、快速响应和易于维护。Xml+Xsl可以更好的解决这个问题。
Xml是内容,负责内容的生成:从后台数据库读取数据生成xml文件保存到服务器相应目录,或者在用户浏览时动态读取数据,生成xml格式的字符串。Xsl是形式,负责内容的展示,由技术人员定义模板的数据,由美术人员来设计界面形式,最终创建程xsl文件。

现在,我们从web技术的发展,来看看我们经历的过程。最初的Html格式是静态的,交互性比较差。交互性是指与客户端的充分沟通,后来我们通过使用脚本语言(cgi、asp、php、asp.net、 jsp)实现交互。但是缺点就是速度问题,因为脚本是在服务端执行的。

我们曾经为解决这个问题,使用了动转静技术:通过在后台预先读取数据,结合模版,生成静态页面,供客户端访问。这种技术解决了速度问题,但是缺点也是明显的:
一、要求服务器要足够的空间来放置大量的生成的静态网页;
二、当模版修改或者数据改动的时候,需要重新生成所有的静态文件。
三、限制了编程的灵活性,很多需要动态交互的功能无法实现;
四、编程者维护困难,修改起来比较麻烦。

xml和xsl的出现,可以解决形式与内容的完全分离。具体做法是:
一、xml是内容。我们可以在后台从数据库读取数据,生成静态的xml文件;
二、xsl是形式。有模版专家定义形式;
三、仅需要做一个Xml与Xsl融合程序,把客户请求的数据和形式结合起来,展示给客户就可以了。(当然,这是考虑到浏览器的原因。因为IE5之前的版本是不支持Xsl的,所以我们要做后台执行转换操作)

这种方法的优点:
一、当用户换模版的时候,不需要重新生成静态网页,只是改变xsl文件即可;
二、当数据发生变化时,只需要重新生成xml数据,不需要修改整个静态页面,节省大量的代码;
三、对于技术人员,只需要考虑xml数据的编程问题,维护起来非常方便;
四、对于美工,只需要考虑xsl形式的编辑工作,维护起来非常方便。

posted @ 2005-07-14 16:21  hardyfan  阅读(322)  评论(0编辑  收藏  举报