Tutorials on the Alignment API

# Tutorials and documentation on the Alignment API and server

This version:
  http://alignapi.gforge.inria.fr/tutorial/
Author:
  Jérôme Euzenat, INRIA & LIG

We have developed a series a tutorials so that any kind of user can take advatage of that API:

Using the Alignment API
  Explains how to use the API as a user for matching ontologies and manipulating alignments. It is based on a command line interface.
Manipulating alignments through a Web client
  Does most of what is done in the former tutorial but through an Web (HTTP) client using the Alignment server only.
Manipulating alignments in Java programs (and embedding the Alignment API within an application
  Explains how an aplication developer can embed the Alignment API within an application.
Exploiting alignments and reasoning
  This tutorial will learn you to:
  - communicate the alignment server through its REST web service API,
  - manipulate alignments with the Alignment API in Java,
  - answer SPARQL queries based on the resulting alignment,
  - perform OWL reasoning on aligned ontologies and compose alignments.
  It is based on Java programming and using various related APIs.
Extending the Alignment API with a new matcher
  Explains how an ontology matching developer can easily integrate its matcher within the Alignment API.

We also have some Documentation available. However, it is easily out of date.

A (mute) soundcast presents the use of the Alignment API from the NeOn toolkit.

Other sources of information are the example directory of the Alignment API and the source code (with its moderately explicit Javadoc).

## Preparation

This preparation phase, is common to all tutorials (but the second one which only requires a web browser).

For running the alignment API, you must have a Java interpreter available. We will call it `java`. For compiling your application, you will also need a java compiler, hereby called `javac`.

Download the last version of the Alignment API from http://gforge.inria.fr/frs/?group_id=117. Unzip it and go to the created directory:

$ mkdir alignapi $ cd alignapi $ unzip align*.zip

You can check that everything works by only typing:

$ java -jar lib/procalign.jar --help

    Alignment API implementation 4.0
    usage: Procalign [options] URI1 URI2
    options are:
    	--impl=className -i classname		Use the given alignment implementation.
    	--renderer=className -r className	Specifies the alignment renderer
    	--output=filename -o filename	Output the alignment in filename
    	--params=filename -p filename	Reads parameters from filename
    	--alignment=filename -a filename Start from an XML alignment file
    	--threshold=double -t double	Filters the similarities under threshold
    	--cutmethod=hard|perc|prop|best|span -T hard|perc|prop|best|span	method for computing the threshold
    	--debug[=n] -d [n]		Report debug info at level n
    	-Dparam=value			Set parameter
    	--help -h			Print this message

The above command outputs the command line usage of the Procalign class. We do not detail it here, this tutorial will present it entirelly.

You will then go to the tutorial directory by doing:

$ cd html/tutorial

You can clean up previous trials by:

$ rm */results/*

The goal of this tutorial is only to help you realize the possibilities of the Alignment API and implementation. It can be played by invoking each command line from the command-line interpreter. In this example we use the `tcsh` syntax but the main specific syntax is the first one:

$ setenv CWD `pwd`

which puts in variable `$CWD` the name of the current directory.

Now you can go back to any of the tutorials:

- Using the Alignment API
- Manipulating Alignments through a Web client
- Manipulating alignments in Java programs (and embedding the Alignment API within an application)
- Exploiting alignments and reasoning
- Extending the Alignment API with a new matcher

## Acknowledgements

The format of these tutorials has been shamelessly borrowed from Sean Bechhofer's OWL tutorial.

http://alignapi.gforge.inria.fr/tutorial/

$Id: index.html 1404 2010-03-31 08:53:09Z euzenat $