span8
span4
在动态工作空间中,writer模式不是从标准工作空间定义中获得的,而是从现有数据集的模式或列表属性构造的模式中获得的。
在大多数情况下,writer模式是从单个源获得的,但是有时一个writer模式需要从多个源构建。
本例使用列表属性构造writer模式的技术,但是使用多个源来获得所需的信息。这是一种能够将不同的数据集合并在一起,并用一个组合模式将它们写出来的方法——所有这些都是动态的。
具体来说,这里的工作空间转换了一个公园数据集。需要将来自辅助数据集的属性添加到公园并将其写出来。因为这些属性是事先不知道的,所以有必要使用动态翻译;因为有多个模式源,所以必须使用使用列表属性的技术。
如前一篇文章所述,构建动态模式所需的列表属性是attribute{}.name和attribute{}。fme_data_type——这两个列表属性定义了writer模式属性的名称和数据类型。
除了从头构建这些,这些可以直接从我们的主数据集中提取,使用一种名为“模式(任何格式)”的读取器格式,例如:
属性 | 值 |
属性{0} .fme_data_type |
fme_int16 |
属性{0}。名称 |
ParkId |
属性{1} .fme_data_type |
fme_int16 |
属性{1}。名称 |
RefParkId |
属性{2} .fme_data_type |
fme_varchar(40) |
属性{2}。名称 |
ParkName |
类似地,可以从辅助数据源提取属性列表:
属性 | 值 |
属性{0} .fme_data_type | fme_varchar(30) |
属性{0}。名称 | ZONENAME |
属性{1} .fme_data_type | fme_varchar(30) |
属性{1}。名称 | ZoneCategory |
工作空间要解决的主要问题是将这两个列表合并到一个输出模式定义中。
工作空间看起来是这样的:
有三个读者:
模式读取器从源数据集(主数据集和次数据集)读取模式,因此发出两个特性。属性列表被分解为每个属性创建一个特性,然后使用聚合转换器将其合并回单个列表。使用AttributeKeeper转换器删除多余的模式信息:
初级和次级的数据集被读 - 这里的主要数据集是固定的,但辅助数据集是通用/动态 - 并且该信息被从次级传送到初级(这里使用SpatialFilter):
最后,规划列表属性合并到使用FeatureMerger变压器的主要特点:
作家特征类型是动态设置和要使用的模式特征作为模式源。
运行工作空间,检查输出。你会发现,每个园区目前已连接什么开发区园区所在的信息。
最重要的部分是,你可以更改源分区数据集中到别的东西(任何格式的),并从这些要素的属性将动态连接和输出使用。
1。添加读者和架构
添加两个MITAB读者,一个区域的数据,一个用于公园数据,确保一个合并的功能类型选择两个。然后添加一个模式读者。对于架构的读者,先添加Zones.tab文件,然后单击参数。在为其他属性,露出参数,添加下面的列表中。然后单击确定以读者添加到工作区。在Navigator窗口,最大限度地发挥区[架构],然后点击源数据集。点击下拉菜单,然后单击选择多个文件/文件夹。添加Parks.tab文件。
2。设置SpatialFilter
经由过滤器输入端口以及经由候选输入端口的公园作家连接SpatialFilter到区域写入器。在参数设置的空间谓词测试:
3。ListExploder
一个ListExploder添加到架构作家。在参数设置列表属性到属性{}。
4。聚合
聚集器连接至该ListExploder元素输出端口。将累加模式来合并传入属性。检查生成列表,设置列表名称属性和所选属性添加fme_data_type和名称
注意:FME的旧版本不会有添加到列表或选择属性参数。如果打开附加的模板,它也缺少参数,因为工作区与旧版本创建的。我要离开模板,以便与旧的FME仍然可以使用它用户;但要获得这些参数只需右键单击并选择升级变压器。
5。保留指定
我们只关心保持两份,我们暴露的属性。在聚合后添加保留指定。在参数选择......在列表中,以保持并选择属性{}。fme_data_type和属性{}。名称
6。FeatureMerger
合并都在一起,我们将使用FeatureMerger。同时连接在SpatialFilter给请求输入端口和AttributeKeepers输出端口上FeatureMerger供应商输入端口的通过和失败的输出端口。在FeatureMerger参数,设置请求者3和供应商3,保持一切为默认值。
7。写出动态作家
一个MITAB作家加入到工作区,确保其设置为动态(高级)。它连接到在FeatureMerger合并后的输出端口。一旦添加到工作区中,在参数中设定的模式来源“架构从架构功能”。督察连接到合并后的输出端口和运行转换。
©2019安全亚搏在线软件公司法律