1. Sébastien Ferré
  2. Sewelis


To build sewelis, here are the instructions:

1. clone the Git repository in some directory,
   and its dependency (ocaml-lib) as a sub-directory

   NOTE: we recommend to clone the last stable version, on branch 'master'.

% git clone https://bitbucket.org/sebferre/sewelis.git
% cd sewelis
% git clone https://bitbucket.org/sebferre/ocaml-lib.git

2. compile the project. This only assumes you have installed
   the OCaml compilers version 4.x (see http://caml.inria.fr/ocaml/release-prev.en.html),
   ocamlfind, the following OCaml libraries: xmlm, xml-light, and lablgtk2.
   We recommend to use OPAM for an easy install of all those dependencies.

% make

When you pull a new version, we recommend to first clean the repository
before recompiling.

% make clean-all
% make

3. run Sewelis. The main argument of 'sewelis' is the basename of the persistency files.
   The default basename is 'default'.

% ./sewelis [ <basename> ]

There are three persistency files:
- <basename>.log: a text file that keeps track of all updates
- <basename>.db: a binary file that enables a quick reload
- <basename>.nt: a text file in N-Triples format for use in other semantic tools
<basename>.log is modified at each update, while other files are only modified when
the 'Save' function is activated. When reloading a Sewelis base, <basename>.db is
used for quick reload, unless it is deprecated (e.g., created by an earlier version
of Sewelis). In the latter case, <basename>.log is used to replay the whole history
of updates. The advantage of <basename>.log is that in case of mishap, it can be
corrected by hand, and reloaded from scratch.

Geometry computations are provided by the JTS library. In order to make them
available, it is necessary to define the CLASSPATH as follows, before launching

% setenv CLASSPATH "camljava.jar:jts-1.8.jar"