/*******************************************************************************
* This file is part of the Coporate Semantic Web Project.
*
* This work has been partially supported by the ``InnoProfile-Corporate Semantic Web" project funded by the German Federal
* Ministry of Education and Research (BMBF) and the BMBF Innovation Initiative for the New German Laender - Entrepreneurial Regions.
*
* http://www.corporate-semantic-web.de/
*
*
* Freie Universitaet Berlin
* Copyright (c) 2007-2013
*
*
* Institut fuer Informatik
* Working Group Coporate Semantic Web
* Koenigin-Luise-Strasse 24-26
* 14195 Berlin
*
* http://www.mi.fu-berlin.de/en/inf/groups/ag-csw/
*
*
*
* This library 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 3 of the License, or (at your option) any later version.
* This library 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 library; if not, write to the Free Software Foundation,
* Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA or see <http://www.gnu.org/licenses/>
******************************************************************************/
package de.fuberlin.agcsw.svont.changedetection.smartcex;
import java.net.URI;
import org.apache.log4j.Logger;
import de.fuberlin.agcsw.svont.changedetection.CEXDiffAlgorithm;
import de.fuberlin.agcsw.svont.changedetection.DiffExecutor;
import de.fuberlin.agcsw.svont.changedetection.DiffResult;
/**
* This class implements a diff executor which runs the CEX diff algorithm in a
* smarter way than the {@link CEXDiffAlgorithm} executor. While the latter
* prunes the given ontologies until they comply to the OWL EL profile, this
* algorithm partitions the given ontologies into a set of EL-compliant axioms
* and another set of non-EL-compliant axioms respectively. Then the two sets of
* EL-compliant axioms are compared using the CEX diff algorithm, yielding a
* semantic changeset. Additionally, the two sets of non-EL-compliant axioms are
* compared, using the dumber but faster structural diff algorithm, yielding a
* structural changeset. Finally, the two changesets are merged, yielding a
* mixed semantic/structural diff.
*
* @author ralph
*
*/
public class SmartCEXAlgorithm implements DiffExecutor {
private final Logger log = Logger.getLogger(SmartCEXAlgorithm.class);
/**
*
*/
public SmartCEXAlgorithm() {
// TODO Auto-generated constructor stub
}
/**
* @see de.fuberlin.agcsw.svont.changedetection.DiffExecutor#executeDiff(java.net.URI,
* java.net.URI)
*/
@Override
public DiffResult executeDiff(URI baseOntologyFile, URI updateOntologyFile) throws Exception {
// TODO Auto-generated method stub
return null;
}
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
}
}