Repository navigation
Methods
Note that below we use the term translation to refer to target senses that meet one of several properties including the 'translation' property (P5972). We use the term 'translation' property when only the latter is meant.
We performed the analysis on a local RDF database using downloaded data.
The analysis was conducted on a laptop with AMD Ryzen 7 7730U processor (8 cores, 16 threads) with Radeon Graphics and 16G RAM on Debian 13 (Trixie). The Turtle files were loaded into an Apache Jena (v6.2.0) database. The counts were generated via SPARQL queries using the tdb2.tdbquery command. Post-processing was performed in Python (v3.13.5) using the pandas package (v2.2.3). Heat maps were created in R (v4.5.0) using the ggplot2 package (v3.5.2).
The primary data file used was the latest-lexemes.ttl.bz2 Wikidata dump file available at https://dumps.wikimedia.org/wikidatawiki/entities/. The file was retrieved 21 September 2026.
For the sensitivity analysis that included gloss senses, we needed the 'IETF language tag' property (P305) for each language in our local database. We created a Turtle file with the necessary statements by querying the Wikidata Query Service (WDQS) using curl and this file was also loaded into the Apache Jena database. An example script for the P305 extraction is here. Labels were obtained by running a query on the WDQS website and saving the output as a tab-delimited file. The extracted labels were not loaded into the local RDF database and instead were merged when post-processing the counts. The retrieval date for the WDQS queries was 3 October 2026.
We selected the fifty languages most frequently used on senses. We used each language as the source language and target language for translations so that we evaluated translation counts for 50*49 = 2450 source to target language combinations.
We counted as a translation any sense in the target language meeting any one of the following five criteria.
- The source sense and the target sense have the same object for any of the following properties:
- There is a directed path of length 1 from the source sense to the target sense using the 'translation' property (P5972).
- There is a directed path of length 1 or 2 from the source sense to the target sense using the 'translation' property.
For each property, we counted the number of source language senses that have at least one matching sense in the target language. We also counted the number of source language senses where any property was met. Only 'truthy' statements were considered. (Note that there is a theoretical problem with using 'truthy' statements for the 'translation' property, but this currently only affects one translation. See here (link TBD) for a discussion.)
The query used is here.
As a sensitivity analysis we also considered as translations:
- target senses where there is a directed path of length 1 from the target sense to the source sense using the 'translation' property (P5972)
We counted senses where the previous bullet is met (target to source path) and the corresponding bullet (source to target path) was not met. Note that neither of these sensitivity counts is reported in the 'any property met' counts.
The query used is the same query used for the main analysis.
As a second sensitivity analysis, we considered a source sense as having a translation if the target language match could be found either from the source sense (as in the main analysis) or on a synonym of the source sense. That is, we extended the paths from the main analysis to allow a path of length 0 or 1 using the 'synonym' property (P5973).
The query used is here.
As a third sensitivity analysis, we extended the main analysis by also considering a translation to be present when the source sense that had a gloss in the target language. To determine this we extracted the language tags from the multilingual text label (rdfs:label) for the sense. The matching tag for each target language was identified using the 'IETF language tag' property (P305) on the language item.
The query used is here.
Results are presented as heat maps for the 'any property met' count for the main analysis and sensitivity analysis that includes sense glosses as translations. In each heat map, counts over 10,000 are truncated at 10,000 for presentation. For counts where truncation occurs, untruncated counts are presented in a table rounded to the nearest thousand.