diff --git a/html/tutorial/MyApp.java b/html/tutorial/MyApp.java
new file mode 100644
index 0000000000000000000000000000000000000000..99150d1414eb2acde97281beca694a2a1bb3e5cd
--- /dev/null
+++ b/html/tutorial/MyApp.java
@@ -0,0 +1,161 @@
+/*
+ * $Id$
+ *
+ * Copyright (C) 2006, INRIA Rhône-Alpes
+ *
+ * Modifications to the initial code base are copyright of their
+ * respective authors, or their employers as appropriate.  Authorship
+ * of the modifications may be determined from the ChangeLog placed at
+ * the end of this file.
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public License
+ * as published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ * 
+ * This program is distributed in the hope that it will be useful, but
+ * WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Lesser General Public License for more details.
+ * 
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
+ * USA.
+ */
+
+// Alignment API classes
+import org.semanticweb.owl.align.Alignment;
+import org.semanticweb.owl.align.AlignmentProcess;
+import org.semanticweb.owl.align.AlignmentVisitor;
+import org.semanticweb.owl.align.Parameters;
+import org.semanticweb.owl.align.Evaluator;
+
+// Alignment API implementation classes
+import fr.inrialpes.exmo.align.impl.BasicAlignment;
+import fr.inrialpes.exmo.align.impl.BasicParameters;
+import fr.inrialpes.exmo.align.impl.method.StringDistAlignment;
+import fr.inrialpes.exmo.align.impl.renderer.SWRLRendererVisitor;
+import fr.inrialpes.exmo.align.impl.eval.PRecEvaluator;
+import fr.inrialpes.exmo.align.parser.AlignmentParser;
+
+// OWL API classes
+import org.semanticweb.owl.util.OWLManager;
+import org.semanticweb.owl.model.OWLOntology;
+import org.semanticweb.owl.model.OWLException;
+import org.semanticweb.owl.io.owl_rdf.OWLRDFParser;
+import org.semanticweb.owl.io.owl_rdf.OWLRDFErrorHandler;
+
+// SAX standard classes
+import org.xml.sax.SAXException;
+
+// Java standard classes
+import java.io.PrintWriter;
+import java.io.BufferedWriter;
+import java.io.OutputStreamWriter;
+import java.io.File;
+import java.net.URI;
+import java.util.Hashtable;
+
+/**
+ * The Skeleton of code for embeding the alignment API
+ *
+ * Takes two files as arguments and align them.
+ */
+
+public class MyApp {
+
+    static OWLRDFErrorHandler handler = null;
+    static Hashtable loaded = null;
+
+    public static void main( String[] args ) {
+	OWLOntology onto1 = null;
+	OWLOntology onto2 = null;
+	Parameters params = new BasicParameters();
+
+	try {
+	    // Initializing ontology parsers
+	    initErrorHandler();
+	    loaded = new Hashtable();
+	
+	    // Loading ontologies
+	    if (args.length >= 2) {
+		onto1 = loadOntology(args[0]);
+		onto2 = loadOntology(args[1]);
+	    } else {
+		System.err.println("Need two arguments to proceed");
+		return ;
+	    }
+
+	    // Run two diffent alignment methods (e.g., ngram distance and smoa)
+	    AlignmentProcess a1 = new StringDistAlignment( onto1, onto2 );
+	    params.setParameter("stringFunction","smoaDistance");
+	    a1.align( (Alignment)null, params );
+	    AlignmentProcess a2 = new StringDistAlignment( onto1, onto2 );
+	    params = new BasicParameters();
+	    params.setParameter("stringFunction","ngramDistance");
+	    a1.align( (Alignment)null, params );
+
+	    // Merge the two results.
+	    ((BasicAlignment)a1).ingest(a2);
+
+	    // Test its f-measure.
+	    AlignmentParser aparser = new AlignmentParser(0);
+	    Alignment reference = aparser.parse( "file://localhost"+(new File ( "refalign.rdf" ) . getAbsolutePath()), loaded );
+	    Evaluator evaluator = new PRecEvaluator( reference, a1 );
+
+	    // Threshold at various thresholds (and maybe various threshold methods)
+	    for ( int i = 0; i <= 10 ; i = i+2 ){
+		a1.cut( ((double)i)/10 );
+		evaluator.eval( new BasicParameters() );
+		System.err.println("Threshold "+(((double)i)/10)+" : "+((PRecEvaluator)evaluator).getFmeasure());
+		}
+
+	    // If it is over a certain value, output the result as SWRL rules.
+	    PrintWriter writer = new PrintWriter (
+				  new BufferedWriter(
+		                   new OutputStreamWriter( System.out, "UTF-8" )), true);
+	    AlignmentVisitor renderer = new SWRLRendererVisitor(writer);
+	    a1.render(renderer);
+	    writer.flush();
+	    writer.close();
+
+	} catch (Exception e) { e.printStackTrace(); };
+    }
+
+    // Initializes RDF Parser error handlers
+    private static void initErrorHandler() throws Exception {
+	try {
+	    handler = new OWLRDFErrorHandler() {
+		    public void owlFullConstruct(int code, String message)
+			throws SAXException {
+		    }
+		public void owlFullConstruct(int code, String message, Object o)
+		    throws SAXException {
+		}
+		    public void error(String message) throws SAXException {
+			throw new SAXException(message.toString());
+		    }
+		    public void warning(String message) throws SAXException {
+			System.err.println("WARNING: " + message);
+		    }
+		};
+	} catch (Exception ex) {
+	    throw ex;
+	}
+    }
+
+    // Load an ontology in the OWL API
+    public static OWLOntology loadOntology(String filename)
+	throws Exception {
+	URI uri = new URI ("file://localhost"+(new File ( filename ) . getAbsolutePath()));
+	if (uri == null) { throw new OWLException( "Bad filename" ); }
+	OWLRDFParser parser = new OWLRDFParser();
+	parser.setOWLRDFErrorHandler(handler);
+	parser.setConnection(OWLManager.getOWLConnection());
+	OWLOntology parsedOnt = parser.parseOntology(uri);
+	loaded.put( uri, parsedOnt );
+	return parsedOnt;
+    }
+
+}
diff --git a/html/tutorial/Skeleton.java b/html/tutorial/Skeleton.java
new file mode 100644
index 0000000000000000000000000000000000000000..0846b121ef61d03d025bc6ec242327b91652f1c3
--- /dev/null
+++ b/html/tutorial/Skeleton.java
@@ -0,0 +1,138 @@
+/*
+ * $Id: Skeleton.java 267 2006-06-06 11:34:32Z euzenat $
+ *
+ * Copyright (C) 2006, INRIA Rhône-Alpes
+ *
+ * Modifications to the initial code base are copyright of their
+ * respective authors, or their employers as appropriate.  Authorship
+ * of the modifications may be determined from the ChangeLog placed at
+ * the end of this file.
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public License
+ * as published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ * 
+ * This program is distributed in the hope that it will be useful, but
+ * WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Lesser General Public License for more details.
+ * 
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
+ * USA.
+ */
+
+// Alignment API classes
+import org.semanticweb.owl.align.Alignment;
+import org.semanticweb.owl.align.AlignmentProcess;
+import org.semanticweb.owl.align.AlignmentVisitor;
+import org.semanticweb.owl.align.Parameters;
+
+// Alignment API implementation classes
+import fr.inrialpes.exmo.align.impl.BasicAlignment;
+import fr.inrialpes.exmo.align.impl.BasicParameters;
+import fr.inrialpes.exmo.align.impl.method.StringDistAlignment;
+import fr.inrialpes.exmo.align.impl.renderer.RDFRendererVisitor;
+
+// OWL API classes
+import org.semanticweb.owl.util.OWLManager;
+import org.semanticweb.owl.model.OWLOntology;
+import org.semanticweb.owl.model.OWLException;
+import org.semanticweb.owl.io.owl_rdf.OWLRDFParser;
+import org.semanticweb.owl.io.owl_rdf.OWLRDFErrorHandler;
+
+// SAX standard classes
+import org.xml.sax.SAXException;
+
+// Java standard classes
+import java.io.PrintWriter;
+import java.io.BufferedWriter;
+import java.io.OutputStreamWriter;
+import java.io.File;
+import java.net.URI;
+import java.util.Hashtable;
+
+/**
+ * The Skeleton of code for embeding the alignment API
+ *
+ * Takes two files as arguments and align them.
+ */
+
+public class Skeleton {
+
+    static OWLRDFErrorHandler handler = null;
+    static Hashtable loaded = null;
+
+    public static void main( String[] args ) {
+	OWLOntology onto1 = null;
+	OWLOntology onto2 = null;
+	Parameters params = new BasicParameters();
+
+	try {
+	    // Initializing ontology parsers
+	    initErrorHandler();
+	    loaded = new Hashtable();
+
+	    // Loading ontologies
+	    if (args.length >= 2) {
+		onto1 = loadOntology(args[0]);
+		onto2 = loadOntology(args[1]);
+	    } else {
+		System.err.println("Need two arguments to proceed");
+		return ;
+	    }
+
+	    // Aligning
+	    AlignmentProcess a1 = new StringDistAlignment( onto1, onto2 );
+	    a1.align( (Alignment)null, params );
+
+	    // Outputing
+	    PrintWriter writer = new PrintWriter (
+				  new BufferedWriter(
+		                   new OutputStreamWriter( System.out, "UTF-8" )), true);
+	    AlignmentVisitor renderer = new RDFRendererVisitor(writer);
+	    a1.render(renderer);
+	    writer.flush();
+	    writer.close();
+
+	} catch (Exception e) { e.printStackTrace(); };
+    }
+
+    // Initializes RDF Parser error handlers
+    private static void initErrorHandler() throws Exception {
+	try {
+	    handler = new OWLRDFErrorHandler() {
+		    public void owlFullConstruct(int code, String message)
+			throws SAXException {
+		    }
+		public void owlFullConstruct(int code, String message, Object o)
+		    throws SAXException {
+		}
+		    public void error(String message) throws SAXException {
+			throw new SAXException(message.toString());
+		    }
+		    public void warning(String message) throws SAXException {
+			System.err.println("WARNING: " + message);
+		    }
+		};
+	} catch (Exception ex) {
+	    throw ex;
+	}
+    }
+
+    // Load an ontology in the OWL API
+    public static OWLOntology loadOntology(String filename)
+	throws Exception {
+	URI uri = new URI ("file://localhost"+(new File ( filename ) . getAbsolutePath()));
+	if (uri == null) { throw new OWLException( "Bad filename" ); }
+	OWLRDFParser parser = new OWLRDFParser();
+	parser.setOWLRDFErrorHandler(handler);
+	parser.setConnection(OWLManager.getOWLConnection());
+	OWLOntology parsedOnt = parser.parseOntology(uri);
+	loaded.put( uri, parsedOnt );
+	return parsedOnt;
+    }
+
+}
diff --git a/html/tutorial/index.html b/html/tutorial/index.html
index 04f634e9090a3579d1688545e2235d21e8023122..572437a003dcfcc26d856de8bdfd7ae0d07f8a2c 100644
--- a/html/tutorial/index.html
+++ b/html/tutorial/index.html
@@ -220,9 +220,10 @@ $ java -jar ../../lib/procalign.jar -i fr.inrialpes.exmo.align.impl.method.Strin
   <a
   href="../../src/fr/inrialpes/exmo/align/impl/method>"../../src/fr/inrialpes/exmo/align/impl/method</a>
   directory for more simple alignment methods. Also look in the
-  <tt>StringDistAlignment</tt> class the possible values for <tt>stringFunction</tt>.</p></div></p>
+  <tt>StringDistances</tt> class the possible values
+  for <tt>stringFunction</tt> (they are the names of methods).</p></div></p>
 
-<p><div class="logic"><b>Advanced:</b> You can also look at the instructions for
+<p><div class="logic"><p><b>Advanced:</b> You can also look at the instructions for
   installing WordNet and its Java interface and use a WordNet based
   distance provided with the API implementation by:
 <div class="fragment"><pre>
@@ -272,17 +273,17 @@ See the output in <a href="results/AOMS5.rdf">RDF/XML</a>
 or <a href="results/AOMS5.html">HTML</a>. The results is an alignement from
 the source to the target.</p>
 
-<p><div class="logic"><b>More work:</b>There is another switch (<tt>-T</tt>) in Procalign that
+<p><div class="logic"><p><b>More work:</b>There is another switch (<tt>-T</tt>) in Procalign that
   specifies the way a threshold is applied (hard|perc|prop|best|span)
   the default being "hard". The curious reader can apply these and see
   the difference in results. How they work is explained in the
   Alignment API documentation.
-</div></p>
+</p></div></p>
 
-<p><div class="logic"><b>More work:</b> Try to play with the
+<p><div class="logic"><p><b>More work:</b> Try to play with the
     thresholds in order to find the best values for
     levenshteinDistance and smoaDistance.
-</div></p>
+</p></div></p>
 
 <hr />
 <h2>Output</h2>
@@ -510,14 +511,14 @@ content is the table:<br />
 $ java -jar ../../lib/Procalign.jar file://localhost$CWD/rdf/edu.umbc.ebiquity.publication.owl file://localhost$CWD/rdf/edu.mit.visus.bibtex.owl -i fr.inrialpes.exmo.align.impl.method.StringDistAlignment -DstringFunction=levenshteinDistance -DprintMatrix=1 -o /dev/null > matrix.tex
 </pre></div-->
 
-<div class="logic"><p><b>More work:</b> As you can see,
+<p><div class="logic"><p><b>More work:</b> As you can see,
     the <tt>PRecEvaluator</tt> does not only provide precision and
     recall but also provides F-measure. F-measure is usually used as
     an "absolute" trade-off between precision and recall (i.e., the
     optimum F-measure is considered the best precision and
     recall). Can you establish this point for SMOA and levenshtein and
     tell which algorithm is more adapted?
-</p></div>
+</p></div></p>
 
 <!--div class="logic"><p><b>More work:</b>If you want to compare several algorithms, there
   is another class, GroupAlign, that allows to run an
@@ -530,29 +531,99 @@ $ java -jar ../../lib/Procalign.jar file://localhost$CWD/rdf/edu.umbc.ebiquity.p
   line level (even if it is very often very useful). So if you are
   ready for it, you can develop in Java your own application that take
   advantage of the API.</p>
+<p>A skeleton of program using the Alignment API
+  is <a href="Skeleton.java">Skeleton.java</a>. It can be compiled by
+  invoking:
+<div class="fragment"><pre>
+$ javac -classpath ../../lib/api.jar:../../lib/rdfparser.jar:../../lib/align.jar:../../lib/procalign.jar Skeleton.java
+</div>
+and run by:
+<div class="fragment"><pre>
+$ java -cp ../../lib/Procalign.jar:. Skeleton myOnto.owl edu.mit.visus.bibtex.owl
+</pre></div></p>
 
-<p>This should be possible to invoque it through:
+<p>Now considering the API (that can be consulted through its thin
+  at <a
+	href="../../javadoc/org/semanticweb/owl/align/Alignment.html">Javadoc</a>
+  for instance), can you modify the Skeleton program in order for it
+  performs the following:
+<ul compact="1">
+<li>Run two diffent alignment methods (e.g., ngram distance and
+  smoa);</li>
+<li>Merge the two results;</li>
+<li>Threshold at various thresholds;</li>
+<li>Evaluate them against the references and choose the one with the
+  best F-Measure;</li>
+<li>Displays it as SWRL Rules.</li>
+</ul>
+Of course, you can do it progressively.
 <div class="fragment"><pre>
-$ java -cp ../../lib/Procalign.jar MyApp file://localhost$CWD/rdf/edu.umbc.ebiquity.publication.owl file://localhost$CWD/rdf/edu.mit.visus.bibtex.owl
+$ javac -classpath ../../lib/api.jar:../../lib/rdfparser.jar:../../lib/align.jar:../../lib/procalign.jar MyApp.java
+$ java -cp ../../lib/Procalign.jar:. MyApp myOnto.owl edu.mit.visus.bibtex.owl > results/MyApp.owl
 </pre></div></p>
+<p>Do you want to see a possible solution?
+<div class="button"><form>
+<input type="button" value="Cheat" onclick="show('qu7')"/>
+<input type="button" value="Teacher is comming" onclick="hide('qu7')"/>
+</form></div>
+<div class="explain" id="qu7"><p>
+The main piece of code in Skeleton.java is replaced by
+<pre>
+// Run two diffent alignment methods (e.g., ngram distance and smoa)
+AlignmentProcess a1 = new StringDistAlignment( onto1, onto2 );
+params.setParameter("stringFunction","smoaDistance");
+a1.align( (Alignment)null, params );
+AlignmentProcess a2 = new StringDistAlignment( onto1, onto2 );
+params = new BasicParameters();
+params.setParameter("stringFunction","ngramDistance");
+a1.align( (Alignment)null, params );
+
+// Merge the two results.
+((BasicAlignment)a1).ingest(a2);
+
+// Test its f-measure.
+AlignmentParser aparser = new AlignmentParser(0);
+Alignment reference = aparser.parse( "file://localhost"+(new File ( "refalign.rdf" ) . getAbsolutePath()), loaded );
+Evaluator evaluator = new PRecEvaluator( reference, a1 );
+
+// Threshold at various thresholds (and maybe various threshold methods)
+for ( int i = 0; i <= 10 ; i = i+2 ){
+	a1.cut( ((double)i)/10 );
+	evaluator.eval( new BasicParameters() );
+	System.err.println("Threshold "+(((double)i)/10)+" : "+((PRecEvaluator)evaluator).getFmeasure());
+}
 
-<div class="logic"><p><b>More work:</b> Can you add a switch like the <tt>-i</tt> switch
+// If it is over a certain value, output the result as SWRL rules.
+PrintWriter writer = new PrintWriter (
+			  new BufferedWriter(
+	                   new OutputStreamWriter( System.out, "UTF-8" )), true);
+AlignmentVisitor renderer = new SWRLRendererVisitor(writer);
+a1.render(renderer);
+</pre>
+</p></div></p>
+</p>
+<p>A full working solution is <a href="MyApp.java">MyApp.java</a>.</p>
+<p><div class="logic"><p><b>More work:</b> Can you add a switch like the <tt>-i</tt> switch
   of <tt>Procalign</tt> so that the main class of the application can
   be passed at commant-line.
-</p></div>
-
-<p>
+</p></div></p>
 
+<p><div class="logic"><p><b>More work:</b> Implement the F-measure optimization rule
+  presented above so that you automatically select the threshold that
+  maximizes F-measure.
+</p></div></p>
 
+<p><div class="logic"><p><b>Advanced:</b>
+What about writing an editor for the alignment API?
+</p></div></p>
 
+<p><div class="logic"><p><b>Advanced:</b>
+You can develop a specialized matching algorithm
+by subclassing the Java programs provided in the Alignment API
+implementation (like BasicAlignment or DistanceAlignment).
+</p></div></p>
 
-you can develop a specialized matching algorithm
-  by subclassing the Java programs provided in 
 
-<div class="logic"><p><b>More work:</b> Implement the F-measure optimization rule
-  presented above so that you automatically select the threshold that
-  maximizes F-measure.
-</p></div>
 
 <hr />
 <h2>Further exercises</h2>
@@ -577,6 +648,6 @@ Planning:
 <hr />
 <center><small>http://alignapi.gforge.inria.fr/tutorial</small></center>
 <hr />
-$Id$
+$Id:$
 </body>
 </html>
diff --git a/html/tutorial/results/SMOA5.xsl b/html/tutorial/results/SMOA5.xsl
index ac228ca9484ad6de681d246136ef1ce306ff308d..c1233d886f4b6dcce703a402606d5a4921cac8eb 100644
--- a/html/tutorial/results/SMOA5.xsl
+++ b/html/tutorial/results/SMOA5.xsl
@@ -1,411 +1,411 @@
 <?xml version="1.0" encoding="UTF-8"?>
-<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0"
-    xmlns:owl="http://www.w3.org/2002/07/owl#"
+<xsl:stylesheet version="1.0"
     xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
-    xmlns:rdfs="http://www.w3.org/2000/01/rdf-schema#" 
-    xmlns:xsd="http://www.w3.org/2001/XMLSchema#"
-xmlns:ns1="http://alignapi.gforge.inria.fr/tutorial/myOnto.owl#"
-xmlns:ns2="http://alignapi.gforge.inria.fr/tutorial/edu.mit.visus.bibtex.owl#"
->
+    xmlns:owl="http://www.w3.org/2002/07/owl#"
+    xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
+    xmlns:ns1="http://alignapi.gforge.inria.fr/tutorial/myOnto.owl#"
+    xmlns:ns0="http://alignapi.gforge.inria.fr/tutorial/edu.mit.visus.bibtex.owl#"
+    xmlns:rdfs="http://www.w3.org/2000/01/rdf-schema#"
+  >
 
   <xsl:template match="rdf:List">
-    <xsl:element name="ns2:Unpublished">
+    <xsl:element name="ns0:Unpublished">
       <xsl:apply-templates select="*|@*|text()"/>
     </xsl:element>
   </xsl:template>
 
   <xsl:template match="ns1:Booklet">
-    <xsl:element name="ns2:Booklet">
+    <xsl:element name="ns0:Booklet">
       <xsl:apply-templates select="*|@*|text()"/>
     </xsl:element>
   </xsl:template>
 
   <xsl:template match="ns1:InBook">
-    <xsl:element name="ns2:Inbook">
+    <xsl:element name="ns0:Inbook">
       <xsl:apply-templates select="*|@*|text()"/>
     </xsl:element>
   </xsl:template>
 
   <xsl:template match="rdf:rest">
-    <xsl:element name="ns2:hasAddress">
+    <xsl:element name="ns0:hasAddress">
       <xsl:apply-templates select="*|@*|text()"/>
     </xsl:element>
   </xsl:template>
 
   <xsl:template match="ns1:Collection">
-    <xsl:element name="ns2:Incollection">
+    <xsl:element name="ns0:Incollection">
       <xsl:apply-templates select="*|@*|text()"/>
     </xsl:element>
   </xsl:template>
 
   <xsl:template match="ns1:Part">
-    <xsl:element name="ns2:Article">
+    <xsl:element name="ns0:Article">
       <xsl:apply-templates select="*|@*|text()"/>
     </xsl:element>
   </xsl:template>
 
   <xsl:template match="ns1:keywords">
-    <xsl:element name="ns2:hasKeywords">
+    <xsl:element name="ns0:hasKeywords">
       <xsl:apply-templates select="*|@*|text()"/>
     </xsl:element>
   </xsl:template>
 
   <xsl:template match="ns1:number">
-    <xsl:element name="ns2:hasNumber">
+    <xsl:element name="ns0:hasNumber">
       <xsl:apply-templates select="*|@*|text()"/>
     </xsl:element>
   </xsl:template>
 
   <xsl:template match="ns1:lang">
-    <xsl:element name="ns2:hasLanguage">
+    <xsl:element name="ns0:hasLanguage">
       <xsl:apply-templates select="*|@*|text()"/>
     </xsl:element>
   </xsl:template>
 
   <xsl:template match="ns1:Misc">
-    <xsl:element name="ns2:Misc">
+    <xsl:element name="ns0:Misc">
       <xsl:apply-templates select="*|@*|text()"/>
     </xsl:element>
   </xsl:template>
 
   <xsl:template match="ns1:editor">
-    <xsl:element name="ns2:hasEditor">
+    <xsl:element name="ns0:hasEditor">
       <xsl:apply-templates select="*|@*|text()"/>
     </xsl:element>
   </xsl:template>
 
   <xsl:template match="ns1:InProceedings">
-    <xsl:element name="ns2:Inproceedings">
+    <xsl:element name="ns0:Inproceedings">
       <xsl:apply-templates select="*|@*|text()"/>
     </xsl:element>
   </xsl:template>
 
   <xsl:template match="ns1:type">
-    <xsl:element name="ns2:hasType">
+    <xsl:element name="ns0:hasType">
       <xsl:apply-templates select="*|@*|text()"/>
     </xsl:element>
   </xsl:template>
 
   <xsl:template match="ns1:location">
-    <xsl:element name="ns2:hasLocation">
+    <xsl:element name="ns0:hasLocation">
       <xsl:apply-templates select="*|@*|text()"/>
     </xsl:element>
   </xsl:template>
 
   <xsl:template match="ns1:isbn">
-    <xsl:element name="ns2:hasISBN">
+    <xsl:element name="ns0:hasISBN">
       <xsl:apply-templates select="*|@*|text()"/>
     </xsl:element>
   </xsl:template>
 
   <xsl:template match="ns1:copyright">
-    <xsl:element name="ns2:hasCopyright">
+    <xsl:element name="ns0:hasCopyright">
       <xsl:apply-templates select="*|@*|text()"/>
     </xsl:element>
   </xsl:template>
 
   <xsl:template match="ns1:TechReport">
-    <xsl:element name="ns2:Techreport">
+    <xsl:element name="ns0:Techreport">
       <xsl:apply-templates select="*|@*|text()"/>
     </xsl:element>
   </xsl:template>
 
   <xsl:template match="ns1:contents">
-    <xsl:element name="ns2:hasContents">
+    <xsl:element name="ns0:hasContents">
       <xsl:apply-templates select="*|@*|text()"/>
     </xsl:element>
   </xsl:template>
 
   <xsl:template match="ns1:series">
-    <xsl:element name="ns2:hasSeries">
+    <xsl:element name="ns0:hasSeries">
       <xsl:apply-templates select="*|@*|text()"/>
     </xsl:element>
   </xsl:template>
 
   <xsl:template match="ns1:annote">
-    <xsl:element name="ns2:hasNote">
+    <xsl:element name="ns0:hasNote">
       <xsl:apply-templates select="*|@*|text()"/>
     </xsl:element>
   </xsl:template>
 
   <xsl:template match="ns1:key">
-    <xsl:element name="ns2:hasKey">
+    <xsl:element name="ns0:hasKey">
       <xsl:apply-templates select="*|@*|text()"/>
     </xsl:element>
   </xsl:template>
 
   <xsl:template match="ns1:date">
-    <xsl:element name="ns2:pageChapterData">
+    <xsl:element name="ns0:pageChapterData">
       <xsl:apply-templates select="*|@*|text()"/>
     </xsl:element>
   </xsl:template>
 
   <xsl:template match="ns1:lccn">
-    <xsl:element name="ns2:hasLCCN">
+    <xsl:element name="ns0:hasLCCN">
       <xsl:apply-templates select="*|@*|text()"/>
     </xsl:element>
   </xsl:template>
 
   <xsl:template match="ns1:Published">
-    <xsl:element name="ns2:Unpublished">
+    <xsl:element name="ns0:Unpublished">
       <xsl:apply-templates select="*|@*|text()"/>
     </xsl:element>
   </xsl:template>
 
   <xsl:template match="ns1:Institution">
-    <xsl:element name="ns2:Incollection">
+    <xsl:element name="ns0:Incollection">
       <xsl:apply-templates select="*|@*|text()"/>
     </xsl:element>
   </xsl:template>
 
   <xsl:template match="ns1:MastersThesis">
-    <xsl:element name="ns2:Mastersthesis">
+    <xsl:element name="ns0:Mastersthesis">
       <xsl:apply-templates select="*|@*|text()"/>
     </xsl:element>
   </xsl:template>
 
   <xsl:template match="ns1:Entry">
-    <xsl:element name="ns2:Entry">
+    <xsl:element name="ns0:Entry">
       <xsl:apply-templates select="*|@*|text()"/>
     </xsl:element>
   </xsl:template>
 
   <xsl:template match="ns1:price">
-    <xsl:element name="ns2:hasPrice">
+    <xsl:element name="ns0:hasPrice">
       <xsl:apply-templates select="*|@*|text()"/>
     </xsl:element>
   </xsl:template>
 
   <xsl:template match="ns1:Publisher">
-    <xsl:element name="ns2:Unpublished">
+    <xsl:element name="ns0:Unpublished">
       <xsl:apply-templates select="*|@*|text()"/>
     </xsl:element>
   </xsl:template>
 
   <xsl:template match="ns1:edition">
-    <xsl:element name="ns2:hasEdition">
+    <xsl:element name="ns0:hasEdition">
       <xsl:apply-templates select="*|@*|text()"/>
     </xsl:element>
   </xsl:template>
 
   <xsl:template match="ns1:size">
-    <xsl:element name="ns2:hasSize">
+    <xsl:element name="ns0:hasSize">
       <xsl:apply-templates select="*|@*|text()"/>
     </xsl:element>
   </xsl:template>
 
   <xsl:template match="ns1:year">
-    <xsl:element name="ns2:hasYear">
+    <xsl:element name="ns0:hasYear">
       <xsl:apply-templates select="*|@*|text()"/>
     </xsl:element>
   </xsl:template>
 
   <xsl:template match="ns1:month">
-    <xsl:element name="ns2:hasMonth">
+    <xsl:element name="ns0:hasMonth">
       <xsl:apply-templates select="*|@*|text()"/>
     </xsl:element>
   </xsl:template>
 
   <xsl:template match="ns1:Unpublished">
-    <xsl:element name="ns2:Unpublished">
+    <xsl:element name="ns0:Unpublished">
       <xsl:apply-templates select="*|@*|text()"/>
     </xsl:element>
   </xsl:template>
 
   <xsl:template match="ns1:Proceedings">
-    <xsl:element name="ns2:Proceedings">
+    <xsl:element name="ns0:Proceedings">
       <xsl:apply-templates select="*|@*|text()"/>
     </xsl:element>
   </xsl:template>
 
   <xsl:template match="ns1:institution">
-    <xsl:element name="ns2:hasInstitution">
+    <xsl:element name="ns0:hasInstitution">
       <xsl:apply-templates select="*|@*|text()"/>
     </xsl:element>
   </xsl:template>
 
   <xsl:template match="ns1:humanCreator">
-    <xsl:element name="ns2:humanCreator">
+    <xsl:element name="ns0:humanCreator">
       <xsl:apply-templates select="*|@*|text()"/>
     </xsl:element>
   </xsl:template>
 
   <xsl:template match="ns1:Techreport">
-    <xsl:element name="ns2:Techreport">
+    <xsl:element name="ns0:Techreport">
       <xsl:apply-templates select="*|@*|text()"/>
     </xsl:element>
   </xsl:template>
 
   <xsl:template match="ns1:volume">
-    <xsl:element name="ns2:hasVolume">
+    <xsl:element name="ns0:hasVolume">
       <xsl:apply-templates select="*|@*|text()"/>
     </xsl:element>
   </xsl:template>
 
   <xsl:template match="ns1:affiliation">
-    <xsl:element name="ns2:hasAffiliation">
+    <xsl:element name="ns0:hasAffiliation">
       <xsl:apply-templates select="*|@*|text()"/>
     </xsl:element>
   </xsl:template>
 
   <xsl:template match="ns1:issn">
-    <xsl:element name="ns2:hasISSN">
+    <xsl:element name="ns0:hasISSN">
       <xsl:apply-templates select="*|@*|text()"/>
     </xsl:element>
   </xsl:template>
 
   <xsl:template match="ns1:short">
-    <xsl:element name="ns2:hasAuthor">
+    <xsl:element name="ns0:hasAuthor">
       <xsl:apply-templates select="*|@*|text()"/>
     </xsl:element>
   </xsl:template>
 
   <xsl:template match="ns1:language">
-    <xsl:element name="ns2:hasLanguage">
+    <xsl:element name="ns0:hasLanguage">
       <xsl:apply-templates select="*|@*|text()"/>
     </xsl:element>
   </xsl:template>
 
   <xsl:template match="ns1:Article">
-    <xsl:element name="ns2:Article">
+    <xsl:element name="ns0:Article">
       <xsl:apply-templates select="*|@*|text()"/>
     </xsl:element>
   </xsl:template>
 
   <xsl:template match="ns1:url">
-    <xsl:element name="ns2:hasURL">
+    <xsl:element name="ns0:hasURL">
       <xsl:apply-templates select="*|@*|text()"/>
     </xsl:element>
   </xsl:template>
 
   <xsl:template match="ns1:author">
-    <xsl:element name="ns2:hasAuthor">
+    <xsl:element name="ns0:hasAuthor">
       <xsl:apply-templates select="*|@*|text()"/>
     </xsl:element>
   </xsl:template>
 
   <xsl:template match="ns1:BookPart">
-    <xsl:element name="ns2:Book">
+    <xsl:element name="ns0:Book">
       <xsl:apply-templates select="*|@*|text()"/>
     </xsl:element>
   </xsl:template>
 
   <xsl:template match="ns1:note">
-    <xsl:element name="ns2:hasNote">
+    <xsl:element name="ns0:hasNote">
       <xsl:apply-templates select="*|@*|text()"/>
     </xsl:element>
   </xsl:template>
 
   <xsl:template match="ns1:howPublished">
-    <xsl:element name="ns2:howPublished">
+    <xsl:element name="ns0:howPublished">
       <xsl:apply-templates select="*|@*|text()"/>
     </xsl:element>
   </xsl:template>
 
   <xsl:template match="ns1:publisher">
-    <xsl:element name="ns2:hasPublisher">
+    <xsl:element name="ns0:hasPublisher">
       <xsl:apply-templates select="*|@*|text()"/>
     </xsl:element>
   </xsl:template>
 
   <xsl:template match="ns1:school">
-    <xsl:element name="ns2:hasSchool">
+    <xsl:element name="ns0:hasSchool">
       <xsl:apply-templates select="*|@*|text()"/>
     </xsl:element>
   </xsl:template>
 
   <xsl:template match="ns1:Thesis">
-    <xsl:element name="ns2:Phdthesis">
+    <xsl:element name="ns0:Phdthesis">
       <xsl:apply-templates select="*|@*|text()"/>
     </xsl:element>
   </xsl:template>
 
   <xsl:template match="ns1:InCollection">
-    <xsl:element name="ns2:Incollection">
+    <xsl:element name="ns0:Incollection">
       <xsl:apply-templates select="*|@*|text()"/>
     </xsl:element>
   </xsl:template>
 
   <xsl:template match="ns1:endPage">
-    <xsl:element name="ns2:hasPages">
+    <xsl:element name="ns0:hasPages">
       <xsl:apply-templates select="*|@*|text()"/>
     </xsl:element>
   </xsl:template>
 
   <xsl:template match="ns1:startPage">
-    <xsl:element name="ns2:hasPages">
+    <xsl:element name="ns0:hasPages">
       <xsl:apply-templates select="*|@*|text()"/>
     </xsl:element>
   </xsl:template>
 
   <xsl:template match="ns1:organization">
-    <xsl:element name="ns2:hasOrganization">
+    <xsl:element name="ns0:hasOrganization">
       <xsl:apply-templates select="*|@*|text()"/>
     </xsl:element>
   </xsl:template>
 
   <xsl:template match="ns1:inJournal">
-    <xsl:element name="ns2:hasJournal">
+    <xsl:element name="ns0:hasJournal">
       <xsl:apply-templates select="*|@*|text()"/>
     </xsl:element>
   </xsl:template>
 
   <xsl:template match="ns1:abstract">
-    <xsl:element name="ns2:hasAbstract">
+    <xsl:element name="ns0:hasAbstract">
       <xsl:apply-templates select="*|@*|text()"/>
     </xsl:element>
   </xsl:template>
 
   <xsl:template match="ns1:PhdThesis">
-    <xsl:element name="ns2:Phdthesis">
+    <xsl:element name="ns0:Phdthesis">
       <xsl:apply-templates select="*|@*|text()"/>
     </xsl:element>
   </xsl:template>
 
   <xsl:template match="ns1:Book">
-    <xsl:element name="ns2:Book">
+    <xsl:element name="ns0:Book">
       <xsl:apply-templates select="*|@*|text()"/>
     </xsl:element>
   </xsl:template>
 
   <xsl:template match="ns1:title">
-    <xsl:element name="ns2:hasTitle">
+    <xsl:element name="ns0:hasTitle">
       <xsl:apply-templates select="*|@*|text()"/>
     </xsl:element>
   </xsl:template>
 
   <xsl:template match="ns1:numberOrVolume">
-    <xsl:element name="ns2:hasNumber">
+    <xsl:element name="ns0:hasNumber">
       <xsl:apply-templates select="*|@*|text()"/>
     </xsl:element>
   </xsl:template>
 
   <xsl:template match="ns1:pages">
-    <xsl:element name="ns2:hasPages">
+    <xsl:element name="ns0:hasPages">
       <xsl:apply-templates select="*|@*|text()"/>
     </xsl:element>
   </xsl:template>
 
   <xsl:template match="ns1:pagesOrChapter">
-    <xsl:element name="ns2:pageChapterData">
+    <xsl:element name="ns0:pageChapterData">
       <xsl:apply-templates select="*|@*|text()"/>
     </xsl:element>
   </xsl:template>
 
   <xsl:template match="ns1:Manual">
-    <xsl:element name="ns2:Manual">
+    <xsl:element name="ns0:Manual">
       <xsl:apply-templates select="*|@*|text()"/>
     </xsl:element>
   </xsl:template>
 
   <xsl:template match="ns1:mrNumber">
-    <xsl:element name="ns2:hasMrnumber">
+    <xsl:element name="ns0:hasMrnumber">
       <xsl:apply-templates select="*|@*|text()"/>
     </xsl:element>
   </xsl:template>
 
   <xsl:template match="ns1:chapter">
-    <xsl:element name="ns2:hasChapter">
+    <xsl:element name="ns0:hasChapter">
       <xsl:apply-templates select="*|@*|text()"/>
     </xsl:element>
   </xsl:template>
diff --git a/html/tutorial/results/data.xml b/html/tutorial/results/data.xml
index 4ea9908df7699e3da267ffe601de9133257d9819..cefcf93bc7ba43452835c64bf53dbc340252f7dd 100644
--- a/html/tutorial/results/data.xml
+++ b/html/tutorial/results/data.xml
@@ -8,21 +8,21 @@
     <dc:description>Bibliographic entries</dc:description>
   </owl:Ontology>
 
-  <ns2:Techreport xmlns:ns2="http://alignapi.gforge.inria.fr/tutorial/edu.mit.visus.bibtex.owl#" rdf:about="#a475526642">
-    <ns2:hasAuthor>
+  <ns0:Techreport xmlns:ns0="http://alignapi.gforge.inria.fr/tutorial/edu.mit.visus.bibtex.owl#" rdf:about="#a475526642">
+    <ns0:hasAuthor>
       <PersonList>
 	<rdf:first rdf:resource="http://exmo.inrialpes.fr/people/euzenat/euzenatj.rdf#je"/>
-	<ns2:hasAddress rdf:resource="http://www.w3.org/1999/02/22-rdf-syntax-ns#nil"/>
+	<ns0:hasAddress rdf:resource="http://www.w3.org/1999/02/22-rdf-syntax-ns#nil"/>
       </PersonList>
-    </ns2:hasAuthor>
-    <ns2:hasInstitution rdf:resource="http://www.inria.fr"/>
-    <ns2:hasTitle>An API for ontology alignment</ns2:hasTitle>
-    <ns2:pageChapterData><Date><ns2:hasYear>1996</ns2:hasYear></Date></ns2:pageChapterData>
-    <ns2:hasCopyright>INRIA Rh&#xF4;ne-Alpes 2004-2006</ns2:hasCopyright>
-    <ns2:hasNumber>Unfilled</ns2:hasNumber>
-  </ns2:Techreport>
+    </ns0:hasAuthor>
+    <ns0:hasInstitution rdf:resource="http://www.inria.fr"/>
+    <ns0:hasTitle>An API for ontology alignment</ns0:hasTitle>
+    <ns0:pageChapterData><Date><ns0:hasYear>1996</ns0:hasYear></Date></ns0:pageChapterData>
+    <ns0:hasCopyright>INRIA Rh&#xF4;ne-Alpes 2004-2006</ns0:hasCopyright>
+    <ns0:hasNumber>Unfilled</ns0:hasNumber>
+  </ns0:Techreport>
 
-  <ns2:Incollection xmlns:ns2="http://alignapi.gforge.inria.fr/tutorial/edu.mit.visus.bibtex.owl#" rdf:ID="http://www.inria.fr"/>
+  <ns0:Incollection xmlns:ns0="http://alignapi.gforge.inria.fr/tutorial/edu.mit.visus.bibtex.owl#" rdf:ID="http://www.inria.fr"/>
 
   <Person rdf:ID="http://exmo.inrialpes.fr/people/euzenat/euzenatj.rdf#je"/>
 
diff --git a/html/tutorial/results/refalign.rdf b/html/tutorial/results/refalign.rdf
new file mode 100644
index 0000000000000000000000000000000000000000..52513b5e0eba02f9511a9d805d3b8dd86bf94d7e
--- /dev/null
+++ b/html/tutorial/results/refalign.rdf
@@ -0,0 +1,408 @@
+<?xml version='1.0' encoding='utf-8' standalone='no'?>
+<rdf:RDF xmlns='http://knowledgeweb.semanticweb.org/heterogeneity/alignment'
+         xml:base='http://knowledgeweb.semanticweb.org/heterogeneity/alignment'
+         xmlns:rdf='http://www.w3.org/1999/02/22-rdf-syntax-ns#'
+         xmlns:xsd='http://www.w3.org/2001/XMLSchema#'>
+<Alignment>
+  <xml>yes</xml>
+  <level>0</level>
+  <type>11</type>
+  <method>Manually generated</method>
+  <onto1>file://localhost/JAVA/alignapi/html/tutorial/myOnto.owl</onto1>
+  <onto2>file://localhost/JAVA/alignapi/html/tutorial/edu.mit.visus.bibtex.owl</onto2>
+  <uri1>http://alignapi.gforge.inria.fr/tutorial/myOnto.owl</uri1>
+  <uri2>http://alignapi.gforge.inria.fr/tutorial/edu.mit.visus.bibtex.owl</uri2>
+  <map>
+    <Cell>
+      <entity1 rdf:resource='http://alignapi.gforge.inria.fr/tutorial/myOnto.owl#InProceedings'/>
+      <entity2 rdf:resource='http://alignapi.gforge.inria.fr/tutorial/edu.mit.visus.bibtex.owl#Inproceedings'/>
+      <measure rdf:datatype='http://www.w3.org/2001/XMLSchema#float'>1.0</measure>
+      <relation>=</relation>
+    </Cell>
+  </map>
+  <map>
+    <Cell>
+      <entity1 rdf:resource='http://alignapi.gforge.inria.fr/tutorial/myOnto.owl#key'/>
+      <entity2 rdf:resource='http://alignapi.gforge.inria.fr/tutorial/edu.mit.visus.bibtex.owl#hasKey'/>
+      <measure rdf:datatype='http://www.w3.org/2001/XMLSchema#float'>1.0</measure>
+      <relation>=</relation>
+    </Cell>
+  </map>
+  <map>
+    <Cell>
+      <entity1 rdf:resource='http://alignapi.gforge.inria.fr/tutorial/myOnto.owl#Entry'/>
+      <entity2 rdf:resource='http://alignapi.gforge.inria.fr/tutorial/edu.mit.visus.bibtex.owl#Entry'/>
+      <measure rdf:datatype='http://www.w3.org/2001/XMLSchema#float'>1.0</measure>
+      <relation>=</relation>
+    </Cell>
+  </map>
+  <map>
+    <Cell>
+      <entity1 rdf:resource='http://alignapi.gforge.inria.fr/tutorial/myOnto.owl#contents'/>
+      <entity2 rdf:resource='http://alignapi.gforge.inria.fr/tutorial/edu.mit.visus.bibtex.owl#hasContents'/>
+      <measure rdf:datatype='http://www.w3.org/2001/XMLSchema#float'>1.0</measure>
+      <relation>=</relation>
+    </Cell>
+  </map>
+  <map>
+    <Cell>
+      <entity1 rdf:resource='http://alignapi.gforge.inria.fr/tutorial/myOnto.owl#lang'/>
+      <entity2 rdf:resource='http://alignapi.gforge.inria.fr/tutorial/edu.mit.visus.bibtex.owl#hasLanguage'/>
+      <measure rdf:datatype='http://www.w3.org/2001/XMLSchema#float'>1.0</measure>
+      <relation>=</relation>
+    </Cell>
+  </map>
+  <map>
+    <Cell>
+      <entity1 rdf:resource='http://alignapi.gforge.inria.fr/tutorial/myOnto.owl#keywords'/>
+      <entity2 rdf:resource='http://alignapi.gforge.inria.fr/tutorial/edu.mit.visus.bibtex.owl#hasKeywords'/>
+      <measure rdf:datatype='http://www.w3.org/2001/XMLSchema#float'>1.0</measure>
+      <relation>=</relation>
+    </Cell>
+  </map>
+  <map>
+    <Cell>
+      <entity1 rdf:resource='http://alignapi.gforge.inria.fr/tutorial/myOnto.owl#size'/>
+      <entity2 rdf:resource='http://alignapi.gforge.inria.fr/tutorial/edu.mit.visus.bibtex.owl#hasSize'/>
+      <measure rdf:datatype='http://www.w3.org/2001/XMLSchema#float'>1.0</measure>
+      <relation>=</relation>
+    </Cell>
+  </map>
+  <map>
+    <Cell>
+      <entity1 rdf:resource='http://alignapi.gforge.inria.fr/tutorial/myOnto.owl#type'/>
+      <entity2 rdf:resource='http://alignapi.gforge.inria.fr/tutorial/edu.mit.visus.bibtex.owl#hasType'/>
+      <measure rdf:datatype='http://www.w3.org/2001/XMLSchema#float'>1.0</measure>
+      <relation>=</relation>
+    </Cell>
+  </map>
+  <map>
+    <Cell>
+      <entity1 rdf:resource='http://alignapi.gforge.inria.fr/tutorial/myOnto.owl#howPublished'/>
+      <entity2 rdf:resource='http://alignapi.gforge.inria.fr/tutorial/edu.mit.visus.bibtex.owl#howPublished'/>
+      <measure rdf:datatype='http://www.w3.org/2001/XMLSchema#float'>1.0</measure>
+      <relation>=</relation>
+    </Cell>
+  </map>
+  <map>
+    <Cell>
+      <entity1 rdf:resource='http://alignapi.gforge.inria.fr/tutorial/myOnto.owl#volume'/>
+      <entity2 rdf:resource='http://alignapi.gforge.inria.fr/tutorial/edu.mit.visus.bibtex.owl#hasVolume'/>
+      <measure rdf:datatype='http://www.w3.org/2001/XMLSchema#float'>1.0</measure>
+      <relation>=</relation>
+    </Cell>
+  </map>
+  <map>
+    <Cell>
+      <entity1 rdf:resource='http://alignapi.gforge.inria.fr/tutorial/myOnto.owl#month'/>
+      <entity2 rdf:resource='http://alignapi.gforge.inria.fr/tutorial/edu.mit.visus.bibtex.owl#hasMonth'/>
+      <measure rdf:datatype='http://www.w3.org/2001/XMLSchema#float'>1.0</measure>
+      <relation>=</relation>
+    </Cell>
+  </map>
+  <map>
+    <Cell>
+      <entity1 rdf:resource='http://alignapi.gforge.inria.fr/tutorial/myOnto.owl#copyright'/>
+      <entity2 rdf:resource='http://alignapi.gforge.inria.fr/tutorial/edu.mit.visus.bibtex.owl#hasCopyright'/>
+      <measure rdf:datatype='http://www.w3.org/2001/XMLSchema#float'>1.0</measure>
+      <relation>=</relation>
+    </Cell>
+  </map>
+  <map>
+    <Cell>
+      <entity1 rdf:resource='http://alignapi.gforge.inria.fr/tutorial/myOnto.owl#chapter'/>
+      <entity2 rdf:resource='http://alignapi.gforge.inria.fr/tutorial/edu.mit.visus.bibtex.owl#hasChapter'/>
+      <measure rdf:datatype='http://www.w3.org/2001/XMLSchema#float'>1.0</measure>
+      <relation>=</relation>
+    </Cell>
+  </map>
+  <map>
+    <Cell>
+      <entity1 rdf:resource='http://alignapi.gforge.inria.fr/tutorial/myOnto.owl#InBook'/>
+      <entity2 rdf:resource='http://alignapi.gforge.inria.fr/tutorial/edu.mit.visus.bibtex.owl#Inbook'/>
+      <measure rdf:datatype='http://www.w3.org/2001/XMLSchema#float'>1.0</measure>
+      <relation>=</relation>
+    </Cell>
+  </map>
+  <map>
+    <Cell>
+      <entity1 rdf:resource='http://alignapi.gforge.inria.fr/tutorial/myOnto.owl#editor'/>
+      <entity2 rdf:resource='http://alignapi.gforge.inria.fr/tutorial/edu.mit.visus.bibtex.owl#hasEditor'/>
+      <measure rdf:datatype='http://www.w3.org/2001/XMLSchema#float'>1.0</measure>
+      <relation>=</relation>
+    </Cell>
+  </map>
+  <map>
+    <Cell>
+      <entity1 rdf:resource='http://alignapi.gforge.inria.fr/tutorial/myOnto.owl#series'/>
+      <entity2 rdf:resource='http://alignapi.gforge.inria.fr/tutorial/edu.mit.visus.bibtex.owl#hasSeries'/>
+      <measure rdf:datatype='http://www.w3.org/2001/XMLSchema#float'>1.0</measure>
+      <relation>=</relation>
+    </Cell>
+  </map>
+  <map>
+    <Cell>
+      <entity1 rdf:resource='http://alignapi.gforge.inria.fr/tutorial/myOnto.owl#title'/>
+      <entity2 rdf:resource='http://alignapi.gforge.inria.fr/tutorial/edu.mit.visus.bibtex.owl#hasTitle'/>
+      <measure rdf:datatype='http://www.w3.org/2001/XMLSchema#float'>1.0</measure>
+      <relation>=</relation>
+    </Cell>
+  </map>
+  <map>
+    <Cell>
+      <entity1 rdf:resource='http://alignapi.gforge.inria.fr/tutorial/myOnto.owl#Booklet'/>
+      <entity2 rdf:resource='http://alignapi.gforge.inria.fr/tutorial/edu.mit.visus.bibtex.owl#Booklet'/>
+      <measure rdf:datatype='http://www.w3.org/2001/XMLSchema#float'>1.0</measure>
+      <relation>=</relation>
+    </Cell>
+  </map>
+  <map>
+    <Cell>
+      <entity1 rdf:resource='http://alignapi.gforge.inria.fr/tutorial/myOnto.owl#numberOrVolume'/>
+      <entity2 rdf:resource='http://alignapi.gforge.inria.fr/tutorial/edu.mit.visus.bibtex.owl#hasVolume'/>
+      <measure rdf:datatype='http://www.w3.org/2001/XMLSchema#float'>1.0</measure>
+      <relation>=</relation>
+    </Cell>
+  </map>
+  <map>
+    <Cell>
+      <entity1 rdf:resource='http://alignapi.gforge.inria.fr/tutorial/myOnto.owl#Unpublished'/>
+      <entity2 rdf:resource='http://alignapi.gforge.inria.fr/tutorial/edu.mit.visus.bibtex.owl#Unpublished'/>
+      <measure rdf:datatype='http://www.w3.org/2001/XMLSchema#float'>1.0</measure>
+      <relation>=</relation>
+    </Cell>
+  </map>
+  <map>
+    <Cell>
+      <entity1 rdf:resource='http://alignapi.gforge.inria.fr/tutorial/myOnto.owl#MastersThesis'/>
+      <entity2 rdf:resource='http://alignapi.gforge.inria.fr/tutorial/edu.mit.visus.bibtex.owl#Mastersthesis'/>
+      <measure rdf:datatype='http://www.w3.org/2001/XMLSchema#float'>0.9230769230769231</measure>
+      <relation>=</relation>
+    </Cell>
+  </map>
+  <map>
+    <Cell>
+      <entity1 rdf:resource='http://alignapi.gforge.inria.fr/tutorial/myOnto.owl#inJournal'/>
+      <entity2 rdf:resource='http://alignapi.gforge.inria.fr/tutorial/edu.mit.visus.bibtex.owl#hasJournal'/>
+      <measure rdf:datatype='http://www.w3.org/2001/XMLSchema#float'>1.0</measure>
+      <relation>=</relation>
+    </Cell>
+  </map>
+  <!--map>
+    <Cell>
+      <entity1 rdf:resource='http://alignapi.gforge.inria.fr/tutorial/myOnto.owl#mrNumber'/>
+      <entity2 rdf:resource='http://alignapi.gforge.inria.fr/tutorial/edu.mit.visus.bibtex.owl#hasNumber'/>
+      <measure rdf:datatype='http://www.w3.org/2001/XMLSchema#float'>1.0</measure>
+      <relation>=</relation>
+    </Cell>
+  </map-->
+  <map>
+    <Cell>
+      <entity1 rdf:resource='http://alignapi.gforge.inria.fr/tutorial/myOnto.owl#pages'/>
+      <entity2 rdf:resource='http://alignapi.gforge.inria.fr/tutorial/edu.mit.visus.bibtex.owl#hasPages'/>
+      <measure rdf:datatype='http://www.w3.org/2001/XMLSchema#float'>1.0</measure>
+      <relation>=</relation>
+    </Cell>
+  </map>
+  <map>
+    <Cell>
+      <entity1 rdf:resource='http://alignapi.gforge.inria.fr/tutorial/myOnto.owl#edition'/>
+      <entity2 rdf:resource='http://alignapi.gforge.inria.fr/tutorial/edu.mit.visus.bibtex.owl#hasEdition'/>
+      <measure rdf:datatype='http://www.w3.org/2001/XMLSchema#float'>1.0</measure>
+      <relation>=</relation>
+    </Cell>
+  </map>
+  <map>
+    <Cell>
+      <entity1 rdf:resource='http://alignapi.gforge.inria.fr/tutorial/myOnto.owl#affiliation'/>
+      <entity2 rdf:resource='http://alignapi.gforge.inria.fr/tutorial/edu.mit.visus.bibtex.owl#hasAffiliation'/>
+      <measure rdf:datatype='http://www.w3.org/2001/XMLSchema#float'>1.0</measure>
+      <relation>=</relation>
+    </Cell>
+  </map>
+  <map>
+    <Cell>
+      <entity1 rdf:resource='http://alignapi.gforge.inria.fr/tutorial/myOnto.owl#year'/>
+      <entity2 rdf:resource='http://alignapi.gforge.inria.fr/tutorial/edu.mit.visus.bibtex.owl#hasYear'/>
+      <measure rdf:datatype='http://www.w3.org/2001/XMLSchema#float'>1.0</measure>
+      <relation>=</relation>
+    </Cell>
+  </map>
+  <map>
+    <Cell>
+      <entity1 rdf:resource='http://alignapi.gforge.inria.fr/tutorial/myOnto.owl#organization'/>
+      <entity2 rdf:resource='http://alignapi.gforge.inria.fr/tutorial/edu.mit.visus.bibtex.owl#hasOrganization'/>
+      <measure rdf:datatype='http://www.w3.org/2001/XMLSchema#float'>1.0</measure>
+      <relation>=</relation>
+    </Cell>
+  </map>
+  <map>
+    <Cell>
+      <entity1 rdf:resource='http://alignapi.gforge.inria.fr/tutorial/myOnto.owl#school'/>
+      <entity2 rdf:resource='http://alignapi.gforge.inria.fr/tutorial/edu.mit.visus.bibtex.owl#hasSchool'/>
+      <measure rdf:datatype='http://www.w3.org/2001/XMLSchema#float'>1.0</measure>
+      <relation>=</relation>
+    </Cell>
+  </map>
+  <map>
+    <Cell>
+      <entity1 rdf:resource='http://alignapi.gforge.inria.fr/tutorial/myOnto.owl#publisher'/>
+      <entity2 rdf:resource='http://alignapi.gforge.inria.fr/tutorial/edu.mit.visus.bibtex.owl#hasPublisher'/>
+      <measure rdf:datatype='http://www.w3.org/2001/XMLSchema#float'>1.0</measure>
+      <relation>=</relation>
+    </Cell>
+  </map>
+  <map>
+    <Cell>
+      <entity1 rdf:resource='http://alignapi.gforge.inria.fr/tutorial/myOnto.owl#Misc'/>
+      <entity2 rdf:resource='http://alignapi.gforge.inria.fr/tutorial/edu.mit.visus.bibtex.owl#Misc'/>
+      <measure rdf:datatype='http://www.w3.org/2001/XMLSchema#float'>1.0</measure>
+      <relation>=</relation>
+    </Cell>
+  </map>
+  <map>
+    <Cell>
+      <entity1 rdf:resource='http://alignapi.gforge.inria.fr/tutorial/myOnto.owl#Techreport'/>
+      <entity2 rdf:resource='http://alignapi.gforge.inria.fr/tutorial/edu.mit.visus.bibtex.owl#Techreport'/>
+      <measure rdf:datatype='http://www.w3.org/2001/XMLSchema#float'>1.0</measure>
+      <relation>=</relation>
+    </Cell>
+  </map>
+  <map>
+    <Cell>
+      <entity1 rdf:resource='http://alignapi.gforge.inria.fr/tutorial/myOnto.owl#institution'/>
+      <entity2 rdf:resource='http://alignapi.gforge.inria.fr/tutorial/edu.mit.visus.bibtex.owl#hasInstitution'/>
+      <measure rdf:datatype='http://www.w3.org/2001/XMLSchema#float'>1.0</measure>
+      <relation>=</relation>
+    </Cell>
+  </map>
+  <map>
+    <Cell>
+      <entity1 rdf:resource='http://alignapi.gforge.inria.fr/tutorial/myOnto.owl#abstract'/>
+      <entity2 rdf:resource='http://alignapi.gforge.inria.fr/tutorial/edu.mit.visus.bibtex.owl#hasAbstract'/>
+      <measure rdf:datatype='http://www.w3.org/2001/XMLSchema#float'>1.0</measure>
+      <relation>=</relation>
+    </Cell>
+  </map>
+  <map>
+    <Cell>
+      <entity1 rdf:resource='http://alignapi.gforge.inria.fr/tutorial/myOnto.owl#location'/>
+      <entity2 rdf:resource='http://alignapi.gforge.inria.fr/tutorial/edu.mit.visus.bibtex.owl#hasLocation'/>
+      <measure rdf:datatype='http://www.w3.org/2001/XMLSchema#float'>1.0</measure>
+      <relation>=</relation>
+    </Cell>
+  </map>
+  <map>
+    <Cell>
+      <entity1 rdf:resource='http://alignapi.gforge.inria.fr/tutorial/myOnto.owl#Article'/>
+      <entity2 rdf:resource='http://alignapi.gforge.inria.fr/tutorial/edu.mit.visus.bibtex.owl#Article'/>
+      <measure rdf:datatype='http://www.w3.org/2001/XMLSchema#float'>1.0</measure>
+      <relation>=</relation>
+    </Cell>
+  </map>
+  <map>
+    <Cell>
+      <entity1 rdf:resource='http://alignapi.gforge.inria.fr/tutorial/myOnto.owl#price'/>
+      <entity2 rdf:resource='http://alignapi.gforge.inria.fr/tutorial/edu.mit.visus.bibtex.owl#hasPrice'/>
+      <measure rdf:datatype='http://www.w3.org/2001/XMLSchema#float'>1.0</measure>
+      <relation>=</relation>
+    </Cell>
+  </map>
+  <map>
+    <Cell>
+      <entity1 rdf:resource='http://alignapi.gforge.inria.fr/tutorial/myOnto.owl#Book'/>
+      <entity2 rdf:resource='http://alignapi.gforge.inria.fr/tutorial/edu.mit.visus.bibtex.owl#Book'/>
+      <measure rdf:datatype='http://www.w3.org/2001/XMLSchema#float'>1.0</measure>
+      <relation>=</relation>
+    </Cell>
+  </map>
+  <map>
+    <Cell>
+      <entity1 rdf:resource='http://alignapi.gforge.inria.fr/tutorial/myOnto.owl#PhdThesis'/>
+      <entity2 rdf:resource='http://alignapi.gforge.inria.fr/tutorial/edu.mit.visus.bibtex.owl#Phdthesis'/>
+      <measure rdf:datatype='http://www.w3.org/2001/XMLSchema#float'>1.0</measure>
+      <relation>=</relation>
+    </Cell>
+  </map>
+  <map>
+    <Cell>
+      <entity1 rdf:resource='http://alignapi.gforge.inria.fr/tutorial/myOnto.owl#Proceedings'/>
+      <entity2 rdf:resource='http://alignapi.gforge.inria.fr/tutorial/edu.mit.visus.bibtex.owl#Proceedings'/>
+      <measure rdf:datatype='http://www.w3.org/2001/XMLSchema#float'>1.0</measure>
+      <relation>=</relation>
+    </Cell>
+  </map>
+  <map>
+    <Cell>
+      <entity1 rdf:resource='http://alignapi.gforge.inria.fr/tutorial/myOnto.owl#number'/>
+      <entity2 rdf:resource='http://alignapi.gforge.inria.fr/tutorial/edu.mit.visus.bibtex.owl#hasNumber'/>
+      <measure rdf:datatype='http://www.w3.org/2001/XMLSchema#float'>1.0</measure>
+      <relation>=</relation>
+    </Cell>
+  </map>
+  <map>
+    <Cell>
+      <entity1 rdf:resource='http://alignapi.gforge.inria.fr/tutorial/myOnto.owl#TechReport'/>
+      <entity2 rdf:resource='http://alignapi.gforge.inria.fr/tutorial/edu.mit.visus.bibtex.owl#Techreport'/>
+      <measure rdf:datatype='http://www.w3.org/2001/XMLSchema#float'>1.0</measure>
+      <relation>=</relation>
+    </Cell>
+  </map>
+  <map>
+    <Cell>
+      <entity1 rdf:resource='http://alignapi.gforge.inria.fr/tutorial/myOnto.owl#InCollection'/>
+      <entity2 rdf:resource='http://alignapi.gforge.inria.fr/tutorial/edu.mit.visus.bibtex.owl#Incollection'/>
+      <measure rdf:datatype='http://www.w3.org/2001/XMLSchema#float'>1.0</measure>
+      <relation>=</relation>
+    </Cell>
+  </map>
+  <map>
+    <Cell>
+      <entity1 rdf:resource='http://alignapi.gforge.inria.fr/tutorial/myOnto.owl#author'/>
+      <entity2 rdf:resource='http://alignapi.gforge.inria.fr/tutorial/edu.mit.visus.bibtex.owl#hasAuthor'/>
+      <measure rdf:datatype='http://www.w3.org/2001/XMLSchema#float'>1.0</measure>
+      <relation>=</relation>
+    </Cell>
+  </map>
+  <map>
+    <Cell>
+      <entity1 rdf:resource='http://alignapi.gforge.inria.fr/tutorial/myOnto.owl#note'/>
+      <entity2 rdf:resource='http://alignapi.gforge.inria.fr/tutorial/edu.mit.visus.bibtex.owl#hasNote'/>
+      <measure rdf:datatype='http://www.w3.org/2001/XMLSchema#float'>1.0</measure>
+      <relation>=</relation>
+    </Cell>
+  </map>
+  <map>
+    <Cell>
+      <entity1 rdf:resource='http://alignapi.gforge.inria.fr/tutorial/myOnto.owl#humanCreator'/>
+      <entity2 rdf:resource='http://alignapi.gforge.inria.fr/tutorial/edu.mit.visus.bibtex.owl#humanCreator'/>
+      <measure rdf:datatype='http://www.w3.org/2001/XMLSchema#float'>1.0</measure>
+      <relation>=</relation>
+    </Cell>
+  </map>
+  <map>
+    <Cell>
+      <entity1 rdf:resource='http://alignapi.gforge.inria.fr/tutorial/myOnto.owl#pagesOrChapter'/>
+      <entity2 rdf:resource='http://alignapi.gforge.inria.fr/tutorial/edu.mit.visus.bibtex.owl#hasChapter'/>
+      <measure rdf:datatype='http://www.w3.org/2001/XMLSchema#float'>1.0</measure>
+      <relation>=</relation>
+    </Cell>
+  </map>
+  <map>
+    <Cell>
+      <entity1 rdf:resource='http://alignapi.gforge.inria.fr/tutorial/myOnto.owl#Manual'/>
+      <entity2 rdf:resource='http://alignapi.gforge.inria.fr/tutorial/edu.mit.visus.bibtex.owl#Manual'/>
+      <measure rdf:datatype='http://www.w3.org/2001/XMLSchema#float'>1.0</measure>
+      <relation>=</relation>
+    </Cell>
+  </map>
+  <map>
+    <Cell>
+      <entity1 rdf:resource='http://alignapi.gforge.inria.fr/tutorial/myOnto.owl#language'/>
+      <entity2 rdf:resource='http://alignapi.gforge.inria.fr/tutorial/edu.mit.visus.bibtex.owl#hasLanguage'/>
+      <measure rdf:datatype='http://www.w3.org/2001/XMLSchema#float'>1.0</measure>
+      <relation>=</relation>
+    </Cell>
+  </map>
+</Alignment>
+</rdf:RDF>
diff --git a/html/tutorial/script.sh b/html/tutorial/script.sh
new file mode 100644
index 0000000000000000000000000000000000000000..8af6d644ca1107c5875d0a5643286df32b9b29aa
--- /dev/null
+++ b/html/tutorial/script.sh
@@ -0,0 +1,61 @@
+#!/bin/csh
+
+#####################
+# Preparation
+
+#mkdir alignapi
+#cd alignapi
+#unzip align*.zip
+#java -jar lib/procalign.jar --help
+#cd html/tutorial
+setenv CWD `pwd`
+
+/bin/rm results/*
+
+#####################
+# Matching
+
+java -jar ../../lib/procalign.jar file://localhost$CWD/myOnto.owl file://localhost$CWD/edu.mit.visus.bibtex.owl
+java -jar ../../lib/procalign.jar file://localhost$CWD/myOnto.owl file://localhost$CWD/edu.mit.visus.bibtex.owl -o results/equal.rdf
+xsltproc ../form-align.xsl results/equal.rdf > results/equal.html
+java -jar ../../lib/procalign.jar -i fr.inrialpes.exmo.align.impl.method.StringDistAlignment -DstringFunction=levenshteinDistance file://localhost$CWD/myOnto.owl file://localhost$CWD/edu.mit.visus.bibtex.owl -o results/levenshtein.rdf
+xsltproc ../form-align.xsl results/levenshtein.rdf > results/levenshtein.html
+java -jar ../../lib/procalign.jar -i fr.inrialpes.exmo.align.impl.method.StringDistAlignment -DstringFunction=smoaDistance file://localhost$CWD/myOnto.owl file://localhost$CWD/edu.mit.visus.bibtex.owl -o results/SMOA.rdf
+xsltproc ../form-align.xsl results/SMOA.rdf > results/SMOA.html
+#java -jar ../../lib/alignwn.jar -i fr.inrialpes.exmo.align.ling.JWNLAlignment file://localhost$CWD/myOnto.owl file://localhost$CWD/edu.mit.visus.bibtex.owl -o results/jwnl.rdf
+#xsltproc ../form-align.xsl results/jwnl.rdf > results/jwnl.html
+
+#####################
+# Manipulating
+
+java -jar ../../lib/procalign.jar -i fr.inrialpes.exmo.align.impl.method.StringDistAlignment -DstringFunction=levenshteinDistance -t 0.33 file://localhost$CWD/myOnto.owl file://localhost$CWD/edu.mit.visus.bibtex.owl -o results/levenshtein33.rdf
+xsltproc ../form-align.xsl results/levenshtein33.rdf > results/levenshtein33.html
+java -jar ../../lib/procalign.jar -i fr.inrialpes.exmo.align.impl.method.StringDistAlignment -DstringFunction=smoaDistance -t 0.5 file://localhost$CWD/myOnto.owl file://localhost$CWD/edu.mit.visus.bibtex.owl -o results/SMOA5.rdf
+xsltproc ../form-align.xsl results/SMOA5.rdf > results/SMOA5.html
+java -cp ../../lib/procalign.jar fr.inrialpes.exmo.align.util.ParserPrinter -i results/SMOA5.rdf -o results/AOMS5.rdf
+xsltproc ../form-align.xsl results/AOMS5.rdf > results/AOMS5.html
+
+#####################
+# Outputing
+
+java -cp ../../lib/procalign.jar fr.inrialpes.exmo.align.util.ParserPrinter results/SMOA5.rdf -r fr.inrialpes.exmo.align.impl.renderer.OWLAxiomsRendererVisitor
+java -cp ../../lib/procalign.jar fr.inrialpes.exmo.align.util.ParserPrinter results/SMOA5.rdf -r fr.inrialpes.exmo.align.impl.renderer.SWRLRendererVisitor
+java -cp ../../lib/procalign.jar fr.inrialpes.exmo.align.util.ParserPrinter results/SMOA5.rdf -r fr.inrialpes.exmo.align.impl.renderer.XSLTRendererVisitor -o results/SMOA5.xsl
+xsltproc results/SMOA5.xsl data.xml > results/data.xml
+
+#####################
+# Evaluating
+
+xsltproc ../form-align.xsl refalign.rdf > results/refalign.html
+java -cp ../../lib/procalign.jar fr.inrialpes.exmo.align.util.EvalAlign -i fr.inrialpes.exmo.align.impl.eval.PRecEvaluator file://localhost$CWD/refalign.rdf file://localhost$CWD/results/equal.rdf
+java -cp ../../lib/procalign.jar fr.inrialpes.exmo.align.util.EvalAlign -i fr.inrialpes.exmo.align.impl.eval.PRecEvaluator file://localhost$CWD/refalign.rdf file://localhost$CWD/results/levenshtein33.rdf
+#java -jar ../../lib/Procalign.jar file://localhost$CWD/rdf/myOnto.owl file://localhost$CWD/rdf/edu.mit.visus.bibtex.owl -i fr.inrialpes.exmo.align.impl.method.StringDistAlignment -DstringFunction=levenshteinDistance -DprintMatrix=1 -o /dev/null > matrix.tex
+cp refalign.rdf results
+java -cp ../../lib/procalign.jar fr.inrialpes.exmo.align.util.GroupEval -r refalign.rdf -l "refalign,equal,SMOA,SMOA5,levenshtein,levenshtein33" -c prf -o results/eval.html
+
+#####################
+# Evaluating
+
+javac -classpath ../../lib/api.jar:../../lib/rdfparser.jar:../../lib/align.jar:../../lib/procalign.jar MyApp
+java -cp ../../lib/Procalign.jar MyApp file://localhost$CWD/rdf/myOnto.owl file://localhost$CWD/rdf/edu.mit.visus.bibtex.owl
+