[Mulgara-general] Transactions

James Leigh james-nospam at leighnet.ca
Sat Jun 5 22:49:00 UTC 2010


Hi dms,

Many Web applications store an revision id (or tag) for each entity and
update the value every time the entity changes. Before making any
changes the entity tag is compared as part of the transaction. So
instead of checking for the absent of a birth date, you would check that
the entity tag is the same as the tag that was read earlier in another
transaction. You could then use Mulgara's Java API or Alex's conditional
write operation (if your write operations are simple enough).

It sounds like you are trying to describe serializable isolation. For
every transaction there is an order such that they could have been
executed completely one after another. Mulgara implements this by
literally executing them one after another. I have used concurrent
serialazable isolation with Mulgara using the Sesame API, by using
OptimisiticRepository for concurrent serializable isolation and the
Sesame-Mulgara bridge to use Mulgara's RDF store. Unfortunately these
transactions are also only available in Java (no REST API).

My colleagues and I have started working on a RESTful API for managing
RDF in isolation. We started designing the API with Mulgara in mind and
will work on an implementation over the next year or so. If you (or
others) are interested in getting involved, please let me know. You can
read more about it at
http://www.w3.org/2009/12/rdf-ws/papers/ws13

Cheers,
James



More information about the Mulgara-general mailing list