編集:申し訳ありませんが、質問が少し不明確でした。個々の p ノードを数えながら、p ノードとその子のすべてのテキストを返そうとしています。したがって、<1> は最初の p ノードを指し、<2> は 2 番目のノードを指し、以下同様です。
xml ドキュメントの構造のどこに出現するかに関係なく、個々の要素の出現をカウントしようとしています。for-each ループの有無にかかわらず、position() と count() のバリエーションを試してみましたが、うまくいくものを見つけることができないようです。誰でもこれを行う方法について考えがありますか?
ドキュメントの例は次のとおりです。
<text>
<body>
<div1>
<p>abc</p>
<div2>
<p>def</p>
</div2>
</div1>
<div1>
<p>ghi</p>
<div2>
<p>jkl <name>adam</name></p>
<div3>
<p>mno</p>
</div3>
</div2>
<p>qrs</p>
</div1>
</body>
</text>
戻り値:
<1>abc
<2>def
<3>ghi
<4>jkl adam
<5>mno
<6>qrs