过滤重现节点
通过指定要在运行时用于过滤的 XPath 谓词,您可以限制由映射活动所返回的重现节点。
关于此任务
- 在重现结构中进行循环的 While 循环或针对每个活动
- 用于进行值测试的 If...Then 活动。
例如,您可以使用下列方法之一来将由 BatchOrderProcessingSample 编排所处理的书籍限制为仅返回以字母 B 开头的书籍标题:
- 在用于将平面文件数据转换为 XML 的读取平面文件活动之后,您可以添加一个包含 If..Then 活动(用于测试以字母 B 开头的所有书籍标题)的 While 循环活动。当 While 循环活动在运行时完成后,将返回标题以字母 B 开头的重现 BookOrder 节点的集合。
- 直接在读取平面文件活动(用于将平面文件数据转换为 XML)的映射输出任务的“至编排”窗格中指定谓词,以进行过滤。这是首选方法,因为它能减少运行时期间所进行的处理,从而提高编排性能。 例如,您可以在重现的 BookOrder 节点上指定以下谓词,从而将运行时返回的 Bookorder 节点限制为仅以字母 B 开头的标题:*:title/starts-with(.,'B')
谓词字符 | 描述 |
---|---|
*: | 指定此谓词适用于源节点的任何名称空间。 |
title/ | 指定针对当前源节点的标题节点来应用此谓词。 |
starts-with(.,'B') | 指定此谓词将仅返回具有以字母 B 开头的标题节点的节点。starts-with 函数是一个内置的 XPath 函数。 |
有关 BookOrder 样本的更多信息,请参阅《入门指南》。如果已在 Studio 安装期间接受缺省值,那么您可以在以下目录中找到样本的参考实施:C:\Program Files\IBM\WebSphere Cast Iron Studio 3.X\Samples\BookOrder
要在重现节点上指定谓词: