C网络服务公共执行规范.ppt

上传人:小飞机 文档编号:4849781 上传时间:2023-05-19 格式:PPT 页数:51 大小:1.39MB
返回 下载 相关 举报
C网络服务公共执行规范.ppt_第1页
第1页 / 共51页
C网络服务公共执行规范.ppt_第2页
第2页 / 共51页
C网络服务公共执行规范.ppt_第3页
第3页 / 共51页
C网络服务公共执行规范.ppt_第4页
第4页 / 共51页
C网络服务公共执行规范.ppt_第5页
第5页 / 共51页
点击查看更多>>
资源描述

《C网络服务公共执行规范.ppt》由会员分享,可在线阅读,更多相关《C网络服务公共执行规范.ppt(51页珍藏版)》请在三一办公上搜索。

1、OGC Web Service Common Implementation Specification,OGC网络服务公共执行规范,简介,OGC(Open Geospatial Consortium)开放地理信息协会,他是一个非赢利的国际化标准制定组织,领导进行对地理数据相关的操作和服务标准的制定。OGC最主要的一项计划是互操作计划(Interoperability Program,简称IP),该项目的目标是提供一套综合的开放接口规范,以使软件开发商可以根据这些规范来编写互操作组件,从而满足互操作需求。,简介,Web Services即Web服务,它是自包含的、模块化的应用程序,它可以在网络中

2、被描述、发布、查找以及调用。Web服务的一个主要思想,就是未来的应用将由一组应用了网络的服务组合而成。简单理解,在Web Services体系中,所有东西都是服务,这些服务发布一个API供网络中的其他服务或者应用使用,并且封装了实现细节。Web Services是OGC规范以及建立面向服务的空间共享体系的基础技术体系。,简介,空间信息Web服务是在Web服务技术和标准基础之上实现的地理空间信息网上在线服务。它利用Web服务技术提供的公共接口、交换协议和服务规范,提供应用客户管理、注册服务、编码、处理服务、描述服务和数据服务等。主要的应用客户包括发现客户、地图浏览客户、影像利用客户等。空间信息W

3、eb服务除了采用基本的Web服务技术协议外,还需要相关地理空间信息及处理的技术协议,目前主要有OGC、ISO/TC211和W3C等组织在进行相关协议标准的制定。OGC Web服务(OWS)即是典型的空间信息Web服务标准体系。,OGC Web服务公共执行规范,1 范围 目前这篇文档详细描述了OWS接口执行规范包含的公共方面:a)操作请求和响应的内容 b)操作请求和响应包含的参数和数据结构 c)操作请求和响应的XML和KVP编码 这篇文档的一个作用是作为对未来版本的OWS接口执行规范的一个标准参考。这些规范目前包括网络地图执行规范(WMS)、网络特征数据执行规范(WFS)、网络覆盖执行规范(WC

4、S)。,2 术语和定义,边界框 bounding box 位于坐标参考系统上下限的部分capabilities XML 采用XML编码的服务元数据客户端 client 从服务器中调用一个操作的软件组件地理信息 geographic information接口 interface 描述实体行为的一系列操作名操作 operation参数 parameter,平台 platform 独立平台 platform-neutral(specification)特定平台 platform-specific(specification)请求 request 响应 response资源 resource服务器

5、server 服务 service 服务元数据 service metadata 版本 version,3 协定,3.1 符号(缩略词)CRS(Coordinate Reference System)坐标参考系统DCP(Distributed Computing Platform)分布式计算平台EPSG(European Petroleum Survey Group)欧洲石油勘测队GML(Geography Markup Language)地理置标语言HTTP(Hypertext Transfer Protocol)超文本传输协议ISO(International Organization f

6、or Standardization)国际标准组织KVP(Keyword Value Pair)关键字值对MIME(Multipurpose Internet Mail Extensions)功能Internet 邮件扩充服务,OGC(Open Geospatial Consortium)开放式地理信息联盟OWS(OGC Web Service)开放式网络服务TBD(To Be Determined)TBR(To Be Reviewed)UML(Unified Modeling Language)统一建模语言URI(Universal Resource Identifier)统一资源标识符UR

7、L(Uniform Resource Locator)统一资源定位符URN(Universal Resource Name)统一资源名称,WCS(Web Coverage Service)网络覆盖服务WFS(Web Feature Service)网络特征服务WMS(Web Map Service)网络地图服务XML(Extensible Markup Language)可扩展标记语言1D(One Dimensional)一维空间2D(Two Dimensional)二维空间3D(Three Dimensional)三维空间4D(Four Dimensional)思维空间,3.2 UML符合

8、UML(统一建模语言)是一个标准的图形表示法,它不是面向对象的分析和设计,也不是一种方法,它仅仅是一组符号而已。作为一种建模语言,UML的定义包括UML语义和UML表示法两个部分。其中UML表示法定义UML符号的表示法。标准建模语言UML定义五类图,第一类是用例图(Use Case Diagram),第二类是静态图(Static diagram),包括类图、对象图和包图。其中类图描述系统中类的静态结构。不仅定义系统中的类,表示类之间的联系如关联、依赖、聚合等,也包括类的内部结构(类的属性和操作)。第三类是行为图(Behavior diagram),第四类是交互图(Interactive dia

9、gram),第五类是实现图(Implementation diagram)。,本文档中显示的所有关系图都使用统一建模语言(UML)静态结构图。下图描述了本文档中使用的 UML 表示法。Figure 1 UML notations,在这些类关系图中使用下面固定类型的UML 类:a)无身份的一组原始值的描述符。数据类型是一个没有操作的类,它的主要目的是保存信息。k)一种数据类型,其实例组成了一个替代文字值的列表。枚举意味着一个易于理解的潜在值类中的简短列表。I)为表达潜在的可选值的一长串的灵活的枚举。如果完全知道列表选项,则使用枚举;如果只知道可能替代方案则使用代码列表。M)是在没有给出对象的实现

10、和状态的情况下对对象行为的描述。接口包含操作但不包含属性,平且它没有对外界可见的关联。,N)一是抽象类,不能有实例,在运行时,CLR都会创建一个包含这个类型信息的Type类型的对象。Type类可以有特性和关联。O)一个替代的属性列表,任何时候只出现这些特性的其中一个。在这个文档中,使用下面标准数据类型:CharacterString一串字母Boolean一个值描述成真的或假的URI提供很多信息的资源标识符URL可用在线资源标识符Integer整数Double双精度浮点数,独立平台和特定平台规范如OGC抽象规范第10章的第12课题“OpenGIS Service Architecture”中描述

11、的,这个文本包括了独立平台和特定平台规范。ISO19119也详述了“依据ISO/TS19103的规定和准则用UML描述”,和“有了平台中立模型或至少有特定的平台模型,服务规范才被完全考虑”的独立平台模型。本文档第一次详述了在独立平台方式中,每个操作的请求和响应及其参数和数据结构。用表描述每一数据结构,表中列出并定义了参数和其他数据结构。这些表为前面的UML类图和UML模型充当了数据词典。,使用多种交替方式编译指定的独立平台数据,每一方式适合一个或多个特定平台。目前这篇文档详述的编码,为适合HTTP GET转换操作请求(用KVP编码),为适合使用HTTP POST 转换操作请求(用XML或KVP

12、编码)。然而相同操纵的请求和响应可以被编译成适合许多其他的特定平台,包括SOAP/WSDL(SOAP/WSDL DCPs)。为了符合OGC第12课题的第10条款和ISO19119,这里论述OWS规范应该与其有相同的格式。也就是说,请求反映操作首先指定在中立平台方式中,使用相似的表作为UML模型的数据字典。每一独立平台规范应遵循此数据的一个或多个特定平台编码。这些特定平台编码,应列入该特定OWS系统规范,以此来相互支持特定平台。,4 GetCapabilities 操作,4.1 简介这一章节主要描述由OWS提供的GetCapabilities 操作。强制性的GetCapabilities 操作允

13、许任何客户获取该服务的元数据文档,即“能力文档”,这一元数据是由实现OWS接口操作规范的服务器提供的。GetCapabilities 操作正常响应是返回给请求客户端一个服务元数据文档,这一服务元数据文档主要包括特定的服务器功能元数据(如从服务器中得到的具体数据和格式)。这个服务元数据能使 OWS 服务器部分自我描述、支持客户端的后期绑定。,4.2 GetCapabilities 请求4.2.1 GetCapabilities 请求参数 GetCapabilities 操作请求平台将使用图2描述的和表3指定数据结构,Figure 2 GetCapabilities operation reque

14、st UML class diagram,Table 1 Parameters in GetCapabilities operation request,4.2.2 执行请求表4“多样性和使用”列中指定在GetCapbilities 操作请求中每列参数的可选性,表4详述了OWS客户端和服务器这些参数的可实行性。,Table 2 Implementation of parameters in GetCapabilities operation request,4.2.3 GetCapabilities request KVP encoding,Table 3 GetCapabilities op

15、eration request URL parameters,4.2.4 GetCapabilities 请求XML编码 XML架构文件包含名为owsServiceIdentification.xsd,包含文件的每个元素,属性的含义。下面是一个用XML编码的GetCapabilities请求信息例子 1.0.0 0.8.3,Contents text/xml en-CA fr-CA 这个例子包括了XML所有可能的属性和元素,但是仅有“service”属性是需要的,包括需要GetCapabilities的根元素。,4.3 参数讨论4.3.1 Version参数 每一OWS执行规范的修订将指定一个

16、版本号,使客户端和服务器能相互作用来达成符合这一规范的版本。这一版本号应包含三个非负整数并由小数点分开,形式为“x.y.z”整数y和z不能超过99。随着规范的演变,每个服务都定义许多版本,并且版本号不同。每个OWS都有自己的序列版本号;不同服务的版本号是相互独立的,因此可以用重叠的部分。当版本号改变,第一个整数变的最重要,这将很单调。这些版号可能没有顺序,因为一些版号是草案。服务器和客户端不必支持定义版本,但鼓励支持多重版本。,4.3.2 Version协商 在GetCapabilities操作请求中,使用可选AcceptVersions参数执行Version协商。尽管是可选的,但客户端软件应

17、该总是常常包含此参数,以简化版本协商。此参数值是一个客户端支持,客户最优先的序列协议版本号。服务器在接受GetCapabilities请求时,将扫描序列并找到其支持的第一版本号。这时服务器返回一个符合这一版本规范并包括版本参数值的服务元数据文件。如果序列中不包含服务器支持的任一版本号,服务器返回一个异常,exceptionCode=VersionNegotiationFailed。为确保后期的兼容性,客户也应准备接受一个未知响应,把这种情况作为版本协商失败的现象。此外,如果服务器接受一个没有AcceptVersions参数的GetCapabilities请求时,则返回一个服务器支持的最新版本的

18、服务元数据文档。,4.3.3 Section 参数 Section参数值包含零个或多个XML元素名的无序列表,这个XML元素存在在将被返回的服务元数据XML文档中。当列出一个或多个参数名时,这些参数包含在将被返回的服务元数据文档中。如果没有列出这些参数名,返回的服务元数据不必包含任何列出的参数。Sections的值类型为字符串序列(逗号隔开),列举客户所要请求的服务元数据文档的哪些部分,这样可以适当减少网络数据传输量。,客户端执行Sections参数是可选的,当服务器接受一个没有此参数的GetCapbilities 操作请求时,则返回所有的服务元数据文档。服务器执行Sections参数是可选的

19、,当服务器不能执行此部分参数时,在GetCapbilities 操作请求中如果出现将忽视此参数,并返回所有服务元数据文档。,Table 4 Meanings of section name values,4.3.4 UpdateSequence参数 值类型为字符串,可以是一个整数,或者是一个时间戳(ISO8601:2000)格式,或者其它的数字和字符串。它在客户端缓存了服务元数据文档的时候特别有用,如果服务器支持该参数,则会在返回的能力文档中包括当前的UpdateSequence值。以后每当服务的能力文档发生了改变,服务器都会增长该值,当客户端下次请求时,服务器就可以根据当前情况返回相应的结果

20、。该参数是可选的,当忽略时则返回最近的服务元数据文档,Table 5 Use of UpdateSequence parameter,4.3.5 AcceptFormats 参数 值类型为字符串序列,列举的是客户端可以接受的MIME格式,若有多个值则用逗号隔开,按照客户的意愿排序,将最优先的放在最前面。此参数是可选的,当忽略时则以“text/xml”格式返回。当一个服务器执行AcceptFormats参数并获取一个值时,它将返回一个能力文档,这个文档在可返回的列表中采用第一个MIME类型格式。当服务器不获取或不执行时,服务器将返回标准XML能力文档,采用MIME类型“text/xml”格式。对

21、于GetCapabilities操作,所有客户端和服务器应执行MIME类型“text/xml”格式。,服务器和客户端对此参数的执行是可选的。各种非标准的格式被提议转换成XML文档,但许多还没有被完全的指定,也没有被广泛的接受。许多非标准格式减少了转移信息量,同时减少了流通时间和装载。4.3.6 AcceptLanguages 参数 AcceptLanguages 参数对于所有OWS请求是可选的,能够识别客户喜欢的一组语言。它的值是一个或多个语言标签列表,适应客户从左到右的选择顺序,。语言标签采用的是RFC 4646 5字符编码,完整的形式(如:“en-CA”),缩写2字符代码(如“en”)。除

22、了RFC 4646 编码外,服务器支持单个特殊的值“*”它被用来表示“any language”。,服务器对人类语言文本字符串的响应,包括绘制字符串到图形图像(如在一个WMS的 GetMap反应),服务器应当返回首选的可用语言文本字符串。如果服务器不返回客户首选语言的文本字符串,并且AcceptLanguages参数列表包括特殊值“*”,这时它应返回一个服务器所选语言的字符串。如果AcceptLanguages参数语言列表和服务器提供的语言列表不匹配,服务器应返回InvalidParameterValue异常。,4.4 GetCapabilities 响应 4.4.1 异常 OWS服务器事件遇

23、到一个GetCapabilities操作请求错误,它应返回一个如第5章描述的异常报告信息。在表8中列出了允许异常编码。,Table 6 Exception codes for GetCapabilities operation,4.4.2 服务元数据文档内容 从执行GetCapabilities操作中,一个服务元数据文档应正常反应到客户端,并且对于具体的OWS应包含适合特定服务器的元数据。对于提供或使用紧耦合数据的服务器,这个服务元数据文档应当包含此数据的元数据,那个服务元数据文档采用XML编码,并使用XML架构来指定正确的文档内容和结构。图3和表9描述并指定了服务元数据文档中包含的参数,Fi

24、gure 3 GetCapabilities operation response UML class diagram,每个服务元数据文件应包含一系列sections文档,这些文档分别对应特定OWS系统指定的一套section names。表10指定了section names和meanings。每个具体的OWS系统在相应的部分应使用这些名称和含义,如有需要可以详述增加的部分。表10中指定的能力文档的所有四个部分都应该能被所有的OWS服务器实现,除非跟特定的OWS明显不相关,这些不相关部分应该被替补的相关部分所取代。,Table 7 Parameters included in service

25、 metadata document,当可读文本字符串在应答中出现的时候,服务器支持的多语种应答应使用文本中符合相应元素的冗长属性指定的语言,来区分应答中的每个可读文本元素的语言。这个(些)冗长属性应该使用IETF RFC 4646常用的标识符。,Table 8 Section names and contents,4.4.4 ServiceIdentification section内容4.4.4.1 概述 服务元数据文档的ServiceIdentification section包含该特定服务器的基本元数据。该部分的内容和组织结构应与OWS系统相同。ServiceIdentificatio

26、n section应包含参数,部分在图4中描绘并在表11中指定。,Figure 4 ServiceIdentification section UML class diagram,Table 9 Parameters included in ServiceIdentification section,4.4.5 ServiceProvider section内容 服务元数据文档的ServiceProvider section包含服务器操作组织的元数据。这一部分内容和组织对于所有的OWS系统都是相同的。ServiceProvider section包含参数,图五描述部分参数,表12对其详述。,F

27、igure 5 ServiceProvider section UML class diagram,Table 10 Parameters included in ServiceProvider section,4.4.6 OperationsMetadata section 标准内容 OperationsMetadata section标准参考执行规范,将详述在OperationsMetadata section中包括多种XML元素和属性的固定值。此外,在这一部分,每一种规范应相详述包含若干XML元素和属性的可选值。这些规范如表18的形式列出。除了作为一个实例表,表18列出的OWS常见项目应

28、包括在所有这种表中。同样,表19列出的可选属性值也应包括在内,而不是依靠服务器是否执行操作。在表18和19中,“属性名”栏使用点分离器符号描述部分总体项目。“属性值”栏引用操作参数,右栏中列出属性值的含义。,Table 12 Required values of OperationsMetadata section attributes,Table 13 Optional values of OperationsMetadata section attributes,除了表12中列出的可选值,在OperationsMetadata section中,有许多“name”属性和“value”元素的

29、可选值,当考虑可用时,才列出。这些属性和元素的大部分用于记录各种参数和数量的域。,InputFormat是一个非参数量,所有特定OWSs在有限的范围使用这个量。这个量应受到限制,仅在请求方法数据结构中通过HTTP Post或Get使用。这种限制条款包括如下:a)“name”参数(和XML属性)值应应是“InputFormat”,意味着编码格式允许这个操作请求。b)一个可能的“value”参数(和 XML 元素)值应是 MIME 类型“text/xml”,意味着操作请求采用XML 编码。InputFormat值仅在Post数据结构(XML 元素)中被使用。如果在Post数据结构中,没有详述限制输

30、入格式,则此值被允许。c)另一可能“value”参数(和XML元素)值,应是MIME类型的application/x-www-form-urlencoded,意味着操作请求采用KVP编码。对于InputFormat值可以采用Get或Post的数据结构。在Get数据结构中,如果没有详述限制InputFormat,仅允许使用此值。如果允许一个Post操作请求的KVP编码,InputFormat的限制部分应包含在Post部分中,至少包含这个值。,4.4.7 Contents section 内容 客户端应用通过OGC目录接口向目录服务器提交请求,目录服务器可以通过从以下的来源中抽取信息来进行回应:本

31、地元数据库存、资源服务(ResourceService)或者其他远程的目录服务。一旦用户找到所需的资源,就可以使用OGC规定的标准服务接口来访问相关的资源。当目录服务器从本地的元数据库中提取回应信息时,可以直接通过其内部接口进行处理,比如把客户请求翻译成SQL交给管理元数据集的RDMBS,然后把SQL查询结果返回给目录服务器,最后目录服务器将结果包装成标准的OGC规范格式返回给客户。,若目录服务器从资源服务中提取回应信息,此时的目录服务器会通过GetCapabilitieS标准接口向所有己注册的服务请求其Capabilities文档,该文档描述了相应的服务元数据,目录服务器搜索这些服务元数据并

32、将符合条件的结果包装成OGC规定的标准格式返回给客户。为了提高效率,目录服务器不必每次响应客户请求时均发送 GetCPabailiteS请求,它可以将以前搜集到的信息进行缓存或者保存在本地仓库里,并标以相应的版本号以便更新与同步。若目录服务器从其他目录服务中提取回应信息,此时便构成了分布式搜索的模式。,4.4.8 Languages section 一个OWS服务元数据文件的Languags部分,应包括一系列由服务提供全面支持的语言。语言部分如表23所描述的。,Table 14 Languages data structure,Table 15 Language data structure,The end,thank you!,

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 生活休闲 > 在线阅读


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号