Vikiveri Sorgu Hizmeti/Kategoriler

From mediawiki.org
This page is a translated version of the page Wikidata Query Service/Categories and the translation is 100% complete.

Vikiveri Sorgu Hizmeti ayrıca tüm genel vikilerin (labswiki ve labtestwiki hariç) kategori grafiğine erişim sağlar.

Şu anda veriler en son haftalık döküm üzerinden güncellenmektedir. Güncellemeler her Pazartesi yapılır.

Verilere erişim

Veriler Blazegraph veritabanında categories ad alanında saklanır. Şu anda, kategori verilerine erişmek için GUI yoktur, ancak https://query.wikidata.org/bigdata/namespace/categories/sparql?query=SPARQL kullanılarak ad alanına karşı SPARQL sorguları yapılabilir. Bu SPARQL uç noktası, ana WDQS SPARQL uç noktası ile aynı şekilde çalışır.

Her vikinin kendi veri kümesi olsa da, hepsinin aynı ad alanında saklandığını unutmayın.

Örnek sorgu, İngilizce Vikipedi'de Ducks kategorisinin alt kategorilerini sağlar:

PREFIX gas: <http://www.bigdata.com/rdf/gas#>
prefix mediawiki: <https://www.mediawiki.org/ontology#> 

SELECT * WHERE {
SERVICE gas:service {
     gas:program gas:gasClass "com.bigdata.rdf.graph.analytics.BFS" .
     gas:program gas:linkType mediawiki:isInCategory .
     gas:program gas:traversalDirection "Reverse" .
     gas:program gas:in <https://en.wikipedia.org/wiki/Category:Ducks>. # bir veya daha fazla kez, başlangıç ​​sınırını belirtir.
     gas:program gas:out ?out . # tam olarak bir kez ziyaret edilen köşelere bağlanacaktır.
     gas:program gas:out1 ?depth . # tam olarak bir kez ziyaret edilen köşelerin derinliğine bağlanacaktır.
     gas:program gas:maxIterations 8 . # ilk genişleme için isteğe bağlı sınır.
  }
} ORDER BY ASC(?depth)

Deneyin!

Bu sorgu, varsayılan GUI ile çalışmaz! Şimdilik, yukarıdaki SPARQL uç noktasına karşı elle çalıştırmanız gerekecek. Veri kümesi yalnızca kategorileri içerir ve kategorilere ait sayfaları içermez (ikincisi çok daha büyük bir veri kümesi olacaktır).

Daha basit sorgu

Yukarıdaki sorgunun daha basit biçimine mediawiki:categoryTree hizmetiyle erişilebilir:

SELECT ?out ?depth WHERE {
  SERVICE mediawiki:categoryTree {
    bd:serviceParam mediawiki:start <https://en.wikipedia.org/wiki/Category:Ducks> .
    bd:serviceParam mediawiki:direction "Reverse" .
    bd:serviceParam mediawiki:depth 5 .
  }
} ORDER BY ASC(?depth)

Deneyin!

elle çalıştırın

Bu sorgu üç çıktı değeri üretir:

  • ?out — kategori bulundu
  • ?depth — kategori için derinlik
  • ?predecessor — üst kategori

Veri biçimi

Kategori hakkındaki veriler URL'sini ve adını açıklar, ör.

      <https://test2.wikipedia.org/wiki/Category:Test> a mediawiki:Category ; 
            rdfs:label "Test" ;
            mediawiki:pages "74"^^xsd:integer ;
            mediawiki:subcategories "19"^^xsd:integer .

Kategoriler arasındaki bağlantılar mediawiki:isInCategory ilişki olarak temsil edilir, örneğin:

     <https://test2.wikipedia.org/wiki/Category:Test> mediawiki:isInCategory <https://test2.wikipedia.org/wiki/Category:Parent>

Gizli kategorilerin mediawiki:HiddenCategory sınıfı vardır.

Önekler

mediawiki: öneki, https://www.mediawiki.org/ontology olarak tanımlanır. Tam ontoloji https://www.mediawiki.org/ontology/ontology.owl altında bulunabilir.

Döküm başlığı

Döküm başlığı, dökümle ilgili bilgileri içerir, örneğin:

    <https://test2.wikipedia.org/categoriesDump> a schema:Dataset,
         owl:Ontology ;
         cc:license <https://creativecommons.org/licenses/by-sa/3.0/> ;
         schema:softwareVersion "1.0" ;
         schema:dateModified "2017-09-09T20:00:05Z"^^xsd:dateTime ;
         schema:isPartOf <https://test2.wikipedia.org/> ;
         owl:imports <https://www.mediawiki.org/ontology/ontology.owl> .

Veri dökümleri

Veri dökümleri https://dumps.wikimedia.org/other/categoriesrdf/ olarak saklanır. Tam dökümler haftalık olarak gerçekleştirilir. Her vikinin kendi döküm dosyası vardır.

https://dumps.wikimedia.org/other/categoriesrdf/lastdump/, gerçekleştirilen son dökümün zaman damgalarını depolar.

Güncelleme

Kategorileri güncellemek için aşağıdakiler kullanılabilir:

  1. Kategoriler ad alanı oluşturun: bash createNamespace.sh categories
  2. Veri yükleme: bash forAllCategoryWikis.sh loadCategoryDump.sh categories

Viki ekleme

Şimdilik, bir viki eklenmesini istiyorsanız, lütfen tartışma sayfasına yorum yapın. Commons, açık farkla en büyük kategori kümesine sahip olan ve bu nedenle, her şeyin planlandığı gibi daha küçük veri kümeleriyle çalışmasını sağlayana kadar bunu şimdilik kapsamamaya karar verdik.

Yapılacaklar