Newer
Older
<title>Alignment API: Release notes</title>
<!--style type="text/css">@import url(style.css);</style-->
<link rel="stylesheet" type="text/css" href="base.css" />
<link rel="stylesheet" type="text/css" href="style.css" />
</head>
<body bgcolor="#ffffff">
<center><h1>Alignment API, release notes</h1></center>
<p style="font-size: 80%;"><span style="font-weight: bold;">Release numbers:</span> major release numbers are for majors
redesign that will modify the API and may lead you to
change your code; minor release numbers bring bug fixes and new
functionnalities but should not require change in existing code.</p>
<li>Implement ontology support database store (server)</li>
<li>Providing a <tt>DiffAlign( al1, al2 )</tt> operation and interface
(util)</li>
<li>Improve HTML interface layout and usability (server)</li>
<li>Implement database store for OMWG Language (server)</li>
<li>Implement metadata edition (server)</li>
<li>Implement correspondence selection (server)</li>
<li>Render alignments as module descriptions (impl)</li>
<li>Replace <tt>Parameters</tt> with Java <tt>Property</tt> (api/impl)[Version 4]</li>
<li>Implement <tt>Relation</tt> and <tt>Confidence</tt> interfaces (api/impl)[Version 4]</li>
<li>Implement extensive evaluation framework (impl)</li>
<li>Implement debug options with log4j</li>
<li>Use more for-each Java 1.5 construct</li>
</ul></p>
<h2>Current SVN trunk version</h2>
<!--h2>Version 3.5 (800+): xx/10/2008 - Accitrezza</h2-->
<li><span style="color: red;">Deprecated</span> <tt>Alignment.init(onto,onto,cache)</tt>
in favour of <tt>Alignment.init(onto,onto)</tt>, see below (api)</tt>
<li><tt>OntologyCache</tt> is now local to each <tt>OntologyFactory</tt>, it does not need to be manipulated from outside (onto)</li>
<li>Implementing <tt>owlapi10</tt> as <tt>HeavyLoadedAlignment</tt> (onto)</li>
<li>Corrected an error preventing DistanceAlignemnt to consider instances (impl)</li>
<li>Started to put copyright notices to INRIA instead of INRIA Rhône-Alpes (misc)</li>
<li>Reengineered parameter passing for web service interface (server)</li>
<li>Corrected an error transmitting the DBMS coordinates on the web (server)</li>
<li>Corrected a bug in <tt>SKOSRendererVisitor</tt> and <tt>XSLTRendererVisitor</tt> (impl)</li>
<li>Updated <tt>SKOSRendererVisitor</tt> to work with 2008 version of
SKOS, old version can be obtained by parameter <tt>pre2008</tt> (impl)</li>
<h2>Version 3.4 (815): 31/08/2008 - Barbare</h2>
<li>Implemented WSAlignment connecting to remote web service for
matching (server)</li>
<li><span style="color: red;">Deprecated</span> <tt>Cell.getObjectXAsURI()</tt>
in favour of <tt>Cell.getObjectXAsURI(Object ontology)</tt> (api)</tt>
<li>Upgraded NeOn plug-in for working with NeOn toolkit 1.1 (plugin)</li>
<li>Implemented OWL API 2 support [not shipped] (onto)</li>
<li>Added <tt>init( Parameters )</tt> arguments to visitors (api)</tt>
<li>Implemented <tt>embedded</tt> parameter allowing to avoid ?xml
declaration when embedded (renderer)</li>
<li>Added <tt>derivedFrom</tt> standard annotation and implemented it (impl)</li>
<li>Added <tt>method</tt> annotation for <tt>clone()</tt>
and <tt>inverse()</tt> (impl)</li>
<li>Added <tt>initAlignment(URIAlignment)</tt> to parser (parser)</li>
<li>Added <tt>parse(InputStream)</tt> to parser (parser)</li>
<li>Parser now ignore SOAP envelops (parser)</li>
<li>Implemented a better recovery in case of database connection loss (server)</li>
<li>Implemented cache flushing functions (server)</li>
<li>Provided better return forms in <tt>HTMLAServManager</tt> (server)</li>
<li>Catched <tt>init()</tt> errors in server (server)</li>
<li>Added indentation and namespaces in the Web service interface (server)</li>
<li>Implemented <a href="http://www.webcontent.fr">WebContent</a> plug-in (plugin)</li>
<li>Improved NeOn plug-in documentation (html)</li>
<li>Increased the size of relation id to 25 char (server)</li>
<li>Corrected <tt>MyAlign</tt> example which was not adapted to the
new onto structure (examples)</li>
<li>Corrected tutorial so that it works with new code (tutorial)</li>
<li>Corrected an error of the <tt>Cell.inverse()</tt> method (impl)</li>
<li>Corrected an error in storing alignments (server)</li>
<li>Corrected an error in the MANIFEST of the NeOn plug in (plugin)</li>
<li>Corrected an error that prevented the server to work on Windows (server)</li>
<p><ul compact="1">
<li>Suppressed language dependent (OWLAPI) alignments (impl)</li>
<li><a href="up2to3.html" style="color:red;">Deprecated</a>
<tt>OWLAPIAlignment</tt> to be replaced by <tt>ObjectAlignment</tt></li>
<li>Reimplemented the whole API in function of the onto package (impl)</li>
<li>Added an abstract ontology package allowing to change API (onto)</li>
<li>Added Jena 2.5 ontology plug-in (onto)</li>
<li>Changed HTML renderer to XHTML+RDFa (impl)</li>
<li>Made <tt>Alignment</tt> iterable<Cell> (api/impl)</li>
<li>Improved NeOn plug-in and upgraded to version 1.1 (plugin)</li>
<li>Corrected a bug in Web service when the content was XML (server)</li>
<li>Corrected a bug when loading an alignment with id (server)</li>
<li>Corrected a bug in AlignmentParser that overlooked formalism URI (parser)</li>
<li>Passed to Java 1.5 generics [incl. API modif] (dev/api)</li>
<li>Added first unit tests (TestNG) (dev)</li>
<li>Passed all code through lint (dev)</li>
<li>Corrected link to documentation (doc)</li>
</ul></p>
<h2>Version 3.2 (666): 29/02/2008 - Blejsko jezero</h2>
<li>Connection to Oyster directory (server)</li>
<li>Added the opportunity to run matchers asynchronously (server)</li>
<li>Made sure that http server is launched when wsdl option is chosen
<li>Moved NeOn toolkit plugin in the plugins/neon (plugin)</li>
<li>Cleaned-up working NeOn plug-in (plugin)</li>
<li>Introduced abstract directories (server)</li>
<li>Improved the WordNet interface by introducing version. 3.0 is default (ling)</li>
<li>Reinstated the possibility to use the old namespace in the parser (parser)</li>
<li>Corrected a bug that prevented to store alignments in Web service
<li>Passed command line parameters to <tt>align()</tt> (server)</li>
<li>Created an Annotation class for storing static strings (impl)</li>
<li>Enriched Ontology objects (impl)</li>
<li>Progressed in the implementation of alignment composition (impl)</li>
<li>MANIFEST generation in buildfile (distrib)</li>
<li>Improved version number management</li>
<li>Javadoc generation flawless in buildfile (distrib)</li>
<li>Revised reference manual (doc)</li>
<p><span style="color: red;">BEWARE:</span>
For better conforming with RDF practice, we have
<ul compact="1">
<li>Changed the Alignment namespace by adding a '#' at its end (format).</li>
<li>Modified the extension mechanism so that getExtension and
setExtension take a namespace URI as first argument (api).</li>
<li>Modified the service database extension format for recording this
</ul></p>
<p>
Other improvements include:
<ul compact="1">
<li>Implement level 2OMWG alignments by using OMWG Mapping API (impl)</li>
<li>Integrated first <a href="http://www.neon-project.org">NeOn</a> toolkit plugin (plugin)</li>
<li>Added a <tt>parseString( String )</tt> method
in <tt>AlignmentParser</tt> (parser)</li>
<li>Implemented parsing of relations named by class name (parser)</li>
<li>Added more ontology information in format, changed the
implementation of ontology descriptions (format/parser/impl)</li>
<li>Modified the Alignement namespace by adding a '#'(format)</li>
<li>Separated namespace from pName in extension keys</li>
<li>Added Web Service Alignment server profile (server)</li>
<li>Multithreaded matching in Services (server)</li>
<li>Got rid of the property file for wordnet (ling)</li>
<li>In Server/FIPA, suppressed generated files on <tt>close()</tt> (server)</li>
<li>Suppressed all printouts (Jade or Jetty logging) (server)</li>
<li>Added file logging option (server)</li>
<li>Added the inverse operation (server)</li>
<li>Completely rewritten autodetection of renderers and methods in server (server)</li>
<li>Modified interface of embedded methods</li>
<li>Added guarantee that results displayed by <tt>GroupEval</tt> be sorted
(thanks Vassilis Spiliopoulos) (util)</li>
<li>Added namespace support in BasicAlignment (impl)</li>
<li>Forced trailing slash in HTML menu URLs (server)</li>
<li>Added fetching alignments from URIs (server)</li>
<li>Changed for Jetty as an embedded HTTP server (server)</li>
<li>Implemented alignment upload (server)</li>
<li>Corrected an error on "force"-ing alignment in Server/HTML (was
<li>Corrected a bug concerning extension namespaces (impl)</li>
<li>Corrected a bug in the DistanceAlignment Hungarian method
extraction (impl)</li>
<li>Corrected bugs in relation writing/parsing (parser)</li>
<li>Corrected a bug in <tt>SubsDistanceAlignment</tt> when URI have no
fragments (method)</li>
<li>Improved web pages (reorganisation) (html)</li>
<li>Transferred the TODOs to gforge (html)</li>
<li>Updated tutorial sh and bat scripts, thanks to Angel Lopez Cima
(tutorial)</li>
<li>Added a server-based tutorial (tutorial)</li>
<p><span style="color: red;">BEWARE:</span>
The main modification in this version is more independence from the
OWL API which is not anymore compulsory. Consequently, the existing
implementation of matching methods with Alignment API should undergo
some modifications: <a href="up2to3.html">Here is how to do</a>
(this document has been updated to help migrating directly to
version 3.3 if necessary).</p>
<p>The Alignment API is now compiled in Java 1.5 (older versions
should still be able to run it).</p>
<li>Separated <tt>BasicAlignment</tt>
from <tt>OWLAPIAlignment</tt></li>
<li>Implemented <tt>URIAlignment</tt></li>
<li><tt>AlignmentParser</tt> returns an <tt>URIAlignment</tt>, for
obtaining an <tt>OWLAPIAlignment</tt>,
use <tt>OWLAPIAlignment.toOWLAPIAlignemnent(URIAlignment)</tt>.</li>
<li>Introduced an abstract notion of <tt>OntologyCache</tt> object in
place of the previous <tt>Hashtable</tt> (this is independent from
the OWL API)</li>
<li>Based all implemented methods on <tt>OWLAPIAlignment</tt></li>
<li>Implemented all renderer methods for <tt>URIAlignments</tt> (but
those requiring <tt>OWLAPIAlignment</tt>)</li>
<li>Adapted all util functions to the relevant methods</li>
<li>Added autodetection of renderers and methods in server</li>
<li>Added menu of available alignments when possibles</li>
<li>Added cut method in server</li>
<li>Revised server database structure, implemented automatic creation
of the database</li>
<li>Protected database insertion with safe-quoting function</li>
<li>Suppressed all useless import and imprecise catch</li>
<li>Suppressed "localhost" from local URL in README, tutorial and
documentation</li>
<li>Reorganised the root directory (renamed samples into examples,
deleted rdf and aligns);</li>
<li>Redefined the example suite in README.TXT;</li>
<li><tt>PRecEvaluator</tt> now counts as false in
precision and recall, cells which previously were not acounted
because they raised an exception. This is because, alignments are
judged based on URI and not OWLAPI entities anymore.</li>
<li>Added Alignment server</li>
<li>Added HTML Alignment server profile</li>
<li>Added new output of algorithms strength in OAEI (GroupOutput)</li>
<li>Suppressed outdated "tutorial" from repository (see html/tutorial)</li>
<li>Corrected Cell id rendering/parse in RDF/XML (rdf:about)</li>
<li>Improved Precision/recall graph rendering in LaTeX</li>
<li>Improved Weighted harmonic means computation in GroupEval</li>
<h2>Version 2.4 (302): 10/07/2006 - Cercedilla noches</h2>
<p><ul compact="1">
<li>Added a <a href="tutorial">tutorial</a> in the html pages.</li>
<li>Integrated first implementation of HTTP Alignment Server</li>
<li>Slightly changed GroupAlign for accomodating "DOS-based" C:</li>
<li>Made Alignment an extension of Cloneable</li>
<li>Put more conformity to the actual practice of DTD</li>
<li>Corrected output format of some evaluators</li>
<li>Corrected XSLTRenderer for working with RDF/XML output</li>
<li>Corrected ParserPrinter so that inverse() be recorded</li>
<li>Suppressed a printout in MatrixMeasure</li>
</ul></p>
<li>Added <tt>HTMLRendererVisitor</tt></li>
<li><tt>ProcAlign</tt> and <tt>GroupAlign</tt> automatically store "time" tag;</li>
<li><tt>StringDistAlignment</tt> and <tt>RDFRenderer</tt> protect the instances without URIs;</li>
<li><tt>GroupAlign</tt> default matcher becomes <tt>StringDistAlignment</tt>.</li>
<h2>Version 2.2 (263): 05/06/2006 - Onyeari's version a.k.a. may GForge be with you</h2>
<p>Upgraded to OWL-API 06-04-12 (1.4.3)<br />
<span style="color: red;"></span> No problem encountered.
</p>
<p>New version featuring:
<ul compact="1">
<li>Moved sources to gforge.inria.fr</li>
<li>Moved web site to alignapi.gforge.inria.fr</li>
<li>Updated documentation to reflect new source location</li>
<li>Revisited the release target of the build file for svn compatibility</li>
<li>Added service directory, alignsvc.jar and QueryMediator class</li>
<li>Reengineered StringDistances (only return normalized values) and
StringDistNameAlignment (replaces all the others). This fully
implement individual alignment;</li>
<li>Added similarity matrix printer (-DprintMatrix=1)</li>
<li>Added Hamming, N-gramms, Needleman-Wunch distance, Jaro and
Jaro-Winckler measures on strings</li>
<li>Added -r option for changing reference name in GroupEval</li>
<li>Corrected bug in SymMeanEvaluator</li>
<li>Corrected cut behavior (did not cut the last item, best did not work)</li>
<li>GenPlot generates directly gnuplot output and LaTeX/PGF inclusion.</li>
<p>New version featuring:
<ul compact="1">
<li>Fixed SEKT renderer problem;</li>
<li>Further fixed ingest and addAlignCell methods that were not 1-1
ready;</li>
<li>Fixed unicity problem in cell sets;</li>
<li>Reintroduced hash indexing by objects in BasicAlignment;</li>
<li>Added PRExtEvaluator implementing Ehrig/Euzenat extended precision
and recall;</li>
<li>Added CERTH string comparison method;</li>
<li>Added SKOSRendererVisitor;</li>
<li>Corrected OWL/RDF mistakes in some example files;</li>
<li>Corrected mistakes in align.owl and align.rdfs (thanks to Antoine Isaac);</li>
<h2>Version 2: 1/10/2005 - Raphael's version a.k.a. AC385 version</h2>
<p><span style="color: red;">BEWARE:</span> <tt>Alignment</tt> methods <tt>getAlignCell1</tt>, <tt>getAlignCell2</tt>, <tt>getAlignedObject1</tt>, <tt>getAlignedObject2</tt>, <tt>getStrength1</tt>, <tt>getStrength2</tt>, <tt>getRelation1</tt>
Jérôme Euzenat
committed
and <tt>getRelation2</tt> deprecated (implementation is still
provided however).
</p>
<li>Fixed all implementation that assume 1-1 alignments;</li>
<li>Deprecated accessor from the Alignment to the cell of an object;</li>
<li>Implemented the deprecated with a compile-time tag;</li>
<li>Implemented the Hungarian method for maximal pairing in building 1-1 alignments;</li>
<li>Added equals() method to Cell and Relation;</li>
<li>Added Precision-recall graph generators (GenPlot,PRGraphEvaluator);</li>
<li>Computation of aggregated precision and recall rather than average (GroupEval);</li>
<li>Added options for avoiding the alignment on some namespaces;</li>
<li>Added timing in Procalign and Groupalign;</li>
<li>Added extension mechnism for alignments (any extra-annotation stored).</li>
<p>New version featuring:
<ul compact="1">
<li>Many new parameters on GroupAlign (target/source/prefix) for
accomodating new test sets</li>
<li>Added freeing of ontology from memory between tests in GroupAlign</li>
</ul></p>
<span style="color: red;">BEWARE:</span> if you experience problems
recompiling after upgrading to this version of the OWL-API, this is
because it requires and additional method:
<tt>owlFullConstruct(int code, String message, Object o)</tt> in the
<tt>OWLRDFErrorHandler</tt> (see Procalign.java for the fix).
</p>
<p>Compatible with Java 1.5</p>
<p>New version featuring:
<li>Full implementation of parameters (reader included)</li>
<li>Separated the API from its implementation (align/procalign)</li>
<li>Separated the WordNet from the implementation (alignwn)</li>
<li>Corrected XML header of some examples (necessary for Java 1.5)</li>
<li>Fixed usability of Wordnet (on Mac OS X)</li>
<li>Added a (necessary) SubsumedRelation!</li>
<li>Added a sample embedding of main functions</li>
<li>Added three replicas of align(A,p) -> align(), align(A) and align(p)</li>
<li>Added SEKTMapping renderer</li>
<li>Added method and semantics tags to format</li>
<li>Added -p parameter for reading parameter file on most util classes</li>
<li>Added alignment method name output in the output format</li>
<li>Implemented GroupAlign allowing to batch-align several ontologies</li>
<li>Started reengineering matrix-based distance alignments</li>
<h2>Version 1.2: 23/11/2004 - ISWC suggestions and improvements</h2>
<p>New version featuring:
<ul compact="1">
<li>Added multiple cut implementation (hard/perc/prop/best...)</li>
<li>Added COWL renderer</li>
<li>Added warning about the need of log4j and getopts</li>
<li>Forced the RDFRenderer to generate UTF-8 (the parser does only accept UTF-8 in element names). All renderers take PrintWriters as arguments.</li>
<li>Fully implemented the parser and the printer so that onto tags contains file info and uri tags contain URI info.</li>
</ul></p>
<li>Fixed the format output and parsing to true RDF</li>
<li>Implemented GroupEval</li>
<li>Added WordNet method</li>
<li>Fixed two bugs in methods ()</li>
<li>Divided impl directory into method/rendered...</li>
<li>Implemented the inverse method</li>
<li>Added RDFS Format</li>
<li>Added an "id" to each cell (in API, Renderer and Parser);</li>
<li>Provided an XSLT stylesheet for alignments;</li>
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
<h2>April 19th, 2004</h2>
<p>New version featuring:
<ul compact="1">
<li>Corrected the problem of putting directly distances into strength
({get/set}Measure{1/2} are now called Strength,
new class DistanceAlignment which takes care of converting distances into strength);</li>
<li>Implemented effectively SymMeanEvaluator with a dispatch per elements;</li>
<li>Added correct 1:1 tags to all implemented OWL alignments</li>
<li>Used Object in API: no OWL in the format (all API methods which
returned OWL... now returns Objects, dynamic typecheckking of the
basic methods: maybe not the best idea)</li>
<li>Implemented parameters (align() and eval() take an additionnal
Parameters parameter, new Parameters interface and
BasicParameters class);</li>
<li>Corrected the visitor for the Renderer (now robust to subclassing);</li>
<li>Built a renderer for RDF and use it
(suppression of the write method in Cell and Alignment,
Procalign uses the same code for rendering);</li>
<li>Added a StringDistance class providing substring and editstriung distances;</li>
<li>Reviewed all catch with a printStackTraces (parser still unsatisfactory);</li>
<li>Cleaned-up traces;</li>
<li>Provided a full-fledged example illustrated with a paper;</li>
<li>Corrected StrucSubsDistNameAlignment;</li>
<li>Changed name: Evaluator.evaluate() --> Evaluator.eval();</li>
</ul>
<p>This uses the 090304 (1.2.0) version of the OWL API.</p>
<p>New version featuring:
<ul compact="1">
<li>Added the Evaluator interface and implementation (PRecEvaluator
and SymMeanEvaluator).</li>
<li>Added Exceptions</li>
<li>Added Renderer as visitors</li>
<li>Added a simple structural algorithm (StrucSubsDistNameAlignment).</li>
<li>Added a number of alignment based on substring distance;</li>
<li>Various improvements.</li>
</ul>
</p>
<h2>January 2004</h2>
<p>Put under CVS at Sophia-Antipolis</p>
<p>New version featuring:
<ul compact="1">
<li>Added a number of alignment implementations (EditDistAlignment);</li>
</ul>
</p>
<center>http://alignapi.gforge.inria.fr/relnotes.html</center>
<hr />
$Id$
</small>
</address>
</body>
</html>