XML+XSL 与 HTML 两种方案的结合


Posted in Javascript onApril 22, 2007

 目前内容管理系统,展现给客户端具体数据的方式主要是:XML+XSL  或者 Html 两种方式。以CSDN为例,目前这两种方式都存在。比如:论坛,我们用的是XML+XSL 方式,文档中心我们用的是SHTML 方式。

        根据我的使用心得。XML+XSL 的方式,优点在于:数据层跟展现分开了。XML定义数据,XSL定义显示。比较明显的缺点就是 1、有些用户在装了某些XML编辑器后,客户端解析XML+XSL就会出问题,用户直接看到的就是XML代码,不时总有人抱怨自己没法看CSDN的论坛了。原因基本上都是这些。(这个问题难以克服)2、进行复杂逻辑运算XML+XSL 比较差,一些复杂的逻辑运算会占用客户端很大的资源。比如在目前CSDN 论坛基础上实现支持UBB的功能。就很复杂。如果这个UBB的展现运算是客户端进行的,是任何人都无法忍受的。3、Google 不支持对XML 文件的检索。

        使用Html的方式,优点很简单,给的用户就是需要展现的东西。缺点就是提取有效数据比较复杂。

        今天在跟 “风之子” 交流内容、新闻系统如何展现的时候,我突然想起,我们可以同时利用XML+XSL和HTML的优点来做。具体做法就是把一些复杂的逻辑运算进行服务器段转换,把这些转换为HTML代码,然后把这些转换后的内容保存到XML数据的  <![CDATA[   ]]>      节。而展现给用户的是XML+XSL方式,但是这种方式客户端没有复杂的逻辑运算。用户端解析的压力不是很大,一些复杂的功能这样就可以实现,比如在CSDN论坛上支持UBB等复杂功能。

       以前我一直反对在CSDN论坛支持UBB,一个重要原因就是会给客户段增加压力。现在可以通过上面提到的整合进HTML的XML+XSL 方案应对这个问题。下一代的CSDN 论坛就可以这么做了。不过另外一个原因是,技术交流的BBS,有必要做那么花哨么??尤其是很多人在自己的签名中,增加很大的字体,很特殊的图片,会不会带来跟多的问题??

      HTML中整合进XML的方式,就是数据岛的方式,这个的应用范例可以看大富翁论坛。那就是一个很有代表性的应用数据岛的方式。打开某个CSDN 论坛,左边的树会自动同步功能,也是用的数据岛记录需要同步到那个节点的数据。

另:Shtml 的方式,其实就是支持Include 的Html。  你可以在Shtml中使用Include 包含一些htm文件。   

百度可以找到CSDN论坛的XML帖子:
http://www.baidu.com/baidu?lm=0&si=&rn=10&ie=gb2312&ct=0&word=site%3Aexpert%2Ecsdn%2Enet+%BD%AF%EA%C9&cl=2

Javascript 相关文章推荐
JavaScript 学习点滴记录
Apr 24 Javascript
document.createElement()用法及注意事项(ff下不兼容)
Mar 13 Javascript
用Js实现的动态增加表格示例自己写的
Oct 21 Javascript
javascript禁用Tab键脚本实例
Nov 22 Javascript
用Javascript获取页面元素的具体位置
Dec 09 Javascript
js设置document.domain实现跨域的注意点分析
May 21 Javascript
jQuery学习笔记之回调函数
Aug 15 Javascript
Android中Okhttp3实现上传多张图片同时传递参数
Feb 18 Javascript
详解使用Typescript开发node.js项目(简单的环境配置)
Oct 09 Javascript
基于vue中对鼠标划过事件的处理方式详解
Aug 22 Javascript
JS实现水平移动与垂直移动动画
Dec 19 Javascript
Echarts.js无法引入问题解决方案
Oct 30 Javascript
用javascript实现的图片马赛克后显示并切换加文字功能
Apr 21 #Javascript
JS Timing
Apr 21 #Javascript
运用Windows XP附带的Msicuu.exe、Msizap.exe来彻底卸载顽固程序
Apr 21 #Javascript
JS 建立对象的方法
Apr 21 #Javascript
如何做到打开一个页面,过几分钟自动转到另一页面
Apr 20 #Javascript
用javascript将数据库中的TEXT类型数据动态赋值到TEXTAREA中
Apr 20 #Javascript
在textarea中显示html页面的javascript代码
Apr 20 #Javascript
You might like
针对thinkPHP5框架存储过程bug重写的存储过程扩展类完整实例
2018/06/16 PHP
ThinkPHP5.0多个文件上传后找不到临时文件的修改方法
2018/07/30 PHP
php解压缩zip和rar压缩包文件的方法
2019/07/10 PHP
jQuery Ajax 仿AjaxPro.Utility.RegisterTypeForAjax辅助方法
2011/09/27 Javascript
Prototype源码浅析 String部分(四)之补充
2012/01/16 Javascript
JavaScript建立一个语法高亮输入框实现思路
2013/02/26 Javascript
js为鼠标添加右击事件防止默认的右击菜单弹出
2013/07/29 Javascript
JS 按钮点击触发(兼容IE、火狐)
2013/08/07 Javascript
JavaScript中的typeof操作符用法实例
2014/04/05 Javascript
jQuery插件Validate实现自定义表单验证
2016/01/18 Javascript
JS判断字符串字节数并截取长度的方法
2016/03/05 Javascript
原生js实现无缝轮播图效果
2017/01/11 Javascript
Vue列表页渲染优化详解
2017/07/24 Javascript
vue表单自定义校验规则介绍
2018/08/28 Javascript
[42:35]2018DOTA2亚洲邀请赛3月30日 小组赛A组 VG VS OpTic
2018/03/31 DOTA
[01:33:07]VGJ.T vs Newbee Supermajor 败者组 BO3 第一场 6.6
2018/06/07 DOTA
Python实现在Linux系统下更改当前进程运行用户
2015/02/04 Python
详解django自定义中间件处理
2018/11/21 Python
python生成器与迭代器详解
2019/01/01 Python
python3对接mysql数据库实例详解
2019/04/30 Python
pip install 使用国内镜像的方法示例
2020/04/03 Python
Ubuntu 20.04安装Pycharm2020.2及锁定到任务栏的问题(小白级操作)
2020/10/29 Python
HTML5新增元素如何兼容旧浏览器有哪些方法
2014/05/09 HTML / CSS
伦敦所有西区剧院演出官方票务代理:Theatre Tickets Direct
2017/05/26 全球购物
有针对性的求职自荐信
2013/11/14 职场文书
优秀员工自荐书范文
2013/12/08 职场文书
项目计划书范文
2014/01/09 职场文书
基层干部十八大感言
2014/01/19 职场文书
清明节网上祭英烈活动总结
2014/04/30 职场文书
大学新闻系自荐书
2014/05/31 职场文书
班级团队活动方案
2014/08/14 职场文书
公司员工体检通知
2015/04/21 职场文书
导游词之南昌滕王阁
2019/11/29 职场文书
python tkinter实现定时关机
2021/04/21 Python
基于PyTorch实现一个简单的CNN图像分类器
2021/05/29 Python
Pytest中conftest.py的用法
2021/06/27 Python