逻辑应用程序中的XPath,用于根据其类型提取值应用程序、逻辑、根据、类型

2023-09-03 10:44:17 作者:许你似水温柔

我正在使用一个逻辑应用程序来解析和重新构造一个入站XML。我遇到的问题是,XML的一部分并不总是以相同的顺序包含相同数量的子节。所以我想知道是否可以根据类型返回值?也就是说,在本例中,我希望返回值2,其中2并不总是第二个上下文。

 <ContextCollection>
  <Context>
    <Type>test1</Type>
    <Value>1</Value>
  </Context>
  <Context>
    <Type>test2</Type>
    <Value>2</Value>
  </Context>
  <Context>
    <Type>test3</Type>
    <Value>3</Value>
  </Context>

智行助手 小程序守护员工出行安全

我已成功使用以下表达式xpath(xml(variables('XMLStripNameSpace')),'string(/*[name()="ContextCollection"]/*[name()="Context"][2]/*[name()="Value"])')

但当测试2是第三个Context时,这显然不起作用。

推荐答案

此XPath,

//Context[Type = "test2"]/Value

将选择Typetest2Context元素的所有Value元素子项。