Skip to main content

EvaluateXPath

描述:

根据一个或多个XPath来解析数据流中的内容。解析XPath的结果将依赖于参数配置来决定作为数据流的属性还是数据流的内容。XPath的设置通过用户添加自定属性方式提供;自定义属性名将映射为存放解析XPath值的属性名(如果<目标>是'数据流属性',否则属性名将忽略)。自定义属性的值必须是有效的XPath表达式。如果计算XPath的结果超过一个节点,并且<返回类型>是'节点集' (或者选择'自动'且<目标>是'数据流内容'),那么输入数据流将不做更改的输出到'failure'连线. 如果计算XPath的结果不是一个节点,那么数据流输出到'unmatched'连线,也不修改内容。如果<目标>是'数据流属性'且XPath没有任何匹配,那么将仍旧创建空值的属性,并且数据流总是输出到'matched'连线

标签:

XML, evaluate, XPath, 解析, 计算

参数:

如下列表中,必填参数则标识为加粗. 其他未加粗参数,则表示为可选参数。表中同时提到参数默认值设置.

名字默认值允许值列表描述
目标数据流内容
- 数据流内容
- 数据流属性
决定XPath解析的结果是写入数据流中还是作为数据流的属性。如果作为属性,则必须添加相应的动态参数。如果作为数据流输出,则只能添加一个XPath动态参数,且参数名将被忽略.
返回类型自动
- 自动
- 节点集
- 字符串
确定期望的XPath表达式的返回结果类型. 如果选择'自动',当<目标>是'数据流内容',则等同选择'节点集'。如果<目标>是'数据流属性',则等同选择'字符串'。
DTD验证验证
- 验证
- 不验证
决定XML内容是否需要DTD验证。

动态参数:

名字描述
A FlowFile attribute(if <Destination> is set to 'flowfile-attribute'An XPath expressionIf <Destination>='flowfile-attribute' then the FlowFile attribute is set to the result of the XPath Expression. If <Destination>='flowfile-content' then the FlowFile content is set to the result of the XPath Expression.
不支持表达式语言

连线:

名字描述
failure当XPath不能解析输入数据流的内容时,数据流将输出到此连线。例如,如果输入数据流不是有效的XML,或者返回类型是'节点集'且解析出多个节点。
unmatched当XPath不能匹配数据流内容且<目的>设置为'数据流内容'时,数据流将输出到此连线
matched当XPath成功解析输入数据流的内容且数据流被修改后,数据流将输出到此连线

读取属性:

未提供。

写入属性:

名字描述
user-defined如果<目的>设置为'数据流属性'后添加的自定义属性

状态管理:

该组件不保存状态。

限制:

该组件没有限制

输入流要求:

组件必须提供输入流。

系统资源考量:

未提供。