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

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了逻辑应用程序中的XPath根据其类型提取值相关的知识,希望对你有一定的参考价值。

我正在使用逻辑应用程序来剖析和重建入站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"])')

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

答案

此XPath,

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

将选择Value ContextType个元素的所有test2个元素子元素。

以上是关于逻辑应用程序中的XPath根据其类型提取值的主要内容,如果未能解决你的问题,请参考以下文章

在 PIG 中使用 xpath 提取 XML 中的属性值

如何从 XML 中仅提取标签名称(而不是值),最终使用 XPath

根据XPath中子节点的double值查找父节点

TypeScript:创建类型,根据其值类型删除接口/类的属性

[转]scrapy 选择器官方文档

使用 xPath 解析 xml 并提取属性值