GATEWiki, a Controllable Wiki: Overview

Hosted at

GATEWiki (or CoW, for Controllable Wiki) is a wiki/CMS system based on Grails and Subversion initiated by the GATE team (acknowledgements).


Quick start: most of the documentation lives in the doc directory, including the User and Developer Manual. This page presents an overview.

Confused about where these pages live? You'll find them in several places; their ultimate home is a version control repository, and they get checked out into your local filesystem if you want to modify or develop CoW, they get installed with CoW to form its help documentation, and they also live on the Sourceforge project website.

Note that GATEWiki is licenced under the GNU General Public Licence version 3 (GPL 3) except where otherwise stated.

For version 1.0.

1. Philosophy

Files and directories, documents and folders, disks and memory sticks, laptops and games machines, TV time-shifters and corporate IT systems. Data data everywhere, and never a drop to drink, as the Ancient Mariner could not have dreamt of saying. Wouldn't it be nice to be able to view your filesystem as a website, to be able to edit from multiple machines with and without network connections, to be able to have your own local copy and also share it with friends and colleagues, and to not have to worry about merging it all back together?

CoW is a "Controllable Wiki" and CMS that supports collaborative document creation with asynchonous off-line editing. CoW is desiged to make it easy to add interaction to static websites, and to support concurrent editing and off-line working with straightforward synchronisation (using Subversion). The system also serves as a test-bed for experiments in controlled languages for round-trip ontology engineering (from the GATE project:

2. Why another wiki?

Scratching three itches:

  1. adding interaction to a largish static site (15k HTML files, 40k other files)
  2. wiki style collaborative document creation with asynchonous off-line editing
  3. a test-bed for experiments in controlled languages for round-trip ontology engineering

3. Main features

4. Using SVN as a Wiki backend

No available Wiki in Java that we could find has good SVN support. Using SVN as a backend gives us:

Why not JCR layered on top of SVN? Just a question of team resources and experience, the strength of the SVNKit library and so on.

5. Controlled languages and semantics

Annotating documents with semantics is not a panacea for all the problems of document retrieval, but can in certain circumstances be beneficial, especially for high value and medium or low volume content.

CoW is partly intended to be an experimental framework for a new type of website in which

This work is funded by research projects with

6. Current status

CoW uses Grails and currently includes:

The system has two modes, workstation and server; the former does no user management, the latter uses JSecurity.