test1:ノードを辿って、指定の要素にアクセスする。 foods/food/name test2:指定の要素中のテキストにアクセスする。 foods/food/name/text() test3:指定の要素の属性にアクセスする。 foods/food/@category test4:2番目のfood要素にアクセスする。 foods/food[2] test5:最後のfood要素のnameに含まれるテキストにアクセスする。 foods/food[last()]/name/text() test6:XML中の全てのprice要素中のテキストにアクセスする。 //price/text() test7:「..」を使って、ノードをさかのぼっていくこともできます。このテスト自体は無意味ですが、、。 foods/food[4]/name/../../foods/food[2]/name/text() test8:food要素の中で、「フルーツ」属性を持つfoodの、name中のテキストにアクセスする。 //food[@category='フルーツ']/name/text() test9:food要素の中で、name要素が「うどん」の値を持つfoodの、price中のテキストにアクセスする。 //food[name='うどん']/price/text() test10:属性が「フルーツ」のものの2番目の要素の名前にアクセスする。 //food[@category='フルーツ'][2]/name/text() test11:description要素を持つfood要素のnameの値にアクセスする。 //food[description]/name/text() test12:text()はテキストだけ、node()は内包する全てにアクセスできる。 //food[3]/place/text() //food[3]/place/node()