抽取WORD文档为结构化信息并存储的方法

2014-01-03 02:09万峰
中国信息化·学术版 2013年4期
关键词:数据存储

万峰

【摘要】在交通行业领域存在着很多的执行标准,这些标准基本上都是以word这种半结构化的数据而存在的。为了进行标准的快速检索和一致性检测,就需要自动化的提取word标准为结构化信息并存入数据库,以便于后续知识数据元的提取进而进行标准比对,得到检测报告。本文采用Jacob技术操作word文档,抽取word为结构化信息并存入Mysql数据库。

【关键词】半结构化数据,数据抽取,Jacob,数据存储,Mysql

【中图分类号】TP311.13 【文献标识码】A 【文章编号】1672-5158(2013)04-0161-02

引言

我们知道交通系统是一个涉及面非常广,领域非常多的庞杂的信息系统。对于这样一个系统要进行正确而又权威性的管理,建立相应各个方面的执行标准进而为我们的交通管理提供一个执行标准是一个项非常必要的工作。交通部作为全国的交通管理部门就成立了相应的标准管理委员会,并委托各个标准制定委员会去制定相应领域的标准以供执行。因为交通问题涉及的领域实在是太复杂了,不仅面广,而且还存在着不同领域的交界信息,甚至同一领域内也存在很多模糊难以界定的问题。每一个标准制定委员会制定出很多的标准,而且各个标准的制定单位还不一样,所以就出现了标准之间存在重复性规定,不一致性规定的问题。

标准的制定都遵从的是一个统一的总章规则,又是以word这种半结构化的数据存在的。所以我想做的就是把word文档信息提取为结构化的信息并存储到结构化数据库当中。那么我们就可以通过比较自动的进行标准的冲突性检测了,检测出存在冲突性的标准并给出冲突检测报告。这样就可以给我们的标准检索和为标准制定者的制定工作提供非常有意义的辅助工作。

1、提取技术

涉及到word格式内容的抽取。目前,用iava实现对word内容进行抽取的工具一般有两种:Jacob和Apache的Poi。

因为要把word的内容抽取为格式化的信息并存入到数据库中,所以首先要能够抽取去整篇word文档的结构化信息及标题结构存人数据库,再抽取相应的文本信息到对应数据库表中。Poi是Apache的一个项目,但是目前只能操作简单的word文档,复杂的、带表格的都不行,不过,相信Apache对Poi的不断完善,效果会有改观。Poi是用纯Java实现的。

Jacob是Java和Com的连接桥,连接Java和Com或者win32函数的一个中间件。Microsoft Word以一种专用格式存储其文档,它通过“组件对象模型(COM)”对象显示其某些特征。Jacob允许任何JVM访问COM对象,从而使Java应用程序能够利用COM对象。所以我才用了Jacob的工具来实现对word文档的信息抽取。

2、系统设计

通过对一篇word文档的研究可以发现,每篇word文档都是以一种统一的格式出现的。即为大标题,一级标题,二级标题,三级标题这样的标题结构出现的,在最低级标题的下面都有相应的段落文本内容描述信息。所以我们也可以把word文档看作是一种结构化的信息存人进数据库中。我的做法就是先把word文档的标题结构抽取出来存入进数据库。再把文本信息当作整个字符串存入到相应的表结构中。拿一个word标准以作示例:

道路、水路货物运输地理信息基础数据元

1、范围

本标准规定了道路、水路货物运输地理信息数据元的基本概念、类目分组和表示,并给出了详细的数据元目录。

2、规范性引用文件

下列文件中的条款通过本标准的引用而成为本标准的条款。凡是注日期的引用文件,其随后所有的修改单或修订版均不适用于本标准,然而,鼓励根据本标准达成协议的各方研究是否可使用这些文件的最新版本。

3、术语和定义

3.1 地理信息系统

geographic information system(GIS)

采集、存储、检查、操作、分析和显示地理数据的系统。

4、总则

4.1 概述

货物运输地理信息数据元描述了在运输过程中所需的地理信息系统(GIS)、卫星定位系统的属性数据、影响货物运输的相关地理因素以及用于相关信息处理技术和设备的基本数据单元。货物运输地理信息数据元具有自身的特点。它的概念和结构遵循GB/T 18391.1规定的一般数据元的概念和结构。

4.2 数据元的类目分组

为方便用户使用本标准,将货物运输地理信息数据元分为四个类目如下:

第1组:基础地理信息——行政区域描述、地理位置描述、地理相关计量;

整篇文档都是由标题结构组成的,所以先利用Jacob抽取文档的标题结构到数据库中。数据库用的是Mysql。

这样的话我们就把半结构化的word文档存储为了结构化的数据库信息,为以后的检索和一致性检测工作做了重要的前提工作。

结束语

对于这种把非结构化或者半结构化的信息处理为结构化的信息并存储到数据库中,在很多实际项目开发中都要用到,因为如今信息时代的信息量实在是太庞杂了,获取对自己有用的信息并存储到数据库中以供相关工作的开展具有重要的现实意义。

猜你喜欢
数据存储
大数据时代档案信息建设的认识和实践
开源数据库数据存储的实现路径分析
基于Android开发的APP数据存储研究
哈希算法在物联网数据存储中的应用
大型在线式UPS及监控系统在中控机房的应用