雑誌のコンテンツを記述したファイルのコレクションがあります
<magazine>
<issue.number>22</issue.number>
<article>
<title>first article</title>
<subject>James</James>
</article>
<article>
<title>second article</title>
<subject>James</subject>
</article>
</magazine>
の形式で記事一覧を出力したい<issue.number>, <title>
。
そこで、XQuery を作成しました。
for $x in /magazine
return concat($x/issue.number/text(),',',$x//title/text())
<issue.number>
これによりエラーが発生します。これは、値が2回返されるために発生したと思います。eXist DB では、次のようになります。
パラメータ 1 の実際のカーディナリティは、関数のシグネチャで宣言されているカーディナリティと一致しません: concat($atomizable-values as xdt:anyAtomicType?, ...) xs:string?. 期待されるカーディナリティ: 0 または 1、得られたのは 2 です。
では、使えない場合はconcat()
何を使えばよいのでしょうか?