指向性メモ::2005-06-20

ページ情報
制作日
2005-06-20T19:23:04+09:00
最終更新日
2005-06-20T19:23:04+09:00

SPARQLはCollectionを有効に扱えない説

Created:
2005-06-20T19:23:04+09:00

SPARQLには変数名という縛りがある故、Collectionなノードの値すべてを得るような方法が存在しない。……たぶん。

<ex:Team rdf:about="http://example.com/team9/">
    <ex:members rdf:parseType="Collection">
        <ex:Member>
            <ex:name>foo</ex:name>
        </ex:Member>
        <ex:Member>
            <ex:name>bar</ex:name>
        </ex:Member>
    </ex:members>
</ex:Team>

こんな感じのグラフがあったとして、SPARQLでex:Memberすべての名前を取り出す場合とか。

WHERE {
    ?team a ex:Team ;
          ex:members (?mbr1 ?mbr2) .
    ?mbr1 ex:name ?mbr1_name .
    ?mbr2 ex:name ?mbr2_name
}

これだと2人までしか対応できないし。OPTIONALでとりあえず256人分まで作っておくぐらいしか解決策が思いつかない。

「何個あるか分からないけど、そのうちの幾つかが欲しい」っていう要求にはSPARQLは向かない、と見るべきか。それとも、WDを隅まで読めば解決策があるのか。

Comments
0
Trackbacks
0
PermaLink
http://yudai.arielworks.com/memo/2005/06/20/192304
連絡先、リンク、転載や複製などについては『サイト案内』をご覧ください。Powered by HIMMEL

I ♥ Validator