使用 mule splitter 或 xslt 从 XML 中提取字段

Extracting fields from XML using mule splitter or xslt

你好下面是我的输入XML我想按行吐XML:

<root>
  <row>
    <Product>abc</Product>
    <price>20</price>
    <discount>10%</discount>
  </row>
  <row>
    <Product>def</Product>
    <price>120</price>
    <discount>11%</discount>
  </row>
  <row>
    <Product>ghi</Product>
    <price>210</price>
    <discount>5%</discount>
  </row>
</root>

输出 XML 应如下所示:

第一个XML

<trx>
    <Product>abc</Product>
    <discount>10%</discount>
</trx>

第二个XML

<trx>
    <Product>def</Product>
    <discount>11%</discount>
</trx>

等等。

我是否必须使用 splitter 或 xslt 什么是 xslt 代码来实现此目的。我需要更改根名称并从原始 XML

中删除字段价格

我发现的最佳方法是使用拆分器,然后使用数据映射器更改结构。 所以我首先使用了拆分器,然后使用 xpath 我占据了行

#[xpath('/root/*')]

然后我使用数据映射器将其更改为我想要的格式