Shortcut: WD:PST

Wikidata:Primary sources tool/ja

From Wikidata
Jump to navigation Jump to search
This page is a translated version of the page Wikidata:Primary sources tool and the translation is 100% complete.

Primary sources tool(プライマリ・ソースツール)はウィキデータに対するデータ寄贈において、コミュニティに提供されたデータのキュレーションを行う編集者が査読、編集あるいは却下するワークフローを可能にします。ワークフローはウィキデータに統合されます。

試用する

  1. your Gadgets を開く。
  2. Primary Sources 項目 (Wikidata-centric 内) をチェック、ページの最下部の Save ボタンを押す。
  3. 画面左のサイドバーの Random Primary Sources item リンクの隣にある歯車のアイコンをクリック。
  4. データセットの選択。例えば strephit-confidentsoweegoまたはfreebase
  5. 3つの方法から選んでツールをテストする。
    1. サイドバーのPrimary Sources listリンク (Tools 内)
      • データセットの内容を概観するには Load ボタンをクリック。
      • オプションとしてフィルター文にプロパティの識別子を追加。
    2. サイドバーの Random page リンクを押すと検証する項目を1件表示する。
    3. 利用者が選択した項目。

注記: ウィキデータのガジェットは JavaScript で記述されるため、ご利用のブラウザで使用が許可されているかどうか確認してください。

改版の提案

Primary sources tool (PST) は初版も現在のバージョンも Google が開発した Freebase の派生製品です。[1] StrepHit teamはウィキデータのガジェットとして実装以来のコミュニティのフィードバックを得て[2][3][4]、ここに大掛かりな改変の提案をするものです。これはツールの改版を招く可能性があります。

Primary sources tool ベータ版

この文書中のモックアップは phab:M218 で閲覧できます。

バージョン1のコードベース

  • バックエンド: 記述はC++で SQL ストレージを採用、REST API によるウェブサービスとして展開[5]
  • フロントエンド: 記述はJavaScriptでウィキデータのガジェットとして展開[6]

目標

ツールを自立可能にすることを目指します。 そのため次の各点が最優先事項です。

  • ウェブ標準。
  • 安定性。ウィキデータ安定インタフェース方針に従う[7]
  • ウィキメディアのコミュニティがプログラミング言語を習得する。

加えてサードパーティのプロバイダによるデータリリースにも適した選択肢になるはずです[8]。標準リリースプロシージャはこれでますます欠かせなくなります。

利用者のワークフロー

利用者はツールが提案する新しいステートメントを承認または却下できます。

  1. 項目ページがあるとステートメント提案を青い背景で強調表示。
  2. 利用者は「クレーム承認」か「クレーム却下」のいずれかのリンクをクリックして処理する。
  3. その後、「承認」は新しいステートメントで置き換えてページを更新、「却下」はページをそのまま更新する。

同じように、ツールで既存のステートメントの新しい参照項目を提案できます[9]

  1. 新しい参照項目は青い背景で強調表示。
  2. 利用者はapprove reference (承認) またはreject reference (却下) のいずれかのリンクをクリックして処理する。
  3. preview reference (表示) を押してツールチップを表示すると、参照項目の情報源が示される[10][11]
  4. データセットがステートメント提案の細かな起点情報を含む場合 (抽出した場所を示すテキストスニペットなど) [12]、表示ツールチップはその情報を正確に強調表示する[13]
  5. フロントエンドとバックエンド間のやりとりがスムーズでない場合、ツールチップに警告メッセージを表示する[14]

環境設定

  1. 利用者が左側のサイドバーから、メインメニューのRandom Primary Sources itemリンクの隣の歯車のアイコン (下記の節参照) をクリックすると窓 (モーダルウィンドウ)が開く[15][16][17]
  2. 使用するデータセットを検索して選択。
  3. 重要な情報としてDataset descriptionMissing statementsTotal statementsを表示 (データセットの説明/不足した記述/全記述)。
  4. 新しい設定をSaveまたはCancel (保存/キャンセル)。

おまかせ表示

  1. 提案されたステートメントを含むランダムな項目にジャンプするには、メインメニューのRandom Primary Sources itemリンクをクリック。
  2. プライマリ・ソースツールの設定からデータセットの項目がランダムに選択される。

参照する

  1. 属性別のグループから提案された文を参照するには、左のサイドバーにあるBrowse Primary Sources (プライマリソースの参照) メニューの下にある適切な属性のリンクをクリックする。
  2. ページのトップに戻るには、Browse Primary Sourcesメニューのすぐ下のback to topリンクをクリック。

フィルター利用ツール

左側のサイドバーのToolsメニューからフィルター利用ツールを選ぶと、同様のワークフローが適用されます。

  1. Primary Sources filterリンク (現在はPrimary Sources 一覧)をクリックすると、窓 (モーダルウィンドウ) が開く[18]
  2. 最終的な参照項目を含むステートメント提案のテーブルを見るには、いくつかの方法で フィルタを構築する。
    • Domain of interest: 関心のあるドメイン名の入力を始めると、単純な制約(通常はinstance of (P31)属性)に基づき入力が自動補完される。たとえば、chemical compound (Q11173)である全項目を一覧表示。
    • Property: 興味のある属性の名称の入力を始めると、属性ラベルに基づき、入力が自動補完される。このフィルタは、表示を指定の属性が呼び出す記述に絞り込む。たとえば、すべてのdate of birth (P569)を一覧。
    • SPARQL Query: この上級者向けフィルタは、任意のSPARQLクエリを受け入れる。
    • Source language: 選択した言語の記述のみ表示。
    • Dataset: プライマリ・ソースツール設定と同様に、使用する1つまたは複数の特定のデータセットを選択。

フィルターの構成が完了するとツールによりテーブルが示され、利用者は出典のソースを preview (表示) して、提案を approve または reject (承認・却下) できます。詳細は「利用者のワークフロー」節に説明があります。ソースの表示が開かない場合、承認・却下の処理をブロックすることができます[19]

アーキテクチャ

ウィキデータ Primary sources tool ver.2 のアーキテクチャ案の概略 (StrepHitに基づく)

バックエンドの実装

データ形式

このツールは現在、QuickStatements (Q20084080)でシリアル化されたデータセットを受け入れます。書式が非常にコンパクトで、大きなデータセットの読み込みに便利ですがまったく標準化されていません。説明文書は唯一、QuickStatements のサービスパッケージそのものに同梱されています[20]。したがってプロジェクトの自立性ならびにデータ寄贈の標準的ワークフローの両方の観点から、安定したフォーマットによるサポートが必要となると考えられます。現状、QuickStatements のサポートを継続します。

第三者プロバイダが提供するデータセットは RDF でシリアル化、ウィキデータ RDF データモデルに準拠する必要があります[21]。 ウィキデータにおいてこれらを最も標準的な方法だとする理由は2つあります。

  1. RDF は成熟したウェブ標準であり、1999年以降 W3C 推奨を受けています[22]
  2. ウィキデータ RDF エクスパート・フォーマットは安定しているとされます[23]

メインの構成要素

以下の前提によりウィキデータ・クエリ・サービス[24] (Wikidata Query Service) の例はバックエンドに適しています。

  • RDFトリプルストアつまり Blazegraph をデータベースエンジンに使用[25]
  • 安定したウィキデータの公衆APIとしての評価[26]
  • 採用したプログラム言語Javaは、おそらく現行の設定を記述した C++ よりも一般的。
  • データセットをウィキデータ RDF dump 形式で読み込む機能[27]
  • SPARQLを介するデータ・アクセス用のAPIを公開。特にドメインフィルタとクエリテキストボックスの両方の機能に有効[28]

main tool (メインツール) は full statements (解説文全文) をサポートしますが、フィルター利用ツールには truthy statements (正しい解説) を登録してください。

導入 API

導入APIを使い、サードパーティのデータ提供者からの導入を管理します。 最初に、受領するデータセットをウィキデータ RDF データモデルにお¥より検証します。 その後、データセットに次の機能を与えます。

  • 読み込み
  • 更新
  • 削除

キュレーション API

キュレーション API を用いてウィキデータの利用者はメインサービス2件とやりとりができます。 追加の申請を提示、バックエンドのストレージで拒否された提示にフラッグをつけます。

フロントエンドの実装

主な目標である自立発展性とは、ウィキデータのユーザインターフェイス (UI) の変更のたびにフロントエンドを壊さないようにすることです。この実現において現行のガジェットは、Wikibase (Q16354758)に対するMediaWiki拡張に当たります。以下のようなコードベースの主要なリファクタリングは必須です。

  • ユニットテスト。ウィキデータのUIの変更によってエラーが発生、ウィキデータのビルドが中断。
  • バックエンドと利用者との相互作用を明確に区別。
  • HTMLテンプレートを移植。

コードPHP及びJavaScriptという MediaWiki 拡張期能の特徴的なコンポーネント2件に分割します。

PHP コンポーネント

PHP コンポーネントは単に拡張構成の役割を果たします。 残りはすべてJavaScriptコンポーネントによって処理されます。

JavaScript コンポーネント

JavaScript コンポーネントの役割:

  • テンプレートのレンダリングの完成形を作成。具体的には、必要に応じて既存の項目ステートメントにテンプレートを追加。
  • 利用者との対話を処理。具体的な処理内容:
    • 提案されたクレームまたは参照項目の承認・却下について、ツールのバックエンドに通知。
    • MediaWiki API経由で、承認されたクレームまたは参照項目をウィキデータに追加。[29]
  • 「ユーザーワークフロー」節で説明する機能を実装。

脚注

  1. http://static.googleusercontent.com/media/research.google.com/en//pubs/archive/44818.pdf Pellissier Tanon, T.; Vrandečić, D.; Schaffert, S.; Steiner, T.; Pintscher, L (2016-04) "From Freebase to Wikidata: The Great Migration" [Freebase からウィキデータへ: 壮大な移行], "Proceedings of the 25th International Conference on World Wide Web", ACM (pp.1419-1428).
  2. RFC: Semi-automatic Addition of References to Wikidata Statements
  3. Wikidata_talk:Primary_sources_tool
  4. phab:project/view/2788
  5. https://github.com/Wikidata/primarysources/tree/d24ca9ecef71b93f0feed27f6fdc4e479c929004/backend
  6. https://github.com/Wikidata/primarysources/tree/d24ca9ecef71b93f0feed27f6fdc4e479c929004/frontend
  7. Wikidata:Stable Interface Policy
  8. Data donation: 3. Work with the Wikidata community to import the data
  9. Help:Sources
  10. PST - Wireframe 1
  11. PST - Mockup 1
  12. m:Grants:IEG/StrepHit:_Wikidata_Statements_Validation_via_References
  13. PST - Mockup 2
  14. PST - Mockup 3
  15. PST configuration - Mockup 1
  16. PST configuration - Mockup 2
  17. PST configuration - Mockup 3
  18. PS filter - Mockup 1
  19. PS filter - Mockup 2
  20. https://tools.wmflabs.org/wikidata-todo/quick_statements.php
  21. mw:Wikibase/Indexing/RDF_Dump_Format#Data_model
  22. https://www.w3.org/TR/PR-rdf-syntax/
  23. Wikidata:Stable_Interface_Policy#Stable_Data_Formats
  24. mw:Wikidata_query_service
  25. phab:T166503
  26. Wikidata:Stable_Interface_Policy#Stable_Public_APIs
  27. https://github.com/wikimedia/wikidata-query-rdf/tree/master/dist/src/script
  28. phab:T166512
  29. https://www.wikidata.org/w/api.php