2017-01-24 7 views
0

"参加者"(P1344)と参加者(P710)の正しい使い方を理解しようとしています。「参加者」と「参加者」を正しく使用する方法は?

サンプルとして、私は米国内戦の参加者を募集しています。 最初の文:

SELECT ?label WHERE { 
    wd:Q8676 wdt:P710 ?subj. 
    ?subj rdfs:label ?label. 
    FILTER((LANG(?label)) = "en") 
} 
連合& CSAを返し

だから私はの参加者との声明を「逆」試してみました:私は9名とCSAはなく、連合のリストを与える

SELECT ?label WHERE { 
    ?subj wdt:P1344 wd:Q8676. 
    ?subj rdfs:label ?label. 
    FILTER((LANG(?label)) = "en") 
} 

このように、私はちょっと混乱しています。なぜなら、1)何人かの人が挙げられています。 (私の推測では、それは連合されていないものです)、2)連合は欠落しています、3)どのように参加者の正しい声明が見えるのですか?

+1

「p」と「p_inv」の逆の両方のプロパティが存在すると、一部の人は1つを使用し、もう1つは他の人を使用すると思います。推論することなく、あなたは主張された事実だけを得る。 – AKSW

+2

データそのものについては何も言えません。私はドメイン専門家ではない。アサートされた情報を両方取得したい場合は、SPARQL UNIONを使うか、 'p |^p_inv'のようなプロパティパスを使うことができます。あなたのケースでは、?サブジム:P1344 |^wdt:P710 wd:Q8676.' – AKSW

答えて

1

逆プロパティは同期していないため、逆方向のステートメントがない限り、多くのステートメントを一方向に処理できます。逆の記述を同期させておくと、hereが議論されましたが、決してやられませんでした。それは大きな混乱であるので、もっとうまくいくでしょう:あなたの例では、American Civil WarまたはWWIIのすべての参加者をページに追加する潜在的に非常に非常に非常にオーバーロードされたページを取得します:プロパティconflict (P607)を使用して、私は

2536 known participants to the American Civil War

  • 31698 known participants to WWIIを見つけました(ところで、あなたが代わりにFILTを使用してのラベルを見つけるためにSERVICE wikibase:labelを使用する方法をご覧くださいers)

    "小さなエンティティ"から "大きなエンティティ"にリンクするという慣例があり、特に注目すべきエンティティの場合はparticipant (P710)などのプロパティを対象に対して相対的に保持するように思われます。だから、すべての単一の既知の一般的なとsolidersよりむしろユニオン& CSA、。

  • 関連する問題