Wiki Organisation Mailout

From Organic Design wiki


Here's some thoughts on the implementation of the Wiki Organisation plans we've been collaborating on recently.

Simple Forms & Semantic Forms

One of the plans for SimpleForms 1.0 is to be compatible with Semantic Forms because their plans for in-wiki structured data are exactly the same as ours. For example:

  • They build upon the idea that SMW annotations create the data structure that the forms are an interface to.
  • They enforce the encapsulation of the annotations into templates not directly within articles
  • They use the Form namespace to map forms to their associated templates of the same name

This is why one of the main aspects of the new version of Simple Forms will be to be compatible with Semantic Forms. But thinking about it more and running into some initial difficulties with nested templates, I now think we should work completely with Semantic Forms for structure, and make Simple Forms and List View extend them to allow dynamic AJAX updating. See MW:Extension:Semantic Forms for more details on Semantic Forms usage.

Nested Templates

Yesterday a problem was revealed when UnnamedUser attempted to add his I Ching book into the data structure. He made an article called UnnamedUser/I Ching (names have been changed to protect the innocent). It should be possible to add a single template to that article to state that it's an instance of the concept "I Ching book", and that concept needs to include the Resource template to add properties for ownership and booking etc in addition to its own properties.

We need to see if we can build this relationship model purely with Semantic Forms first so that our approach is done according to the current conventions. There are many examples on the discoursedb.org wiki which we can examine to determine the best structure for our own requirements. Note that the articles at discoursedb.org can be referenced from our own wiki's using the SF: interwiki prefix.

In general what we're needing in terms of nested templates is the ability to be able to create a new template containing not only its own specific properties, but also any number of other templates which in turn could also be collections. Another example is a schedule template and form which many other templates may require one or more of within their own property structure.

Road Map

There's only two main short-comings with Semantic Forms, firstly they don't offer any means of dynamic updating and secondly their forms are required to match templates and can't be made for other purposes. So rather than re-invent the wheel the new version of Simple Forms will work with Semantic Forms but extend it to cover those missing aspects.

The next step after Simple Forms 1.0 is to get List View working which will allow the forms to work dynamically lists of articles which result from semantic queries. This will make data viewing and editing more like a spreadsheet or inbox, but will be operating on a data structure which could be maintained completely with only Semantic Forms or even with only standard wikitext template syntax.

Another addition which will be functional soon is the Schedule extension. This will allow properties to be given a schedule so that they change over time. This will allow things like booking of resources, regular mail-outs of articles or scheduled categorisation of tasks for example. It will not be very simple to use though until after we have the new Simple Forms ready so that the complex #schedule parser-function can be edited via a simple to use JavaScript schedule form component.