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 替换Html标签实现代码
Oct 14 Javascript
JQuery Tab选项卡效果代码改进版
Apr 01 Javascript
JavaScript设置IFrame高度自适应(兼容各主流浏览器)
Jun 05 Javascript
IE下双击checkbox反应延迟问题的解决方法
Mar 27 Javascript
jQuery实现dialog设置focus焦点的方法
Jun 10 Javascript
html判断当前页面是否在iframe中的实例
Nov 30 Javascript
纯JS实现弹性导航条效果
Mar 06 Javascript
浅谈angularJS的$watch失效问题的解决方案
Aug 11 Javascript
vue webpack实用技巧总结
Apr 24 Javascript
JavaScript的查询机制LHS和RHS解析
Aug 16 Javascript
JavaScript实现跟随鼠标移动的盒子
Jan 28 Javascript
输入框跟随文字内容适配宽实现示例
Aug 14 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
利用文件属性结合Session实现在线人数统计
2006/10/09 PHP
一个简单的自动发送邮件系统(二)
2006/10/09 PHP
php从给定url获取文件扩展名的方法
2015/03/14 PHP
PHP+redis实现的限制抢购防止商品超发功能详解
2019/09/19 PHP
JavaScript触发器详解
2007/03/10 Javascript
使用Microsoft Ajax Minifier减小JavaScript文件大小的方法
2010/04/01 Javascript
JavaScript 原型链学习总结
2010/10/29 Javascript
js对数字的格式化使用说明
2011/01/12 Javascript
防止xss和sql注入:JS特殊字符过滤正则
2013/04/18 Javascript
Jquery uploadify图片上传插件无法上传的解决方法
2013/12/16 Javascript
js过滤特殊字符输入适合输入、粘贴、拖拽多种情况
2014/03/22 Javascript
JS Array创建及concat()split()slice()的使用方法
2016/06/03 Javascript
Angular ng-class详解及实例代码
2016/09/19 Javascript
使用canvas及js简单生成验证码方法
2017/04/02 Javascript
JavaScript判断输入是否为数字类型的方法总结
2017/09/28 Javascript
node+koa2+mysql+bootstrap搭建一个前端论坛
2018/05/06 Javascript
Angular 中使用 FineReport不显示报表直接打印预览
2019/08/21 Javascript
微信小程序实现侧边分类栏
2019/10/21 Javascript
微信sdk实现禁止微信分享(使用原生php实现)
2019/11/15 Javascript
swiperjs实现导航与tab页的联动
2020/12/13 Javascript
JavaScript代码实现微博批量取消关注功能
2021/02/05 Javascript
Python中实现常量(Const)功能
2015/01/28 Python
Python中使用MELIAE分析程序内存占用实例
2015/02/18 Python
Python 绘图库 Matplotlib 入门教程
2018/04/19 Python
python3 cvs将数据读取为字典的方法
2018/12/22 Python
python 画3维轨迹图并进行比较的实例
2019/12/06 Python
python多线程使用方法实例详解
2019/12/30 Python
Pytest参数化parametrize使用代码实例
2020/02/22 Python
如何基于python3和Vue实现AES数据加密
2020/03/27 Python
巴西购物网站:Estrela10
2018/12/13 全球购物
文秘专业毕业生就业推荐信
2013/11/08 职场文书
聘用意向书
2014/07/29 职场文书
党员批评与自我批评
2014/10/15 职场文书
入党介绍人考察意见
2015/06/01 职场文书
同学聚会致辞集锦
2015/07/28 职场文书