Wikibase/API

This page is a translated version of the page Wikibase/API and the translation is 57% complete.
MediaWiki sürümü:
1.9

Wikibase API nedir?

Wikibase beyanları yapılandırılmış veri olarak saklamak için genel bir mekanizma sağlar. Öğelerle ilgili ifadeler wikidata.org adresindedir. Wikibase ve diğer kavramlar hakkında daha fazla bilgi için Vikiveri:Sözlük sayfasına bakın.

 
A statement

The Wikibase API allows querying, adding, removing and editing information on Wikidata or any other Wikibase instance.

MediaWiki API modüllerine bir dizi uzantı aracılığıyla sağlanır. Bu nedenle, Wikibase API'sini kullanmak için, MediaWiki Eylem API'si ile temel düzeyde bilgi sahibi olmanız gerekir: eylemler, sorgular, vb. ve ayrıca curtimestamp ve requestid gibi genel parametrelerle.

How to use the Wikibase api

Send requests to the API through HTTP, the same as with the MediaWiki Action API. See API:Tutorial#How to use it for information about how to use the MediaWiki Action API.

Request Format

The endpoint for the API is https://wikidata.org/w/api.php.

In the query string, add the action parameter, which tells the API which action to perform. For example, action=wbgetentities tells the API to get the data for Wikibase entities. For meta and property submodules, use action=query&meta=yourmodule and action=query&prop=modulename respectively.

Neredeyse her zaman kullanılabilen bazı parametreler var. Çoğul formlar, bir parametrenin birkaç değer alabileceği durumlarda kullanılır. Parametreler:

  • id/ids: Belirli bir varlığı veya varlıkları, tipik olarak bir öğe tanımlar. Çoğul biçim wbgetentities içinde kullanılır. Kimlik listeleri boru karakteriyle ayrılmalıdır
  • site ∩ title/sites ∩ titles: Tek bir öğeyi veya birden çok öğeyi tanımlar. Çoğul biçim wbgetentities içinde kullanılır. Yalnızca bir sitelrr ve başlıklar aynı anda birden fazla değere sahip olabilir.
  • language/languages: Dil parametresi, get eylemlerindeki etiketleri ve açıklamaları filtreler veya bir dizi eylem için belirli bir dili tanımlar.
  • format: Her zaman json (veya hata ayıklama için jsonfm) veya xml (veya hata ayıklama için xmlfm) olarak ayarlanmalıdır. Başka hiçbir form desteklenmez.
  • summary: Sistem tarafından oluşturulan özete ek olarak kullanıcı tarafından belirtilen bir özet ekler.
  • token: İsteğin yerine getirilmesi için istekte bulunanın iletmesi gereken şifreli bir dize.
  • baserevid: Sunucunun düzenleme çakışmalarını algılayabilmesi için iletilmesi gereken bilinen son düzeltme için bir kimlik.

A simple query

GET request

Get the item for page "Berlin" on English Wikipedia.


Explanation of each part of the URL:

  • http://www.wikidata.org/w/api.php is the main endpoint.
  • action=wbgetentities tells the API to get the data for Wikibase entities.
  • sites=enwiki means get the data from English Wikipedia.
  • titles=Berlin indicates the title of the page to get data from.
  • props=descriptions indicates properties to get from the entities, in this case the property is the descriptions of the entities.
  • languages=en means filter the results down to the English language.
  • format=json indicates JSON output, which is the recommended output format.

Response

{
    "entities": {
        "Q64": {
            "type": "item",
            "id": "Q64",
            "descriptions": {
                "en": {
                    "language": "en",
                    "value": "capital and largest city of Germany"
                }
            }
        }
    },
    "success": 1
}

Bir isteğin yanıtı genellikle şunları içerir:

  • İstek başarılı olursa, tamsayı olarak bir boole dökümü olan bir success anahtarı. Tamsayı sıfır ise, herhangi bir ek değer yanlış olabilir.
  • İstek başarısız olursa, iki, isteğe bağlı olarak üç anahtar, code, info ve * nesnesine sahip bir error anahtarı.
  • Eylem hakkında bilgi. Bilgiler tek bir öğe ise en üst düzeyde veya öğe altında, birden fazla ise öğeler altında iletilir. Birkaç öğe ise, her biri kendi öğe kimliğine sahip bir anahtarın altında bulunur.

Boş nesneler, nesne olarak değil JSON dizileri olarak döndürülürken, boş parametreler öğeden gerçek girişi kaldırır.

API belgeleri ve Wikibase modülleri

Source-generated documentation for the MediaWiki Action API including Wikibase 'wb' API modules is available at wikidata.org/w/api.php

Meta submodules

  • wikibase: Wikibase istemcisi ve ilgili Wikibase deposu hakkında bilgi edinin.
  • wbcontentlanguages: Wikibase'nin farklı bağlamlarda kabul ettiği içerik dilleri hakkında bilgi döndürür.

Property submodules

  • pageterms: Bir site bağlantısı aracılığıyla bir sayfayla ilişkili Vikiveri terimlerini (genellikle etiketler, açıklamalar ve takma adlar) alın.
  • wbentityusage: Belirli sayfalarda kullanılan tüm varlık kimliklerini döndürür.

API modules

  • wbgetentities: Birden çok Wikibase varlığı için veri alır.
  • wbavailablebadges: Kullanılabilir rozet ögelerini sorgular.
  • wbcreateclaim: Wikibase taleplerini oluşturur.
  • wbcreateredirect: Varlık yönlendirmesi oluşturur.
  • wbeditentity: Tek bir yeni Wikibase varlığı oluşturur ve seri hale getirilmiş bilgilerle değiştirir.
  • wbformatvalue: DataValues biçimlendirir.
  • wbgetclaims: Wikibase taleplerini alır.
  • wblinktitles: İki farklı vikideki iki sayfayı bir Wikibase öğesiyle ilişkilendirir.
  • wbmergeitems: Birden çok öğeyi birleştirir.
  • wbparsevalue: Değerleri bir ValueParser kullanarak ayrıştırır.
  • wbremoveclaims: Wikibase hak taleplerini kaldırır.
  • wbremovequalifiers: Bir talepteki niteleyiciyi kaldırır.
  • wbremovereferences: Aynı ifadeye ait bir veya daha fazla referansı kaldırır.
  • wbsearchentities: Etiketleri ve takma adları kullanan varlıkları arar.
  • wbsetaliases: Bir Wikibase varlığı için diğer adları ayarlar.
  • wbsetclaim: Bir Bildirimin veya Talebin tamamını oluşturur veya günceller.
  • wbsetclaimvalue: Wikibase iddiasının değerini ayarlar.
  • wbsetdescription: Tek bir Wikibase varlığı için bir açıklama belirler.
  • wbsetlabel: Tek bir Wikibase varlığı için bir etiket ayarlar.
  • wbsetqualifier: Bir niteleyici oluşturur veya mevcut bir değerin değerini ayarlar.
  • wbsetreference: Bir referans oluşturur veya mevcut bir referansın değerini ayarlar.
  • wbsetsitelink: Vikideki bir sayfayı bir Wikibase öğesiyle ilişkilendirir veya önceden oluşturulmuş bir ilişkilendirmeyi kaldırır.
  • wbsgetsuggestions: Bir Wikibase varlığına eklenecek ek özellik önerileri almak için API modülü. API modülü, kullanıcılar Wikibase varlıklarını düzenlerken öncelikli olarak widget tarafından kullanılmak üzere tasarlanmıştır.
  • wbcheckconstraints: İstediğiniz varlık üzerinde kısıtlama kontrollerini yapar ve sonucunu döndürür.
  • wbcheckconstraintparameters: Kısıtlama ifadelerinin kısıtlama parametrelerini kontrol eder.

Olası hatalar

Herhangi bir modül için olası hatalar action=paraminfo&modules=modulename kullanılarak bulunabilir. The error format corresponds to that of the MediaWiki Action API. See API:Errors and warnings#Legacy format.

Wikibase modüllerinden gelen tüm hata mesajları uluslararasılaştırılmalı (i18n) ve yerelleştirilmelidir (l10n). Oturum açmış kullanıcının kullanıcı dili, hata mesajları için varsayılan olacaktır, ancak bunu, URL sorgu dizesine uselang=languageCode ekleyerek geçersiz kılabilirsiniz.

Hata türü Kod Bilgi
An internationalized error message that isn't localized. no-such-item <wikibase-api-no-such-item>
A correctly localized error message. no-such-item There are no such item to be found
A localized variant.(Norwegian) no-such-item Det finnes ingen slik item

Additional notes

  • Birçok Wikimedia vikileri Wikibase Client uzantısını çalıştırır. Bu, API istemcilerinin tam Wikibase deposunun URL'lerini belirlemek için wikibase meta alt modülünü ve yerel vikideki sayfalar hakkında bazı Vikiveri bilgilerini almak için pageterms özellik alt modülünü sorgulamasına olanak tanır.
  • Wikibase ile kullanılabilen takvim modelleri Miladi takvim(d:Q1985727) ve Jülyen takvimidir(d:Q1985786).
  • API, düzenleme çakışması algılaması için revizyon kimliklerini kullanır. Bir düzenleme çakışması varsa, istekte bulunanın devam edebilmesi için daha yeni bir revizyon kimliği edinmesi gerekir. Bu genellikle, söz konusu öğe için wbgetentities talep edilmesini ve ardından girişteki revizyonun depolanmasını (ve kullanılmasını) içerir.
  • Herhangi bir MediaWiki kurulumu Wikibase'i çalıştırabilir. Wikimedia kümesinde, çoğu viki, Wikibase uzantılarının tamamını çalıştırmaz. Wikimedia Commons, Commons'taki dosyaların özellikleri için kendi Wikibase'ine sahiptir.
  • info değerini belirli bir hata için test etmeyin, bunun yerine code değerini kullanın, çünkü bu yerelleştirmeden bağımsız kalacaktır.

Ayrıca bakınız

  • API:Anasayfa - MediaWiki Eylem API'si için hızlı başlangıç ​​kılavuzu.
  • API:SSS - MediaWiki Eylem API'si hakkında sık sorulan sorular.
  • API:Eğitim - MediaWiki Eylem API'sinin nasıl kullanılacağına ilişkin bir eğitim.
  • Vikiveri veritabanı dökümleri dosyasını JSON (önerilir), XML ve RDF formatlarında indirin.