codeforjapan / codeforelection

衆院選2017候補者データベース作成プロジェクト This repo will be archived 🗄️ in the future
MIT License
32 stars 6 forks source link

Wikidata data model #59

Open hkwi opened 6 years ago

hkwi commented 6 years ago

現在大まかに次のプロパティが設定されています。

[] 分類 ヒト;
   職業 政治家;
   立候補選挙 第48回衆議院議員総選挙 .

これから設定していくプロパティについて、まとめるチケット。もろもろ意識合わせしたく。

次のプロパティは、比較的ストレートに人物に結びつくので、良いと思います。

次のプロパティは配慮時刻 に注意して入れます。

事務所がやっていることも多いですが、今のところだいたい次の項目もそのまま入れて大丈夫でしょう。

P768 選挙区

wikidata にあるを見ると、人物に直接選挙区を紐づけているようです。衆議院議員総選挙の現在の制度では、この選挙区は人物には固定ではなく、選挙ごとに変わりえますので、そのまま入れると明らかに問題が出ます。

コンテキストとして設定する必要があるので、修飾子の出番ですが、今回はどのように設定しましょうか。

同様に「公認政党」や「党推薦」などもコンテキストとして入れるべきかと思います。

P726 立候補者

二度手間にはなりますが「第48回衆議院議員総選挙」(Q20983100)からのバックリファレンスもあると、便利だなと思いました。ところでこれは一般的に owl:inverseOf で wikidata 的に wdt:P1696 に相当しそうです。「立候補者」(P726)と「立候補選挙」(P3602)がこの関係にありそうですが、プロパティとしての制約は定義はされていませんでした。

その「立候補者」(P726)ですが、議論 にはプロパティステートメントに移行せよ、とあります。

また「candidate」Q618536 という、「政治家」(Q82955)のサブクラスもあります。今回はこっちを使ったほうがよかったかも。

会期 ≠ 総選挙

衆議院のシステムでは、総選挙は会期とは直接紐づかず、どちらかというと任期に紐づく。Q41654707 "47th House of Representatives" は昭和39年11月 9日開催の「第47回(臨時会)」と紛らわしい。

会期のエントリを先に作ってしまったほうがいいのかも。

higa4 commented 6 years ago

スキーマ案を下記にまとめています。 https://docs.google.com/spreadsheets/d/1jho09We-3bS4jzF3uvQnPdnjMkQJs5_ljwZyuzkKGPU/edit?usp=sharing 実際の登録例: ◆稲津久 https://www.wikidata.org/wiki/Q11596723 ◆玄葉光一郎 https://www.wikidata.org/wiki/Q58213 誰でも編集できるようになっていますので適宜追記・修正お願いします。上記hkwiさんご指摘の点については以下逐次コメントさせて頂きます。

higa4 commented 6 years ago

次のプロパティは、比較的ストレートに人物に結びつくので、良いと思います。 →賛成です。

次のプロパティは配慮時刻 に注意して入れます。 →賛成です。GrayDBに欄の無い親族(兄弟とか)もウェブサイトなどで見つけたら配慮事項に留意しつつ登録して良いと思います。

事務所がやっていることも多いですが、今のところだいたい次の項目もそのまま入れて大丈夫でしょう。 →賛成です。

P768 選挙区 →はい。ご指摘のとおりこれは人物固定ではなく、選挙ごとに登録すべきだと思います。 「公認政党」は会派(P4100)を選挙期間だけのものとして登録する感じですかね。 「党推薦」はちょっと適当なプロパティが見つけきれていません。良さそうなのがありましたら教えてください。

P726 立候補者 →「第48回衆議院議員総選挙」(Q20983100)側に「立候補者」(P726)プロパティの値として立候補者を列挙できますが、1180件は多すぎてこの項目を開くのがつらくなりそうなので、ウィキペディアの一覧記事にリンクするか、Wikmedia commonsに表(json)としていれて、そちらを参照するようにすると良いんじゃないかと思います。ただし、後者は表をポイントするためのプロパティが未定義なので、どうしたら良いかもう少し検討してみます。

また「candidate」Q618536 という、「政治家」(Q82955)のサブクラスもあります。今回はこっちを使ったほうがよかったかも。 →確かにそうですね。まだ政治家とはいえない人(国や地方の選挙でまだ当選したことの無い人)はcandidate(立候補者)を当てましょうか。

会期 ≠ 総選挙 →これはmySociety側と議論したところですが、任期の意味合いで、"47th House of Representatives" の日本語名称は「第47回衆議院期」という名称にしました。

会期のエントリを先に作ってしまったほうがいいのかも。 →そうですね。「parliamentary term」ではなく「parliamentary session」というプロパティがあればそれを使いたいですが、まだそのようなプロパティが無いようです。。

hkwi commented 6 years ago

「第47回衆議院期」という新語を発明するのは、「第47回(臨時会)」とまぎらわしいので、私は反対です。EveryPolitician と wikidata も異なる存在なので、無理に入れる必要もなく、とりあえず単に入れなければいいと思いますが…。

higa4 commented 6 years ago

私も当初日本に無い概念を登録することに抵抗はしたのですが、mySociety側としては概念的なくくりとしてそうしないと矛盾が出るということで強く推奨され、最終的には私も納得して受け入れました。よろしければ下記メールのやりとりをご参照頂き、それでもなおそうしないほうが良いとお考えの場合は、すみませんがメールでのmySocietyとの議論に参加頂けるとありがたいです。 https://www.dropbox.com/s/epfrebkdyib3qsa/email5.zip?dl=0

higa4 commented 6 years ago

途中、稲津久や玄葉光一郎の登録内容を引き合いに出していますが、最終的にはいろいろ変えたので、議論した時点と登録内容は変わっている部分があります。

hkwi commented 6 years ago

mySociety が独自研究をするのは全くもって正統だと思うのですが、wikidata に現在日本で受け入れられていない新語を登録することは、それはそれで全く別の問題です。議論への参加方法はどうしたらいいのでしょうか?

higa4 commented 6 years ago

hkwiさんのメールアドレスを私(higashi@georepublic.co.jp)宛にお送り頂いてもよろしいでしょうか。

hkwi commented 6 years ago

これは英語での "term" と "session" の意味を使い分けできないと混乱を招くばかりなので、折衷案としては「日本語のラベル名は付けない」というのが腹案です。

higa4 commented 6 years ago

なるほどー

hkwi commented 6 years ago

あるいは長い説明的な名前、例えば「第47回衆議院総選挙後の任期から次の総選挙までの期間」というのを設定するのがいいんだろうか…。そんな流儀が wikidata 的に許されるのかどうか、ちょっと類例を調べてみないとわからないけれど…。

higa4 commented 6 years ago

本来的には「ラベル」欄はできるだけ簡潔な名前で、説明的な内容はまさに「説明」欄に記入することになっています。例外はあるとは思いますが。

hkwi commented 6 years ago

過去の議論を追いかけて読んでみました。ちょっと UK モデルがどういうのかは例示がなかったのでよくわからなかったのですが、もう一つは DE モデルで、今回のスキーマに近い形ですね。

任期期間を設定するという案については、確かにモデル上は綺麗になるかもしれないけど、wikidata は bot access 用にも使われるので、冗長なプロパティが存在することにも意味がある(データモデル非正規化許容案)ということですね。 ラベル名は何でもいいけど、期間が区切られてモデル化されるのが重要、と主張されて言いました。これはつまり、

A starts YYYY-MM-DD;
  ends YYYY-MM-DD .

とするよりも

A period P .
P starts YYYY-MM-DD;
  ends YYYY-MM-DD .

としたほうが良いのではないかということを言っていると解釈しました。確かに A がたくさんあるときは、P に値を設定したほうが効率的です。なのでたぶん、ラベル名の調整をするというのが妥当なところでしょうか。