● 摘要
基于HTML表单的网络化数据采集方式曾经极大的推动了WEB应用的发展,可是,随着电子商务的兴起,WEB应用系统复杂度越来越高,传统的HTML表单在重用性、用户交互性以及采集数据描述形式等方面暴露出很大的问题。针对这些问题,W3C组织提出了下一代WEB表单推荐标准——XForms规范。目前,对XForms的研究与应用成为了WEB应用领域的热点课题。本文结合实际应用需求,分析和研究了XForms规范,在对现有XForms规范的实现策略进行分析和比较的基础上,提出了基于XForms的数据采集富客户端设计方案,随之给出了模块划分和关键流程的实现方式。基本设计方案如下:采用抽象工厂模式生成XForms控件,并采用桌面风格渲染生成的控件,来解决XForms定义控件的界面显示问题;采用对标准DOM解析器的相关方法进行重载的方式,生成包含了XHTML节点和XForms节点的定制DOM树,来解决混合有XForms标记的XHTML文档的解析问题;采用DOM事件模型,来解决无脚本语言情况下的界面动态显示的问题;采用XML模式进行数据完整性验证,来解决数据在客户端的验证问题;采用工厂模式,生成实例数据的序列化器,来解决XForms表单实例数据的序列化和提交问题。最后,本文依据上述系统设计方案,实现了一个基于XForms的数据采集富客户端,并将该客户端应用到具体项目中。本文主要的工作和取得的成果包括: 分析了本论文的应用需求背景,针对传统HTML表单的局限性,提出基于XForms的数据采集富客户端设计方案; 在上述方案的基础上,设计了系统的整体结构,划分了系统的主要功能模块——文档解析、事件模型、表单重计算、表单验证、表单呈现、实例数据提交等; 在系统的关键流程——表单重计算流程中,本文设计了依赖关系图(有向无环图)这种数据结构来描述表单项之间的依赖关系,针对该依赖关系图,采用并实现了拓扑排序算法,生成拓扑计算序列,解决表单重计算的顺序决定问题; 实现了该数据采集富客户端,并将该客户端应用到北京市教育考试院自考信息专递平台系统ESS中。
相关内容
相关标签