問題タブ [wikidata-api]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
datetime - SparQL では、2017 年のような年と 2017 年 1 月 1 日を区別する方法は?
ウィキデータのREST APIを使用した次の SPARQL クエリは、いずれもxsd:datetime
1 月 1 日のタイプ の日付を返します。
最初のケースでは、日付は「1875 年」を意味するだけであり、文字どおり 1875 年 1 月 1 日の午前 0 時ではありません。2 番目のケースでは、日付は実際には「2017 年 1 月 1 日」を意味しますが、厳密には午前 0 時ではありません。「1875」や「2017-01-01」などの応答が望ましいでしょう。
これらのトピック (マンチェスター ユナイテッド FCと2017 年のイスタンブール ナイト クラブの攻撃)のウィキデータ ページを参照すると、正しいレベルの詳細が表示されます (つまり、最初のケースでは 1875 年ですが、2 番目のケースでは 2017 年 1 月 1 日)。データベースに正しい情報があり、それを照会する方法があることを願っています。
何か案は?
ノート
datatype(?date)
違いが見られることを期待して、クエリを実行してみましたがxsd:datetime
、両方の例で返されます。
編集
wikidata_rest_query()
上記のクエリをテストする場合は、の python 3 コードを次に示します。
mediawiki - ウィキデータで許可されているすべての言語を取得する方法
アイテムにラベルと説明を追加するウィキデータと対話するためのツールを作成しています。ただし、言語を追加する前に、その言語がサポートされていることを確認したいと思います。
私の質問は、許可されている言語コードのリストを取得するにはどうすればよいかということです。ドキュメントではこれについて説明してUserLanguageCode
いますが、許可された値の取得に関する情報はありません。
データベースで次の SQL 操作を実行することにより、使用されているすべての言語のリストを取得できることはわかっていますが、これは遅く、非効率的ですSELECT DISTINCT term_language FROM wb_terms
。
余談ですが、許可されている言語のリストは MonolingualText ステートメントと同じですか?
wikidata - ウィキデータ ページのクレームの順序を取得する
ウィキデータ エンティティに関するデータをリクエストします (API アクションwbgetentities
)。エンティティのウィキデータ ページと同じ順序のクレームが必要です。返されたすべての JSON を調べましたが、並べ替えるプロパティが見つかりませんでした。クレーム キーの順序は、生の API 応答でも異なります (キーの順序の概念を持たない Python 辞書に JSON を解析するため、この順序に依存するのは非常に不便です)。
誰か提案はありますか?