资源描述
基于XML自动化信息公布方案
起源:歌瑞尔内衣
[摘要] 信息公布是任何电子商务和电子政务网站必需处理技术问题,本文介绍了一个基于XML信息自动化公布方案,方案中无需引入数据库管理系统,降低了网站建设成本,提升了信息公布效率。
[关键词] 信息公布 XML 电子商务 电子政务
一、引言
伴随Internet飞速发展和普及,电子商务和电子政务网站已经成为企机关关键信息公布平台,也是大家快速获取多种信息关键路径。现在中国很多企业全部建立了自己门户网站和部门网站,来公布各类新闻和通知等信息。
目前信息公布大致有两种方法:第一个是经过固定模板来公布信息,即依据已经有HTML格式信息模板,经过简单内容替换来生成静态页面,然后经过FTP上传到服务器,再修改主页上连接进行公布;第二种是将信息数据保留到数据库或文件中,当用户阅读具体信息时候,从数据库或文件中调出数据,动态生成显示页面。
第一个公布方法,信息格式灵活,显示速度较快,但整个过程很繁琐,维护起来很麻烦;第二种方法,信息公布和管理比较方便;本文关键介绍一个基于XML自动化信息公布方案,无需引入数据库系统,将静态HTML页面显示速度快特点和文件存放节省成本和便于维护特点相结合,提供一个便捷信息公布和维护方法,尤其适适用于中小型网站信息公布。
二、XML技术特点
XML(extensible Markup Language)是W3C在1998年9月设计一个SGML(Standard Generalized Markup Language标准通用标识语言)简化版本。XML是一个简单而有效通用语言规范,属于元标识语言。XML文档是用纯文本编写,能够用多个方法创建和编辑。XML文档许可用户依据自己需要,灵活定义数据组织方法。采取XML技术进行数据存放含有以下特点:
通用性:XML是开放国际化标准,W3C正式同意,含有标准名域说明方法,支持文档对象模型标准、可扩展类型语言标准、可扩展链接语言标准和XML指针语言标准。使用XML能够在不一样计算机系统间交换信息。
易用性:XML对SGML进行了精简,它抛弃了SGML中不常见部分,方便用户编写Web页面同时也给设计人员实现XML浏览器降低了困难。
跨平台性:因为XML本身含有良好跨平台性,只要数据存放为XML格式,那么这些数据就能够被任何其它语言或系统识别。
高性价比存放方案:相比于一般文件,XML文档在数据定位和修改等操作方面含有显著优势,含有很好速度和效率;XML文档能够替换数据库实现常见数据操作,无需单独安装数据库系统软件,使得系统整体成本得以降低。
现在,处理XML文档方法关键有SAX和DOM两种。SAX(Simple API for XML)是一个基于流,以事件处理方法工作接口。DOM(Document Object Model)则是在对XML文档进行分析后,在内存中建立起一个完整树结构,然后在此基础上进行多种操作。简单地比较来看,SAX对系统资源要求低,速度快,但对文档操作是只读;DOM处理能力强大!但要求大量系统资源,尤其是对于大文档。以后还出现了Xpath和XPointer用以完成XML搜索和转换;XSML和XSLT和SOAP用以完成XML远程对象访问,XML Query Languages出现使XML查询语言可用于任何XML文档。
三、基于XML信息公布方案
企业网站信息公布不仅包含新闻,还包含通知,公告,招聘信息和多种动态信息,其整体步骤为:系统管理员为信息公布者设置权限,信息公布者依据自己用户名和口令登录到信息公布界面,进行信息公布和管理,部分信息在公布前还需要系统管理员进行审批。本方案以新闻信息公布为例进行说明:
1.总体设计方案
依据Web软件B/S结构特点,方案中新闻数据存放采取XML文件格式,开发工具选择ASP[依据实际需要,能够自由选择其它语言工具(如JSP,PHP等)和XML文件自由组合]。
为了充足利用传统信息公布中静态HTML页面前台显示速度快优点,在新闻数据写入XML文档同时,由程序依据约定模板自动生成目前新闻静态HTML页面,采取目前时间作为文件名称(如091011.html,此命名方法在新浪网等门户网站大量使用),同时为了避免XML文件过大造成解析过慢,新闻分为近期新闻和早起新闻,对于近期新闻采取XML文件和静态HTML页面双重存放格式,XML文件用于支持对新闻数据修改,修改后重新生成静态HTML页面用于前台显示;早期新闻只保留静态HTML页面供浏览,XML文件中不进行数据保留,不提供修改操作。管理员能够经过管理界面将目前近期新闻转为过期新闻,转换同时将XML文件中对应数据删除。同时考虑到新闻中常常出现多媒体信息(图片,音频和视频数据),依据其数据量大,独立引用特点,只保留多媒体文件名字,当新闻浏览时经过多线程方法直接到指定目录进行加载。新闻公布步骤以下图:
信息公布系统包含前台新闻显示部分和后台新闻公布和维护部分。关键功效介绍以下:
(1)新闻管理。提供新闻公布,删除,编辑,近期新闻转为过期新闻等管理操作。
(2)权限管理。引入角色组概念,它是权限控制单位,每个角色组含有对网站部分资源控制权限。
(3)用户管理。提供用户添加,删除和修改等操作入口。每个用户必需归属于某个角色组。
(4)模板管理。对新闻静态HTML模板进行添加,修改和删除等操作。
(5)文件上传。将新闻中可能需要链接多种文件上传到服务器指定目录。
2.XML文档设计
XML文档关键用于保留新闻中非多媒体信息,多媒体信息则保留目录信息。每个新闻节点中包含了组成新闻各个要素,内容正文部分按段落录入,为了区分一般文本内容和多媒体内容,每段还包含了段落标识和段落内容。下面是一个保留新闻内容XML文档部分内容示例:
<?xml version="1.0" encoding="gb2312"?>
<?xml:stylesheet type="text/xsl" href="news.xsl"?>
<document>
<news>
<title>新闻标题</title>
<date>新闻录入时间</date>
<link>新闻对应HTML静态页面链接</link>
<class>新闻类别</class>
<keyWords>新闻关键字</keyWords>
<author>新闻作者</author>
<segment>
<segmentTag>段落内容标识</segmentTag>
<segmentContent>段落内容数据</segmentContent>
</segment>
</news>
</document>
3.关键技术研究和实现
(1)新闻公布模板设计。经典新闻内容中包含新闻关键字,新闻标题,公布日期,公布单位,公布者,正文等要素,信息公布关键在于正文数据已何种形式写入到XML文件中。本方案中将新闻具体内容分段进行处理,一则新闻正文部分由若干段组成,每一段内容能够是单一文本,图片或其它许可多媒体,也能够是多个文件根据一定次序和空间排列组合形式。信息公布初始状态每段只有一栏,公布者能够依据实际需要对某一段落进行分栏,每一栏内放置单一文件内容。从而使得新闻内容组合方法更灵活,简单,实用。
周百顺
(2)面向对象编码实现。方案中服务器端采取VBScript进行编码,该脚本支持面向对象编码,为了充足发挥其面向对象可重用性,灵活高效特点,在对系统整体进行编码进行研究和分析以后,引入了面向对象知识,设计了用于操作XML文件类。操作关键包含以节点为单位获取,修改,删除,增加等操作。该类关键描述以下:
Class Cls_News
‘ 属性变量定义
… …… …
Public Property Get newsId
#39; 获取XML文件中节点具体属性值
End Property
… …… …
Public Function GetInfoFromXml(objXmlDoc)
#39; 从Xml中读取指定节点数据,并填充各个属性
End Function
Public Function AddToXml(objXmlDoc,xmlFile)
#39; 添加信息到XML文件中
End Function
Public Function EditToXml(objXmlDoc,xmlFile)
#39; 编辑目前XML文件中信息
End Function
Public Function DeleteFromXml(objXmlDoc,xmlFile)
#39; 从XML文件中删除数据
End Function
… …… …
End Class
四、总结
本文介绍技术已经在中小型电子商务网站中有了初步应用,高性价比存放方案取得了单位充足肯定。当然使用过程中我们也发觉部分问题需要改善,这其中包含加紧大数据量XML文档解析速度,探索XML文档检索方法和增强信息模板灵活性等多个方面内容,这些将是我们后续研究关键工作。总而言之,采取XML技术进行信息自动化公布含有很高实用意义,尤其是对于中小型电子商务和电子政务网站信息公布,能够提供高性价比内容存放和公布方案。
展开阅读全文