OpenRefine and Wikidata Reconciliation: Roles and Responsibilities
Since 2018, Wikidata has been the default reconciliation service registered with OpenRefine and plays a critical role in many workflows. According to our 2024 user survey, a significant portion of users (44%) rely on the Wikidata reconciliation service.
Reconciliation has been part of OpenRefine’s purpose since its origins as a companion tool to Freebase, and OpenRefine remains one of the few general-purpose tools that provides a dedicated reconciliation interface. However, OpenRefine neither operates nor maintains the Wikidata reconciliation service.
This post clarifies OpenRefine's relationship with reconciliation services in general and, in particular, how OpenRefine integrates with the Wikidata reconciliation ecosystem.
OpenRefine as a client of reconciliation services
OpenRefine is a client of the reconciliation protocol and can connect to many different reconciliation services. Wikidata is one of them, and more than 30 services were identified in our 2024 user survey.
OpenRefine provides the user interface, data transformation tools, and the ability to connect to reconciliation services. Each service provider, however, is responsible for configuring how its endpoint connects to and searches the underlying data, including ranking, scoring, and candidate selection.
Operating a production reconciliation service also requires infrastructure, monitoring, and ongoing maintenance, which are outside the scope of a desktop application like OpenRefine. When a user sends data for reconciliation, those queries are sent to the selected reconciliation service. They depend on that service provider's infrastructure and availability and are subject to its terms of service and data-handling policies. OpenRefine does not control those external services, the underlying data sources they access, or what they do with the data that you send them.
Wikidata reconciliation structure
The Wikidata reconciliation stack involves several independently maintained components, each with its own scope, infrastructure, and maintenance responsibilities.
Core components of the Wikidata reconciliation stack
| Component | Role | Project links |
|---|---|---|
| OpenRefine Operated and maintained by the OpenRefine project | Desktop client that provides the reconciliation interface and sends queries to configured reconciliation services. | GitHub repository |
| Wikibase extension | Bundled extension distributed with core OpenRefine which interacts directly with Wikibases (inc. Wikidata) for some operations. | GitHub repository |
| Wikidata Toolkit Maintained independently from OpenRefine | Java library used by OpenRefine's Wikibase extension for some direct interactions with Wikidata and other Wikibase instances. | GitHub repository |
| Wikidata reconciliation service Maintained by the Wikibase reconciliation service maintainers and hosted on Wikimedia Cloud VPS | Deployment of the Wikibase reconciliation service configured for Wikidata. It receives reconciliation queries from clients such as OpenRefine and queries Wikidata to return candidates. | Wikimedia GitLab & Issue tracker |
| Wikidata APIs and Wikidata Query Service Operated as part of Wikimedia infrastructure | Wikimedia data and query infrastructure used by the reconciliation service and, for some operations, directly by OpenRefine. | Data access documentation |
How the components interact
In practice
OpenRefine's close integration with Wikidata does not mean that the two projects, or the services between them, share the same ownership or operational responsibilities. OpenRefine provides the client interface and integrates the Wikidata reconciliation endpoint by default, while the reconciliation service and the Wikimedia infrastructure it depends on are maintained separately.
These boundaries matter when troubleshooting problems or reporting issues. Problems with OpenRefine's reconciliation interface should be reported to the OpenRefine issue tracker, while problems with the Wikidata reconciliation endpoint or its availability should be reported to the reconciliation service maintainers. Understanding these boundaries also helps users identify where their data is sent and which service provider's infrastructure, terms of service, and data-handling policies apply.