The goal of this page is to formulate the precise requirements that we have for a semantic extension of MediaWiki. This section is very important: due to the abundance of prior research and proposals, deciding what we want and need is quite close to deciding what to do. Furthermore, it serves as a checklist for our achievements.
As usual, requirements are sometimes contradictory and one has to decide on a trade-off between them. You are invited to post your comments and objections below each point.
- Easy syntax: A majority of today's authors must be able to author the annotations; the remainder must still be able to read the Wikisource.
- Users decide: People must be able to decide whether to use the extensions or not. One must be able to mostly ignore it, if desired (both in reading and in editing).
- Users have control: Authors must be able to adjust the new technologies as needed (in the future). E.g. it should be possible to extend the vocabulary (data fields, types, etc.), without asking a developer for assistance.
- Performance: It should require only minimal computing resources for general operations (eg, reading, editing).
- Scalable: The additional effort for reading and editing should be at most linear, with respect to the size of the database.
- Low development cost: Extensions must be implementable with minimal effort and integrate well with the current technology.
- Data export: The annotations should be provided to the public in a standartized format (such as OWL/RDF), so as to enable others to write code that uses the data.
- Robust: Errors, incompleteness, or contradictions in the annotations should not lead to major problems.
- Well-defined: Although users might not be aware of it, there should be a standard way to interpret our annotations (e.g. for software developers).
- Powerful: The approach should enable us to describe as many details as reasonably possible.
- Non-experimental: Wikipedia is unique, but the chosen technologies should be fully developed and well-established. We should not start by inventing our own annotation language from scratch.
- Broad support: The approach should be based on technologies for which there is wide tool support at hand (such as XML/RDF-Parsers, OWL-Reasoners, user interfaces, visualization tools).
- Free-as-in-Speech: The approach must not rely on proprietary standards, patented ideas, or the availability of non-free software.