Yearly Semantic MediaWiki overview

Presentation by Karsten Hoffmeyer and @JeroenDeDauw

SMWCon Fall 2016, Frankfurt


Community and users

~1100 mails on semediawiki-user

~100 mails on semediawiki-devel

~5500 edits and ~1300 new pages on

Community and users cont.

~670 watchers of installation video on Vimeo
(finishes, past 12 months)

up from ~580 last year

~1600 installs from Packagist per month Pagagist all time


~28 developers last year, ~100 total

~1500 code changes Commits 2015/2016

Code quality

Scrutinizer 2014/2015Scrutinizer 2015/2016

Tests 2015/2016

Continuous testing of many environments

Travis integration tests

Semantic Versioning standard


Want only bugfixes? 2.4.x

New features but no b/c breaks? 2.x


  • 2.3.0 (+ 2.3.1)
  • 2.4.0 (+ 2.4.1, 2.4.2?)

Code contributors

  • James Hong Kong
  • Karsten Hoffmeyer
  • Felipe de Jong
  • Florian Schmidt
  • Niklas Laxström
  • Amir E. Aharoni
  • Ahmad Gharbeia
  • Stephan Gambke
  • Siebrand Mazeland
  • Kunal Mehta
  • Thomas Mulhall
  • Hangya
  • Cindy Cicalese
  • Jeroen De Dauw
  • Jaider Andrade Ferreira
  • Vitaliy Filippov
  • Aaron Schulz
  • Ori Livneh
  • Peter Grassberger
  • Reedy
  • Wolfgang Fahl
  • Alexander Gesinn
  • Joel K. Pettersson
  • umherirrender
  • Sébastien Beyou
  • translators

SMW 2.4

This was quite a big realease.

Language support features

SMW was made more responsive to multiple language environments including:

  • Support for text storage in multiple languages using the new monolingual text datatype using @languagecode
  • Provides methods to describe a property in multiple languages using @languagecode

Property description shown in EnglishProperty description shown in Chinese

Language support features cont.

  • Adaptive formatting for Number, Boolean and Date values using the #LOCL formatter
  • Recognize page content language to improve value parsing (supported by the Semantic Interlanguage Extension)

Various other features

Simplified navigation and extended "Special:Ask" to provide quick links for immediate result download
Sepcial Ask showning quick links

Support for uniqueness and pattern based (regular expressions) property value constraints
Erroneous value assignment

Various other features cont.

Support for DISPLAYTITLE via a queryable special property

Improved handling of outdated entities
("rebuildData.php" --shallow-update option)

Various other features cont.

Enhanced date, time and number display formatting

  • #LOCL formatter (predefined language specific formatting)
  • #-F[...] formatter (individual free formatting) as in
    |?Has date#-F[F j, Y]
  • Possibility to specify display precision for numeric values (decimals) as in
    |?Has number#-p2

Various other features cont.

Improved selection of pages

  • Comparator support for single value queries (∼ and !∼) as in
    {{#ask: [[∼Foo/*]] ... }}
  • Range query support (> and <) as in
    {{#ask: [[> AAA]] [[<AAD]] ... }}

Various other features cont.

Improved handling of outdated entities (plays with "rebuildData.php" --shallow-update parameter)

More parameters to the "rebuildData.php" script:

  • --ignore-exceptions
  • --exception-log="/path/to/smw/logs/directory/"
  • --with-maintenance-log
  • --redirects

Added full support for PHP 7.0

SMW 2.5 & 3.0


New features in SMW 2.5

  • Support for MySQL and SQLite's “native” full-text search on text and URI typed values including phrase matching
  • Reference typed statements to record provenance metadata on individual value annotations
    (record like: value - data - source)
    Referenced statements in action

New features in SMW 2.5 cont.

  • Property chain support for printout statements as in
    |?-Located in.Has population.Retrieved on
    Property chain printouts
  • Support for property labels in the user's language
    Property label in user's language

Removals in SMW 3.0

  • "type" namespace (deprecated in SMW 1.6)
  • Maintenance script aliases such as "SMW_setup.php" (renamed in 2.0)
  • "Special:SemanticStatistics" (relocated to "Special:Statistics" since 1.9)

MediaWiki compatibility

SMW 3.01.27...

Contributing to the project

Create feature requests

File bugs you encounter

Become part of the testers group

Add or enhance documentation

Add or enhance translations

Answer questions and participate in discussions

Code review

Contribute code (correctly)