span8
span4
阅读INSPIRE通常只涉及指着源数据和选择INSPIRE格式。您可能需要选择轴顺序,如果它不正确的方向。您也可以选择复杂的属性,XML片段地图,然后使用扁平化选项(列表括号替代空字符串),使其更容易映射来自多个嵌套元素的关系结构,如地理信息系统。
地图名称{0} .GeographicalName.spelling {0} .SpellingOfName.text到name0.GeographicalName.spelling.SpellingOfName.text
为了保持XML结构复杂的地图属性的默认阅读器设置的为“嵌套属性”离开它。从架构显示特征类型:“数据集只带属性的架构合并”通常产生最佳效果。
其中一个INSPIRE的复杂性是每个功能可以包含多个几何形状。例如,除了多边形,包裹可以具有基准点和由框界定。默认情况下,FME读取所有这些几何形状。这可能要求的几何形状通过在工作空间中解聚集和过滤被简化。为了消除由框包围,你可以简单地取消选中“读取预定义的特性”读者设置。边界框可以是一个痛苦,因为他们可以完全覆盖你真的想看到的功能,因此能够关闭这个功能是很有帮助的。
如果你不能阅读所有的功能,有可能是你的源GML一个问题。有时发行商声称,他们的数据是INSPIRE投诉时,它其实不是。要检查您的源数据是否有效,请参阅下面的验证部分。因为有这么多的INSPIRE模式,是很常见的出版商,以构建调用所有的模式,因为他们要发布的主题,如果你从这样的源获取数据,您将无法读取它自己的伞架构 without their umbrella schema.要使用自己的模式,在所应用模式读者设置,更改“选择由功能型”向XSD,然后“应用模式”输入文件或URL路径的模式XSD文件。对于诊断其他问题读INSPIRE数据,搜索FMEpedia针对与GML的文章和XML阅读诊断。
FME在2014年之前,通常用户所需要XMLTemplater与文本文件作家写INSPIRE GML。现在,所有你需要做的就是添加一个INSPIRE作家,设置“选择要素类型”为“按主题”,然后选择要写入INSPIRE主题。FME在工作区中放置这些目标要素类型的基础上,INSPIRE模式。然后,它只是一个FME数据重组和模式映射的事情来支持该目标INSPIRE架构。您还需要了解所需的字段,关系的nillable领域等方面的INSPIRE架构要求通常AttributeCopiers用来做架构字段映射,AttributeCreators用于定义默认值,和用于AttributeValueMapper值的映射。可以的SchemaMapper使用存储在CSV外部人行横道表做这一切的多个特征类型或Excel表格。读取数据INSPIRE和写入它到底退了出去需求0变压器工作区 - 参见附件的工作区。的INSPIRE读/写器支持所有用于INSPIRE所需的复杂性,例如每特征的多个几何形状,嵌套特征,重复的元素,的nillable元素。我们还精简了GUI和工作空间参数,使它们更容易使用。请注意,这是开始写作INSPIRE GML的好方法。,往返工作区,如一个连接,再加上一个记录器,会告诉你到底是什么在FME需要为了写出符合INSPIRE GML数据结构。
一个良好的开端是基本启发GML写作的例子。这包括基础知识对于如何命名的属性和几何形状,使他们获得写出correctly.The INSPIRE作家也有漂亮的打印设置。原型设计工作区写入到一个新的主题时,这是非常有用的。漂亮的印刷XML是一个更容易与当时的序列化的XML解决。默认编写参数应适用于大多数的其他设置,因为INSPIRE模式控制,许多这些参数是与XML文档的结构。
需要注意的是,如果你想使用一个新的模式草案,可以覆盖FME附带一个与更新的一个,或者只使用GML作家。需要注意的是,GML的读者将检查在任何给定的GML文件的命名空间,并用它来确定要使用的阅读器,所以GML阅读器可以用来读取INSPIRE数据也是如此。
没有以书面形式INSPIRE GML如果无法验证输出多点。要检查这一点,你可以使用XMLValidator在上面的网址来验证相关主题的INSPIRE架构的源数据。您也可以在本地FME \ XML \模式找到这些模式\启发。该XMLValidator用来验证了Apache Xerces库,让你知道的结果是客观的。
要做到这一点最简单的方法是创建一个新的工作空间,添加一个造物主,那么XMLValidator。你要测试的XML文件,并要验证对INSPIRE应用模式的XSD文件点XMLValidator。XMLValidator的输出端连接到记录仪。运行工作空间,查看日志,看看你的XML是有效的。如果没有,你会得到一个完整的报告,列出你的XML相关的INSPIRE架构的问题。需要注意的是XMLValidator也有语法的验证模式。参见一个例子的附接工作区。
FME服务器可以用来提供通过类似于上面所示的一个工作区驱动的联机验证服务。这里是一个演示激发GML验证服务它允许你上传对应的任何附件一主题的数据和验证模式。在此演示中使用的源代码和工作空间可以从下载网站并修改自己的FME Server上的部署。如使用FME变压器需要,您可以轻松地在其他验证测试添加。
那么,我们不再需要XMLTemplater?事实并非如此。XMLTemplater仍然是XML写作非常有用,因为我们并没有基于XML模式写作呢。还有,你需要生成GML的场合,你有没有GML应用模式。此外,一些模式是如此之大,你想要的部分写入可以小,它可能是更容易使用XMLTemplater。元数据就是一个很好的例子。一个给定的组织可以具有XMLTemplater可以被配置成使用一个标准的元数据模板。由于通常情况下,通常有解决FME任何给定的问题的方法不止一种。尽管如此,产生INSPIRE GML,你应该试图建立自己的模板之前尝试应用模式的写作方法。
现在通过OGC WFS将INSPIRE GML发布到web上要容易得多。实际上,您可以将web服务承载工作空间发布到处理HTTP OGC消息流量和GML响应的数据流服务。getcapability和descripbefeaturetype请求只是工作区的输入,这些输入被解析并用于通过文本文件编写器生成适当的getcapability XML和descripbefeaturetype XSD响应。处理GetFeature请求以生成INSPIRE GML响应。一旦发布到FME服务器,输入就由数据流服务托管。这允许您几乎可以配置任何您想配置的web服务,并且可以轻松地配置为支持XML过滤器、WFS 2.0、WPS、WMTS等,这一切都是通过配置您的工作空间而无需编写任何代码实现的。有关此的更多信息,请参见INSPIRE WFS演示。
您可以通过选择任何INSPIRE GML数据集来自己测试它,并设置一个读取和写入它的工作区。一个很好的例子是所附的GeoNamesGMLwriter_FME2014.zip。在Data Inspector中打开GML输出,查看它是否具有输入的所有内容。然后检查以确保结果符合相关的INSPIRE模式。注意,如果输出没有验证,首先要检查的是输入是否验证。如果你的输入数据无效,FME不会自动修复它。还要注意的是,如果你想写一个特定的激励主题,第一步仍然是获得一些样本数据。然后你可以创建一个INSPIRE来激发工作空间并记录结果。这将显示你的结构的FME功能,你需要生成,以推动你的启发GML作家。在诸如notepad++之类的xml编辑器中查看您的GML也是一个好主意,以确保所有内容都在那里,并且结构与您所期望的一样。
如果你有任何问题,请提出来联络支持。。
示例激发XML中的地理名称特性:
2013-01-01T12:00:00 36.715000152587891 15090000152587891 8756d185-ef24-4352-974b-82c263b43d69IT.IMA.GN雷区内意大利本名标准化帕切诺行政单位
例子启发地理名称功能从FME的工作空间日志:
功能类型:“NamedPlace_LOGGED”属性(编码:utf - 16):“beginLifespanVersion”有价值的2013 - 01 - 01 t12:00:00”属性(string):“fme_feature_type”价值“NamedPlace”属性(string):“fme_geometry”价值“fme_point”属性(纠缠:字符串):“fme_type”有价值的fme_point % | -1440964106 _36 | %属性(编码:utf - 16):‘gml_id IT.IMA.GN有价值”。属性(编码:utf-16): ' gml_original_coordinate_system'有值' urn:ogc:def:crs:EPSG::4326'属性(编码:utf-16): ' inspireId.Identifier。属性(编码:utf-16): ' inspireId.Identifier.namespace' has value ' . ima。GN'属性(编码:utf-16): ' localType{0}。LocalisedCharacterString' has value `Regione' Attribute(encoded: utf-16) : `localType{0}.LocalisedCharacterString.locale' has value `it-IT' Attribute(encoded: utf-16) : `name{0}.GeographicalName.language' has value `Italian' Attribute(encoded: utf-16) : `name{0}.GeographicalName.nameStatus' has value `standardised' Attribute(encoded: utf-16) : `name{0}.GeographicalName.nativeness' has value `endonym' Attribute(encoded: utf-16) : `name{0}.GeographicalName.sourceOfName' is属性(编码:utf-16): ' name{0}. geographicalname . sourceofname。nilReason' has value `unknown' Attribute(encoded: utf-16) : `name{0}.GeographicalName.spelling{0}.SpellingOfName.script' has value `Latn' Attribute(encoded: utf-16) : `name{0}.GeographicalName.spelling{0}.SpellingOfName.text' has value `PACHINO' Attribute(encoded: utf-16) : `type{0}' has value `Administrative unit' Attribute(string) : `xml_type' has value `xml_point' Coordinate System: `EPSG:4326' Geometry Type: IFMEPoint Name(utf-16): `geometry' Number of Geometry Traits: 1 GeometryTrait(encoded: utf-16): `gml_id' has value `IT.IMA.GN.P8756d185-ef24-4352-974b-82c263b43d69' Coordinate Dimension: 2 (36.7150001525879,15.0900001525879)
©2019安全亚搏在线软件公司|法律