Wikibase/Components

This page lists and describes the software components part of the Wikibase project.

Wikibase consists of a number of MediaWiki extensions and code libraries. The easiest way to install Wikibase is to take a newly setup MediaWiki installation, and use composer to install the Wikibase Repo and all its dependencies.

MediaWiki extensions

 * Wikibase Repository: main extension for the repository wiki, where the data is collected and maintained (used e.g. on Wikidata)
 * Wikibase Client: extension for a wiki to access and display the data from a repository (used e.g. in Wikipedia)
 * WikibaseLib: common code for the repo and client
 * WikibaseSolr: Solr-based search functionality (currently unmaintained and undeployed)
 * Wikibase Query: enables to create and save queries, as well as the maintenance and caching of query results

Wikibase code libraries
Those are pure PHP libraries and are expected to be also usable for other applications, like bots and scripts, dealing with Wikibase and Wikidata.
 * Wikibase DataModel: library implementing the Wikibase data model, including structures for statements, claims, references, etc.
 * Wikibase Database: Simple database abstraction layer bundled together with an implementation of it on top of MediaWiki's database abstraction layer.
 * Wikibase QueryEngine: Component containing query answering code for Ask queries against a collection of Wikibase entities.

Generic code packages

 * Diff: library to calculate the difference between two structures, so that the result can be applied to one in order to get to the other
 * Ask: library to represent queries in the Ask query language
 * DataValues: library to represent complex data values
 * ValueParsers: parsers to transform input into a value
 * ValueFormatters: formatters turning a value into a representation for further consumption
 * ValueValidators: validating values against constraints
 * DataTypes: bundles values, parsers, formatters, and validators together
 * Serialization: transforms an object into a structure consisting only of a number of primitive types, and back