0

私は答えられることを望む質問を持ってここにいます。

次の形式の著者のファイルがあります。

<authorRoot>
<author>
<info tags on author>
</author>
etc
</authorRoot>

私がやりたいことは、FLWORを介して、各「著者」とその情報が異なる値であるリストを返すことだけなので、クエリを実行すると、結果は次のようになります

1. <author><info>.....</info></author>
2. <author><info>.....</info></author>
etc

そして、私はそれと同じくらい単純なものが次のコードであるべきだと確信しています

xquery version "1.0";
for $x in //author
return $x

それでも、そうすると、クエリ結果は次のようになります

1.<author><info>...</info></author><author><info>...</info></author><author><info>...</info></author><author><info>...</info></author><author><info>...</info></author>....etc

私は XQuery に比較的慣れていないので、AltovaSpy を使用しています。私はこれと同様の基本的な質問をしました(ここでは、同様のレイアウトのファイルがあり、本質的に同じコードを使用しているため、1つの長いものだけでなく、複数の値のxquery結果ページが生成されます)が、このファイルではそうではありませんうまくいかないようです!私が見ていないのは私のコードに何かありますか? それとも、おそらくファイルでしょうか?

状況についてご意見をお寄せいただきありがとうございます。

4

2 に答える 2

0

まあ、あなたの推論は正しいです。.

これは単なるフォーマットの問題です。Altova はシーケンス全体を改行せずに 1 行で印刷しているようです。

私の XQuery オンライン テスターで試すこともできます。シーケンスが期待どおりであることを確認できます。

于 2013-03-10T17:49:29.473 に答える
0

この Altova XMLSpy のデモ ビデオを見て 2:35 に進むと、ツールバー ボタンの 1 つ ("Pretty-print" と表示されます) をクリックすると、XQuery の結果が適切にインデントされた XML としてフォーマットされることがわかります。

于 2013-03-12T03:33:20.073 に答える