# Glossary

This section contains the most important domain and technical terms used when discussing the system.
The goal is for all consumers of the architecture documentation to have an identical understanding of the terms and not use synonyms and homonyms.

# Alias (opens new window)

Aliases are alternative names for Entities that are placed in the Also known as column of the table on top of every Wikibase Item or Property page. The usual or most important name is the Label. Aliases help people to find an item even if they don’t search with the label. For example, the item Q2 has the label “Earth” and aliases such as “Tellus” and “Blue Planet”. It's a type of Term.

# Badge (opens new window)

Badges are optional markers that can be attached to a sitelink to another Wikimedia page. For instance a sitelink can be marked to link to a "featured article" and/or to a "proofread" page.

# Blazegraph (opens new window)

Blazegraph™ DB is a ultra high-performance graph database supporting Blueprints and RDF/SPARQL APIs.
It is the central part of the Query Service.

# Bots (opens new window)

Bots are tools used to make edits without the necessity of human decision-making. Bots can add Sitelinks, labels, descriptions, statements, References, and can even create Items, among other things.

# Commons (opens new window)

Commons, or Wikimedia Commons is a media repository, running MediaWiki, of free-use images, sounds, other media, and JSON files.
It runs the MediaInfo Wikibase Extension.

# Component

A component is a software unit with a well-defined interface and explicitly specified dependencies. A software component can be as small as a block of reusable code, or it can be as big as an entire application depending on the level of granularity a system is being looked at.

# Connected Pages

Pages on Client wikis for which there is a Sitelink on an Item on a Wikibase Repository are often referred to as connected or linked pages. Pages for which there isn't a Sitelink are called unconnected pages.

# Datatype (opens new window)

Datatype (or propertyType) is an attribute of a Property specifying the type and shape of the Datavalue in each statement. Each property is assigned a pre-defined datatype, which usually can not be changed. Data types can only be defined by developers; the development of new datatypes is still in progress.

# Datavalue (opens new window)

Datavalue (also just value) is the actual piece of information stored within a Statement. Wikidata has a range of allowed datatypes (such as Item, mathematical expression, quantity). The datatype needed for any given statement is determined by the Property used (e.g. the value in a place of birth statement must be an Item). Instead of a normal value, you can also use one of the special cases unknown value or no value in a statement.

# Description (opens new window)

Description is a language-specific descriptive phrase for an Entity. It provides context for the Label (for example, there are many items about places with the label "Cambridge"). The Description therefore does not need to be unique, neither within a language or Wikidata in general, but it must be unique together with the Label. It's a type of Term.

# Entity

Entities are the top level concepts of Wikibase's data model. Items and Properties are the core Entity types(#entity-types) of Wikibase. Other types can be added through Wikibase extensions, such as Lexemes (opens new window).

# Entity Sources (opens new window)

Entity Sources define the data sources for entities. There are two types: API Entity Sources and Database Entity Sources. API sources are for Entities that are usable in Statements on the local Repository, but stored and edited on a remote Repository (see also Federated Properties). Database sources are used for Entities whose data is stored in a database that is accessible to the local repository. Only a single Database Entity Source is allowed per entity type on a given repo.

# Entity Types (opens new window)

Entities as defined by Wikibase have a type, e.g. item, property, lexeme.
The entity type has a defined ID format and json structure. It also has a set of services, which differ based on the type.
There's a minimum set of services which need to be set though, like serializer/deserializer, ID Factory, content factory, rdf factory etc.
For detailed information on those services see a *.entitytypes.php file in Wikibase's repository.

# EventBus (opens new window)

A MediaWiki extension that propagates state changes (edit, move, delete, revision visibility, etc) to a RESTful event service.

# EventGate (opens new window)

A HTTP service for ingestion of events producing them to a backend such as Kafka.

# Federated Properties (opens new window)

Federated Properties is a feature that allows a newly created Wikibase instance to use the existing Properties of another Wikibase. This enables new users evaluating Wikibase to get started without having to spend a lot of time defining basic Properties first.

# Gadgets

Gadgets (opens new window) are made up of JavaScript and/or CSS Snippets located on pages in the MediaWiki namespace. These snippets add functionality to the wiki itself and can be enabled and disabled via preferences.

# Hadoop (opens new window)

Apache Hadoop is a storage system with a collection of libraries, that allow for the distributed processing of large data sets across clusters of computers using simple programming models.

Interwiki links are links to pages of other projects, using a prefixed internal link style. Interwiki links make it possible to link to pages of e.g. Wikipedia, Wikibooks, Wikinews etc. or to your wiki-project in different languages. Interwiki links to pages referring to the same concept across wikis can be centrally stored on a Wikibase Repository by using Sitelinks.

# Item (opens new window)

In Wikidata or any other WikibaseRepo instance, Items are used to represent all the things in human knowledge, including topics, concepts, and objects. For example, the "1988 Summer Olympics", "love", "Elvis Presley", and "gorilla" are all Items in Wikidata.

The terms "Wikibase Item" and "Wikidata Item" are used interchangeably throughout the documentation. They are the same thing that lives in different contexts - Wikidata or another WikibaseRepo instance.

# Kafka (opens new window)

Apache Kafka is an event streaming platform.

# Label (opens new window)

Label (also name) is the main name given to identify an Entity. E.g.: the Item with the Item identifier Q7378 has the English label “elephant”. Every Entity has exactly one Label in a given human language. Labels do not need to be unique. Descriptions and Aliases are used to distinguish between entities with the same Label. It's a type of Term.

# Lua (opens new window)

Lua is a programming language that can be embedded into Wikitext (opens new window) to programmatically enhance the content of wiki articles. It is available on most Wikimedia sites via the Scribunto MediaWiki extension (opens new window). It's often used in templates for Infoboxes (opens new window) on Wikipedias.

# MediaWiki

MediaWiki is the free and open-source wiki engine that is running Wikipedia and almost all other Wikimedia websites, including Wiktionary, Wikimedia Commons and Wikidata.

# MediaWiki Core (opens new window)

MediaWiki Core refers to all files that are part of the main MediaWiki package.

# MediaWiki Extension (opens new window)

Extensions are software components that administrators can add (or remove) to their MediaWiki application in order to customize how it looks and works.
Examples: WikibaseClient, UniversalLanguageSelector, OAuth

# MediaWiki file page (opens new window)

A MediaWiki file page refers to a type of MediaWiki page in the File namespace.

An example file page on Commons would be https://commons.wikimedia.org/wiki/File:ISS050-E-68411_-_View_of_Earth.jpg (opens new window)

# MediaWiki namespace (opens new window)

A MediaWiki namespace is a collection of pages which have content with a similar purpose.

Wikibase Items and Properties each exist in their own namespaces.

# OOUI (opens new window)

OOUI is a MediaWiki core library (developed and supported by the WMF) that contains a set of ready-to-use widgets, layouts, windows and a server-side component that generates compatible output in PHP for cases where JavaScript is not supported.

# Parser function (opens new window)

Parser functions are dynamic functions that can be used directly in wikitext. Functionality of such functions can be defined by extensions.

# Property (opens new window)

Properties are Entities that describe a relationship between Items (or other Entities) and values of the Property. Typical Properties are population (using numbers as values), binomial name (using strings as values), but also has father and author of (both using Items as values).

# QueryBuilder (opens new window)

The Query Builder provides a visual interface for building simple Wikibase data queries.
It is ideal for users with little or no experience in SPARQL.
The Query Builder doesn't offer SPARQL's full functionality.

The Query Builder was initially developed for the Wikidata usecase, and may not currently be optimized for generic Wikibase usage.

# QuickStatements (opens new window)

QuickStatements is a tool, that can edit Wikidata Items, based on a simple set of text commands. The tool can add and remove Statements, Labels, Descriptions, and Aliases; as well as add statements with optional qualifiers and sources.

# Rank (opens new window)

Rank is a quality factor used for simple selection/filtering in cases where there are several Statements for a given Property. In such cases, users may want to indicate which statement is more important or relevant than other statements. By default, a statement has the rank normal, but it can be changed this to either preferred or deprecated.

# RDF (opens new window)

The Resource Description Framework (RDF) is a framework for representing information in the Web.

RDF extends the linking structure of the Web to use URIs to name the relationship between things as well as the two ends of the link (this is usually referred to as a “triple”).

For example a triple in XML RDF form from Wikidata:

<?xml version="1.0" encoding="utf-8" ?>
<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
         xmlns:ns0="http://www.wikidata.org/prop/direct/">

  <rdf:Description rdf:about="http://www.wikidata.org/entity/Q123">
    <ns0:P31 rdf:resource="http://www.wikidata.org/entity/Q47018901"/>
  </rdf:Description>

</rdf:RDF>

A textual form of RDF, common in Wikibase is Turtle.

# Recent changes (opens new window)

A feature within MediaWiki exposed via API and UI that lists recent changes in reverse order, with change date and time, change in the page size, user who created the page, and edit summary.

# Reference (opens new window)

A Reference (or source) is used to point to a specific resource that supports a Statement in Wikidata. A reference can be a link to a URL or an item; for example, an item about a book. Wikidata does not aim to answer the question of whether a statemente is correct, but only whether the statemtent appears in a reference.

Sitelinks are special links that contain a site and a title, and go from individual Items in a Wikibase Repository to pages on Client wikis (e.g. from Wikidata to other Wikimedia sites such as Wikipedia, Wikisource and Wikivoyage) referring to the same concept. Adding a Sitelink to an Item on a Wikibase Repository for a wiki page on a Client connects the two, which makes it possible for the Client's wiki page to link to pages on other Clients referring to the same concept. On the Client side, these links are called Interwiki links.

# Snak

Snak is a technical term of Wikibase software which data users are most likely to encounter when accessing Wikidata through the MediaWiki API. It refers to the combination of a Property and either a value or one of the special cases no value and unknown value. Snaks can be found in statements (then they are called main snaks) or in qualifiers (then they are called qualifier snaks).

# SPARQL (opens new window)

SPARQL is an RDF query language that is, a semantic query language for databases.

# Special Page (opens new window)

Special pages are dynamically created MediaWiki pages, which perform a specific function, such as providing a list of pages, showing statistics or creating a form for user submitted feedback. They are located in their own namespace (Special:) and are not editable directly like other pages. Developers can create new special pages. They will generally show up in the list of all special pages at Special:SpecialPages (opens new window).

# Stakeholder

All persons, roles or organizations that:

  • will use the system
  • should know the architecture
  • have to work with the architecture or with code
  • need the documentation of the architecture for their work
  • have to come up with decisions about the system or its development

# Statement (opens new window)

A Statement is a piece of data about an Item, recorded on the Item's page. A Statement consists of a property-value pair such as "Location: Germany", augmented by References and a Rank. The term Statement is often used interchangeably with Claim.

# Term

A term is a string value with a language code. Terms are used as Labels, Descriptions and Aliases of Entities and are displayed in the termbox. They may only be plain text (i.e. not containing any wiki markup).

# Termbox

The termbox is the zone at the top of an Entity page which shows its Labels, Descriptions and Aliases in different languages.

# Title

Title is the name of a wiki page. All pages must have a unique title within a given wiki, as the title is included in the URL for the page. For example there can be only one page with the title "Douglas Adams" on English Wikipedia. In Wikidata, a title is either an entity identifier such as Q42, or it starts with a namespace prefix such as Help:. The page title is not to be confused with the Label for a Wikidata Item or Property. Wikidata items are connected to pages on other Wikimedia wikis via Sitelinks, which use the page's title to uniquely identify the resource.

# Tools (opens new window)

Tools which help when working with Wikidata. The full list of Wikidata tools can be found at Toolforge (opens new window)

# Turtle (opens new window)

A textual syntax for RDF called Turtle.

For example a triple in turtle form from Wikidata:

<http://www.wikidata.org/entity/Q123> <http://www.wikidata.org/prop/direct/P31> <http://www.wikidata.org/entity/Q47018901>.

# Use case

A textual description of the functionality provided by the system that captures actor-system interaction. It specifies how a user interacts with a system and how the system responds to the user actions.

# Watchlist (opens new window)

A watchlist is a page which allows any logged-in user to maintain a list of "watched" pages and to generate a list of recent changes made to those pages. In this way they can keep track of, and react to, what's happening to pages they have created or are otherwise interested in.

# Wikibase

Wikibase is a collection of software and services to enable creation and maintenance of a powerful, flexible and customizable knowledge base.
Wikidata is the largest current public deployement of this system.

# Wikibase as a Service

Wikibase as a Service is a platform allowing easy creation of multiple Wikibase instances using a single shared set of resources.
Primarily developed under the name WBStack at https://wbstack.com (opens new window), at the start of 2022 a service was created at https://wikibase.cloud (opens new window)

# Wikibase Client

Wikibase Client is a set of features that enables the use, display and editing of Entity data from a Wikibase Repository.
Its core functionality is implemented as a MediaWiki extension called WikibaseClient (opens new window).
It can optionally contain additional MediaWiki extensions such as ArticlePlaceholder.

Wikibase Client is identified as a top level system of the Wikibase architecture.

# Wikibase Extension

Wikibase Extensions are MediaWiki extensions that add further functionality to the main extensions that make up Wikibase (WikibaseClient and WikibaseRepo).
Extensions such as WikibaseLexeme (opens new window) that enable additional Entity types or Property datatypes on Wikibase need to be enabled both on the Repository, and on the Client.
On the Repository the extension enables creating and editing these new types of data, and on the Client side the extension enables the wiki to consume and display them.

Other Wikibase extensions exist only on the Repository (e.g. WikibaseQualityConstraints (opens new window)) or only on the Client (e.g. ArticlePlaceholder (opens new window)).

# Wikibase Repository

Wikibase Repository is an application that provides structured Entity data.
Its core functionality is implemented as a MediaWiki extension called WikibaseRepo (opens new window).
It can optionally contain additional Wikibase extensions such as WikibaseLexeme, and is often surrounded by other services such as a Query Service.

Wikibase Repository is identified as a top level system of the Wikibase architecture.

# Wikidata

Wikidata is a Wikimedia project that runs an instance of MediaWiki with the Wikibase extensions. It enables Wikidata editors to enter structured Entity data and browse pages.

# Wikimedia

Wikimedia is a global movement whose mission is to bring free educational content to the world.

# Wikimedia sites

Wikimedia is made up of various projects or sites, most of which run MediaWiki and Wikibase Client.

These sites include but is not limited to Wikidata, Commons, Wikipedia, Wiktionaries, ...

Wikidata, which is a primary user of Wikibase is also a site run by Wikimedia.

# Wikipedia

The free, multilingual open-collaborative online encyclopedia that is run by the MediaWiki engine and using Wikibase Client to display Entity data from Wikidata.

# Wikitext (opens new window)

Wikitext, also known as Wiki markup or Wikicode, consists of the syntax and keywords used by the MediaWiki software to format a page. It's what editors work with to create and edit wiki articles.

# Wikitext-generated content

This describes the content of a wiki that is generated by Wikitext, such as wiki pages or messages (opens new window). The format of Wikitext-generated content is typically HTML, but it can also be plain text.