위키데이터:SPARQL 질의 서비스
SPARQL이란 무엇인가
SPARQL (발음: 스파클)은 RDF 쿼리 언어, 즉 데이터베이스를 위한 시맨틱 쿼리 언어입니다. 위키데이터는 2015년 9월부터 강력한 웹 GUI를 포함한 SPARQL 엔드포인트를 제공하고 있습니다. SPARQL을 사용하면 삼중항의 논리적 조합으로 구성된 쿼리로 어떤 종류의 데이터든 추출할 수 있습니다.
- SPARQL query service GUI is here: https://query.wikidata.org
- SPARQL Endpoint: https://query.wikidata.org/bigdata/namespace/wdq/sparql?query={SPARQL} (some docs for this API endpoint)
Learning SPARQL
Help portal
- Wikidata Query Service help portal
- Wikidata:SPARQL query service/queries
- Queries from Wikidata status update weekly summaries
Other materials
- SPARQL in 11 minutes (video, English)
- SPARQL Tutorial at the Apache Jena website (English)
- 2016 SPARQL Workshop presented by the Wikimedia Foundation (English)
- Querying Wikidata with SPARQL for Absolute Beginners, 2-hour video tutorial (English)
- Wikidata:SPARQL tutorial (multiple languages)
- Query optimization
- Query limits
{{Item documentation}}
and other generic queries templates
Interfacing
SPARQL queries can be submitted directly to the SPARQL endpoint with GET request to https://query.wikidata.org/bigdata/namespace/wdq/sparql?query={SPARQL}
or the endpoint's alias https://query.wikidata.org/sparql?query={SPARQL}
. The result is returned as XML by default, or as JSON if either the query parameter format=json
or the header Accept: application/sparql-results+json
are provided. See the user manual for more detailed information. RDF data can alternatively be accessed via a Linked Data Fragments[1] interface at https://query.wikidata.org/bigdata/ldf
.
- R package WikidataQueryServiceR which queries the WDQS SPARQL endpoint and returns data.frames
- R script (https://gist.github.com/andrawaag/2b8c831ab4dd70b16cf2) that plots Wikidata content on a world map in R. (Andra Waagmeester, https://lists.wikimedia.org/pipermail/wikidata/2015-September/007080.html)
- Python example, how to make a plot of causes of death for U.S. Presidents
- An example of using SPARQLWrapper library to query WDQS in Python: https://people.wikimedia.org/~bearloga/notes/wdqs-python.html
- An example using the Apache Jena command line tools. (This is useful e.g. for very large SPARQL statements with +2000 lines which WDQS UI currently cannot handle properly because of the parsing, or e.g., for scripting a batch of queries to run every week (via cron) and report the results by email)
- https://wdq2sparql.toolforge.org/w2s.php Convert WDQ (previous tool to query Wikidata) queries syntax to SPARQL (by Stas Malyshev)
- Generate plots for results by cutting-and-pasting queries to http://demo.seco.tkk.fi/visu – some examples by User:Pyb: U.S. States by date of creation, Burial counts for Père Lachaise cemetery by year, Dates of birth of 2000 centenarians
Wikimedia SPARQL query services
Human interface | Machine's endpoint | Description |
---|---|---|
https://query.wikidata.org/sparql
|
Run SPARQL Queries upon the Wikidata Wikibase instance. Run, test, download the data as XML, JSON, CSV, or TSV. Has advanced user-friendly features such as: word hovering to see a term's meaning, code optimization, etc. | |
https://commons-query.wikimedia.org/sparql
|
Run SPARQL Queries upon the Wikimedia Commons Wikibase instance. | |
https://lingualibre.org/sparql
|
Run SPARQL Queries upon the LinguaLibre Wikibase instance. Run, test, download the data as XML, JSON, CSV, or TSV. |
Stats
Further resources
- Special:ListDatatypes - covers approximate prefixes and explanation of some values
- Help:Dates - additional notes about dates
- Wikidata:SPARQL query service/Documentation - a hub for documents about the WDQS, organized under the Diátaxis framework
- SPARQL 1.1 W3C Recommendation
- Blazegraph wiki - Blazegraph is the query engine used by the Wikidata SPARQL query service. The wiki provides useful insights.
- Alternative endpoints