Wikibase/DataModel/DomainConceptsMapping

[WIP] Mapping of functional traits to Wikibase Domain concepts edit

Items Properties Lexemes Forms Senses MediaInfo EntitySchema I EntitySchema II

Semantic Entity (General LOD modelling) edit

uniquely identifiable
addressable
describable

Wikibase Entity (Wikibase specific modelling) edit

denotable ❌✅
sitelink bearing
externally identifiable
typed
hierarchical

Active Entity (Wikibase specific functionalities) edit

editable
mergeable
dispatched
titled ✅❌
language-aware
constrained

MediaWiki Page (MediaWiki features) edit

revision tracked
comparable
discussable
protectable
listed
searchable

General technical requirements edit

persisted
queryable
exportable

Legend edit

LOD Modelling Traits edit

  • uniquely identifiable - Can be identified by a universally unique identifier, has a URI/IRI
  • addressable - Can be used as an Object in a triple, linked in a statement
  • describable - a.k.a. Statement Bearing, can be a Subject of a triple

Wikibase Specific Modelling Traits edit

  • denotable - a.k.a. Fingerprintable, can be labelled, aliased and taglined (descriptioned) in multiple languages, modelled in RDF as triples with the various label predicates, such as `rdfs:label`. For integration of denotations and MediaWiki functionalities, see: titled. For adherence to the language fallback algorithm, see: language-aware.
  • sitelink bearing - Wikibase unique way of transcribing concepts from one wiki to another, modelled as a series of triples at the start of an RDF representation
  • externally identifiable - Wikibase UIs' specific interpretation of a set of triples which predicates all bear the same data type designation: "External Identifier"
  • typed - Wikibase specific modelling for predicates, to designate a data type for a triple’s subject / value of a statement
  • hierarchical - Can relate to other specified wikibase entity types in a one-to-many relationship. I.e. can be a parent to sub wikibase entity types.

Wikibase Functional Traits edit

  • editable - Adheres to a set of UX flows where a thing (refraining from entity, although here entity is actually appropriate) can be edited via various methods
  • mergeable - Adheres to a set of UX flows where two things of the same kind can be merged (items with items, lexemes with lexemes etc.) via various methods
  • dispatched - Changes in a Wikibase are dispatched to other wikis with a Wikibase Client, after each edit made. Appears in Entity Usage lists.
  • titled - uses denotations in the role of a MediaWiki page title in all implementations (search, page lists, etc.).
  • language-aware - denotations fall back on each other as specified by the language fallback lists.
  • constrained - Wikibase (and Wikibase Quality Constraints) way of ensuring triples adhere to certain value constraints.

MediaWiki Functional Traits edit

  • revision tracked - a.k.a. Versionable, can be reverted to former revisions of itself
  • comparable - a.k.a. Diffable, can be compared to other things of its kind or revisions of itself
  • discussable  - Can be discussed in Talk pages, by the community
  • protectable - Can obtain various levels of edit protection as determined by MediaWiki
  • listed - Integrates with various MediaWiki features such as Recent Changes, watch lists, and other page listings. While inherited from the usage of MediaWiki Pages, the titled complex adds additional functionality to enable integration with labels, aliases and descriptions.
  • searchable - Can be indexed and searched using MediaWiki’s search functionalities. This trait also is extended on by the titled complex to enable searching by those terms that denote a thing.

General Technical Requirements edit

  • persisted - Can be stored and retrieved from (any) memory.
  • queryable - Can be queried using a query language, namely SPARQL (as it belongs to the W3C standard set for Semantic Web technologies).
  • exportable - Can be exported into a variety of structured data file formats (`ttl`, `json`, `XML-RDF`, etc.). In the current implementation, this is what actually enables the queryable attribute, at least for SPARQL implementations, as we build a triples graph from RDF dumps.