主题:  理解XML、DHTML以及Web内容管理

5DDC版主

职务:版主
等级:6
金币:10.0
发贴:3820
注册:2002/3/25 21:30:11
#12002/4/12 10:02:23
2000年的老文章,不过很有借鉴的价值:

作者:Jeremy Allaire

几周以前,我有机会在一个由Allaire公司赞助的Web98 web设计与发展大会上和公司的高级Web顾问们进行了一次有关Web新技术的讨论。

在会上,我没有就未来Web事业中的Allaire主要产品发展发表看法。相反,我感到应该花时间和大家共同学习一下目前正在被广为接受的新技术。在2个小时中,我和其他75名听众(Web开发人员)共同讨论了Web远景中主要相关技术的发展方向。Dynamic HTML (DHTML)、XML、以及Web内容管理。

我希望通过讨论完成的任务是,帮助所有与会者认识,这些技术在什么地方将发挥怎样的作用,在他们采纳新技术时,将遇到哪些可以预见的问题。总之,我希望能够将所有这些重要的趋势弄明白。 以下内容就是我们全体在会议最后所得出的结论和看法。希望你们能够吸取这些丰富的内容,并添加你自己的观点和内容,发电子邮件告诉我们。

Dynamic HTML

DHTML被盛赞为Web平台上的一个重要技术转变。作为下一代浏览器需要整合的一种能力,DHTML将不断推动应用与交互性,使Web成为一个更加丰富的平台。DHTML是什么,我们如何去利用它? 在采纳它时我们将面临哪些挑战?

1)DHTML并非新鲜事物,它指的就是新的StyleSheet和javascript标记。

使用DHTML,你可以通过在文件元素中添加命名的ID号,动态修改页面中的元素行为。一旦你加入ID号,就可以使用user-events和javascript修改这些元素的内容和行为,使用Cascading Style Sheets (CSS)或其他HTML元素属性改变实际的页面外观。

2) DHTML就是更多的javascript。

动态HTML是通过扩展javascript 对象模型使Web页面编程能力更加丰富的新方式。

3) 由于浏览器方面的问题,目前DHTML没有被广泛采纳。

不同的浏览器执行不同的javascript对象模型,也就是一般常被提到的Document Object model或DOM。Microsoft向W3C提交了许多IE4的的DHTML方案,这些想法驱动了DHTML的核心标准定义的制定。尽管Netscape4也配置了许多DHTML标准,但是IE4进行的DHTML配置是最为广泛全面的。

4) 今天,DHTML就是IE4或Netscape4的一个子集。

要想真正使用跨平台的DHTML,你必须决定有哪些子集功能对于IE4和Netscape4来说是公共的。尽管这样,过分使用DHTML现在来说也不是非常合适,因为许多用户还在使用3.x 水平的浏览器。

5)DHTML通过客户端交互性为用户增添了新的体验。

DHTML淘汰了通过向服务器端提交请求来完成整个交互过程的需要,它更优秀的交互性使用户接口页面变得更加丰富。

6)用户必须具备丰富的知识才能够正确理解DHTML。

尽管你会感觉目前或多或少的可以使用一些DHTML。现实工作中对于DHTML的复杂运用需要用户具备深厚的类似C语言类(javascript)的编程知识,丰富的DOM、CSS、及HTML4.0的知识。实现真正的交互性需要拥有一个工程级别的技术组合。换句话说,DHTML不仅仅是新的扩展了HTML的tag,而是你如何进行Web页面编程的一整套新方法。

可扩展的标识语言(XML)

一种最新技术,XML是一种在Web上对结构化数据及文件进行传递与交换的架构。XML是SGML的一个子集,在Web环境下建立基于tag体系语言的一组简单规则。XML是做什么用的?在采用XML的过程中有哪些挑战性问题。

1) XML是用以描述其他语言的一种语言。

XML本身不是一种语言,而是用来描述其他语言的一组规则。

2) XML允许你创建自定义tag。

使用XML,你可以自定义tag名称,使用CSS和javascript创建浏览器行为。

3) XML从布局及格式上分离数据。

和XML有所不同,HTML本身包含许多用于规定格式的元素(如 Tables,Frames,Fonts等),而XML严格的限于描述内容及数据。在这一模型下,你必须使用CSS和javascript定义格式及描述行为。其优势在于,你可以在不同页面、应用中反复使用你的数据,这样,你的数据不是被固定某个特定时间内的特定的页面中,而是和页面比较相对独立的部分。

4) 下一代浏览器将支持XML。

在5.x浏览器版本中将真正把XML作为自定义tag来使用,替代目前的DIV和SPAN。有了这些功能,你就能够使用浏览器可以解释的tag,并将它们和特定的样式、脚本行为捆绑在一起。

5) IE4包含了ActiveX控件及Java classes这样的XML语法解释器。

IE4允许你分析一个传进来的XML文档,使用javascript操纵它的内容,提供元素。目前XML带来的工作量很大,并只在非常狭窄的操作中应用。IE4还提供一种使用XML数据或内容进行数据捆绑的机制。这样,你就可以将由XML表达的记录集和HTML表格或其他HTML元素进行捆绑,并且使用DSO对象迭加或修改数据本身。由于IE4的跨平台兼容性问题,并且IE4的XML还不是一种标准配置,所以如果一个开发项目没有绝对要求使用IE4,最好还是不要单独使用基于IE4的XML。 但就目前来说,目前最好开始学习XML,了解它将在你未来的开发中扮演一个什么样的角色。

6) XML将在server-to-server的应用中起非常重要的作用。

一旦你开始着手使你的数据适用于XML,你就可以更方便的在服务器之间进行数据交换。举例来说,一个搜索引擎可以到你的网站上寻找目前你在线销售产品方面的内容。你不再需要对HTML页面进行检索和分析,代理程序将寻找一个描述你的产品数据的一个标准XML文件。或者,你可以使用XML描写一个订单或发票,然后将它发给另外一个远程服务器去处理。由于XML可以表示或控制几乎所有类型数据结构,又因为它是light-weight, 并基于ASCII码的,因此可以非常容易的通过HTTP进行移动或操作。我们期待着XML在服务器端开创一系列巨大的开发及应用机会。

7) OFX是一个服务器中心制的XML格式的例子。

Open Financial Exchange,或被称为OFX,是一个XML格式的例子,已被用于传递、交换支付帐单及财务方面信息。有了这一标准,Web应用程序和桌面应用程序就可以在一个标准格式下传递付款及帐单信息,并且将这些信息通过HTTP方式传递给付款网关及银行结算。Microsoft、Intuit和ChechFree,以及一大批银行、金融机构都在积极推动采纳这一标准。

8) XML可能成为用于Web的部件编程 (component programming) 基础。

Web浏览器的“Behaviors”和ColdFusion CFX语言都是使用XML自定义tag,对数据以及程序、逻辑进行封装的实例。“Behaviors”是IE5的一项功能,允许你建立自定义tag,这些tag可包含内容、script、样式表定义,用来创建更简单的基于tag的浏览器部件。Allaire公司在1996年就成功开发了CFX,CFX是一种用来建立自定义tag,封装Web平台复杂性的一种方式。

Web内容管理

许多公司将Web作为一种商务及通信的战略平台来投资,在扩展web内容管理及实施能力方面,许多机构正在开始遇到阻碍。对于这些机构中的Web开发团体来说,一个正在呈现的实际问题就是Web内容管理。今天我们应该采取什么途径解决这些问题?

1) 页面及内容的增加带来巨大问题

随着Web页面内容的增加,Web工作组发现轻松管理并实施新内容正变得越来越复杂。版本及结构的复杂化、由于所实施的Web站点的复杂性,为最终用户直接分配内容的成本开支巨大。

2) Web内容工作流程复杂

创作、收集、实施内容的模式也非常复杂,尤其对于那些不具备自动化或数据库管理系统的组织及站点来说,操作这样的工作流程问题非常困难。

3) 在Web内容实施过程中的安全性问题

甚至在你向更多用户开放创建及实施内容的权利时,你所采纳的安全及许可处理方式都无法考虑到更广泛的需要或者是无法全面管理的。

4)需要规则与控制

为解决这类问题,新型的软件必须在建立实施Web内容的控制方面给予更好的支持。这一需求将成为一种可以上升至企业级的、跨组织和部门进行扩展的模式。

5) Web数据库和应用服务器可以满足需求。

许多,可能还不是大多数网站,正在向基于数据库管理的内容方面转变。使用自己开发的Web应用程序来管理、实施Web内容。在这种情况下,开发人员会使用一个系统如ColdFusion所建立的页面模板来制作网页。当用户请求某个页面时,存储在数据库中的内容将自动的输出到模板上,生成一个动态页面返回给用户。这种做法从显示开始就将数据存储和管理分离,使站点开发者在一个控制更加完善的环境中去管理内容。

再次重申,以上就是我们在Web98圆桌会议上进行的讨论,同时我也我期待着你的观点。