当我使用下面的XQuery时,我什么也得不到或"错误XQDY0025"。然而,eXide显示"在0.004中找到4",请帮帮我,我找不到问题。
for $s in doc("customers.xml")/customers/Customer
return $s/@Name
从下面的XML文档中查询Name
属性:
<customers>
<Customer Name="c2">
<Order OrderNumber="o1">
<Item Description="ab">i1</Item>
</Order>
</Customer>
<Customer Name="c3">
<Order OrderNumber="o2">
<Item Description="cd">i2</Item>
<Item Description="ef">i3</Item>
</Order>
<Order OrderNumber="o2">
<Item Description="cfg">i5</Item>
</Order>
</Customer>
<Customer Name="c1">
<Order OrderNumber="o1">
<Item Description="abc">i1</Item>
<Item Description="def">i2</Item>
</Order>
</Customer>
<Customer Name="c4">
<Order OrderNumber="o1">
<Item Description="abc">i1</Item>
</Order>
<Order OrderNumber="o2">
<Item Description="def">i2</Item>
</Order>
</Customer>
</customers>
错误代码XQDY0025
(XQuery1.0,XQuery3.0)表示您试图将两个具有相同名称的属性添加到同一元素中。
XPath表达式本身并没有错——它返回一系列属性节点,但由于所有这些节点都有相同的名称,因此不能在输出中向同一元素添加多个节点。