fr.inrialpes.exmo.align.impl.renderer
Class OWLAxiomsRendererVisitor
java.lang.Object
fr.inrialpes.exmo.align.impl.renderer.GenericReflectiveVisitor
fr.inrialpes.exmo.align.impl.renderer.IndentedRendererVisitor
fr.inrialpes.exmo.align.impl.renderer.OWLAxiomsRendererVisitor
- All Implemented Interfaces:
- EDOALVisitor, AlignmentVisitor
public class OWLAxiomsRendererVisitor
- extends IndentedRendererVisitor
- implements AlignmentVisitor, EDOALVisitor
Renders an alignment as a new ontology merging these.
- Version:
- $Id: OWLAxiomsRendererVisitor.java 1868 2014-01-14 18:04:26Z euzenat $
- Author:
- Jérôme Euzenat
Method Summary |
String |
getRelationName(LoadedOntology onto,
Relation rel,
Object ob)
Regular: relation name depends on loaded ontology |
String |
getRelationName(Relation rel,
Object ob)
For EDOAL relation name depends on type of expressions |
void |
init(Properties p)
|
void |
printRel(Object ob,
LoadedOntology onto,
Relation rel)
|
void |
visit(Alignment align)
|
void |
visit(Apply e)
|
void |
visit(Cell cell)
|
void |
visit(ClassConstruction e)
|
void |
visit(ClassDomainRestriction c)
|
void |
visit(ClassId e)
|
void |
visit(ClassOccurenceRestriction c)
|
void |
visit(ClassTypeRestriction c)
|
void |
visit(ClassValueRestriction c)
|
void |
visit(Datatype e)
Our Datatypes are only strings identifying datatypes. |
void |
visit(EDOALCell cell)
|
void |
visit(EquivRelation rel)
|
void |
visit(HasInstanceRelation rel)
|
void |
visit(IncompatRelation rel)
|
void |
visit(InstanceId e)
|
void |
visit(InstanceOfRelation rel)
|
void |
visit(PropertyConstruction e)
OWL, and in particular OWL 2, does not allow for more Relation (ObjectProperty)
and Property (DataProperty) constructor than owl:inverseOf
It is thus imposible to transcribe our and, or and not constructors. |
void |
visit(PropertyDomainRestriction c)
|
void |
visit(PropertyId e)
|
void |
visit(PropertyTypeRestriction c)
|
void |
visit(PropertyValueRestriction c)
|
void |
visit(Relation rel)
|
void |
visit(RelationCoDomainRestriction c)
|
void |
visit(RelationConstruction e)
OWL, and in particular OWL 2, does not allow for more Relation (ObjectProperty)
and Property (DataProperty) constructor than owl:inverseOf
It is thus imposible to transcribe our and, or and not constructors. |
void |
visit(RelationDomainRestriction c)
|
void |
visit(RelationId e)
|
void |
visit(SubsumedRelation rel)
|
void |
visit(SubsumeRelation rel)
|
void |
visit(Transformation transf)
|
void |
visit(Value e)
|
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
logger
static final org.slf4j.Logger logger
heterogeneous
boolean heterogeneous
edoal
boolean edoal
alignment
Alignment alignment
onto1
LoadedOntology onto1
onto2
LoadedOntology onto2
cell
Cell cell
toProcess
Relation toProcess
DEF
private static Namespace DEF
OWLAxiomsRendererVisitor
public OWLAxiomsRendererVisitor(PrintWriter writer)
init
public void init(Properties p)
- Specified by:
init
in interface AlignmentVisitor
visit
public void visit(Alignment align)
throws AlignmentException
- Specified by:
visit
in interface AlignmentVisitor
- Throws:
AlignmentException
visit
public void visit(Cell cell)
throws AlignmentException
- Specified by:
visit
in interface AlignmentVisitor
- Throws:
AlignmentException
visit
public void visit(EDOALCell cell)
throws AlignmentException
- Throws:
AlignmentException
visit
public void visit(Relation rel)
throws AlignmentException
- Specified by:
visit
in interface AlignmentVisitor
- Throws:
AlignmentException
printRel
public void printRel(Object ob,
LoadedOntology onto,
Relation rel)
throws AlignmentException
- Throws:
AlignmentException
getRelationName
public String getRelationName(Relation rel,
Object ob)
- For EDOAL relation name depends on type of expressions
getRelationName
public String getRelationName(LoadedOntology onto,
Relation rel,
Object ob)
- Regular: relation name depends on loaded ontology
visit
public void visit(EquivRelation rel)
throws AlignmentException
- Throws:
AlignmentException
visit
public void visit(SubsumeRelation rel)
throws AlignmentException
- Throws:
AlignmentException
visit
public void visit(SubsumedRelation rel)
throws AlignmentException
- Throws:
AlignmentException
visit
public void visit(IncompatRelation rel)
throws AlignmentException
- Throws:
AlignmentException
visit
public void visit(InstanceOfRelation rel)
throws AlignmentException
- Throws:
AlignmentException
visit
public void visit(HasInstanceRelation rel)
throws AlignmentException
- Throws:
AlignmentException
visit
public void visit(ClassId e)
throws AlignmentException
- Specified by:
visit
in interface EDOALVisitor
- Throws:
AlignmentException
visit
public void visit(ClassConstruction e)
throws AlignmentException
- Specified by:
visit
in interface EDOALVisitor
- Throws:
AlignmentException
visit
public void visit(ClassValueRestriction c)
throws AlignmentException
- Specified by:
visit
in interface EDOALVisitor
- Throws:
AlignmentException
visit
public void visit(ClassTypeRestriction c)
throws AlignmentException
- Specified by:
visit
in interface EDOALVisitor
- Throws:
AlignmentException
visit
public void visit(ClassDomainRestriction c)
throws AlignmentException
- Specified by:
visit
in interface EDOALVisitor
- Throws:
AlignmentException
visit
public void visit(ClassOccurenceRestriction c)
throws AlignmentException
- Specified by:
visit
in interface EDOALVisitor
- Throws:
AlignmentException
visit
public void visit(PropertyId e)
throws AlignmentException
- Specified by:
visit
in interface EDOALVisitor
- Throws:
AlignmentException
visit
public void visit(PropertyConstruction e)
throws AlignmentException
- OWL, and in particular OWL 2, does not allow for more Relation (ObjectProperty)
and Property (DataProperty) constructor than owl:inverseOf
It is thus imposible to transcribe our and, or and not constructors.
- Specified by:
visit
in interface EDOALVisitor
- Throws:
AlignmentException
visit
public void visit(PropertyValueRestriction c)
throws AlignmentException
- Specified by:
visit
in interface EDOALVisitor
- Throws:
AlignmentException
visit
public void visit(PropertyDomainRestriction c)
throws AlignmentException
- Specified by:
visit
in interface EDOALVisitor
- Throws:
AlignmentException
visit
public void visit(PropertyTypeRestriction c)
throws AlignmentException
- Specified by:
visit
in interface EDOALVisitor
- Throws:
AlignmentException
visit
public void visit(RelationId e)
throws AlignmentException
- Specified by:
visit
in interface EDOALVisitor
- Throws:
AlignmentException
visit
public void visit(RelationConstruction e)
throws AlignmentException
- OWL, and in particular OWL 2, does not allow for more Relation (ObjectProperty)
and Property (DataProperty) constructor than owl:inverseOf
It is thus imposible to transcribe our and, or and not constructors.
Moreover, they have no constructor for the symmetric, transitive and reflexive
closure and the compositional closure (or composition) can only be obtained by
defining a property subsumed by this closure through an axiom.
It is also possible to rewrite the reflexive closures as axioms as well.
But the transitive closure can only be obtained through subsumption.
- Specified by:
visit
in interface EDOALVisitor
- Throws:
AlignmentException
visit
public void visit(RelationCoDomainRestriction c)
throws AlignmentException
- Specified by:
visit
in interface EDOALVisitor
- Throws:
AlignmentException
visit
public void visit(RelationDomainRestriction c)
throws AlignmentException
- Specified by:
visit
in interface EDOALVisitor
- Throws:
AlignmentException
visit
public void visit(InstanceId e)
throws AlignmentException
- Specified by:
visit
in interface EDOALVisitor
- Throws:
AlignmentException
visit
public void visit(Value e)
throws AlignmentException
- Specified by:
visit
in interface EDOALVisitor
- Throws:
AlignmentException
visit
public void visit(Apply e)
throws AlignmentException
- Specified by:
visit
in interface EDOALVisitor
- Throws:
AlignmentException
visit
public void visit(Transformation transf)
throws AlignmentException
- Specified by:
visit
in interface EDOALVisitor
- Throws:
AlignmentException
visit
public void visit(Datatype e)
- Our Datatypes are only strings identifying datatypes.
For OWL, they should be considered as built-in types because we do
not know how to add other types.
Hence we could simply have used a rdfs:Datatype=""
OWL offers further possiblities, such as additional owl:withRestriction
clauses
- Specified by:
visit
in interface EDOALVisitor
(C) INRIA & friends, 2003-2014