0

diffxmlファイルを解析するために、XPath を理解しようとしています。w3schools のサイトをざっと見てみました。これらを正しく理解していますか?

ステートメント 1:/node()[1]/node()[3]
ルート ノードの 3 番目の子を選択する

ステートメント 2:/node()[1]/node()[1]/node()[1]
ルート ノードの最初のノードの子を選択する

ステートメント 3:/node()[1]/node()[3]/node()[2]
ルート ノードの下にある 3 番目のノードの 2 番目の子を選択します。

4

2 に答える 2

1

このサイトでは、w3schools に対する多くの批判を見つけることができます。個人的には、これは便利なリソースだと思いますが、以前知っていたことを思い出そうとする場合に限られます。独学で一から学べるようには設計されていないため、別の学習戦略が必要になることをお勧めします。私を時代遅れと呼んでください。しかし、私が新しい技術を学ぶとき、良い本に勝るものはありません。

私が知る限り、あなたはあなたの例を正しく理解しています。しかし、「ノード」とは何か理解できましたか? たとえば、どのような状況で空白テキストがノードとしてカウントされるか知っていますか? XPath を理解するための鍵は、データ モデルと、データ モデルが XML の字句 (山かっこ) 形式に関連する方法を理解することです。

于 2012-07-20T08:32:50.700 に答える
1

はい、あなたはそれらを正しく理解していますが、これは XPath を使用する方法ではありません。最初node()は、要素だけでなく、何でもかまいません。次に、純粋なインデックスは間違いなく物を選択する方法です。実際には名前を使用し、ノードセットをフィルタリングするために述語を使用する必要があります。

于 2012-07-20T07:03:03.300 に答える