2012-06-29 69 views
0

我有一個XML文檔具有以下標籤XQuery的迭代

  <User>aaaa</User> 
      <User>bbbb</User> 
      <User>cccc</User> 
      <User>dddd</User> 
      <User>eeee</User> 
      <User>cccc</User> 
      <User>uuuu</User> 

雖然使用for循環迭代數據是不是爲了

如未來次獲得

aaaa 
bbbb 
cccc 
dddd 

and some time it s這樣的想法

我該如何迭代順序方式? 或提供任何順序的xml解析器的名稱

預先感謝

+1

當使用路徑表達式從文檔中檢索時,您會期望[文檔順序](http://www.w3.org/TR/xquery/#id-document-order)中的數據。但是如果您提供的代碼片段不符合要求,您可以獲得更好的建議。 – Gunther

回答

1

這裏就是結果反映了源XML文檔中的元素的原始排序的示例:

for $x in /*/* 
    return 
    $x 

當在以下文獻中進行此的XQuery(所提供的XML片段,包裹成一個單一的頂部元件,使之成爲良好的XML文檔):

<t> 
    <User>aaaa</User> 
    <User>bbbb</User> 
    <User>cccc</User> 
    <User>dddd</User> 
    <User>eeee</User> 
    <User>cccc</User> 
    <User>uuuu</User> 
</t> 

結果是:

<User>aaaa</User> 
<User>bbbb</User> 
<User>cccc</User> 
<User>dddd</User> 
<User>eeee</User> 
<User>cccc</User> 
<User>uuuu</User> 
+0

謝謝,是每次循環提供以上結果的順序? (我認爲XQuery循環是非順序的) – nidhin

+0

@nidhin:結果必須與此答案中顯示的順序完全相同。這並不意味着處理完全按照相同的順序執行。 –