从 XML 字符串提取 XML 集合

使用“提取 XML 集合”操作,从一个 XML 字符串或一个 XML 字符串中的一部分提取一行或多行的集合。集合中的每一行必须有相同的预定义属性集。

在操作过程中,以这种方法提取的集合等同于从“加载集合”事件操作中产生的集合。这表示:

  • 它可以由后续的“更新集合”操作执行。
  • 在任何后续的相关操作中,可以使用 XML() 函数将它转换回 XML 字符串。
  • 在任何后续的相关操作中,可以使用 ROWS() 重复它的行,且可以使用 P() 或 FP() 函数参考每一行的属性。

使用该事件操作,很容易地使用 XML 数据,而不必解析这些标记。

要设置操作及其参数:

  1. 创建操作类型为“提取 XML 集合”的事件操作。

    请参见创建事件操作

  2. 单击编辑参数,系统将显示事件操作提取 XML 集合表单。

    该表单有三个按钮,每个按钮有一个附带的字段:

    按钮/字段 备注
    XML 模板 该按钮将打开事件操作选择 XML 模板表单,可使用该表单选择并加载 XML 模板,以便与提取的 XML 数据一起使用。您还可以在该字段中手动输入 XML 模板,或从其他源解析。

    XML 模板是一个 XML 片段,它与要提取数据的 XML 中单行数据的结构相同。因此这个 XML 片段可以用作这行数据的模板。

    在该字段中,XML 模板显示为单个字符串。

    XML 该按钮将打开事件操作表达式编辑器的一个实例。

    此处引用的 XML 是从中提取数据的 XML 字符串。

    当此类事件操作是事件处理程序的一部分时:

    • 对于 BodOnReceive 事件,常用的函数是 BODXML(),它从入站“业务对象文档 (BOD)”中提取数据。
    • 您也可以:
      • 使用 FILECONTENTS() 函数读取固定 XML 文件中的内容。
      • 使用 XML()函数从另一个集合构建一个 XML 字符串。
      • 引用一个变量或参数。
      • 在字段中手动输入固定的 XML 字符串。
    路径 该按钮打开事件操作设置提取 XML 集合表单的一个实例,可用于设置 XML 的提取路径。

    这是该 XML 字符串中一个或多个节点的路径,该 XML 字符串下有要提取行的数据。这是用“XML 路径语言 (XPath)”语法表示的。

    请参见设置 XML 数据的提取路径

    属性映射 该按钮打开事件操作设置提取 XML 集合表单的一个实例,可用于创建一个或多个属性名称/值配对集,这些配对集将 XML 字符串中提取出来的值映射到结果集合中每一行的属性。

    属性映射包含一组逗号分隔的名称/值配对。每个名称/值配对依次包含由等于号分隔的属性名称和路径。

    • 属性名称确定了将来在提取集合的每一行中如何引用提取值。
    • 路径说明了为给定名称的属性提取的数据的位置,与路径字段中标识的 XML 字符串的每个位置相对应。
      注意: 该路径是用“XML 路径语言 (XPath)”语法表示的。
    结果集分配 该按钮打开事件操作设置结果集 ID 表单,可用于为该事件操作处理带来的记录集提供名称。
  3. 设置这些参数,然后单击确定以关闭表单。