ここで問題が発生しました。簡単に見えますが、Sparal クエリに詳しくないため、解決策を見つけることができませんでした。
PREFIX onto: <http://dbpedia.org/ontology/>
PREFIX resu: <http://dbpedia.org/resource/>
PREFIX yago: <http://dbpedia.org/class/yago/>
SELECT
count(?MontrealC) as ?Montrea
count(?TorontoC) as ?Toronto
count(?OttawaC) as ?Ottawa
count(?VancouverC) as ?Vancouver
WHERE
{
{?MontrealC rdf:type yago:HotelsInMontreal} UNION
{?TorontoC rdf:type yago:HotelsInToronto} UNION
{?OttawaC rdf:type yago:HotelsInOttawa} UNION
{?VancouverC a onto:Hotel .
{?VancouverC onto:location resu:Vancouver} UNION
{?VancouverC onto:location ?street .
?street a yago:StreetsInVancouver}} UNION
{?VancouverC a yago:HotelsInBritishColumbia .
{?VancouverC onto:location resu:Vancouver} UNION
{?VancouverC onto:location ?street.
?street a yago:StreetsInVancouver}
}}
このクエリを任意の dbpedia エンドポイントに適用すると、次のように 2 行と 4 列で表示される結果が得られます。
Montreal Toronto Ottawa Vancouver
8 28 5 10
問題は、次のように2つの列と4つの行にする必要があることです:
Montreal Toronto
8 28
Ottawa Vancouver
5 10
SPARQLクエリでそれは可能ですか?