您可以使用不同变换(例如,赋值变换、创建变换、移动变换或 xs:type 变换),设置输出元素的值。
过程
完成问卷以识别您可用于设置输出元素的值的变换:
- 是否要将值设置为固定值?
- 是否要初始化输出元素?即,是否要创建空结构?
使用创建变换以初始化字符串输出元素或 hexBinary 输出元素。
- 是否要创建 nil 输出元素?
使用创建变换,并验证输出元素在模式中是否定义为 nillable="true"。
- 是否要通过使用值为 nil 的输入元素将输出元素设置为 nil?
使用移动变换。 验证输入元素是否在模式中定义为 nillable="true" 。 确保输入元素的值为 nil。
- 是否要将输出元素设置为缺省值?
使用创建变换,并验证是否在模式中设置了输出元素的缺省值。
- 是否要使用数据库列中的输入设置输出元素?
使用选择变换以获取数据库输入值。 然后,在与选择变换关联的嵌套映射中,使用移动变换设置输出元素的值。
- 是否要使用输入元素的值设置输出元素的值? 输入元素和输出元素是否具有相同的关联类型? 是否要将输入值强制类型转换为输出值的类型?
- 输入和输出元素具有相同类型时,使用移动变换。
- 输入和输出元素具有不同数据类型时,使用 xs:type 变换。
- 是否要使用一个或多个输入元素的值计算输出元素的值?
要设置具有字符串数据类型或 hexBinary 数据类型的输出元素,请使用以下任一变换:
- Concat
- 标准化
- APPEND
- Substring
- fn:string-join
- 定制 XPath
- 定制 Java
- 定制 ESQL
要设置具有任何其他数据类型的输出元素,请使用以下任一变换:
- 任何受支持的 XPath 函数,例如,fn:round
- 定制 XPath
- 定制 Java
- 定制 ESQL
- 是否要始终应用变换? 是否要在发生基于输入数据的情况时应用变换?
结果
表 1. 设置简单输出元素的值
| |
设置输出元素的值所需的输入元素数 |
用于设置字符串数据类型或 hexBinary 数据类型的变换 |
用于设置其他简单数据类型的变换 |
| 使用固定值设置输出元素 |
0 |
赋值 |
赋值 |
| 初始化输出元素 |
0 |
CREATE |
无效选项 |
| 将输出元素设置为 nil |
0 |
CREATE 条件:输出元素在模式中必须定义为 nillable="true" 。
|
CREATE 条件:输出元素在模式中必须定义为 nillable="true" 。
|
| 通过使用 nil 输入元素将输出元素设置为 nil |
1 |
移动 条件:输入元素在模式中必须定义为 nillable="true" 。
|
移动 条件:输入元素在模式中必须定义为 nillable="true" 。
|
| 使用缺省值设置输出元素 |
0 |
CREATE 条件:必须在模式中设置了输出元素的缺省值。
|
CREATE 条件:必须在模式中设置了输出元素的缺省值。
|
| 从数据库表列设置输出值 |
1..N |
选择变换(用于获取数据库输入值)以及移动变换(用于设置值) |
选择变换(用于获取数据库输入值)以及移动变换(用于设置值) |
| 将输入元素的值复制到输出元素(两个元素具有相同数据类型) |
1 |
移动 |
移动 |
| 将输入元素的值复制到输出元素(元素具有不同数据类型) |
1 |
xs: type |
xs: type |
| 使用多个输入元素的值计算值 |
1..N |
并置、规范化、附加、子字符串、fn:string-join、定制 XPath、定制 Java、定制
ESQL |
XPath fn: 函数、定制 XPath、定制
Java、定制 ESQL |
后续操作
了解变换。 有关更多信息,请参阅 "图形数据映射" 编辑器中的变换类型。