[okfn-discuss] Collaborative Development of Data
rufus.pollock at okfn.org
Mon Feb 19 16:46:26 GMT 2007
By the way, the list does not have Reply-To-List set so you need to
reply to all if you want reply to go to the list as well as me (I think
that would be good as your comments are I'm sure are of wider interest).
Erik Moeller wrote:
> On 2/19/07, Rufus Pollock <rufus.pollock at okfn.org> wrote:
>> You can also start putting proper object oriented structures into a
>> wiki (as
>> I think OmegaWiki are doing) but in so doing you aren't really a wiki
>> any more (of if you are what one means by a wiki has become so broad as
>> to encompass pretty much anything).
> I disagree. A wiki is characterized by easy and open editability of
> versioned objects through the web, with all damaging operations being
> reversible. Whether these versioned objects are simple (a single text
> object, perhaps with some category metadata embedded like in
> MediaWiki), or complex, is irrelevant to the definition of a wiki.
> Indeed, existing wikis embed an awful lot of complexity into the
> freetext itself; I fail to see how either approach is more or less
This is great because then it is just about definitions. If we define a
wiki as you suggest:
* something which supports versioning of information (this will
include reversability of damaging operations)
* allows easy and open write access
Then it will include a lot of stuff including the examples you mention.
By the way what would happen if you allow editing by other means (e.g.
local modifications with some commit mechanism) in addition to/instead
of by the web.
AFAIK people have been developing mechanisms to allow non-web-editing
for e.g. MoinMoin and MediaWiki (in fact I know for a fact that MoinMoin
has an XML-RPC interface). If such mechanisms are allowed in a wiki then
most revision control systems would also seem to fall under the scope of
Similarly, musicbrainz, which definitely has some kind of versioning and
a web interface, would also be a wiki. They've had a (semi-)versioned
domain model system for years.
Of course this is no bad thing -- but it would seem to be a very broad
definition and it might be clearer just to say: this is a system which
supports versioning and liberal write access.
> OmegaWiki uses a transaction-based versioning system; every record is
> associated with two transaction IDs: when it was added, and when it
> was removed (the latter can be null). The transaction IDs are
> associated with users, comments, timestamps. It thereby becomes
> possible to browse the state of the database at any given time.
Interesting, that is how I think most (at least centralized) 'proper'
RCS work: each atomic change to your model creates a new 'Revision' or
Transaction with an instance of the model (e.g. in the case of
subversion each Revision has an associated filesystem tree object). Out
of interest can you make changes to multiple objects as part of a single
transaction and how do you implement many to many relationships?
More information about the okfn-discuss