2

HTMLなしで機能するクエリを実行していますが、HTMLを追加すると、結果をより適切に整理できます。タグを追加する<div></div>、エラーが発生します(以下を参照)。クエリは次のとおりです。

let $doc := doc('test')  
for $v in $doc//item 
where $v/product_info/unit[.='9291']
return 
  <div>{ $v/seller_info/seller_company_id[position() lt 2]/text() } 
  </div> 
  <div>{ $v/seller_info/seller_rating[position() lt 3]/text() 
  </div>

このドキュメントについて:

<item>
<item_number>1171270</item_number>
<seller_info>
<seller_company_id>6356</seller_company_id>
<seller_rating>C31</seller_rating>
<seller_rating>T150 hr.</seller_rating>
</seller_info>
<product_info>
<unit>2022</unit>
<sinfo>55 cases</sinfo>
<sinfo>Yu-gi-oh trading card pack</sinfo>
<sinfo>.45kg per unit</sinfo>
<sinfo>24.7500kg shipment</sinfo>
</product_info>
<product_info>
<unit>9291</unit>
<sinfo>7 units</sinfo>
<sinfo>Naruto, Classic, action figure</sinfo>
<sinfo>1.8kg per unit</sinfo>
<sinfo>12.6kg shipment</sinfo>
</product_info>
</item>

そして、私が得ているエラー:

4行85列で停止:[XPST0003]予期しないクエリの終了:'> {$ v / Seller_in ...'

4

1 に答える 1

2

複数の要素を返したい場合は、それらを順番にラップする必要があります。}さらに、 2番目のクロージングを忘れました<div/>

let $doc := doc('test')  
for $v in $doc//item 
where $v/product_info/unit[.='9291']
return 
(
  <div>{ $v/seller_info/seller_company_id[position() lt 2]/text() } 
  </div>,
  <div>{ $v/seller_info/seller_rating[position() lt 3]/text() }
  </div>
)
于 2012-09-20T08:16:17.413 に答える