de.dfleischhacker.uni.thesis.semantic.pragmaticsemantic
Class PragmaticSemantic

java.lang.Object
  extended by de.dfleischhacker.uni.thesis.semantic.pragmaticsemantic.PragmaticSemantic
All Implemented Interfaces:
SemanticModule

public class PragmaticSemantic
extends java.lang.Object
implements SemanticModule

Implements the pragmatic semantic. The pragmatic semantic supports the following pairs of entities in a correspondence (C - concept, OP - objecttype property, DP - datatype property):

The supported relations are All other correspondences will result in an UnsupportedCorrespondenceException.


Constructor Summary
PragmaticSemantic(Ontology onto1, Ontology onto2)
          Initializes the pragmatic semantic module.
 
Method Summary
 ClosureResult getClosure(Alignment align)
          Returns the closure of the given alignment
 void setDeleteABox(boolean delete)
          Used to set if the semantic should pay attention to individuals in the ontologies or has to ignore them.
 org.semanticweb.owl.model.OWLAxiom toAxiom(java.lang.String entURI1, java.lang.String relation, java.lang.String entURI2, Ontology ontology)
          Returns an axiom which represents the relation identified by the given relation symbol between the given two entities.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

PragmaticSemantic

public PragmaticSemantic(Ontology onto1,
                         Ontology onto2)
                  throws MergingException
Initializes the pragmatic semantic module. Therefore, a merge of the given two ontologies is prepared by renaming the entities contained in these ontologies. Be aware of the fact that this renaming is an INPLACE renaming in the given ontologies and WILL ALTER their content. Furthermore, the semantic is configured by this constructor to remove individuals possibly found in the aligned ontology. This behaviour can be changed by using the
setDeleteABox
method.

Parameters:
onto1 - ontology 1
onto2 - ontology 2
Throws:
MergingException
Method Detail

setDeleteABox

public void setDeleteABox(boolean delete)
Used to set if the semantic should pay attention to individuals in the ontologies or has to ignore them.

Specified by:
setDeleteABox in interface SemanticModule
Parameters:
delete - if true the semantic ignores individuals in the ontology, if false it pays attention to the ontology's individuals

toAxiom

public org.semanticweb.owl.model.OWLAxiom toAxiom(java.lang.String entURI1,
                                                  java.lang.String relation,
                                                  java.lang.String entURI2,
                                                  Ontology ontology)
Returns an axiom which represents the relation identified by the given relation symbol between the given two entities. It does not resolve the given entity URIs as it assumes those URIs to be already resolved in a previous step. If the combination of entity types and relation is unsupported by the pragmatic semantic null will be returned.

Parameters:
entURI1 - URI of first entity
relation - relation symbol
entURI2 - URI of second entity
ontology - ontology to create axiom for
Returns:
axiom representing the given relation or null on an unsupported combination of entities and relation

getClosure

public ClosureResult getClosure(Alignment align)
                         throws MergingException,
                                ClosureGenerationException
Returns the closure of the given alignment

Specified by:
getClosure in interface SemanticModule
Parameters:
align - alignment to create closure for
Returns:
closure result of given alignment
Throws:
MergingException
ClosureGenerationException