<a>
{
for $p in doc("x.xml")/user//district
where data($p/@population) div data($p/@area) > 20
return <b>
<c> {$p/@name/string()} </c>
<d> {$p/@population div $p/@area} </d>
<d> {$p/@city/string()}</e>
</b>
}
</a>
地区のIDを取得していますが、国の名前が必要です。だから私は都市から地区に戻りたいと思っています。以下のスニペットのように、country(id = 'f0_149') を取得していますが、一致させることができず、代わりに国名 'Austria' を出力しています。
私は Xquery を初めて使用するので、多くのことを認識していません。
XML ファイルのスニペット:
<?xml version="1.0" encoding="UTF-8"?>
<user xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<country id='f0_149' name='Austria' capital='f0_1467' population='10000000' total_area='50000' >
<name>
Austria
</name>
<district id='f0_17440' name='Burgenland' country='f0_149' capital='f0_2291' population='250000' area='5000'>
<city id='f0_2291' country='f0_149' province='f0_17440'>
<name>
Eisenstadt
</name>
<population year='87'>
10102
</population>
</city>