我正在使用OSB并且有一个包含父节点和子节点的长XML。
这是我的XML
<XML>
<RefreshLaborApproval2RSP xmlns:XPathFunction="http://www.oracle.com/XSL/Transform/java/mol.prc.labourapproval.XPathFunction" xmlns:tsd="http://namespaces.softwareag.com/tamino/TaminoSchemaDefinition">
<ERRORCODE>
<VALUE>dfdfdf</VALUE>
</ERRORCODE>
<LABORRECORDS>
<LABORNAT>
<VALUE>569</VALUE>
</LABORNAT>
</LABORRECORDS>
<LABORRECORDS>
<LABORNAT>
<VALUE>218</VALUE>
</LABORNAT>
</LABORRECORDS>
</RefreshLaborApproval2RSP>
</XML>
当我使用表达式XML/*
时,它为我提供了从<RefreshLaborApproval2RSP>
到</RefreshLaborApproval2RSP>
的整个XML,并在一个名为xmlparentNode的变量中保持相同。
然后当我使用$xmlparentNode/LABORRECORDS
时,我只获得istLABORRECORDS
子元素,如下所示。
<LABORRECORDS>
<LABORNAT>
<VALUE>569</VALUE>
</LABORNAT>
</LABORRECORDS>
但我想要所有<LABORRECORDS>
子元素。
答案 0 :(得分:0)
我不知道你想要实现什么,但你可以:
分配变量xmlparentNode,
使用For Each例如:
a)每个变量:Laborrecords
b)XPath:./ LABORRECORDS
c)在Variable中:xmlparentNode
d)指数变量:指数
e)计数变量:计数
然后在For Each中分配表达式:$ Laborrecords in variable to get first value,then second。
做一些插页或其中的东西。
我不知道这是否能解决您的问题。
答案 1 :(得分:-1)
您正在使用的XML表达式是正确的。
如果XML元素很长并且您使用变量窗口(在调试期间)来查看返回的元素,则可能存在数据丢失的可能性。