span8
span4
使用FME,可以在一个小的工作空间内获得符合INSPIRE标准的GML。在这个演示中,使用多边形几何形状和属性创建了一个单一的特性。然后将该特性进行结构化,以匹配INSPIRE Natural Risk zone核心模式。最后,INSPIRE GML作者编写了一个危险区特性,这是附件III的自然危险区主题的一部分。演示演示了基于应用程序模式创建有效的INSPIRE GML的易用性。这个工作流亚搏在线可以适应其他INSPIRE主题,因为编写INSPIRE GML的工作空间通常包含类似的步骤。
源数据由适当的读取器读取。在本例中,为了简单起见,使用Creator transformer创建了一个多边形来表示示例特性,在本例中是一个洪水风险区域。在报告要支持的bug时,这也是创建复制案例的好方法。
根据INSPIRE的要求,生成惟一的id。有时数据将包含唯一标识符,可以根据需要使用和格式化这些标识符。如果没有可用的惟一id,则可以使用FME生成它们,就像我们在这里使用UUIDGenerator转换器所做的那样。记住要验证INSPIRE GML,这将确保id的唯一性,或者使用重复的ateremover来检测它们。注意,一些id(比如GML id)必须以字母而不是数字开头,因此要在AttributeCreator中添加一个前缀(U_@Value(_uuid))。
创建、填充必要的属性并映射模式。源数据可能包含可以重命名的属性以匹配INSPIRE destination属性,这个过程称为模式映射。然而,INSPIRE数据规范所要求的某些属性在源数据中经常缺乏,例如日期和区域信息。这些属性可以被赋予默认值、生成或从模式映射中获得。属性的添加和修改可能涉及到各种转换器,包括AttributeCreator,AttributeCopier,SchemaMapper,以及一些计算器变压器。
AttributeCreator构造数据以满足INSPIRE数据模型的要求:
数据被重新投射到INSPIRE指定的坐标系统。INSPIRE指令要求数据发布在ETRS89 (EPSG:4258)中,或者对于ETRS89之外的系统,发布在ITRS参考系统中。
源几何图形的命名与目标特性类型中的适当xml_geometry名称相匹配。通常会存在多个xml_geometry名称,但通常只写入一个xml_geometry是可以接受的。在这个演示中,我们想要填充的几何体被命名为“geometry”。其他xml_geometry几何图形是可选的,比如gml_boundedBy或gml_location。几何变换还可以包括组合、重组、推广或简化几何图形。在FME中,最常用的变压器包括GeometryPropertySetter为了命名几何图形和定义特征,聚合器用于嵌套几何图形,和GeometryCoercer用于改变几何类型。
的GeometryPropertySetter用于将几何名称设置为“geometry”,以匹配危险区域的xml_geometry类型之一:
INSPIRE GML写入器用于写入危险区域目标特性类型。可以通过选择INSPIRE主题或为XSD指定文件路径来指定XML模式文档(XSD)。在本例中,使用了内置的应用程序模式Natural Risk Zones Core。与目标属性名称相同的源属性被直接隐式映射到目标字段。注意,即使几何图形本身已经映射,xml_geometry字段仍然是红色的。
使用以下写入器设置:
在编写了INSPIRE GML之后,验证它以确保它符合XML语法和XSD标准是很重要的。可以使用XMLValidator转换器检查GML的语法和模式。如果XML无效,日志中将简要报告一个或多个错误,包括详细信息,如行号、列号和错误的简要描述。对于INSPIRE数据,错误通常是缺少属性或值的结果。错误纠正后,可以再次验证数据,以检查修复是否有效。
XML错误似乎有些误导。例如,可能会报告如下错误:“内容模型不允许使用元素‘namespace’(localId,namespace,versionId?)’”实际上,这通常是由于缺少预期的元素造成的,因为顺序很重要。在这个例子中,是' inspireed . identifier。必须在名称空间元素之前定义localId ',即使两者都是必需的。尝试删除' inspireed . identifier。字段重现上述验证错误。如果模式期望父元素中包含一个元素,而您没有定义正确的gml_parent_id,那么您还会遇到类似的错误。其他常见的错误包括缺少id、日期字段格式不正确、没有将所需的xsi_nil设置为“true”的空值、无效值或带有受限域(如nilReason设置为“unknown”)的字段的不正确大小写。
注意,验证最初会产生一系列错误。通过将输出限制为几个典型特性,然后逐一处理错误,从而简化诊断过程。同样,由于错误列表包含行号和行号,因此在notepad++这样的优秀XML编辑器中进行漂亮打印并查看输出GML将使查找问题变得更加容易。
使用XML Validator转换器的验证工作区:
还可以使用INSPIRE Writer验证XML输出。在Navigator窗口中,可以在写入器参数中指定输出文件的验证。请注意,一旦您对输出感到满意,关闭验证可以帮助提高编写性能。
导航器中的INSPIRE GML写入器参数,包括验证输出文件的选项:
FME服务器可用于提供一个在线激励数据验证服务,该服务由类似于上面所示的工作空间驱动。一个演示可以在这里上传与任何附件I主题对应的数据,并验证模式。示例中使用的源代码和工作区可以从网站修改后可以在您自己的FME服务器上部署。您可以根据需要使用FME转换器添加其他验证测试。
在数据检查器中,使用INSPIRE GML阅读器查看INSPIRE GML结果。为了更快的显示时间,在reader parameters下按主题选择特性类型,不选择INSPIRE主题,或者只选择NaturalRiskZonesCore主题。
在Data Inspector中,按主题选择特征类型,不选择INSPIRE主题,或者只选择NaturalRiskZonesCore:
注意:此示例仅用于演示目的。生成的数据不会用于任何操作目的。*欧洲空间信息的启发或基础设施(INSPIRE or Infrastructure for Spatial Information in Europe)是欧盟的一项指令,旨在创建欧盟数据的空间数据基础设施,用于政策制定。该指令还旨在改善公众对空间信息的获取。如需更多资料,请浏览激励的网站。
©2020安全亚搏在线软件公司法律