Semantic MediaWiki/Implementation status
This page describes the implementation progress of Semantic MediaWiki. It is a mixture of the official relase notes and a lookout towards upcoming features. The current release can be obtained from the Semantic MediaWiki project at Sourceforge, where one can also subscribe to various mailing lists in order to stay informed. There is also an online demo at http://ontoworld.org to test the current version. Most information about current development and on downloading the software is at the project page on wiki.ontoworld.org
Please keep in mind that many parts of the implementation (especially those concerned with html-output) are still preliminary. Ideas and wishes for improvement can be added to the article or talk on implementation (possibly send an Email for immediate attention). Bugs should be reported in the Wikimedia bugzilla at http://bugzilla.wikimedia.org/ However, you may want to try the latest version in Subversion to see whether an issue has already been resolved. Finally, since the sources are public (and not overly complex or lengthy), anybody can contribute desired features or bugfixes. If you consider major contributions, please send us an email to prevent overlap.
Semantic MediaWiki development activities tracks planned features for future releases.
Current code in Subversion
The version in Subversion (at http://svn.wikimedia.org/viewvc/mediawiki/trunk/extensions/SemanticMediaWiki/) usually can do more than the latest release, especially in this early phase of the project; on the other hand it may be unstable or broken. Check it out to get the details or see the archives of our mailing lists on Sourceforge.net.
See the RELEASE-NOTES for details of recent releases.
Semantic MediaWiki 1.0
To be released in October 2007.
Semantic MediaWiki 0.7
Released 28 April 2007.
Semantic MediaWiki 0.6
Released 18 November 2006.
Semantic MediaWiki 0.5
Released 14 August 2006.
Semantic MediaWiki 0.4
Released 12 May 2006
Semantic MediaWiki 0.3
Released 7 April 2006
Internationalization, OWL/RDF export, maintenance pages, support for MediaWiki 1.6, support for geographical data, and much more.
Semantic MediaWiki 0.2
Released 4 December 2005, considered alpha. Requires MediaWiki 1.5beta4 or greater.
Adds basic support for data attributes, including basic data types and some support for units of measurement.
Semantic MediaWiki 0.1
The first release of the software still is to be considered pre-alpha. The implementation is an extension to MediaWiki, i.e. any current MediaWiki installation (1.4rc5) can be upgraded easily without major changes in the code. The only exception is a small patch that is required to fix a declaration in the current MediaWiki source.
The following features are included:
- Basic support for relations (typed links) in articles.
- Visual feedback of semantic data in articles in form of an info box at the bottom of each article. The exact content and layout of this box is still preliminary.
- Simple search (Special:SearchSemantic) functionality to exploit semantic annotations. Search is an ad hoc implementation based on an additional internal SQL table for triples. The search mask features some auto completion and allows for partial inputs.
- Parsing of semantic relations needs to be done later to support nowiki-links and template inclusion.
- Version 0.1 strips annotations before saving and adds them again for editing. This causes undesired changes of the exact placement of annotations and makes life more difficult for the editors. This is changed in later versions (see CVS).
- Installation requires the creation of some database table, which usually causes SQL-errors. Give your wikiuser sufficient privileges to create the table (and revoke these rights after storing one article successfully). Storage of semantic relations will change in the future (->triplestore), so this bug is going to vanish at some point.
(Old ideas) The following is our idea of the next couple of steps for implementation. Reality might be different. Contributors can greatly affect the timeline.
- Namespace for relations to "declare" link types and to see special information about them. Mostly because it is necessary to give a textual description to tell Wikipedians when to use some relation. (This has been implemented in 0.3? It has Relation: and Attribute: namespaces, and a Type: namespace in which attributes with units specify their datatype.)
- Transition from an additional SQL-table to a dedicated triplestore like Redland. Execution of large or complex search queries and processing of additional information (like the relation hierarchy) can then be delegated to this software. This immediately buys us a lot of functionality. (As of April 2006 this on hold since most RDF triple stores are implemented in Java and pose integration issues for MediaWiki. See comments from Markus Krötzsch in e-mail thread)
- Introduction of a relational hierarchy: parsing of special attributes in the relation-articles and commiting of this information to the triple store. The current demo already shows how important this gets: if you search all cities in Germany, you will not find Berlin, since this is only declared as the capital of Germany. The hierarchy allows us to state that being a capital of something is just a special case of being located in something.
- Add category information to the triple store and to the search function.
The above points yield an almost fully functional implementation of typed links and a fully working infrastructure (parsing, storing, searching).