AttributeManager
允许用户创建新的属性或重命名,复制,删除和重新排序现有的属性。用户还可以将新属性和现有属性的值设置为常量、属性值、条件和表达式的任意组合。进入transformer的任何特性都会出现一组在transformer的parameters对话框中定义的新属性。
输入端口
这个转换器接受任何特性。
输出端口
具有创建和修改属性的特性。
参数
启用此设置允许用户基于当前特性之前或之后的特性属性设置属性值。先验特征的属性被引用为功能[-1].attrname,功能[-2].attrname等。后续特性的属性被引用为功能[+1].attrname,功能[+2].attrname等。可以直接访问当前处理的特性的属性,而不需要前缀,比如属性名。
在检索以前的特性值时,AttributeManager对该特性所做的任何更改都将生效。
此参数指定AttributeManager可以引用的先前特性的最大数量。如果启用了多个特性属性支持,则此值必须是0到100之间的值。
此参数指定AttributeManager可以引用的后续特性的最大数量。如果启用了多个特性属性支持,则此值必须是0到100之间的值。
此参数指定指定属性不存在、具有空值或具有空字符串值时所需的行为。这些属性可以被认为是未解决的属性。例如,由于在第一个输入特性之前没有任何特性,因此AttributeManager将无法解析的值功能[-1].attrname对于第一个输入特性。如果将此参数设置为使用空字符串, AttributeManager将使用空字符串解析所有未解析的属性。另一个例子,如果的值特征[+2]空字符串和使用其他值指定,则空字符串将被视为未解析的属性,并将被解析为在属性替换值。
如果将此参数设置为使用最近特征的属性值,则未解析的属性将被解析为最近特征的对应属性,如果该特征存在的话。在寻找最接近的特性时,会跳过具有未解析属性的特性。例如,如果的值功能[-2].attrname是未解决的,那么解决的价值是什么功能[-2].attrnameAttributeCreator将查看最接近的特性特征[-2],在特征之间交替之前和之后特征[-2]。它会先看功能[-3].attrname,紧随其后的是功能[-1].attrname如果需要,然后功能[-4].attrname如果需要,直到指定的所有先前和后续特性都已用尽。如果该属性在指定的先前和后续特性中保持未解析,则将其解析为属性替换值参数。
属性时,此参数指定用于解析未解析属性的值如果属性值丢失、为空或为空参数设置为使用属性值最接近的特征(但没有找到最接近的值)或使用其他值。
•输入属性:当transformer第一次打开时,这一列将填充发送到输入端口的完整的暴露属性列表。用户不能编辑此字段。创建新属性时,此字段将留空。
•输出属性:这将显示属性创建者修改后的属性名。对于新属性,本列只是给出新属性的名称。对于rename,此列显示给相应输入属性的新名称。类似地,当操作被设置为Copy时,此列给出复制的名称。将操作设置为删除时,此列将变为不可编辑。
•行动:此列确定要对属性执行的操作。创建新属性时,唯一可用的操作是“设置值”。当使用现有属性时,可用的选项是“重命名”、“复制”、“删除”和“设置值”。
- 当action设置为“Rename”时,属性管理器的行为与属性名称,它将输入属性重命名为输出属性。
- 当action设置为“copy”时,属性管理器的行为与属性码头,它将使用输出属性。
- 当操作设置为“delete”时,输入属性将被删除并从输出架构中移除。
- 当操作设置为“设置值”时,输入属性的值将更改为“属性值”列中指定的值。
- 属性值:在“action”为“set value”的情况下,此列中的值将用于设置输入属性的值。如果“action”是rename或copy,则在缺少输入属性时将应用此值。
•价值:输入与属性名关联的值。
- 对于“值”列,也可以单击单元格中的“浏览”按钮打开代码编辑器,如下图中突出显示的黄色所示:
此编辑器对于输入多行属性值(如HTML或XML片段)非常有用。
字符可以表示为正则字符,但也可以包含任意数量的控制字符。
特殊字符序列(仅限高级编辑器)解释如下:
序列 |
说明 |
---|---|
ctrl+shift+h(^h) |
退格(0x08) |
CTRL+SHIFT+L(^L) |
表单馈送(0x0c) |
ctrl+shift+j(^j) |
换行符(0x0a) |
ctrl+shift+r(^m) |
回车(0x0d) |
ctrl+shift+i(^i) |
选项卡(0x09) |
ctrl+shift+k(^k) |
垂直选项卡(0x0b) |
定义特殊字符
可以通过基本编辑器或高级编辑器定义特殊字符。从“参数”菜单中单击“打开编辑器”:
基本文本编辑器
从“字符串类型”列(或在某些转换器中的“值”列)中选择“常量”,然后单击该列中的空字段:
单击列右侧的“浏览”按钮以打开“编辑值”对话框。在此编辑器中,使用上表中的快捷键输入字符。
高级文本编辑器
使用上表中的快捷方式输入字符。
注:若要查看制表符,请单击左下角的“选项”菜单,然后选择“显示空间/制表符”。
数学编辑器
有关更多信息,请参见ExpressionEvaluator和算术编辑器。
例子
具有已创建属性的功能。
在Workbench中,新属性将添加到转换器:
如果输出到检查器,则属性和值将显示在信息窗格中:
假设我们得到以下数据集:
身份证件 |
纬度 |
经度 |
---|---|---|
0个 |
四十九点一六四零 |
-123.061号 |
1个 |
49.1643年 |
-123.063号 |
2个 |
49.1642年 |
-123.062号 |
三 |
49.1642年 |
-123.064号 |
如果先验特征数和后续特性数量参数都设置为2,然后当读取第一个功能时,AttributeManager可以访问以下功能:
特征参考 |
身份证件 |
纬度 |
经度 |
---|---|---|---|
特征[-2] |
|
|
|
特征[-1] |
|
|
|
当前功能 |
0个 |
四十九点一六四零 |
-123.061号 |
特征[+1] |
1个 |
49.1643年 |
-123.063号 |
特征[+2] |
2个 |
49.1642年 |
-123.062号 |
注意,由于第一个特征之前没有任何特征,所以缺少一些属性。
读取第二个功能后,AttributeManager可用的先前和后续功能的窗口将移动以生成以下内容:
特征参考 |
身份证件 |
纬度 |
经度 |
---|---|---|---|
特征[-2] |
|
|
|
特征[-1] |
0个 |
四十九点一六四零 |
-123.061号 |
当前功能 |
1个 |
49.1643年 |
-123.063号 |
特征[+1] |
2个 |
49.1642年 |
-123.062号 |
特征[+2] |
三 |
49.1642年 |
-123.064号 |
以下设置可用于计算当前处理的功能之前两个功能的平均纬度和经度:
当使用多特征模式时,高级编辑器将当前特征的属性排序在先前和后续特征的属性之上。
编辑变压器参数
使用一组菜单选项,可以通过引用工作空间中的其他元素来分配transformer参数。更高级的功能,如高级编辑器和算术编辑器,也可以在一些转换器中使用。要访问这些选项的菜单,请单击在可适用的参数旁边。有关更多信息,请参见变压器参数菜单选项。
变压器的分类
搜索FME知识中心
有关此变压器的示例和信息,请参阅FME知识中心。