APP下载

地理信息目录服务元数据的解析方法研究

2014-08-25祝若鑫李风光王新量翁呈华

测绘工程 2014年10期
关键词:文档检索解析

祝若鑫,李风光,王新量,翁呈华

(1.信息工程大学 地理空间信息学院,河南 郑州 450052;2.61175部队,江苏 南京 210049)

地理信息目录服务元数据的解析方法研究

祝若鑫1,李风光1,王新量1,翁呈华2

(1.信息工程大学 地理空间信息学院,河南 郑州 450052;2.61175部队,江苏 南京 210049)

为解决地理信息目录服务中服务元数据注册和检索的效率问题,归纳两种服务元数据解析模式——注册解析模式和检索解析模式,并从服务提供者和用户、注册和检索两个方面,分析比较两种元数据解析模式在注册和发现过程中的优缺点,得出注册解析模式更适合当前的应用模式。提出注册解析模式的一种具体实现方法,选用dom4j进行服务元数据解析,并将解析到的元数据内容存储到元数据库中,实现服务元数据的注册和管理。

地理信息目录服务;服务注册;元数据解析模式;XML;元数据管理

近年来,地理信息服务的研究主要采用面向服务的体系架构(Service-oriented Architecture,SOA)方式,由于这一架构体系具有分布、异构等特征,使得对地理信息服务的发现和查找提出了很高的要求。为了提高地理信息服务检索的效率,必须建立地理信息目录服务系统来对已发布的Web服务进行注册和管理。地理信息目录服务所采用的思想是借鉴图书馆领域的一些成果,例如图书馆系统对图书进行编目并建立索引,对图书目录进行划分和构建[1]。同样,地理信息目录服务的索引机制也是要完成对地理信息服务目录的划分和构建,必须要拥有对地理信息服务进行描述的文档,才能建立服务目录资源,地理信息服务元数据在目录服务中就是扮演这一中介角色[2-3]。

目前,地理信息元数据的研究主要表现在数据元数据注册检索方面,例如罗英伟等人提出了基于XML的地理信息服务中数据元数据的注册和管理,并设计了基于XML的元数据系统[4]; James K.等人提出自动地理空间元数据生成也是基于数据元数据基础完成[5];同时孔隆祥等人在服务元数据的资源注册方面提出了一种资源描述框架模式的数据库存储方案[6]。但在服务元数据注册和检索过程中对元数据内容解析方面的研究还相对较少,查祝华等人结合OGC CSW规范从元数据信息模型、属性项映射、定义结果编码格式等方面进行了研究[7]。本文从服务类型和服务元数据标准出发,主要分析元数据解析的过程,根据实际应用模式确定最优解析方式并提出一种具体实现方案。

1 地理信息服务元数据

元数据是“关于数据的数据”,明确地说,就是对数据的一种描述性说明[8]。在地理信息中,按照资源类型来划分,元数据分为数据元数据和服务元数据;数据元数据就是描述地理空间数据集的内容、质量、分发等相关特性的数据[3,9];而服务元数据是描述服务器上支持的操作和可访问的Web服务的元数据,是描述服务实例的数据,包括服务的功能、操作和访问地址等信息[8]。根据OGC中抽象服务规范的定义,服务元数据大致分为基本服务元数据部分、操作元数据部分和数据元数据部分[1]。在地理信息服务实施规范中,对各个元数据部分所包含的元数据内容进行详细定义,如表1所示,对网络地图服务(WMS)、网络要素服务(WFS)和网络覆盖服务(WCS)进行划分[10-12]。但在网络地图服务规范中,把服务元数据分为基本服务元数据和能力元数据两部分,规范中把操作元数据和数据元数据部分都归类到能力元数据部分。

表1 地理信息服务元数据分类

根据表1中统计的结果,基本服务元数据主要是对服务名称、标题、摘要、关键词、服务联系人信息、费用、限制等进行描述。操作元数据是定义每种服务类型所提供的操作接口,例如网络地图服务提供的GetCapabilities、GetMap和GetFeature-Info接口就包含在操作元数据中。由于数据元数据与所提供的服务类型有关,则每种数据服务提供的数据元数据的内容也不尽相同,但都会包含图层(要素、栅格)标题、摘要、关键字和经纬度坐标等信息。

2 服务元数据解析方法

服务元数据是对Web服务的一种简单描述,用于支持Web服务的注册和检索。在地理信息服务领域,构建服务中心通过服务注册的形式来实现对服务资源的管理,便于用户完成服务的查找和调用。服务元数据包括用于描述服务要解决的问题、适用范围、服务的思路与实现以及对输入∕输出数据的要求和格式。这些描述性信息都以元数据文档为载体,要做的工作就是解析出文档的内容简化服务检索方式,所以解析方式的选择直接影响到服务检索的效率;对于用户来说,即使看不到这种解析方式,但检索效率的高低直接影响Web服务的质量。

2.1 服务元数据解析模式

根据服务元数据存储方式,将服务元数据解析模式划分为注册解析模式和检索解析模式,如图1所示。

图1 服务元数据解析的两种模式

注册解析模式适用于地理信息服务注册更新少、检索频繁的目录服务系统中,要求必须明确服务的类型和所采用的服务标准,才能确定服务元数据注册的内容,所以制定元数据模板是注册解析模式的前提。基本过程是:首先通过Get Capabilities操作请求XML encoding服务元数据,然后根据服务类型和服务元数据标准制定出元数据模板,最后依据元数据模板从地理信息服务元数据文档中抽取元数据内容注册到元数据库中,即在服务注册的同时完成元数据解析,其基本步骤如表2所示。这种模式的重点是将元数据解析的任务负载到服务注册中,加重服务注册的任务量。但这种模式能够确保“一次注册,全局检索”,用户直接通过数据库查询的方式就能够完成服务检索(查找)操作。

表2 注册解析模式步骤

检索解析模式适用于空间信息服务注册节点多,并发用户检索少的目录服务系统中,只需明确服务类型就可以完成元数据注册。其基本过程是通过Get Capabilities操作请求XML encoding获取地理信息服务元数据文档,在服务注册的同时只需按照服务类型分类直接以文件(大字段)的形式存储到元数据库中,服务检索时开始对元数据文档逐个解析,其基本步骤如表3所示。这种模式会导致每次检索都要从数据库中读取元数据文档进行解析,加重了数据库交互的负担,也不利于多用户并发访问。

表3 检索解析模式步骤

根据表4中注册解析模式和检索解析模式对比分析,从服务提供方和用户角度考虑,各有优缺点:

注册解析模式在服务注册的同时需要首先完成解析,受服务类型、服务元数据标准的版本和元素项名的局限,需依次抽取所有字段,占用较多计算开销,影响服务提供方服务注册的效率;并且在注册之前必须要先依据服务元数据标准和服务类型建立相应的元数据模板,解析之前需要做大量工作。同时,由于元数据文档中会出现许多空值,所以在注册成功后会浪费数据库中已分配的存储空间。但用户检索效率高,可以直接通过数据库的查询方式进行服务检索。

检索解析模式对于服务提供方注册毫无阻碍,只需按照服务类型分类直接存储到元数据库,注册效率高,并且检索时不需要预先知道文档的存储结构。但对于用户来说,检索时间较长,需要先提取出元数据文档,再对全文遍历匹配查询,因此服务查询时检索效率相对较低,但由于注册时不受元数据标准和元数据文档结构限制,某些目录服务系统会选择这种解析模式。

表4 注册解析模式和检索解析模式对比

2.2 服务元数据管理

根据地理信息服务元数据解析方式不同,对服务元数据的管理方式也存在差异。

如果采用注册解析模式,必须注册之前根据服务类型和服务元数据标准制定元数据模板,并依据元数据模板创建元数据表。制定元数据模板时,并不是把网络数据服务(WMS、WFS和WCS)规范中的元数据元素项都加载进去,需要参考都柏林核心元数据(Dublin Core Metadata)中定义的核心字段[13],结合服务标准制定出相应的元数据模板。本文参照规范中定义的服务元数据元素项,依据Geoserver和SuperMap iServer发布的服务元数据文档,分析元素项的必要性制定元数据模板,设计相应的服务元数据表。根据元数据模板确定要抽取的服务元数据元素项,采用XML的解析方法对服务元数据文档进行解析,并将解析出的元素内容存储到对应的元数据库中,完成服务元数据的注册任务。管理过程中基本服务元数据部分和数据元数据部分分别存储,确保地理信息服务检索的有效性。

检索解析模式的管理方案就是直接对元数据文档进行存储,如开源软件GeoNetwork就是采用这种模式,将元数据文档按照服务类型分类存储到元数据库中,直接通过操作元数据文档进行服务元数据的管理和注册。服务元数据文档存储也是以服务地址为主键,使元数据记录与Web服务之间形成一一对应,确保地理信息服务检索的有效性。

2.3 面向应用分析

分别从服务提供者和用户、注册和检索两个方面,分析比较两种元数据解析模式在注册和发现过程中的优缺点。但考虑实际情况,服务注册的运算资源需求较小,考虑得更多的还是用户并发检索的高效响应,因此注册解析模式更适合当前的应用模式。采用此类模式在服务注册过程中多消耗的一点运算资源不会产生实质影响,但却能在多用户并发访问服务中心时更高效处理服务检索。

3 注册解析模式的实现—以WMS为例

在上述分析的基础上,本节采用dom4j提出了一种注册解析模式方法并具体实现了服务元数据的解析注册。

图2表示利用SuperMap iServer发布的河南省人口分布WMS服务元数据文档中的基本服务元数据部分,包含服务名称、标题、摘要、关键词等元素内容,服务元数据解析就是要从元数据文档中抽取元素内容。实验中采用一种XML解析方法dom4j完成服务元数据内容的解析,实验步骤如下所示:

图2 利用SuperMap iServer发布的WMS服务元数据文档

1)配置dom4j包解析环境,依据服务类型和服务元数据标准制定出元数据模板;

2)读取WMS的服务地址,通过dom4j包中的SAXBuilder类获取WMS的服务元数据文档,放入到Document类中;

3)通过HashMap映射设置元数据文档中WMS_Capabilities(根节点)的名称空间,并通过映射的形式将名称空间添加到XPath路径中;

4)通过XPath类中selectNodes获取该路径下的所有节点,然后利用getChildText()函数得到该节点的元素内容,getAttributeValue()函数得到该节点的属性值;

5)反复利用XPath类获取节点路径,重复步骤4),直到将元数据模板中的元素全部遍历结束。

实验中的难点是根节点名称空间属性和XPath路径设置问题。Get Capabilities请求获得的元数据文档受Schema模式约束,XML Schema模式在服务文档中的schemaLocation属性包含了两个参数,第一个是名称空间属性,第二个指出了模式文档的位置,只有通过Schema模式文档校验才能提取到根元素的名称空间和属性,进而获取到子节点的元素内容。XPath表达式获取节点路径时必须先要添加根节点的名称空间才能进行计算,同时不支持默认名称空间,默认名称空间需要自定义设置名称空间前缀才能进行计算。通过上述实验步骤完成地理信息服务元数据解析,解析出的内容如图3所示,最后需要将解析出的内容存储到元数据库中才能完成地理信息服务注册任务。

图3 解析出的WMS基本服务元数据元素内容

4 结束语

首先对地理信息服务元数据描述的内容进行归纳总结,确定服务注册元数据模板所需要抽取的元数据内容。然后通过本文提出的注册解析模式对地理信息服务元数据进行解析,实验中解决了元数据解析时遇到的文档根节点的名称空间和XML节点路径问题。最后将解析出的元数据内容注册到元数据库中,完成地理信息服务的元数据注册任务。同时下一步研究的重点是对注册到目录服务系统的地理信息服务元数据实现元数据多种方式的检索。

[1]乐鹏.网络地理信息系统与服务[M].武汉: 武汉大学出版社,2011.

[2]Open Geospatial Consortium Inc.Catalogue Services 3.0 SWG[EB/OL].[2013-12-23].http://www.opengeospatial.org/projects/groups/cat3.0swg.

[3]YUE P, DI L P,ZHAO P S.Semantic Augmenta- tions for Geospatial Catalogue Service[J] . IEEE Geoscience and Remote Sensing Symposium, 2006:3486-3489.

[4]罗英伟,汪小林,许卓群.基于XML的地理信息元数据系统[J].计算机学报,2005,28(7):1205-1212.

[5孙隆祥,张成成,方驰宇.基于服务元数据的资源注册中心设计与实现[J].测绘科学,2012,37(2):155-157.

[6]JAMES K, BATCHELLER.Automating geospatial meta- data generation—An integrated data management and documentation approach[J]. Computers & Geosciences, 2008,34:387-398.

[7]查祝华,周旭,刘若梅,等. OGC CSW规范实现探讨[J].测绘通报,2009(7):12-17.

[8]龚健雅,杜道生.地理信息共享技术与标准[M]. 北京:科学出版社, 2009.

[9]孙志东,潘懋,吴自兴,等.基于XML的地理信息元数据及空间数据安全[J].测绘通报,2007(9):61-65.

[10]Open Geospatial Consortium,Inc. Web Map Server Implementation Specfication V1.3[s].2005.

[11]Open Geospatial Consortium,Inc. Web Feature Service Implementation SpecificationV1.1[s].2005.

[12]Open Geospatial Consortium Inc. Web Coverage Service(WCS)SWG[EB/OL].[2013-11-23].http://www.opengeospatial.org/porjects/groups/wcs.swg.

[13]崔丽美,谢传节,杨联安,等.基于XML Schema地球系统科学数据的元数据扩展机制[J].测绘学报,2005,34(3):246-262.

[责任编辑:张德福]

Research on the resolving methods of register geographic information catalogue service metadata

ZHU Ruo-xin1, LI Feng-guang1, WANG Xin-liang1, WENG Cheng-hua2

(1.Institute of Surveying and Mapping,Information Engineering University,Zhengzhou 450052,China; 2.Troops 61175,Nanjing 210049,China)

Two service metadata resolving modes-register resolving mode and retrieval resolving mode, are proposed to solve the catalogue services of geographic information service metadata registry problems. Then the conclusion shows that the register resolving mode is preferable with the consideration from both service providers and users, registration and retrieval and the analyzation from the advantages and disadvantages of the two models. A register resolving method is proposed to realize the register and management of service metadata with using dom4j as a way to resolve the service metadata which will be stored in the metadata-base.

geographic information catalogue service; service register; metadata resolving mode; XML; metadata manager

2013-09-10

国家自然科学基金资助项目(41271392);郑州市科技攻关项目(112PPTGY225)

祝若鑫(1991-),男,硕士研究生.

P208

:A

:1006-7949(2014)10-0014-04

猜你喜欢

文档检索解析
浅谈Matlab与Word文档的应用接口
有人一声不吭向你扔了个文档
三角函数解析式中ω的几种求法
睡梦解析仪
电竞初解析
对称巧用解析妙解
基于RI码计算的Word复制文档鉴别
专利检索中“语义”的表现
Persistence of the reproductive toxicity of chlorpiryphos-ethyl in male Wistar rat
国际标准检索