




已阅读5页,还剩47页未读, 继续免费阅读
(计算机应用技术专业论文)XML自动阅卷系统的设计与实现.pdf.pdf 免费下载
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
上海大学研炙生论文用垣 摘要 殖着社会信悬化程陵的不龋提高。诗翼机应耀能力斡考核闻巷i 佟逐渐豳传 统的手工阅卷走向自动阅卷。但目前的自动阅卷系统对于一些主观性很强的逻辑 程序设计题晷,还没有 艮鲟的解决方案。 x m l ( e x t e n s i b l em a k e u pl a n g u a 耻 作为一种新兴的结构化元标记语言 与h 1 m l 襁比具有强大的功能帮明显的优势,其应用g 盏广泛。园她。并m l 及箕 相关知识点的培训和考核也成为计算机应用和考核的部分。以往x m l 的阅卷工 作一般由人工完成,效率低,工作量大,容易出现差锩。本论文针对l 文件的 结构特点。实现了涮l 的计算机自动阅卷,从而克服了人工阋卷的缺陷,评分速 度快,正确住商,客观性强,阅卷质量大大提高。 本阕卷系统在功能上主要实现了对x m l 文件、x s 文件、d t o 文件、d o m 应 用四个模块的阅卷工作。 本论文酋先介绍了x 托文件的阅卷搽俸。说明了如何耐用j a x p 的c r i m s o n 语法分析器实现对x m l 文件的解析,及对解析后的d o m 树进行遍历的方法。在此 基础上,提出了跏乙阅卷的基本算法,该算法实现了常规蹦l 文件的闻卷工作。 鉴于x 姚文件的复佘性及考生答寰的多样性,对基本的阅卷算i 去进行改进 根据解析后生成的d o m 树的结构特点擒象出一种新的节点数据结佝n o d e t r i , 提出了一种额的基于二次比较的阅卷算法x m l m a r k i n g 。新算法克, f l e t 原有x m l 闻卷系统对节点顺序的依赖,同时还锯决了对具有相同值子节点区分判断的问 题,本文请:缁地描述了阅卷算法x m l l a r k i m g 的劝舵,设亡于息想及操作步骤。 x s l t 具有强大的功能和十分烦杂口勺语法规定,直接对其阅茜圈难很大。本 浇卷系统利用j 丸x p 的x s l 弓 荤x a l a n ,将x s 乙t 文件应甩到蕊l 交件上,得至n 遵 循x m l 语洼蚬定的结果文件,由于考生x s l 文件的错误情况完全可咀在结果文件 中体现出来所以我们可猷对结果文件阋等,而不是直接甜原始的x s l 文件阅卷 从而将x s l t 阅卷的问题转化为对x h l 文件阅卷的问题。 d t d 模块和d o m 模块分别实现了对这两都分的阅卷,本文对其实现算法和具 俸实现步骤避彳亍了介绍。 本阅卷系统通过了二十余道试题的硎试,实验证明该系统可“时x m l 文件、 x s l 文待、翦d 文件、d o m 应用四个部分进行自动阕卷,阕卷结果茏确有效,实 现功能均这到了设计要慕,具有很强的实用性。 关键词:自动阅卷系统、) m p 、d o m 圭堕奎兰竺苎竺堡窭旦竺 k b s t r a c t w i t hr a p i dd e v e l o p m e n to fi n f o m m l i o nt e c h n i q u ei n s o c i e t y , i nt h ec o m p u t e r a p p l i c a t i o n t e s t a r e a ,t r a d i t i o n a lm a n u a lm a r k i n gs y s t e m s a r e r e p i a c e db y a u t o m a t i cm a r k i n gs y s t e m sg r a d u a l l y b u tt h e r es t i l le x i s ts o m ed i f f i c u l t i e si nt h e m a r k i n g o f l o g i cp r o g r a md e s i g n x m li sak i n do fm a k e u pl a n g u a g e c o m p a r e dw i t hh t m l i th a sm o r e p o w e r f u if u n c t i o na n do b v i o u sa d v a n t a g e a ,a n di t su s a g ei si n c r e a s i n gv e r yf a s t a sa r e s u l t ,x m lb e c o m e s o n eo ft h ee x a m i n a t i o nc o u r s e sf o rc o m p u t e r a p p l i c a t i o na b i l i t y i fm a r k i n gp a p e r si sd o n eb ym a n p o w e r , t h e r ea r es o m ed e f e c t ss u c ha si n e f f e c t i v e , k 曲w o r k l o a d ,p o s s i b l et op r o d u c ee r r o r s e t c i nt h i sp a p e r , w er e a l i z ea na u t o m a t i c m a r k i n gs y s t e mw h i c hc a d m a r kt h ee x a m i n i n gp a p e ro nx m l c o u r s e i th a sm a n y a d v a n t a g e ss u c ha st om a r k t h et e s tp a p e r r a p i d l y , r e d u c et h ea m o u n t o ft h em a n p o w e r w o r k ,a n di m p r o v et h eo b j e c t i v i t y t h i sa u t o m a t i cm a r k i n gg y g t e mi m p l e m e n t st h em a r k i n gt a s ko f x m lf i l e x s l t t i l e , d t df i l ea n dd o ma p p l i c a t i o n f i r s t l y , w ei n t r o d u c eas y s t e mi m p l e m e n t i n go fx m l f i l em a r k i n g ,w ed i s c u s s h o wt op a r s ex m lf i l e su s i n gc r i m s o np a m e ri nj a x p , a n dh o wt ot r a v e r s et h ed o m t t e e ,w eb r i n gf o r w a r dt h eb a s i ca l g o r i t h mo fx m l m a r k i n g t h i sa l g o r i t h mc a n r e a l i z et h er o u t i n em a r k i n go f x m lf i l e s d u et ot h ec o m p l e x i t yo fx m lf i l ea n dt h ev a r i e t yo fa n s w e rp a p e ro fs t u d e n t s , t h eb a s i cm a r k i n ga l g o r i t h mm u s tb ei m p r o v e d a c c o r d i n gt ot h es t r u c t u r eo fd o m t t e e w ep r e s e n tan e wd a t as t r u c t u r e n o d e t f i ,a n dan e wm a r k i n ga l g o r i t h m x m l m a r k i n gb a s e d o nd o u b l ec o m p a f s o n t h eb a s i c a l g o r i t h m r e l i e so 1t h e s e q u e n c eo fn o d e s ,t h en e wa l g o r i t h mx m l m a r k i n go v e r c o m e st h i s f l a w ,a n dh a s a l s or e s o l v e dt h ed i s t i n g u i s ho fn o d e sw i t ht h es a m ev a l u e i nt h i sa r t i c l e ,t h ed e s i g n t h o u g h t s t h ef u n c t i o n o f x m l m a r k i n g ,a n d t h e o p e r a t i o np r o c e s s a r ed i s c u s s e d x s l th a sp o w e r f u lf u n c t i o na n dc o m p l e xs y n t a xr e g u l a t i o n ,s om a r k i n gx s l t f i l e sd i r e c t l yi sv e r yd i f f i c u l t u s i n g t h ex s l e n g i n ex a l a ni nj a x p , w e t r a n s f o r mt h e x m lf i l ew i t hx s l t ,a n dg e ta nx m l f i l ea st h er e s u l ts i n c ei nt h ex s l tt e s t ,t h e e n f o r si ns t u d e n t s p a p e rw i t l b er e p r e s e n t e di nt h er e s u l tf i l e 也ex s l t f i l e sm a r k i n g i st r a n s f o r m e di n t ox m lf i l e sm a r k i n g t h ed t da n dd o mm a r k i n gt a s ki si m p l e m e n t e db yi n t r o d u c i n gd t d a n d d o mm o d u l e sr e s p e c t i v e l y i nt h i sa r t i c l e ,w ea l s od i s c u s st h er e a l i z a t i o na l g o r i t h m a n d o p e r a t i o ns t e p si nd e t m t t h ea u t o m a t i cm a r k i n gs y s t e mh a st a s t e db ym o r et h a nt w e n t ye x a m i n i n gp a p e r s - t h er e s u l ts h o w st h a tt h i ss y s t e mc a r lc o r r e c t l ym a r kx m lf i l e ,x s lf i l e ,d t df i l e a n dd o ma p p l i c a t i o na u t o m a t i c a l l ya n da c h i e v e s t h ed e s i g nr e q u i r e m e n t i th a s r e m a r k a b i ep r a c t i c a b i l i t y k e y w o r d s :a u t o m a t i cm a r k i n gs y s t e m s ,j a x p 】d o m 第4 页共5 4 页 上海大学研究生论文用纸 第一章课题分析及可行性研究 1 1 课题的意义 随着社会信息化的日益发展,人们对计算机科学及应用知识的需求也就越来 越迫切。目前。计算机应用能力的普及培训及考核已成为一个产业,仅上海一地, 参加计算机应用能力考核的已超过3 0 0 万人次。计算机社会化考核参加人数多, 覆盖面宽,传统的人工阅卷已经越来越不能适应新形式的要求,特别对于程序语 言类题目的阅卷,周期长、误差大、受主观影响大、公正性不强。因此急需将阅 卷工作做到自动化。 自动阅卷以计算机高效的、自动的阅卷取代教师低效率的、机械的手工阅卷, 将教师从繁重的机械劳动中解放出来。在考试过程中,考生将答案通过网络保存 到服务器上,然后,教师可在一台机器上集中进行阕卷,当场给出考试成绩。同 时,阅卷结果易于保存、查询,可以对考生的成绩做出更客观公正的评价。 从以上对自动阅卷统优势及自动阅卷现状的分析中,我们可以看出,对程序 逻辑实现自动阅卷是计算机应用能力的普及培训及考核中理论性和实践性都很 强的一个课题要考虑到语法分析、语义分析、交互式特性、多线程并行处理特 性、数据处理、系统健壮性等诸多技术上的难题。因此,程序逻辑自动阅卷这一 课题具有很高的研究和实用价值,我们选择这一领域作为研究方向。 x m l 以第二代网页发布语言丽著称,凭借着勃勃生机与强大优势,为网络应 用注入了新的活力。它弥补了h t m l 的不足,发挥很大的作用。x m l 允许各个不 同的行业根据自己独特的需要制定自己的套标记,具有相当的灵活性;x m l 中, 数据信息与显示样式分开,这样,如果需要改动信息的表现方式,无须改动信息 本身,只要改动样式单文件就够了;在x m l 中数据搜索可以简单高效地进行,搜 索引擎没必要再去遍访整个x m l 文件,它只须搜索相关标记下的内容就够了;x m l 是自我描述语言。信息内部严格的层次结构,比如树状结构、继承关系,在这里 也都得到了绝好的体现:x m l 遵循严格的语法要求,便于不同系统之间信息的传 输,具有较好的保值性。基于x m l 的强大功能和明显的优势,x m l 的培训及考核 也随之悄然兴起。 因此,我们开发了面向x m l 及相关知识点的自动阅卷系统,从理论层面和实 践上对这个课题进行深入细致的研究。 第5 页共5 4 页 上海大学研究生论文用纸 1 2 课题圭要研究的问题 本系统是为x 她及相关知识点考核的自动闼卷工作而设计开发的,其目标在 于设计出一套针对x m l 及相关考核点进行自动阅卷的系统。 x m l 是个新兴学科,也是涵盖内容丰富的学科。x m l 学科包含的分支很多, 如:x m l 文件的编辑与显示,y , m l 显示中x s l 与c s s 的使用,约束x m l 文件有效 性的d t d 与s c h e m a ,x m l 文件对象模型d o f f ,设置x m l 的超链接x 1 i n k 与x p o i n t e r , x m l 命名空间n a m e s p a c e s ,下一代的h t m l 语言x h t m l 等等。同时,x m l 还在蓬 勃发展中,新标准、新规范不断推出,这也使得x m l 的有些分支还不成熟,无法 作为计算机应用能力考核的内容。 我们综合分析了x m l 中应用广泛、技术成熟的几个部分,作为本阅卷系统的 考核点。本系统将实现对以下四个模块的阅卷:x m l 文件阅卷、x s l 阅卷、d t d 阅卷、耐操作阅卷。 x m l 文件阅卷是本阅卷系统的重点。也是其他阅卷模块的基础和重要组成部 分。它主要考核学生根据题目要求,构建结构良好、有效的x m l 文件的能力。 x s l 文件中包含) 【m l 文件的显示样式信息,根据x s l 文件对x m l 文件进行转 换,可以得到具有特定显示格式的x m l 文件,并可以实现对x m l 文件查询、选择、 特定内容排序等信息的提取和转换。 d t d 文件是x m l 文件的约束文件。根据d t d 文件,可以验证一个x m l 文件是 否是格式良好的,即是否符合d t d 规范的要求。定义了d t d 文 牛,可以使多卜 x m 乙在文件格式上保持一致,方便信息的交互。 d o m 操作是对x m l 文件的最基本的操作,可以说,只要有x m l 文件存在的地 方,就有d o l t 操作存在。d o m 还是对x m l 文件解析的两个标准接口之,它面向 对象的特性及业界的支持使得它的应用比另外一种接口标准s a x 广泛得多。 本课题的研究目标就是设计出一个通用的针对x m l 及相关知识点进行自动 阅卷的系统。在设计系统的时候,我们特别强调系统的通用性,并且注重系统的 实用性及健壮性。 1 3 设计思路的分析 根据软件过程学的基本测试方法理论测试任何产品都有两种方法:黑盒测 试、白盒测试。 白盒法测试从理论上是可行的,但在实际过程中,我们深入程序内部进行逻 辑判断将是十分困难的。我们经过调查研究,最终得出的结论是:目前还没有一 种完整的方法支持程序内部逻辑的分析,要在短期内实现的可能性不大。 第6 页拱5 4 页 j :海大学研究生论文用纸 由于我们的最终目标是实现自动阅卷系统,也就是说我们在进行程序判断之 前已经完全知道程序应该具有什么样的功能,所以我们觉得黑盒法测试理论可以 成为进行x m l 及相关知识点进行逻辑判断的理论基础。 要实现对x m l 及相关知识点进行自动阅卷,就是要对考生答案进行逻辑判 断,既要判断其语法是否正确,又要判断语义是否正确。要实现这一目标,我们 可以通过多个途径实现阅卷。在确定最终整体解决方案之前,我们曾对以下两条 思路进行了尝试: ( 1 ) 将考生的x m l 、x s l 、d t d 文件看作纯文本文件,与标准答案进行文 本比较。因为以上文件都可以看作是简单的文本文件,所以可以按照考生答案文 本与标准答案文本的匹配情况进行评分。对文本的比较简单可行,这是最容易想 到的方法,在一定程度上也行之有效。 但是这种方法会带来一个问题,对考生答案进行逻辑判断,考生的操作顺序 和实现方法可能会千差万别,但却能够获得同样的结果,因此,在阅卷之前,我 们就必须预先考虑到考生的各种可能实现方法,如果不能穷尽所有的实现步骤以 及各种实现步骤的组合方式,就会将考生原本正确的实现判为错误。所以,在使 用上述思路构建阅卷系统时,很容易导致阅卷系统的不完备性。 从阅卷的角度分析,在实际考核中,需要我们关心的是考生操作的结果是否 正确,而不是考生的实现途径。只要能够获得期望的结果,我们就应该认可考生 的操作步骤。基于以上分析,我们提出了下面这条通过解析结果文件进行判定的 设计思路,并将在系统方案的实现中采用该思路: ( 2 ) 解析结果文件,就是采用某种方法,对结果文件进行某种处理,然后 从中提取出文件内容。通过对结果文件进行解析,可以使考生的具体实现对解析 透明,即考生的具体实现方法不会影响我们取得文件内容,从而克服上一种方法 的弊端。 对x m l 、x s l 、d t d 文件解析,就是读取文件,对这些文件进行语法分析,解 析文件的结构,得到文件内容,实现对文件操作。在解析文件基础上,我们可以 分别分析考生答案和标准答案,基于这个原理来实现自动阅卷。在这条阅卷思路 中,可以有效地避免阅卷系统的不完备性,克服前一种思路的缺点。 同时,这种方法也属软件测试中的黑盒测试方法,我们通过测试结果文件, 检查是否每个功能都能正确使用,根据检查结果来评判考生分数。 1 4 探索设计思路所面临的问题 在确定设计思路的过程中,我们提出了通过解析结果文件来实现阅卷的方 法。就研究方面而言,x m l 自动阅卷是一个全新的领域,能够给我们借鉴的经 第7 页共5 4 页 上海大学研究生论文用纸 验很少,所以在确定设计思路之后,紧接着我们就将面临下面这几个十分关键的 问题: 1 这个设计思路究竟是否可行? 2 如果可行的话,应该采用什么设计方案来完成呢? 3 对于不同的考题,设计方案是否能够保证系统的通用性呢? 如果设计思路根本是不可行的话,那么课题的研究也将无法再继续深入展开 下去。所以在本章中,我们有必要围绕着系统可行性方面展开详细的讨论。 1 5 设计思路的可行性研究 在遵循解析结果文件这一基本原则的前提之下,我们曾经先后对下面两种开 发方案进行了尝试和摸索: ( 1 ) 为了避免系统的不完备性,我们决定采用通过解析结果文件的方法来 实现阅卷。解析文件的应用程序我们称之为解析器( p a r s e r ) 。如果我们能够开发 出解析x m l 、x s l 、d t d 的解析器,那么在此基础上取得考生文件内容,再开 发阅卷模块,得到考生错误信息,进行相应评分。 这种开发方法理论上是可行的,但深入研究后我们发现,独立开发以上全部 的解析器几乎是不可能的。让我们分析一下采用这种方法的全部开发过程: 对x m l 文件解析过程中,首先我们要考察该x m l 文件是否格式良好( x m l 有严格的格式良好性要求) ;其次我们要考察此x m l 文件是否是有效的,即考 察该文件是否符合d t d 或s c h e m a 的约束;最后,我们要取得x m l 文件的内容, 然后根据评分规则,由阅卷模块实现阅卷,得出考生分数。 x s l 是应用于x m l 、给x m l 文件赋予显示格式的文件。虽然它符合x m l 格式良好性的要求,是一种特殊的x m l 文件,但由于它遵循其特定的语法结构, 有特定的语义,具有其特殊性,与x m l 文件有很大不同,因此对x s l 模块阅 卷,要开发特定的解析器,不能完全基于x m l 解析器。 d t d 是用来约束x m l 文件的文件,但它本身不是有效的x m l 文件,对 d t d 解析要用与x m l 解析完全不同的方式。 d o m 操作为对x m l 文件内容进行查找、修改、删除等的操作,也要建立 在对x m l 文件解析的基础上实现。 由以上分析我们可以看出仅开发x m l 、x s l 、d t d 解析器的工作量就很大, 若要实现基于文件解析的完整的阅卷系统,更是一项艰巨的任务a ( 2 ) 在已有解析器的基础上实现对x m l 各部分的阅卷。 经过以上的分析,我们发现试图开发出一套完整的解析系统,并在此基础上 实现自动阅卷是很困难的事。后来,在查阅了大量资料后我们发现,目前,各大 第8 页共5 4 页 上海大学研究生论文用纸 公司已经纷纷射猎x m l 领域,用各种语言编写的解析器已有很多种,其中比较 著名的x m l 解析器有以下几种:微软的m s x m l ,i b m 的x m l 4 j ,o r a c l e 的 x m lp a r s e rv 2 ,s u n 的j a x p 等等。这个发现为我们的阅卷系统的开发带来了 转机。我们知道,如果能够使用已有的x m lp a r s e r ,那么在处理与x m l 的解析 相关的事务时可以节省大量的精力,同时,这也符合程序复用的思想,大大缩短 开发周期,提高开发效率。x s l 引擎和d t d 解析器也逐渐成熟,x s le n g i n e 如 x a t a n ,x s l tp a r s e r 等,d t d 的解析器如w u t k a sd t dp a r s e r ,b o u r r e t sd t d p a r s e r 。因而,我们的自动阅卷系统将基于已有的解析器进行二次开发。 经过研究我们发现,以上这些解析器大多提供比较完整的工具包,以方便用 户使用。我们可以通过这些解析器的应用开发接口对x m l 及其相关文件进行操 作。读取文件内容,对其进行解析,从中提取出我们所需要的信息。在此基础上, 构建自动阅卷系统,达到对程序逻辑自动阅卷的目的。综合以上的分析,我们认 为这个方案是切实可行的,所以决定采用这个方案来实现我们的阅卷系统。 1 6 设计思路的通用性分析 在确定设计思路的可行性之后,我们就需要对设计方案的通用性展开讨论。 系统的通用性是整个系统能否从实验室状态走向实用状态的关键,我们不可能为 每一道试题的阅卷重新编写程序代码,只有当设计方案具备通用性之后,开发的 系统才能够投入到实用之中,这样该设计思路才具有真正的可行性。否则,开发 的系统将一直停留在实验室状态,而不能进入实用状态,也没有实际的可操作性。 从系统通用性思路出发,我们的目标是建立一套完整的开发环境,这套环境将能 够实现对某几类问题的阅卷。 我们选定x m l 、x s l 、d t d 、d o m 四个部分作为我们自动阅卷的子系统。阅卷 过程中,我们首先分别解析考生答案的结果文件和标准答案的结果文件,将考生 答案的信息和标准答案的信息提取出来;然后进行比较匹配,以判定考生操作的 正确性。系统阅卷的过程中,直接从x m l 、x s l 或者d t d 文件中获取答案信息。 这样,同一个子系统内部的阅卷工作就具有了通用性。只要是同一类考核知识点, 就可以调用同一个子系统阅卷,不必针对特定的题目迸行特殊的处理,因此具有 较好的通用性。在系统开发的过程中,实践也证明了这个方法是完全可行的。 1 7 开发工具的选择 我们已经确定了基本的设计思路,即在已有的解析器基础上进行二次开发。 但具体采用何种解析器,基于何种类型接口进行开发,还是需要我们认真选择的。 x m lp a r s e r 有两种标准接口规范,w 3 c 制定的对象模型类接1 2 1d o m ( d o c u m e n t 第9 页共5 4 页 上海大学研究生论文用纸 o b j e c tm o d e l ) 以及x m l _ d e v 邮件列表中的成员自发定义的一套事件驱动类接口 s a x ( s i m p l ea p if o r ) ( m l ) 。这两种接口规范各有侧重,互有长短,都得到了比 较广泛应用。 遵循d o m 规范的x m lp a r s e r 解析x m l ,会在内存中形成一棵对象树,这样 我们就可以使用面向对象的方法,所有对文档的操作均对这棵树进行。对对象树 的各种操作,均遵循d o m 规范的规定,因此遵循d o m 标准接口的x m lp a r s e r 是 具有良好的重用特性的。但是这种方法需要读取整个文件并将它存储到树结构 中,因而对于大的x m l 文件,其效率不高,并且会过度使用资源。 而s a x 是基于事件的a p i ,s a x 对经过它的x m l 流进行分析,解析器捕获譬 如元素的开始和结束等的事件,发送给处理信息的事件处理程序。由于应用程序 不以任何方式存储数据,所以开销小,效率高。但是使用s a x 时,不可能对数 据进行更改,或者“返回( 或查询) ”到数据流中前面的数据。并且事件处理程 序需要开发者自己实现,s a x 仅提供了操纵数据的方法,因此开发任务重。 d o m 和s a x 各有所长,各有所短,造成这两种接口标准并存。由于本阅卷系 统对试题答案进行解析时要对节点操作,所以使用d o m 接口比较适合,且符合面 向对象的开发思想。试题答案文件不会很大,所以对于本系统,d o m 接口的优势 大于劣势。基于以上原因,我们采用d o m 接口的x m lp a r s e r 。 各种语言书写的解析器有很多种,各种解析器的接口标准不尽相同,j a x p ( j a v aa p if o rx m lp a r s e r ) 的好处在于它提供了访问各种解析器的统一接口, 我们只需要熟悉j a x p 各个编程接口的定义即可,而不需要对所采用的具体的x m l 解析器、x s l t 处理器有很深入的了解。如果在使用d o m 和s a xa p i 时遇到特 定于供应商的任务,它还使得通过独立于供应商的方式处理这些任务成为可能。 对x s l 模块阅卷过程中,出于通用性考虑,我们选择j a x p 自带的x a l a nx s l 引擎,然后再基于x m l 的阅卷方法进行开发。具体实现过程会在后面阐述。 因此,我们的系统将采用基于j a x p 解析器解析x m l 、x s l t 、d o m 模块,用 j a v a 语言开发x m l 各模块阅卷。 d t d 不遵守x m l 格式,这使得对d t d 模块的阅卷不能基于x m l 解析器。目前, d t d 的解析器非常少,也是因为d t d 不是有效的x m l 文件的缘故。本阅卷系统中, 我们在d t d p a r s e r ( 一个成熟的j a v ad t d 解析器) 基础上,对d t d 模块阅卷。 第1 0 页共5 4 页 上海大学研究生论文用纸 第二章系统综述 2 1x m l 中各知识点介绍 我们开发x m l 自动阅卷系统,就不能不对x m l 各个知识点有深入的了解。以 下我们介绍一下x m l 、x s l 、d t d 和d o m 的基础知识,以加深我们对本系统的了解。 2 i 1x m l 介绍 x m l 的全称是e x t e n s i b l em a k e u pl a n g u a g e ,是由w 3 c 组织制定的可扩展标 记语言。它与h t m l 都来自于s g m l ,它们都含有标记,有着相似的语法。以下我 们介绍一下两者的区别以及x m l 的优势,然后对x m l 的语法做简单介绍,这对确 定阅卷系统的考核点和评分规则是非常重要的。 首先,我们举一个简单的例子。以下是一个客户联系信息列表,包含联系人 张三和李四的信息。 表2 1 客户联系信息列表 张三 李四 。用户i d :0 0 1 oi d :0 0 2 o公司:a 公司 o公司:b 公司 o e m a i l :z h a n g a a ac d m 0 e m a i l :l i b b b o r g o 电话:( 0 1 0 ) 6 2 3 4 5 6 7 8 o 电话:( 0 2 1 ) 8 7 6 5 4 3 2 1 o地址:五街1 2 3 4 号。地址:南京路9 8 7 6 号 。城市:北京市 。 城市:上海市 oz i p :1 0 0 0 0 1 oz i p :2 0 0 0 0 2 为了显示该列表,h t m l 和x m l 的实现分别如下: 袭2 - - 2h t m l 实现的客户列表 z i p ;1 0 0 0 0 i 用户i d :0 0 t ( l i 李匹q l i ) 公司:a 公司叫l i ) 公司:b 公n e m a t l :j 迢 b b b o r g l l 第1 1 页共5 4 页 上海大学研究生论文用纸 城市:上海市 表2 3x m l 实现的客户列表 姓名) 李四0d2 z h a n g a a ac o m ( o l0 ) 6 2 3 4 5 6 7 8 ( 电话) ( 街道 南京路9 8 7 6 号( ,街道 上海d 城市 五街1 2 3 4 号叫街道 2 0 0 0 0 2 ( 城市 北京市划城市 叫地址 | 0 0 0 0 1 叫联系人 ( ,联系人 从以上的h t m l 和x m l 的例子中,我们可以看出x m l 与h t m l 有以下几点不同: 1 标记的可扩展性不同 h t m l 中的标签是已定义好的,标签不具有扩展性:x m l 中我们可以按照需要 自行定义标签,使标签具有扩展性、灵活性。 2 标记侧重点不同 h t m l 标签侧重于信息的表现形式:x m l 标签侧重于信息描述,反映信息的内 容和含义; 3 语法要求不同 h t m l 的语法要求不严格;x m l 要遵循严格的嵌套、配对等语法要求a 4 可读性和可维护性不同 h t m l 文档不利于阅读、维护;x m l 文档结构清晰,便于阅读、维护。 5 数据和显示的关系不同 h t m l 的内容描述与显示方式整合为一体;x m l 内容描述与显示方式相分离a 6 ,保值性不同 h t m l 不具有保值性:x m l 具有保值性,把x m l 文件从一种形式转化成另一种 形式非常容易。 第1 2 页共5 4 页 上海大学研究生论文用纸 从以上对x m l 和h t m l 的比较中,我们可以了解x m l 的语法与h t m l 的不同点, 并且很容易看到x m l 的优势,及其广阔的应用前景。 根据x m l 文档是否“格式良好”、是否“有效”,可以把x m l 文档分为三类: ( 1 ) 格式良好的文档:即遵循x m l 标记规则的文档,x m l 标记规则如下: 所有的标记都必须要有一个相应的结束标记; 所有的x m l 标记都必须合理嵌套: 所有x m l 标记都区分大小写: 所有标记的属性必须用“括起来; 格式良好是对x m l 文件的基本要求,它使得x m l 文件结构清晰、完整,便 于处理程序对其进行解析,进一步可以简化处理程序的编写工作,并加快 浏览的速度、减少浏览所需占用的内存空间。 ( 2 ) 有效的文档:遵循x m l 标记和其d t d 定义规则的文档。一个“有效的”文 件首先应该是“格式良好”的。但这还远远不够,它还要往前更进步。 一个x m l 文件必须遵守文件类型描述d t d ( d o c u m e n tt y p ed e f i n i t i o n ) 中 定义的种种规定。 ( 3 ) 无效的文档:文档不遵循我们刚刚讨论的标签规则,或者当一个x m l 文档具 有相应的d t d 文档,但却不遵守d t d 文档定义的规则,那么这个x m l 文档也 是无效的。 这三种不同的x m l 文件就是x m l 文件阅卷模块中,判断一个x m l 文件格式良 好性及有效性的标准。 2 1 2 x s l 介绍 x s l 的全称是e x t e n s i b l es t y l e s h e e tl a n g u a g e ,即可扩展样式单语言。 它也是由w 3 c 制定的。x s l 通过x m l 进行定义,遵守x m l 的语法规则,是x m l 的 一种具体应用。也就是说,x s l 是一种特殊的x m l 文档。 x s l 由两大部分组成:第一部分描述了如何将一个) ( m l 文档进行转换,转换 为可浏览或可输出的格式;第二部分则定义了格式对象f o ( f o r m a t t e do b j e c t ) 。 在输出时,首先根据x m l 文档构造源树,然后根据给定的x s l 将这个源树转换为 可以显示的结果树,这个过程称作树转换,最后再按照f 0 解释结果树,产生一 个可以在屏幕上、纸上、语音设备或其它媒体中输出的结果,这个过程称作格式 化。 到目前为止,w 3 c 还未能出台一个得到多方认可的f 0 ,但是描述树转换的这 一部分协议却日趋成熟,已从x s l 中分离出来,另取名为x s l t ( x s l t r a n s f o r m a t i o n s ) ,现在一般所说的x s l 大都指的是x s l t 。与x s l t 一同推出的 第1 3 页共5 4 页 上海大学研究生论文用纸 还有其配套标准x p a t h ,这个标准用来描述如何识别、选择、匹配x m l 文档中的 各个构成元件,包括元素、属性、文字内容等。我们的x s l 阅卷模块不对学生的 f 0 部分进行考察,即只考察x s l t 和x p a t h 部分。 如前所述,x s l t 主要的功能就是转换,它将一个没有形式表现的x m l 内容 文档作为一个源树,将其转换为一个有样式信息的结果树。在x s l t 文档中定义 了与x m l 文档中各个逻辑成分相匹配的模板,以及匹配转换方式。使用x s l 定义 x m l 文档显示方式的基本思想是:通过定义转换模板,将x m l 源文档转换为带样 式信息的可浏览文档。 在x m l 中声明x s l 样式单的方法如下: 至于具体的转换过程,既可以在服务器端进行,也可以在客户端进行。两者 分别对应着不同的转换模式: 1 服务器端转换模式: 在这种模式下,x m l 文件下载到测览器前先转换成h t m l ,然后再将h t m l 文件 送往客户端进行浏览。服务器端转换有两种方式: 动态方式:即当服务器接到转换请求时再进行实时转换,这种方式无疑对 服务器要求较高。 - 批量方式;实现将x m l 用x s l 转换好一批h t m l 文件,接到请求后调用转 换好的h t m l 文件即可。 z 客户端转换模式 这种方式是将x m l 和x s l 文件都传送到客户端,由浏览嚣实时转换。前提是 浏览器必须支持x m l 和x s l 。 2 , 1 3 d t d 介绍 x m l 提供了一种与具体应用无关的分享数据的方法。通过定义d t d ,不相干 的组织可以利用一个公共的d t d 文件来达成协议、交换数据。具体的应用程序可 以通过一个标准的d t d 文件来验证从外界接受到的x m l 数据是否是有效的,也可 以利用d t d 来验证自己的x m l 数据是否是有效的。 d t d 实际上是“元标记”这个概念的产物,它描述了一个标记语言的语法和 词汇表,也就是定义了文件的整体结构以及文件的语法。简而言之,d t d 规定了 一个语法分析器为了解释一个“有效的”x m l 文件所需要知道的所有规则的细 节。 这个“规则”可以非常简单,仅仅列出所有有效的元素,例如元素、标记、 属性、实体;也可以非常复杂,不但列出这些元素,还指出这些元素之间的内在 联系,例如说明元素x 中必须还包含元素y 或元素z ,但不能同时包含两个元素。 第1 4 页共5 4 页 上海大学研究生论文用纸 d t d 为x m l 标记语言提供了一系列语法规定,以便给各个语言要素赋予一定 的顺序。为了说明特定的语法规则,d t d 采用了一系列正则式,语法分析器将这 些正则式与x n l 文件内部的数据模式相匹配,从而判别一个文件是否是有效的。 匹配被严格执行,因此,如果x m l 文件中有任何信息不符合d t d 的规定,都被认 为是“非有效”的文档。 一个d t d 既可以是内部的,包含在一个“形式良好的”x m l 文件中也可以是 外部的,作为一个外部文件被引用。如果为每一个x m l 文件加入一段d t d 定义, 是相当繁琐的,更多的情况下,我们会为一批x m l 文件定义一个相同的d t d 。例 如,对于报社中的每篇稿件,它们都有相同的格式,可以采用个统一的d t d , 为每一篇单独定义既麻烦,又不利于统一格式。 外部d t d 的好处是:它可以方便高效地被多个) ( m l 文件所共享。你只要写一 个d t d 文件,就可以被多个x n l 文件所引用。事实上,当许多组织需要统一它们 的数据交换格式时,它们就是通过外部d t d 来完成的。这样做不仅简化了输入工 作,还保证当你需要对d t d 做出改动时,不用一一去改每个引用了它的x n l 文件, 只要改一个公用的d t d 文件就足够了。 为了引用一个外部d t d ,可以在x m l 文件中加入如下声明: 2 1 。4 d o m 介绍 要从x m l 文件中获得信息和数据需要利用】( m l 处理器( 或称解析器) 。文档对 象模型( d o c u m e n to b j e c tm o d e l ,简称d o m ) 是处理器访问x m l 文档的应用编程 接口( a p i ) ,是由w 3 c 定义和支持的标准。 d o m 是一个平台无关和语言中立的接口,允许程序和脚本动态访问和更新文 档的内容、结构和风格。它提供了一套标准的对象来表示x m l 文档,一个组合这 些对象的标准模型,以及访问和处理它们的个标准接口。厂商可以将d o m 作为 他们的专有数据结构和a p i 的一个接口,用户可以访问标准的d o m 接口而不是特 定产品的a p i 这样就提高了w e b 上的互操作性。 d o m 标准的目标是定义一个x m l 的编程接口。d o m 定义了文档的逻辑结构和 访问及处理文档的方式。这里的“文档”是广义的。x n l 已被用来表示各种存储 在不同系统中的信息,它们传统上被看成数据而不是文档,然而,x m l 将这些数 据表示为文档,而d o m 可以被用来管理这些数据。 在d o n 中,文档具有一个非常类似于树的逻辑结构,然而,d o m 并不要求文 档必须被实现为一棵树,也不指定对象间的关系如何实现。它是一个逻辑模型, 第1 5 页共5 4 页 上海大学研究生论文用纸 可以以任何方便的方式实现。i ) o m 结构模型的一个重要特性是结构的同构性,即 如果两个d o m 实现被用来创建同一文档的一个表示,它们将产生同样的结构模 型,具有同样的对象和关系。 d o m 之所以被称为“文档对象模型”是因为它是传统面向对象设计意义上的 一个“对象模型”:文档用对象建模,模型不仅包含了文档的结构,也包含了一 个文档的行为和组成它的对象。换句话说,结构中的节点不是代表一个数据结构,
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 梯形(教学设计)-2023-2024学年四年级下册数学西师大版
- 八年级历史下册 第二学习主题 社会主义道路的探索 第5课 艰苦创业的民族脊梁说课稿4 川教版
- 四年级信息技术下册 使用压缩软件 2说课稿 冀教版
- 2024-2025学年新教材高中生物 第五章 细胞的能量供应和利用 第2节 1 细胞的能量“货币”ATP(2)说课稿 新人教版必修1
- 湖南省桑植县贺龙中学高中音乐《第三单元 鼓舞弦动-丰富的民间器乐》第六节 鼓乐铿锵 教案
- 10《苏武传》教学设计 2024-2025学年统编版高中语文选择性必修中册
- 2025年初中生物学教师招聘考试模拟试卷及参考答案
- 2025年秋新人教版数学三年级上册全册同步教学设计
- 4.2.1元素周期律教学设计 2023-2024学年高一上学期化学人教版(2019)必修第一册
- 2025年中考化学试题分类汇编:坐标图像题(第2期)原卷版
- CJT 409-2012 玻璃钢化粪池技术要求
- YD-T 4339-2023 5G移动通信网能力开放(NEF)总体技术要求
- 《克雷洛夫寓言》阅读手册寒假阅读作业设计
- 对外汉语教学教案设计及板书省公开课金奖全国赛课一等奖微课获奖课件
- 公司三门峡市芦花岭铝土矿矿山地质环境保护与土地复垦方案
- 危险品企业安全风险隐患排查治理手册
- 物业小区多种经营创收方案及应用
- 《建筑装饰设计收费》
- 设备预防性维修管理
- 去极端化自我剖析
- 生殖伦理培训课件
评论
0/150
提交评论