Xquery 映射特定名称属性的值
Xquery to map the value of a specific name attribute
我正在尝试在 jdeveloper 中创建一个 xquery。我被困在其中的一小部分。如果我能得到一些建议就太好了。
以下是我卡住的部分
请求是:
`<variables>
<variable name="StartTime" value="01:00:00"/>
<variable name= "EndTime" value="05:00:00"/>
我要映射的响应是具有两个值的单个元素,如下所示:
<ns2:time ns2:startTime="01:00:00" ns2:endTime="05:00:00"/>
下面是我试过的xquery。但是我在这两个地方都只得到开始时间。我想要一些方法,通过它我可以根据请求中的名称值正确分配值。
if (fn:data($Prefereces/ns1:variables/ns1:variable/@name="StartTime")or fn:data($Prefereces/ns1:variables/ns1:variable/@name="EndTime")) then
( <ns2:time ns2:startTime="{fn:data($Prefereces/ns1:variables/ns1:variable/@value)}" ns2:endTime="{fn:data($Prefereces/ns1:variables/ns1:variable/@value)}">
</ns2:time>)
else
()
提前致谢。
你可以使用这个:
<ns2:time ns2:startTime="{fn:data($Prefereces/variables/variable[@name = 'StartTime']/@value)}" ns2:endTime="{fn:data($Prefereces/variables/variable[@name = 'EndTime']/@value)}"/>
请注意,ns2
前缀必须事先定义。
XQuery 的谓词是使用括号 ([condition]
) 指定的,您的尝试中缺少它。
我正在尝试在 jdeveloper 中创建一个 xquery。我被困在其中的一小部分。如果我能得到一些建议就太好了。 以下是我卡住的部分
请求是:
`<variables>
<variable name="StartTime" value="01:00:00"/>
<variable name= "EndTime" value="05:00:00"/>
我要映射的响应是具有两个值的单个元素,如下所示:
<ns2:time ns2:startTime="01:00:00" ns2:endTime="05:00:00"/>
下面是我试过的xquery。但是我在这两个地方都只得到开始时间。我想要一些方法,通过它我可以根据请求中的名称值正确分配值。
if (fn:data($Prefereces/ns1:variables/ns1:variable/@name="StartTime")or fn:data($Prefereces/ns1:variables/ns1:variable/@name="EndTime")) then
( <ns2:time ns2:startTime="{fn:data($Prefereces/ns1:variables/ns1:variable/@value)}" ns2:endTime="{fn:data($Prefereces/ns1:variables/ns1:variable/@value)}">
</ns2:time>)
else
()
提前致谢。
你可以使用这个:
<ns2:time ns2:startTime="{fn:data($Prefereces/variables/variable[@name = 'StartTime']/@value)}" ns2:endTime="{fn:data($Prefereces/variables/variable[@name = 'EndTime']/@value)}"/>
请注意,ns2
前缀必须事先定义。
XQuery 的谓词是使用括号 ([condition]
) 指定的,您的尝试中缺少它。