Wikibase/API
Bu sayfa MediaWiki Eylem API'si belgelerinin bir parçasıdır. |
| 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.

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ırsite ∩ 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
Explanation of each part of the URL:
http://www.wikidata.org/w/api.phpis the main endpoint.action=wbgetentitiestells the API to get the data for Wikibase entities.sites=enwikimeans get the data from English Wikipedia.titles=Berlinindicates the title of the page to get data from.props=descriptionsindicates properties to get from the entities, in this case the property is the descriptions of the entities.languages=enmeans filter the results down to the English language.format=jsonindicates 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
successanahtarı. 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,infove*nesnesine sahip birerroranahtarı. - 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
Meta submodules
- wikibase: ⧼Apihelp-query+wikibase-description⧽
- wbcontentlanguages: Wikibase'nin farklı bağlamlarda kabul ettiği içerik dilleri hakkında bilgi döndürür.
Property submodules
- pageterms: ⧼Apihelp-query+pageterms-description⧽
- wbentityusage: ⧼Apihelp-query+wbentityusage-description⧽
API modules
- wbgetentities: ⧼Apihelp-wbgetentities-description⧽
- wbavailablebadges: ⧼Apihelp-wbavailablebadges-description⧽
- wbcreateclaim: ⧼Apihelp-wbcreateclaim-description⧽
- wbcreateredirect: ⧼Apihelp-wbcreateredirect-description⧽
- wbeditentity: ⧼Apihelp-wbeditentity-description⧽
- wbformatvalue: ⧼Apihelp-wbformatvalue-description⧽
- wbgetclaims: ⧼Apihelp-wbgetclaims-description⧽
- wblinktitles: ⧼Apihelp-wblinktitles-description⧽
- wbmergeitems: ⧼Apihelp-wbmergeitems-description⧽
- wbparsevalue: ⧼Apihelp-wbparsevalue-description⧽
- wbremoveclaims: ⧼Apihelp-wbremoveclaims-description⧽
- wbremovequalifiers: ⧼Apihelp-wbremovequalifiers-description⧽
- wbremovereferences: ⧼Apihelp-wbremovereferences-description⧽
- wbsearchentities: Etiketleri ve takma adları kullanan varlıkları arar.
- wbsetaliases: ⧼Apihelp-wbsetaliases-description⧽
- wbsetclaim: ⧼Apihelp-wbsetclaim-description⧽
- wbsetclaimvalue: ⧼Apihelp-wbsetclaimvalue-description⧽
- wbsetdescription: ⧼Apihelp-wbsetdescription-description⧽
- wbsetlabel: ⧼Apihelp-wbsetlabel-description⧽
- wbsetqualifier: ⧼Apihelp-wbsetqualifier-description⧽
- wbsetreference: ⧼Apihelp-wbsetreference-description⧽
- wbsetsitelink: ⧼Apihelp-wbsetsitelink-description⧽
- wbsgetsuggestions: ⧼Apihelp-wbsgetsuggestions-description⧽
- wbcheckconstraints: ⧼Apihelp-wbcheckconstraints-description⧽
- 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
wikibasemeta alt modülünü ve yerel vikideki sayfalar hakkında bazı Vikiveri bilgilerini almak içinpagetermsö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
wbgetentitiestalep 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.
infodeğerini belirli bir hata için test etmeyin, bunun yerinecodedeğ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.