科技资料文献管理系统的设计与实现-毕业论文

上传人:good****022 文档编号:116529983 上传时间:2022-07-05 格式:DOC 页数:39 大小:838.50KB
返回 下载 相关 举报
科技资料文献管理系统的设计与实现-毕业论文_第1页
第1页 / 共39页
科技资料文献管理系统的设计与实现-毕业论文_第2页
第2页 / 共39页
科技资料文献管理系统的设计与实现-毕业论文_第3页
第3页 / 共39页
点击查看更多>>
资源描述
科技资料文献管理系统的设计与实现摘 要 在论文写作及科学研究的过程中,参考文献的运用是必不可少的。在网络迅速发展的今天,能够获得的参考文献数量与过去不可同日而语。如此众多的资料为研究工作者提供了巨大的方便,能够保证当前的研究工作站在最前沿的科技基础上,同时避免的大量重复低效能的工作,具有十分重要的意义。科技资料文献管理系统就是一种使用户(尤其是科研工作者)可以对各种类型的文献信息进行有效收集、管理检索以及按照不同的格式进行输出的工具。该系统解决了科技工作者平时大量文献资料不方便查找、统计、标注和管理的难题,同时免去了在编写文献过程中花在规范文献格式上的大量时间。通过该系统,可以对已阅读的文献添加备注,关键字。并可通过自行添加的备注和关键字进行相应文献的查询和修改。它实现了对科技文献信息的录入、查询、排序、删除、添加和参考文献的自动生成等基本功能。系统能够有效的帮助使用者高效、便捷的管理大量的各种科技文献。同时可以根据用户的需要设定文献格式的自定义模板,准确的进行文献的自动生成。 本文相对于其它文献管理系统的创新点在于,自动生成文献的过程中,添加了PDF书签功能,使阅读文献更加方便。同时利用MathML(Mathematical Markup Language)实现公式的输出,它可以帮助我们在Web以及字处理器中显示、操作和共享数学表达式。关键词: 科技文献;文献管理系统;资料管理 IAbstract AbstractThe use of references is essential when writing paper and in the process of scientific research. The number of reference getting in the nowadays with the rapid developing internet is not the same as before. So much information provides the convenience to the researchers, and ensures that the current research work can be in the forefront of scientific and technological base, while avoiding the duplicate insufficient work, thats very significant.Technology file system is a tool that enables users (especially scientific research workers) can collect, manage, search and output all types of literature .The system solves the technology workers problems including the inconvenience with the large number of literatures finding, statistics, tagging and management, while avoiding to spent a lot of time in documents format when compiling.User can add note and keyword to literatures which have read by the system, and query or edit corresponding literature. The system can add, query, sort, delete scientific literatures and generate references automatic. It can help users manage large variety of scientific literatures efficiently and conveniently, also can set custom document format templates and auto generate literatures according to users requirement.The innovation of this thesis compares to other management systems is that adding the PDF Bookmarks feature in the process of automatic document generation, that makes the literature reading more convenient. At the same time, using MathML (Mathematical Markup Language) to achieve the output of formula, it can help us to show, operate and share the mathematical expression in the Web and processor.Keywords: Scientific Literature; Literature Management Systems; File Management目 录第一章绪论11.1 文献管理系统的背景及意义11.2 本文主要工作41.3 本文组织结构5第二章 文献管理系统的架构62.1 需求分析62.2 模块划分6第三章文献管理系统的设计与实现93.1 系统开发平台及开发环境93.2 数据库设计93.3 功能模块设计103.3.1文件操作模块103.3.2 文献编辑模块113.3.3文献管理模块113.3.4查找模块123.3.5鼠标控制133.4 类设计133.5 主界面设计15第四章 文献自动生成的设计与实现174.1 文献生成中的主要技术介绍174.2文献生成的概要设计174.3 文献生成的前端Java应用程序184.4 DTD文件的设计204.5 XML文档的设计224.6 XSL文件的设计244.7实现XML到PDF文件的转换254.8 文献自动生成中的特色25第五章 总结与展望285.1 总结285.2 未来工作展望28致谢29参考文献3031ContentsChapter 1 Introduction11.1 Background and Significance11.2 Main Work of Thesis41.3 Configuration of Thesis5Chapter 2 Configuration of File Management System62.1 Requirement Analysis62.2 Module Devision6Chapter 3 Design and Implementation93.1 Hardware and Software Environment93.2 DataBase Design93.3 Design of Module103.3.1 Design of File Opertation Module103.3.2 Design of Edit Information Module113.3.3 Design of File Management Module113.3.4 Design of Search Module123.3.5 Mouse Control133.4 Design of Class133.5 Main Interface Design15Chapter 4 Design and Implementation of File Automatically Generate174.1 Introduction of Main Technology174.2 Summary Design174.3 Java Applications Desgin184.4 Design of DTD File204.5 Design of XML File224.6 Design of XSL File244.7 Convertion from XML to PDF254.8 Features25Chapter 5 Conclusions and Future Work285.1 Conclusions285.2 Future Work28Acknowledgements29References30第一章 绪论第一章 绪论中国科学院过程工程研究所从2001年开始进行基于网络的文献管理系统的研究工作。基于网络的文献管理系统可以通过C/S(客户端服务器)模式和B/S模式两种方式来实现。本文将主要介绍基于C/S模式下的系统设计以及开发的初步结果。基于C/S模式的文献管理系统,使用户可以通过本地磁盘上存储的文献资料,方便地进行信息的管理和使用,并使系统的维护和更新更为方便和及时。1.1 文献管理系统的背景及意义随着Internet的发展,文献信息的发布和获取与过去有了很大的不同,文献信息的电子化和网络化越来越普及,Internet正在成为人们获取和交流信息的基本平台。许多科技期刊的全文可以通过网络直接获取,例如重庆维普的中文科技期刊全文数据库、著名出版商Elsevier的Science Direct电子期刊。国内外各大图书馆也都在网上提供馆藏目录查询(OPAC)服务,例如中国国家图书馆,美国国会图书馆等。还有许多综合性的专业站点提供包括会议信息、专业数据库、专利等各种丰富实用的资源,例如著名的化学化工虚拟社区ChemW 站点等。通过Internet获取信息的方式也造成了信息的海量性和异质性,使得传统的文献管理方式难以满足信息的存储、组织、检索和使用等各方面的需要,从而迫切需要一种工具对信息进行有效的管理。文献管理系统就是一种使用户(尤其是科研工作者)可以对各种类型的文献信息进行有效收集、管理检索以及按照不同的格式进行输出的工具。对信息的收集可以通过“手工导入”和“自动导入的方式来进行”,“手工导入”就是通过拷贝、粘贴或直接输入数据进行文献信息的输入,“自动导入”就是通过系统提供的工具自动地将信息批量输入到系统的数据库中。对信息的管理,包括可以通过各种检索方式从数据库中找到所需的文献信息等。对信息的输出,可以将用户选择的信息按照选定的格式通过“自动导出”的功能进行自动输出,或者自动生成电子文档的参考目录。除此以外,由于如今的科研工作往往不是孤立进行,而是基于一个团队(Team)的,这就要求文献信息应该在整个团队中进行共享和交流。因此,文献管理系统应该是基于网络平台的,通过对用户的权限控制等方式,来实现文献的共享和交流。对科研工作者来说,方便有效的文献管理系统显得尤为重要,它贯穿于科研工作的整个过程中,与每一个阶段都密切相关。在论文写作及科学研究的过程中,参考文献的运用是必不可少的。在网络迅速发展的今天,能够获得的参考文献数量与过去不可同日而语。如此众多的资料为研究工作者提供了巨大的方便,能够保证当前的研究工作站在最前沿的科技基础上,同时避免的大量重复低效能的工作,具有十分重要的意义。但是,与此同时,要快速地查找出某一作者的文章(书) 、检索某一关键词的文献资料,或方便地阅读某篇文章或某本书的主要内容,一般都要花费一定的寻找时间。因此,建立一个对这些文献进行有效管理的系统无疑是一个有意义的工作。同时,考虑到不同的论文写作对于参考文献的格式要求也不尽相同,这同样给论文作者在论文排版中带来了大量重复性的工作,而这些都是完全可以通过程序自动完成的。遗憾的是,到目前为止,就作者所知仅有的文献管理系统多是网络版且为收费系统,用户无法在非网络环境下使用,而且还需要交纳一定的费用,这就使很大一部分用户使用起来十分的不方便。基于此,本文建立了一个个人参考文献管理系统,能帮助使用者有效利用信息资源,建立和管理个人的参考文献,从而形成完全个性化的知识环境,创建个人的参考文献数据库,保存有价值的参考文献,并对这些参考文献进行管理、检索、阅读,批注和使用,用户利用个人参考文献管理系统,可以非常方便地查找自己累积的有价值的参考文献书目,还可以在撰写文稿的过程中,自动生成规范的、符合出版要求的文后参考文献。目前国内外主流的科技资料文献管理软件主要有EndNote、Reference Manager、ProCit、RefWorks、Biblioscape、NoteExpress等。本文对几款常用的国内外参考文献管理软件作一介绍,并比较了它们之间各自的特点。1EndNote:它是一款优秀的文献管理软件,最新版本为X1(v11.0.0.2566),是目前国内外使用较广泛的文献管理软件。它能为使用者带来极大的便利,提高工作效率。它的主要功能有:(1) 个人数据库的管理;(2) 撰写论文;(3) 收集资料的方式;(4) EndNote的适用性。2Reference Manager:提供个人处理所搜集的各类型参考资料,并可建立个人书目数据库,同时,可以书目记录中的字段(如作者、文章篇名等)进行布尔逻辑检索相关的书目数据;对于从事研究、教学或撰写论文的读者,欲引用、参照各类资料或编制参考书目等相当便利。此外,当读者在进行数据库检索或网络资源查询时,也可利用此种软件与远程主机进行联机,将所查得的资料直接下传至个人书目数据库中。Reference Manager较适合科学及医学领域的研究人员使用。但是由于该软件不支持中文,因此,用的也不多。3RefWorks:它是CSA公司的一个联机个人文献书目管理系统,用于帮助用户建立和管理个人文献书目资料,并可以实现在撰写文稿的同时,即时插入参考文献,同时生成规范的、符合出版要求的文后参考文献。RefWork提供快速检索和高级检索两种检索模式,用户可以轻松查到所需的书目信息。个人的书目数据既可以从其他数据库批量导入,也可以由手工录入。可以将众多其他数据库中的书目数据直接批量导入个人文献书目数据库中,通过个人文献书目数据库的检索,间接实现对多个数据库的跨库检索,提高资料检索的查全率和查准率。在个人文献数据库中建立文件夹、存放文献的数目不受限制。个人书目数据库提供了全文链接,获取全文快捷、方便。RefWorks适用于研究员、学生、教师和图书馆馆员等。4 Biblioscape:它是Biblioscape公司一款基于Windows平台的研究信息管理工具,目前最新版本为7.0。Biblioscape能以文件夹的形式组织和管理文献,并与Word软件相集成,简化在写作论文时对文献的引用和处理。同时,该软件内建的BiblioWeb(以下简称BW)可以在互联网上发布文献资料,方便文献资料共享,实现了文献资料、图书目录的轻松网络化管理。Biblioscape并不能简单地归入到文献管理软件中来,因为它的功能实在太强大了,它不仅是文献管理工具,还是文献分析工具;另外Biblioscape版本众多,适合不同研究者需要。Biblioscape对中文支持的比较早,不过到现在仅支持g b2312编码,不支持utf-8。5NoteExpress:是国内最专业的文献检索与管理系统,其核心功能涵盖知识管理的所有环节,包括知识采集、管理、应用和挖掘。NoteExpress完全支持中文,并且支持多语言格式化输出。还可以帮助使用者通过各种途径高效、自动地搜索(含互联网)、下载、管理文献资料和论文,以附件方式管理参考文献全文或者任何格式的文件。数据挖掘的功能可以帮助用户快速了解某研究方向的最新进展和各方观点等。除了管理以上显性的知识外,类似日记、科研心得、论文草稿等瞬间产生的隐性知识也可以通过NoteExpress的笔记功能纪录,并且可以与参考文献的题录联系起来。该软件可以在使用Word中输出各种格式化的参考文献信息,按照各种期刊杂志的要求自动完成参考文献引用的格式化,不需要脱离Word环境,特别是当中外文混排或同一文献要求输出中英语格式,NoteExpress可以实现完美输出。与笔记以及附件功能的结合、全文检索、数据挖掘等,使该软件可以作为强大的个人知识管理系统。6综述:总的来说,目前使用最广的国外软件是EndNote,国内是NoteExpress,网络版用的最多是RefWorks,而Biblioscape的功能最强大。从国内使用的角度讲,NoteExpress具备了与其余文献管理软件的数据交换能力,并且更符合中国人使用的习惯和特点。不同专业的研究人员可以根据自己专业的特点,选择适合自己的文献管理软件。表1.1Papyrus,EndNote和Biblioscape的性能比较PapayrusEndNoteBiblioscape适用操作系统Dos/Macintosh/WindowsDos/Macintosh/WindowsWindowsB/S版本无有有支持文献类型81620文献描述的用户自定义无有有检索功能好不好好自动导入过程监控有无无导入导出格式的用户自定义有有有重复文献检测有有但不好有在文档中直接使用文献无有有与Web的连接无无有1.2 本文主要工作随着计算机和Internet相关技术的发展,一方面使人们对文献管理系统的功能有了新的需求,另一方面技术的发展也为新功能的实现提供了可能。按照软件工程中项目的实现流程和具体过程,对整个系统从开题到系统实现应用了完整规范的开发流程。本文的主要工作内容包括对系统架构的分析,需求分析,模块划分,以及概要设计,详细设计的过程。最后,对系统的实现结果进行展示。本文建立了一个个人参考文献管理系统,能帮助使用者有效利用信息资源,建立和管理个人的参考文献,从而形成完全个性化的知识环境,创建个人的参考文献数据库,保存有价值的参考文献,并对这些参考文献进行管理、检索、阅读,批注和使用,用户利用个人参考文献管理系统,可以非常方便地查找自己累积的有价值的参考文献书目,还可以在撰写文稿的过程中,自动生成规范的、符合出版要求的文后参考文献。1.3 本文组织结构本文主要研究了科技资料文献管理的设计与实现。以下是本文的组织结构:1. 第一章:绪论。主要介绍了文献管理系统的总体概念,选题背景及意义,国内外文献管理介绍比较,本文主要内容和工作,以及本文组织结构。2第二章:文献管理系统的需求分析。介绍了整体软件目标,程序设计目标,模块划分,以及各主要模块的详细说明。3第三章:文献管理系统的设计与实现。介绍了系统开发平台及环境,数据库设计,类设计,主界面设计,功能模块设计,以及文献自动生成的设计与实现。4. 第四章:文献自动生成的设计与实现。介绍了文献自动生成中的应用到的主要技术,文献自动生成的总体设计,以及关键的Java前端应用程序,DTD文件的设计,XML文件的设计,XSL文件的设计。5第五章:总结与展望。对全文进行了总结,并且对文献管理系统的未来进行了展望。科技资料文献管理系统第二章 文献管理系统的架构文献管理系统就是一种使用户(尤其是科研工作者)可以对各种类型的文献信息进行有效收集、管理检索以及按照不同的格式进行输出的工具。对信息的管理,包括可以通过各种检索方式从数据库中找到所需的文献信息等。对信息的输出,可以将用户选择的信息按照选定的格式通过“自动导出”的功能进行自动输出,或者自动生成电子文档的参考目录。为了实现以上的功能就必须进行需求分析,在所有软件开发中了解用户的需求是系统开发的第一步,在本章将对文献系统的需求进行分析,并对整体软件目标、模块划分以及各主要模块进行详细说明。2.1 需求分析当前开发任意一款软件最先进行的就是了解用户的需求,而且需求分析是之后开发软件、测试软件所必要的文档依据,进行文献管理系统的第一步也要进行需求分析,根据需求得出下面的软件整体目标: 1. 科技资料文献基本信息的输入及更改,例如论文的名称、作者、来源、关键词等;2. 参考文献模板的设置及参考文献文档的自动生成;3. 为资料文献添加批注或注释信息;4. 按照不同的查询条件对资料文献进行精确及模糊查询;5. 科技资料文献的分类统计、排序、存档及打印;6. 自动生成文献间的相互引用关系及知识结构图;7. 良好的用户操作界面。2.2 模块划分在开发文献管理系统过程中,按照之前的用户需求文档对系统进行了详细的功能划分,具体可分为以下六个模块:1文件操作模块:实现对文献列表的展开,添加文献,退出系统。文件操作模块中最关键的参考文献的添加。按照参考文献的类型,可将参考文献分为8种,分别为期刊文献J、著作M、学位论文D、专利P、标准S、论文集文献类型标志、报纸中析出的文献N、电子文献文献类型标志/文献载体标志。每一类参考文献的文后标准是不同的,所以8种参考文献用8种不同的格式录入,存放在事先建好的数据库中,并同时对文献进行分类以便查询用。2编辑模块:实现对文献基本信息的输入及更改,包括论文的名称、作者、来源、关键词、内容等,同时可以对正读文献添加批注。修改后,数据库中可以对其相应的信息同步更新,并且在主页面的显示效果中也会更新显示。3.管理模块:对文献进行分类管理,包括添加分类,改变文献分类,删除分类,删除文献。同时可以对文献信息进行简单的统计,排序。在对文献分类信息修改后,数据库和主页面的信息会进行同步更新。通过此模块可以使文献信息管理更加清晰明确,也给查找阅读文献带来了极大的方便。4.查询模块:制定查询条件,可以根据作者,标题,关键词,内容,标注信息进行查询。查询部分包括对参考文献的检索和文献信息管理两部分。参考文献的检索方式分为高级检索和按固定项目查找。高级检索集合用户所需要的各种条件,在所有文献中进行具体查询。按固定项目查找共分三个项目:查找作者、查找文献标题和查找期刊,按固定项目列出所有的文献标题,点选标题可得到文献的详细信息。得到文献的详细信息便可以进一步完成文献信息的管理。文献信息的管理主要包括对文献信息的修改、删除文献信息和更改文献存放组别三个部分,可分别完成对文献信息的不同管理。5文档自动生成模块:根据用户论文格式的需要,制定论文格式模板,然后根据用户输入的内容进行用户论文的自动生成。使用参考文献管理系统最重要,也是最方便的一部分,就是按要求生成文后参考文献文档了。用户可编辑文后参考文献的输出格式,通过eclipse 3.2软件调出Word文档,系统则按照用户编辑的格式,将用户需要的参考文献信息显示在Word文档中,生成文后参考文献文档,以供用户使用。在java程序里需要若要自动生成文档,则需要包括添加各种科技文献的基本信息,包括:封面的设计,摘要,引言,章节,目录,段落,参考文献,以及页眉页脚的功能等。6结构图模块:自动生成文献间的相互引用关系及知识结构图,用户可以选择相关的文献,自动生成文献间的相互引用关系及知识结构图。以上六个模块构成了一个完整的科技文献管理系统,第一步,根据各个模块之间的相互关系,进行归纳、总结、分析,得出了一个大体的文献管理系统功能结构框架,第二步,经过进一步的细化和思考,又将每个模块进行了具体的子功能划分,得出最终的文献管理系统功能结构图,如下:图2.1 系统的功能结构图第三章 文献管理系统的设计与实现第三章 文献管理系统的设计与实现在本章主要对文献系统的具体实现进行了介绍,包括五个小节:系统开发平台及开发环境、数据库设计、功能模块设计、类设计及主界面设计。而每个小节又对具体内容进行了划分,详细的展示了一个完整的文献管理系统开发过程。3.1 系统开发平台及开发环境1系统的硬件平台处理器:Pentium级CPU主频在200MHZ以上;内存:不低于256M;硬盘不小于40G。 2系统的软件环境开发工具:eclipse 3.2、Altova XMLSpy 2005、Fop Processor v0.20.5、MathType v5.2;开发语言:Java jdk1.6.0;开发平台:Windows XP;软件建模:IBM Rational Rose;软件管理:IBM Rational ClearCase;性能测试:IBM Rational Quantify。3.2 数据库设计该系统的数据库设计,采用简单的一张表完成。Fmess表用于存储科技文献的一些基本信息,包括标题,作者,关键字,备注,存储位置,时间(添加到系统的时间),是否已读,对表的说明,各个字段的详细说明。表3.1 Fmess 表的字段说明字段名数据类型说明索引必添字段 Y/NTitle文本(50)标题有YAuthor文本(50)作者有YKeyword文本(50)关键字有YRemark文本(50)备注有NSort文本(50)分类有N表3.1 Fmess 表的字段说明字段名数据类型说明索引必添字段 Y/NSource文本(100)来源有YTimes文本(50)时间有YIfRead文本(5)已读没有Y3.3 功能模块设计下面我们将依次介绍系统的六个主要功能模块的设计与实现,包括各个模块的详细说明,功能实现情况,以及实现的效果截图。下面将分五个小节进行具体介绍。3.3.1文件操作模块文献操作包括对文献的添加,文献列表的展开,退出系统三个子菜单。通过对文献的添加,可以通过输入文献的基本信息,将文献添加到系统中。以便以后的记录和阅读。展开列表可以将所以系统中的文献在一个table里罗列出来。单击列表中的一个文献,将会在主窗口的下方将他的基本信息,以及记录的备注信息显示出来。双击一个文献,则会用相应的软件打开这个文献,供读者阅读。图4.2 添加文献界面3.3.2 文献编辑模块在此模块中,可以对文献的基本信息进行修改。当点击它时,系统会自动从数据库中读入当前选择文献的基本信息。用户就可以根据需要对它进行修改。同时还提供了对当前正在阅读文献进行添加备注的功能。图4.3 修改文献信息3.3.3文献管理模块 文献管理是该系统的一个非常重要的功能。它提供了对系统中所有文献进行分类统计、管理的功能。作用和Internet Explorer在浏览器中起到的作用相似。从截图中可以看出,它提供了创建分类,重命名分类,改变文献分类,删除文献的功能。通过它可以使文献的管理更加清晰、明了,给快速的找到一个文献带来了极大的方便。图4.4 文献管理窗口图4.5 改变文献分类窗口3.3.4查找模块 对于一个管理系统,查找功能应是必不可少的功能之一,此系统的查找模块提供了各种方式的查找方法,包括对作者、标题、关键字、类别、备注信息的查找。该查找都是针对输入的信息,进行的模糊查询。图4.6 查找模块3.3.5鼠标控制 在该系统中,同时有一些鼠标控制事件。对于树结构,即主页面左边的部分,当单击树节点时,就会在主页面上显示出该节点对应的文献的基本信息。双击一个节点,则会用相应的软件打开这个文献,供读者阅读。图4.8 鼠标控制事例3.4 类设计在此系统的设计过程中,将具有独立功能的代码放在一个类中。使各个类之间具有相对独立性。以下使类的设计及类功能的说明:表3.2 类的功能说明类名功能MainPro.java系统的主程序,初始化主界面FileTree树的组件,包括对树的初始化,以及一些对树的增删改查等操作FileTable.java列表的组件,包括对列表的初始化,以及对列表的排序,相应事件等操作DbOperation.java对数据库的操作。表3.2 类的功能说明类名功能AddFile.java 添加文献的操作,可以从磁盘中选取文献添加到系统中SortManage.java对文献分类的管理。包括创建分类,删除分类,改变文献的分类。ModifyInfo.java对文献基本信息的修改,包括标题,作者,关键字,标注等基本信息FileOperation.java对存储分类信息的文件的操作。由于文献自动生成模块是一个相对比较大的模块。故我们对它进行单独说明,以下是该的类的说明:表3.3 文献自动生成的类功能说明类名功能Editor.java封面的添加,以及文档生成的主窗口AddChap.java添加章AddKeyword.java添加关键字AddParagraph.java添加段落AddRef.java添加参考文献AddSection.java添加节AddSubsec.java添加小节ImageFileView.java从本地文件系统中进行图片选择ImageFilter.java和插入图片相关的类ImagePreview.java 和插入图片相关的类Util.java和插入图片相关的类图3.2 系统类图3.5 主界面设计设计科技资料文献管理系统,首先根据系统要实现的功能,设计系统的主窗口,完成系统主菜单的设计。因为系统主要功能分为文献添加、文献查询管理、文献分类管理,文献自动生成等几个部分,所以系统主菜单的设计也主要围绕这几部分功能来设计。在程序的主界面中,左边采用了一棵树的形式,显示所有的文献分类信息。右边采用了列表的形式显示用户管理的所有文献,并将文献的基本信息显示出来。右下方用于显示点击文献时,显示相应文献的基本信息。如下图:图4.1 系统主页面第四章 文献自动生成的设计与实现第四章 文献自动生成的设计与实现在上一章对文献管理系统的需求分析、总体架构以及总体的设计与实现进行了介绍,除以上内容之外,在开发文献管理系统过程中,还有一个最主要的实现功能,即文献自动生成。在本章将对这部分主要技术进行详细的介绍,包括文献生成的概要设计、文献生成的前端Java应用程序、DTD文件的设计、XML文档的设计、XSL文件的设计、实现XML到PDF文件的转换以及文献自动生成中的特色。4.1 文献生成中的主要技术介绍DTD(Document Type Definition,文档格式定义)。对于想利用XML文件来交换信息的实体来说,他们之间必须有一个约定即编写XML文件可以用哪些标记,母元素中能够包括哪些子元素,各个元素出现的顺序,元素中的属性怎样定义等。这样他们在用XML交换数据时才能够畅通无阻,这种约定称为DTD。可以把DTD看作编写XML文件的模板。对于同行业之间的XML数据交换,有一个固定的DTD将会方便很多。比如说,如果网上的各大电子商场的XML网页都遵循同一个DTD时,那么我们就可以轻松地依据这个DTD 编写一个应用程序,去网上将我们感兴趣的东西自动抓回来。XML是The Extensible Markup Language(可扩展标识语言)的简写。目前推荐遵循的是W3C组织于2000年10月6日 发布的XML1.0版本,参考(www.w3.org/TR/2000/REC-XML-20001006)。和HTML一样,XML同样来源于SGML,但XML是一种能定义其他语言的语。XML最初设计的目的是弥补HTML的不足,以强大的扩展性满足网络信息发布的需要,后来逐渐用于网络数据的转换和描述。目前在网站信息传递中常用的RSS就是典型的XML应用。XSL(Extensible Stylesheet Language)它是指可扩展样式表语言。 XSL之于 XML 就像 CSS 之于 HTML。说白了就是将XML中的数据用指定的显示格式输出XML不像HTML,它不包含任何显示格式的信息XSL 包含两个部分:1 XSLT 用于转换 XML 文档的语言. XSLT 是指XSL转换 (XSL Transformation) 2 XPath 用于在 XML 文档中导航的语言 。4.2文献生成的概要设计 1根据范文的层次格式编写DTD文档,整个文件(project)包括封面(cover)、摘要(abstract)、正文(maintext)。其中封面(cover)包括题目(title)、姓名(name)、学校(college)、系(department)、专业(profession)、年级(grade)、学号(sn)、校内指导老师(teacher1)、校外指导老师(teacher2)及职称(zhicheng),职称(zhicheng)是老师的属性;摘要(abstract)包括中文摘要(abstract_cn)、中文关键字(keywords_cn)、英文摘要(abstract_en)、英文关键字(keywords_en);正文(maintext)包括章(chapter)、节(layerA)、子节(layerB)、段(paragraph)、图片(image)、上标(sup)、下标(sub)、加粗(emph)、斜体(italicfont)及ID、title、entitle、标签(label)和链接(url),ID、title、entitle是章、节、子节段落的属性,标签(label)、链接(url)是图片的属性。2根据范文的排版格式编写XSL文档来对XML文档进行格式化。包括两个simple-page-master,用于封面、摘要与正文的页面。编写代码,通过遍历各章节的标题,自动生成文档的目录和书签,并嵌入相应的内部链接功能,实现通过点击目录或书签的链接跳转到相应的章节。考虑各段落中的图片、公式、表格、内联图片、上下标、加粗、斜体等图片和文本格式,并编写相应的模版来匹配。3.根据DTD文档,参照范文内容,编写XML文件,手工输入要显示的内容,包括文字、图片、表格和公式等。4用DTD文件对写好的XML文件进行有效性检验。5将XML文件转化成PDF文件4.3 文献生成的前端Java应用程序由于需要使文献自动生成,故必须具备一个输入文献相关信息的窗口。在这里采用了JAVA应用程序的设计。一个完整的文献通常都需要包括封面、摘要、目录、引言、正文、总结、致谢、参考文献这些内容。因此如果要生成一个可供使用的正确格式的参考文献,就必须包括上面的所有信息的输入窗口。在这里将java应用程序分为了八大模块,即:封面、摘要、目录、引言、正文、总结、致谢、参考文献。其中封面包括题目、姓名、学校、系、专业、年级、学号、校内指导老师、校外指导老师及职称,职称是老师的属性;摘要包括中文摘要、中文关键字、英文摘要、英文关键字;正文包括章、节、子节、段、图片、上标、下标、加粗、斜体及ID、title、entitle、标签和链接。通过这些输入信息,系统将根据输入内容在后台生成相关的XML文档。以下是输入的主窗口:图5.1 文献自动生成的主界面增加XML文件内容的关键代码如下:string filepath=E:WebsXMLProjectprojectmodel.xml;XmlDocument xmlDoc=new XmlDocument();xmlDoc.Load(filepath);XmlNode root=xmlDoc.SelectSingleNode(project);/查找XmlNodeList nodeList=root.SelectSingleNode(cover).ChildNodes;/获取project节点的所有子节点foreach(XmlNode xn in nodeList)/遍历所有子节点XmlElement xe=(XmlElement)xn;/将子节点类型转换为XmlElement类型if(xe.Name=title)xe.InnerText=txtTitle.Text;else if(xe.Name=name)xe.InnerText=txtName.Text;.(略)else if(xe.Name=teacher1)xe.InnerText=txtTeacher1.Text;xe.SetAttribute(zhicheng,txtZhicheng1.Text);else if(xe.Name=teacher2)xe.InnerText=txtTeacher2.Text;xe.SetAttribute(zhicheng,txtZhicheng2.Text);else if(xe.Name=date)xe.InnerText=txtDate.Text;xmlDoc.Save(filepath);/保存。4.4 DTD文件的设计DTD作为一个XSL的应用程序,在语法上应该是完全包括在简单的XML标记规则中;语义上它注释的应该是科技论文的逻辑结构和内容,而不是排版格式或外观表现,其目的是实现科技论文的按内容标注。科技论文DTD的设计目标是:以直观和简洁的方式来呈现科技论文中有价值的语义信息。在设计时,我们并不考虑日后该DTD描述的科技论文具体会有哪些用途,只是尽量全面地考虑今后有可能会被用到的信息,按照该DTD定义,可以完整、规范地制作成XML文档,以便于用户根据需要获取相关的内容。这样做的好处是,基于这些数据的服务不会被拘禁于定的脚本语言、制作工具及传输引擎的囚笼内,不同的制作及传输工具将各显神通,从而极大限度地满足客户的需求。具体地说,科技论文DTD应该满足以下要求:1 容易格式化,具备格式化提示;2 数据定位明确,易于程序查找;3 对于常用的元素类型和属性具有简短的标识符,不常用的具有描述性的标识符;4 不使用含糊的标记手段和技术,将文档作者导入错误和不兼容性的机会降到最低;5 遵循用户所熟悉的行业术语。科技论文结构工整,逻辑性强,用词规范有规律,关键词分布较均匀,相对其他文体而言易于进行结构与语义分析。经过分析与归纳,我们得出以下科技论文的逻辑结构:1 封面:包括论文的基本信息,如标题、作者、单位、指导老师、年纪、日期等;2 摘要:包括关键字;3 目录:中英文目录;4 前言或引言;5 正文:由段落构成,根据语义可将正文划分成若干层次,层次又可进一步细分成若干子层次,正文、层次、子层次之间呈嵌套关系,我们认为段落是最小的语义子层;6 附录;7 参考文献。在此逻辑结构的基础上,我们将构建起科技论文DTD的整体框架,并进一步给出基于科技论文文本内容的语义标识项;根节点(project)下面包括封面(cover)、摘要(abstract)、正文(maintext)。关键代码如下:1 封面(cover)下面包括题目(title)、姓名(name)、学校(college)、系(department)、专业(profession)、年级(grade)、学号(sn)、校内指导老师(teacher1)、校外指导老师(teacher2)及职称(zhicheng),职称(zhicheng)是老师的属性。2 摘要(abstract)下面包括中文摘要(abstract_cn)、中文关键字(keywords_cn)、英文摘要(abstract_en)、英文关键字(keywords_en)。3 正文(maintext)下面包括章(chapter);章下面包括节(layerA)、段(paragraph);节下面包括子节(layerB)、段(paragraph);子节下面包括段(paragraph);段(paragraph)包括图片(image)、内联图片(inlineimage)、上标(sup)、下标(sub)、加粗(emph)、斜体(italicfont)等。部分元素还包含相应的属性。4.5 XML文档的设计XML是W 3C组织定义的计算机文档表示的标准标记元语言。XML遵循清晰严格的语法,将数据的显示样式与数据本身分离,具有良好的可扩展性。XML借鉴了HTML与数据库、程序语言的优点,将内容与表现分开,不仅使检索更为方便,更主要的是用户之间数据的交换更加方便,可重用性更强。本系统应用XML技术构建仿真报告文档结构模板,使文档结构的变动变得比较方便。用UML建模XML数据文档,必须考虑两因素:1XML数据模式的抽象描述;2UML建模元素表达能力和对应关系。XML是一棵严格层次化的嵌套数据树,由元素和属性构成树上的节点。根据文献描述,将数据类型划分成三种:内建数据类型、简单数据类型和复杂数据类型。图1表示的就是XML数据定义模型:图5.5 XML数据定义模型其中,include表示嵌套包含关系,用于构成树型结构关系。简单数据类型是在内建数据类型基础上扩充得到,用来定义简单元素和属性。复杂数据类型用来定义复杂元素,要求至少包含一个子节点(或者是元素或者属性)。UML建模功能丰富,可以通过不同关系反映对象之间逻辑约束。但是,一个好的模型应该具有高内聚和松耦合,使得宏观上更容易理解。基于这样一个理念,可以减少一些显而易见的模型元素。以下是封面的设计代码:基于模型的诊断XXX软件学院软件工程2002级高考生XXXXXXXXX2006年6月X日 处理图片部分的代码:对象的作用对象是一个图像,用于显示图片,其src属性指定图片文件的地址。4.6 XSL文件的设计1引入命名空间2文档书签的实现通过和的配合使用来实现。其中*代表文档内要链接到的元素的ID
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 管理文书 > 英语学习


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!