2

次のような XML がある場合: (例を示すためだけに)

<restaurant>
    <tables>
            <table id=1 />
            <table id=2 />
            <table id=3 />
    </tables>

そして、テーブルの数を数えなければなりません。正しい Xpath 式は次のとおりです。

restaurant/tables/count(table)

また

count(restaurant/tables/table)

?

ありがとうございました

4

2 に答える 2

4

この Microsoft XPath count() チュートリアル を確認してください。

count(/restaurant/tables/table)

上記のパスのテーブル要素をカウントします。

于 2012-12-10T10:42:23.030 に答える
0
restaurant/tables/count(table)

この式は、XPath 2.0 でのみ有効です。restorantこれは一連の数字を生成し、XML ドキュメントに複数のorrestorant/tables要素がある場合、このシーケンスの長さは 1 より大きい場合があります。

count(restaurant/tables/table)

この式は、XPath 1.0 と XPath 2.0 の両方で有効です。単一の数値を生成します。

したがって、一般に、2 つの式は異なります。XPath 1.0 では 2 番目の式のみが有効であり、XPath 2.0 では、これらの式は、評価対象の XML ドキュメントに応じて異なる結果を生成する可能性があります。

ただし、指定された XML ドキュメントでは、これら 2 つの式は (XPath 2.0 で評価された場合) 同じ結果を生成します。

3
于 2012-12-10T13:36:05.373 に答える