1、ICS 07.040;35.240.70 A 75 道望中华人民共和国国家标准化指导性技术文件GB/Z 25598-2010 地理信息目录服务规范Geographic information-Catalogue service specification 2010-12-01发布2011-03-01实施 数码防伪/中华人民共和国国家质量监督检验检疫总局中国国家标准化管理委员会发布GB/Z 25598-2010 目次前言. . . III 1 范围.2 规范性引用文件3 术语和定义及缩略语13. 1 术语和定义.3.2 缩略语24 目录服务模型.2 4. 1 橄述24. 2 功能模型.2 4.3
2、 信息模型.2 4.4 接口模型24. 5 消息协议5 目录服务接口定义5. 1 公共接口5.2 发现接口5.3 管理接口30附录A(资料性附录)与ISO23950: 1998的关系附录B(规范性附录)一致性测试要求附录c(规范性附录)目录服务接口XMLSchema描述附录D(资料性附录)目录服务属性集编码规则52附录E(资料性附录)检索串示例.54 参考文献I GB/Z 25598-2010 刚吕本指导性技术文件的附录A、附录D和附录E为资料性附录,附录B和附录C为规范性附录。本指导性技术文件由国家测绘局提出。本指导性技术文件由全国地理信息标准化技术委员会(SAC/TC230)归口。本指导性
3、技术文件主要起草单位:国家信息中心、武汉大学、中国标准化研究院。本指导性技术文件主要起草人:徐枫、宦茂盛、常娜、石雯雯、王子亮、龚健雅、高文秀、李小林。皿GB/Z 25598-2010 地理信息目录服务规范1 范围本指导性技术文件规定了建立地理信息目录服务的技术要求,包含目录服务模型和目录服务接口定义。本指导性技术文件适用于地理信息元数据的发现和管理,以及地理信息目录服务系统的设计和建立。2 规范性引用文件下列文件中的条款通过本指导性技术文件的引用而成为本指导性技术文件的条款。凡是注日期的引用文件,其随后所有的修改单(不包括勘误的内容)或修订版均不适用于本指导性技术文件,然而,鼓励根据本指导性
4、技术文件达成协议的各方研究是否可使用这些文件的最新版本。凡是不注日期的引用文件,其最新版本适用于本指导性技术文件。GBjT 17694-2009地理信息术语CISOjTS19104: 2008 , IDT) GBjT 19710-2005地理信息元数据CISO19115:2003 , MOD) 1S0 23950: 1998 信息和文献信息检索(239.50)应用服务定义和协议规范3 术语和定义及缩略语3. 1 术语和定义下列术语和定义适用于本指导性技术文件。3. 1. 1 地理信息资源geographic information resourse 能满足某种需求的地理信息相关的资产或于段。3
5、. 1.2 目录服务catalogue service 提供地理信息资源描述信息发现和管理功能的服务。3. 1. 3 操作operation 对象可以被调用执行的转换和查询的规范。注2一个操作包括名称和一系列参数。GB/T 17694-2009,定义B.3323. 1. 4 接口interface 描述实体行为特征的命名操作集合。GB/T 17694一2009,定义B.2603. 1. 5 状态state 持续数据对象,反映某一对象在给定时间的所有成员属性的内部值或可量测的描述。注:状态通常与对象的标识和对象的时间戳记相关。1 GB/Z 25598-2010 3. 1.6 元数据metadat
6、a 关于数据的数据。即数据的标识、覆盖范围、质量、空间和时间模式、空间参照系和分发等信息。GB/T 197102005,定义4.5J3.2 缩暗语CIP 目录互操作协议(CatalogueInteroperability Protocol) OGC 开放地理信息联盟(OpenGeospatial Consortium) SRU通过URL检索/提取(Search/Retrievalvia URL) XML 可扩展标记语言(ExtensiblcMarkup Language) 4 目录服务模型4. 1 概述目录服务模型包括功能模型、信息模型、接口模型和消息协议四个层面的内容。功能模型用于限定目录服
7、务的服务范围,信息模型用于限定目录服务管理的数据,接口模型用于规定目录服务的服务手段,消息协议规定H录服务的交互形式。4.2 功能模型目录服务提供发现和管理两种基本功能(如图1所示):发现功能用来对元数据进行检索,管理功能实现元数据管理。图1目录服务的功能模型该功能模型与ISO23950: 1998的关系参见附录Ao4.3 信息模型目录服务信息模型用于描述目录提供的地理信息资源,其具体体现即地理信息元数据。地理信息元数据应遵照GB/T19710-2005,对于特定领域内的地理数据资源,可在GB/T19710 2005的基础上制定专用标准。4.4 接口模型目录服务包含有三个主要接口:公共接口、发
8、现接口和管理接口。其中,公共接口是将发现接口和管理接口中基础性的操作定义成一个公有接口,在使用发现接口和管理接口时需要先对服务进行初始化,接着通过服务自描述接口对发现接口和管理接口进行描述,完成目录查询和元数据管理之后,再调用目录服务终止接口,结束一次目录服务的操作。这三类接口共同实现了地理信息资源的发现功能和管理功能。a) 公共接口提供会话管理功能和服务自描述功能,包含目录服务初始化接口、目录服务终止接口和服务自描述接口。目录服务的客户端和服务器端的通讯建立在会话基础上,会话通过请求消息和响应消息来完成,每2 GB/Z 25598-2010 一个请求消息都有相对应的响应消息。b) 发现接口提
9、供元数据检索功能和元数据检索结果提取功能,包括目录检索接口以及目录检索结果提取接口。c) 管理接口提供元数据管理的功能,包括元数据的增加、删除和修改。4.5 消息协议目录服务各个接口操作均是通过客户端和服务器端之间传递的请求/响应消息对来实现。请求消息和响应消息是一一对应的,即对每一个请求消息有且只有一个响应消息产生。本指导性技术文件规定的目录服务可通过HTTP协议方式实现,协议消息使用XML编码,本指导性技术文件的将来版本可提供支持其他协议方式的接口。5 目录服务接口定义凡遵照本指导性技术文件设计并实现的目录服务,应满足附录B中的一致性测试要求。5. 1 公共接口5. 1. 1 目录服务初始
10、化(initCatalogueService)5. 1. 1. 1 概述目录服务初始化接口用来建立客户端和服务器端之间的会话,该操作将产生唯一的标识符用来跟踪会话。5. 1. 1. 2 目录服务初始化请求CinitRequest)目录服务初始化请求消息用来请求建立客户端和服务器端之间的会话,其参数如表1所示。表1初始化请求参数表参数名称约束/条件参数含义客户端支持的协议实现版本。由客户端在请求中指出其支持的所有版protocol V ersion 必选本,服务器端在响应中也同样指出其支持的所有版本。会话将以双方都支持的最高相同版本实现。如果没有相同所支持的版本,则初始化被拒绝idAuthent
11、icationb 可选认证信息,包含用户身份标识及其密码,用于服务器端对用户身份进行验证implementationld 可选客户端实现标识,由目录服务实现厂商自行定义implementationName 可选客户端实现名称,由目录服务实现厂商自行定义implementation Version 可选客户端实现版本,由目录服务实现厂商自行定义otherlnfo 可选其他信息,用于客户端和服务器端传递自定义信息a版本参数protocolVersion由1或多个正整数组成,各个正整数之间自逗号分隔,其形式为1,2。b认证信息idAuthentication参数中的用户身份标识及其密码之间用冒号分开
12、,其形式为userId : password。目录服务初始化请求的组成结构如图2所示。3 GB/Z 25598-2010 4 initRequest 目录服务初始化请求i一二二:一一一一-1initR叫阳tTypeI r斗三protoIVersion I 1 l l版本叫她叫! i本-一町I l-;ten-j i l 飞-吼冉冉宁宁冉冉冉冉冉_-I I 11认证信息幽; LF mplmenutionIdii ; 客户端实现标识| ;仁叫m叫军客¥户端实混名称l i Jf= 1mm呻pleme町n阳川1吐阳tatlO阳IOn忱T咀四叩S盯sioion凹mrnI; ! .,_-. -:-:, -
13、-.噎_.,._JI I l 客户制酬本i i J :l -_-士-_./其他自定义的信怠i L_ _一一一-一-一-甲一-一-图2目录服务初始化请求的模型图请求消息的XMLSchema定义片段如下(完整的XMLSchema定义见附录。:( ,一类型标识符Ini四equest的定义一(xsd : element name = initRequest type = initRequestType) (xsd:annotation) 仪xs时d:doc四四t恒ation)目录服务初始化请求/x汩sd:docu四llD田e四n吐lt恒ati口on(/xsd:缸motation)(/xsd:el回回t
14、)(xsd:complexType n四e= initRequestType) (xsd:annotation) (xsd:documentation)目录服务初始化请求的类型定义。(/xsd:docum四tation)(/xsd:annotation) (xsd:se( lence) (xsd: element ref = protocolVersion /) (xsd: element n皿e= idAuthentication minOccurs = 0) (xsd:annotation) (xsd:documentation)认证信息(/xsd:dumentation)(/xsd:an
15、notation) (/xsd:el四ent)(xsd:element n四e= implementationld type = xsd: string minOccurs = 0) (xsd:annotation) (xsd:documentation)客户端实现标识(/xsd:documentation)(/xsd:annotation) (/xsd:el四凹的(xsd: element name = implementationName type = xsd: string minOccurs = 0) (xsd:田motation)(xsd:documentation)客户端实现名称(
16、/xsd:documentation)(/xsd:缸motation)(/xsd:el四ent)GB/Z 25598-2010 (xsd: el四entname = impl四entationVersiontype= xsd:string minOccurs= 0) (xsd:annotation) (xsd:documentation)客户端实现版本(/xsd:documentation)(/xsd:annotation) (/xsd:el凹凹的(xsd: element ref = otherlnfo minOccurs = 0 /) (/xsd: sequence) (/xsd:comp
17、lexType) ( !一类型标识符ProtocolVersion的定义一( xsd : element n四e=protocolVersion type= xsd:string default= 1) (xsd:annotation) (xsd:documentation)协议版本,本实现对应的协议版本(/xsd: docum四tation)(/xsd:annotation) (/xsd:el四ent)5. 1. 1. 3 目录服务初始化晌应(initResponse)目录服务初始化响应消息用来确认在目录服务器和客户端间会话的建立,该响应消息给出了唯一的会话标识,其参数如表2所示。表2初始化
18、晌应参数表参数名称约束/条件参数含义referenceld 必选用于识别一个请求所启动的操作的标识,即会话标识服务器端支持的协议实现版本。由客户端在请求中指出其支持的所有protocolVersionb 必选版本,服务器端在响应中也同样指出其支持的所有版本。会话将以双方都支持的最高相同版本实现。如果没有相同所支持的版本,则初始化被拒绝result 必选服务器端用该参数表明是否接受建立会话的请求implementationld 可选服务端实现标识,由目录服务实现厂商自行定义implementationName 可选服务端实现名称,由目录服务实现厂商自行定义implementation Versi
19、on 可选服务端实现版本,由目录服务实现厂商自行定义otherlnfo 可选其他信息,用于客户端和服务器端传递自定义信息a参数referenceld表示的会话标识是由a-z、A-Z、0-9组成,其他字符无效。b版本参数protocolVersion由1个正整数组成,各个正整数之间由逗号分隔,其形式为1,2。c参数result的取值为布尔型。true表示建立会话成功;false表示建立会话失败,此时referenceld取为空。目录服务初始化响应的组成结构如图3所示。5 GB/Z 25598-2010 I initR臼FhCTWLinitResponse 目录服务初始化响应三坚坚旦orotoco
20、lVerson y且.:.-锚._-._-., :一j-impleme叫mIdi: 服务端实现标识I-】皿-_._-、1-j- implementationName .-恤-s 服务端实现名称:JZ 时em叫川rslonj ; 服务端实现级本tf伽rl的1其他自定义豹信息图3目录服务初始化晌应的模型图目录服务初始化响应消息的XMLSchema定义片段如下(完整的XMLSchema定义见附录。:( ,一类型标识符InitResponse的定义一(xsd:elem四tn缸ne= initResponse type = initResponseType) (xsd:annotation) (xsd:
21、documentation)目录服务初始化响应。(/xsd:documentation)(/xsd:annotation) (/xsd:el四凹的(xsd:complexType name = initResponseType) (xsd:annotation) (xsd:docum回国tion)目录服务初始化响应的类型定义。(/xsd:documentation)(/xsd:annotation) (xsd:sequ四ce)(xsd:element ref = refer四celd/)( !一参数referenceld是由a-z、A-Z,0-9组成,其他字符元效。一(xsd: element
22、 ref = protocolVersion /) (xsd: element n四e= resul t type = xsd: boolean ) (xsd:annotation) (xsd:documentation)会话建立结果(/xsd:documentation)(/xsd:annotation) (/xsd: element) ( !一参数result取值为布尔型。true表示建立会话成功;false表示建立会话失败,此时refer四celd取为空。一6 (xsd: element name = impl四entationldtype = xsd: string minOccurs
23、 = 0) (xsd:臼motation)(xsd:documentation)服务端实现标识(/xsd:documentation)(/xsd:annotation) (/xsd:el四凹的(xsd:element name = 扛npl四entationNametype = xsd: str打19皿inOccurs= 0) GB/Z 25598-2010 (/xsd:sequence) (/xsd:complexType) 5. 1. 2.3 目录服务终止晌应(c1oseResponse) 目录服务终止响应消息请求服务器端返回目录服务终止响应,其参数的具体说明如表4所示。表4终止晌应参数表
24、参数名称参数含义closeStatus 服务器端终止会话的状态8 a该参数取值为success表示关闭会话成功;failure表示关闭会话失败。目录服务终止响应的组成结构,如图5所示:I clo:阻ResponseTypel closeResponse JZb11:4t二i日录服务终止响应终止会话状态J 图5目录服务终止晌应的模型国请求消息的XMLSchema定义片段如下(完整的XMLSchema定义见附录。:( ,一类型标识符closeResponse的定义一(xsd:elem田ltname = clo串eResponsetype = closeResponseType) (xsd:anno
25、tation) (xsd:documentation目录服务终止响应。(/xsd:documentation)(/xsd:annotation) (/xsd:el四囚的(xsd: complexType name = closeResponseType) (xsd:annotation) (xsd:documentation)目录服务终止响应的类型定义。(/xsd:documentation)(/xsd:annotation) (xsd:sequ四ce)(xsd:ele皿entname = closeStatus type = xsd: string minOccurs = 0) (xsd:a
26、nnotation) (xsd:documentation)终止会话状态(/xsd:documentation)(/xsd:缸motation)(/xsd:el四ent)(! -参数closeStatus取值为succ四s表示关闭会话成功;failure表示关闭会话失败一(/xsd:sequ四ce)(/xsd:complexType) GB/Z 25598-2010 5. 1.3 目录服务自描述(catalogCapabilities) 5. 1. 3. 1 概述目录服务自描述接口用来提供目录服务自身的各种描述性信息。5. 1.3.2 目录服务自描述请求(catalogCapabilities
27、Request) 目录服务自描述请求消息由客户端产生并发送到目录服务器,用来请求目录服务的相关描述信息,其参数定义如表5所示。表5目录服务自描述请求参数表参数名称约束/条件参数含义referenceldn 必选用于识别一个请求所启动的操作的标识,即会话标识otherlnf口可选其他信息,用于客户端和服务器端传递自定义信息a参数referenceld表示的会话标识是由a-z、A-Z、0-9组成,其他字符元效。目录服务自描述请求的组成结构如图6所示。i叫gCapa如i吨阳t加| catalogCapabilitiesRequest 目录服务白描述请求二referenceldI I 会活标识i 丰田
28、- L. othe巾fo1 一一一其他自定义的信息! 图6目录服务自描述请求的模型图目录服务自描述请求的XMLSchema定义片段如下(完整的XMLSchema定义见附录C): , 、serviceNamed 必选用于说明服务名称,由目录服务实现厂商自行定义serviceAbstract 必选服务内容的简单说明,由目录服务实现厂商自行定义serviceID 必选服务的唯一标识,由服务注册机构统一分配serviceProviderf 必选用来说明服务的提供者信息,由目录服务实现厂商自行定义serviceURL 必选用来说明服务的网络地址,由目录服务实现厂商自行定义serviceTypeh 必选用
29、于说明服务所属类型,由目录服务实现厂商自行定义otherlnfo 可选其他信息,用于客户端和服务器端传递自定义信息a参数referenceld表示的会话标识是由a-z、八Z、0-9组成,其他字符元效。b参数databaseList是复合型,包含有元数据库标识CdatabaseID)、元数据库名称(databaseName)、元数据库描述( databaseDescribe)等主要信息。详细内容见表8:元数据库database参数表。c参数optlOns的取值是枚举型,可以包含一个或多个功能参数值,诸如init、dose、capbilities、search、present、metada taM
30、anage 0具体参见服务自描述响应的XMLSchema定义。d参数serviceName的默认取值地理信息目录服务。e参数serviceID的标识符须唯一,由字母(含下划线一、短划线飞点勺或数字组成,一般由系统自动随机产/ 生。诸如catalogService_A00034 VG34 70 f参数serviceProvider是复合型,只需要包含一个参数serviceProviderName,表示提供服务的地理信息共建部门名称。E参数serviceURL的形式为http:/192.168. O. 0: 8080/ catalog/ catservice。h参数serviceType的固定取值
31、为CatalogService。目录服务自描述响应的组成结构,如图7所示:10 GB/Z 25598-2010 |百呵!ERLF一一一一一一一一二户II | 卜会话标识1&同环一一一一一一一一一一一1I 1 1忑品JW了一一一一一寸1I 1 1 nZ削baseld1 I ! : I I 元数据库标识1 ! I databaseList国f=EEf丁LLL;二-l1二B卡J=databaseName t I I 元数据附!一TZ |) | 元数据库名称lJ i 元数据库I I I I I l l =但如牛scn片i!i!I L 元半壁哇?芝一_I 一一一一一一一一一一一一一一一JcatalogC
32、apabilitiesResp 目录服务白描述响应I servic忑品运一一一一-1serviceProyider B叫-B-l;servic由川d盯NameI I I二i)附阳门名称j I 服务类型L二221是注一一一一一一一一一一图7目录服务自描述晌应的模型图目录服务自描述响应的XMLSchema定义片段如下(完整的XMLSchema定义见附录。:( !一类型标识符catalogCapabilitiesResponse的定义一(xsd : element name = catalogCapabili tiesResponse type = catalogCapabilitiesRespon
33、seype ) (xsd:annotation) (xsd:documentation)目录服务自描述响应。(/xsd:documentation)(/xsd:annotation) (/xsd: element) (xsd:complexType n四e= catalogCapabili t iesResponseType ) (xsd : annotation) (xsd:documentation)目录服务自描述响应的类型定义。(/xsd:documentation)(/xsd:annotation) (xsd :sequ四ce)(xsd: element ref = reference
34、Id /) (xsd :element name= databaseList type= databaseListType) (xsd :annotation) (xsd:documentation)元数据库列表(/xsd:documentation)(/xsd:annotation) (/xsd:el四凹的(xsd:element ref = options/) 11 GB/Z 25598-2010 (xsd : el四entname = servceName type = xsd:strng default = 地理信息目录服务)(xsd :annotaton) (xsd:document
35、aton)服务名称(/xsd:documentaton)(/xsd:annotaton) (/xsd:el四囚的(xsd : el ement n皿e= servceAbstract type = xsd: strng) (xsd :annotaton) (xsd:documentaton)服务描述(/xsd:dumentaton)(/xsd:annotaton) (/xsd:el四囚的(xsd : element n皿e=servceID type= xsd:strr鸡)(xsd :annotaton) (xsd:documentaton)服务标识(/xsd:d回回taton)(/xsd:a
36、nnotaton) (/xsd:el四ent)(xsd : element n四e= servceProvder type = servceProvderType maxOccurs = 田lbounded)(xsd:annotaton) (xsd:documentaton)服务提供部门(/xsd:documentaton)(/xsd:annotaton) (/xsd:el四白的(xsd : element name = servceURL type = xsd: strng) (xsd : annotaton) (xsd:documentaton)服务URL(/xsd:documentato
37、n)(/xsd:annotaton) (/xsd:el回回t)(xsd :el阻四tname= servceType type= xsd:strng fxed= CatalogServce) (xsd :annotaton) (xsd:du皿entaton)服务类型(/xsd:documentaton)(/xsd:annotaton) (/xsd:el四ent)(xsd:element ref = otherInfo mnOccurs = 0/) (/xsd:s呵U四ce)(/xsd:complexType) (xsd:complexType n缸ne= databaseLstType) (x
38、sd:annotaton) (xsd:documentaton)元数据库列表(/xsd:documentaton)(/xsd:annotaton) (xsd:sequence) ( xsd : element n缸ne= database type = databaseType皿inOccurs:;:0 maxOccurs = 田由ounded)(xsd:annotaton) (xsd:documentaton)元数据库(/xsd:documentaton)(/xsd:annotaton) (/xsd:el阻四t)(/xsd: sequence) (/xsd:complexType) (xsd
39、:complexType name = database可pe)12 (xsd:sequ四ce)(xsd:element name= databaseId type= xsd:strng) (xsd:annotaton) (xsd:documentaton)元数据库标识(/xsd:documentaton)(/xsd:annotaton) (/xsd:element) (xsd:element n四e= databaseN四etype = xsd: strng) (xsd:annotat口n)(xsd:documentaton)元数据库名称(/xsd:documentaton)GB/Z 255
40、98-2010 (/xsd:缸motation)(/xsd:el四ent)(xsd: element n邵阳=databaseDescribe type = xsd: string) (xsd:annotation) (xsd:documentation)元数据库描述(/xsd:documentation)(/xsd:annotation) (/xsd:el四凹的(/xsd:s吨U回ce)(/xsd:complexType) ( !一类型标识符Options的定义一(xsd: element name = options type = options可pe)(xsd:annotation) (
41、xsd:documentation)支持的功能。(/xsd:docu皿ntation)(/xsd:annotation) (/xsd:el四凹的(xsd:simpleType n缸ne= optionsType) (xsd: list itemType = facilitySupported巧pe/)(/xsd:simple巧pe)(xsd: simpleType name = facilitySupportedType) (xsd : restriction base = xsd: string) (xsd:enumeration value= init/) (xsd:enumeration
42、 value = close/) (xsd: enumeration value = capbilities /) (xsd:四umerationvalue = se缸ch/)(xsd:enumeration value= present/) (xsd: enumeration value = metadataManage /) (/xsd:restriction) (/xsd:simpleType) (xsd : complexType name = serviceProviderType) (xsd:臼motation)(xsd:documentation)服务提供部门类型(/xsd:do
43、cumentation)(/xsd:annotation) (xsd:sequence) (xsd: element ref = serviceProviderName /) (/xsd: sequence) (/xsd:complexType) (xsd: element n四e= serviceProviderName type = xsd: string) (xsd:annotation) (xsd:documentation)服务提供部门名称(/xsd:documentation)(/xsd:annotation) (/xsd:el四凹的目录服务自描述响应中,复合型参数serviceP
44、rovider和databaseList的说明如下zu 服务提供者参数(serviceProvider)服务提供者参数说明服务的提供者信息。该参数是复合型参数,只需要包含一个参数民rVlc巳ProviderName,用来表示提供服务的地理信息共建部门名称。参数serviceProvider的具体内容如表7所示。参数名称serviceProviderName 表7服务提供者serviceProvider参数表约束/条件必选参数含义表示提供服务的地理信息共建部门名称,由目录服务实现厂商自行定义目录服务自描述响应中的服务提供者s巳rviceProvider的组成如图8所示。13 GB/Z 25598
45、-2010 serviceProviderType serviceProviderName 服务提供部门类型服务提供部门名称图8目录服务自描述晌应中服务提供者参数的模型圄目录服务自描述响应中的服务提供者(serviceProvider)的XMLSchema定义片段如下(完整的XML Schema定义见附录。:(xsd:complexType name = serviceProviderType) (xsd:annotation) (xs叫d:doCUl盹n址1吐.ta挝ti臼on时服务提供部门类型(/川xs时d:documentation)(/xsd:annotation) (xsd:sequ
46、ence) (xsd: element ref = serviceProviderNa皿e/)(/xsd:sequence) (/xsd:complexType) (xsd:el阻四tn四e= serviceProviderName type = xsd: string) (xsd:annotation) (xsd:documentation)服务提供部门名称(/xsd:documentation)(/xsd:annotation) (/xsd:el四ent)b) 元数据库列表参数(databaseList) 用于描述目录服务支持的所有元数据库信息,包含多个database参数。database参数是复合型参数,包含元数据库标识(data baseID)、元数据库名称(databaseName)、元数据库描述(databaseDescribe) 等主要信息。参数database的具体内容如表8所示。表8元数据库database参数表参数名称约束/条件参数含义databaseldn 必选用于标识一个元数据库的标识符,由元数据库提供者定义data