de.uulm.ecs.ai.owlapi.krssparser
Class KRSS2OWLParser

java.lang.Object
  extended by org.semanticweb.owlapi.io.AbstractOWLParser
      extended by de.uulm.ecs.ai.owlapi.krssparser.KRSS2OWLParser
All Implemented Interfaces:
OWLParser

public class KRSS2OWLParser
extends AbstractOWLParser

The KRSS2OWLParser differs from the KRSSOWLParser that it supports an extended KRSS vocabulary available in many reasoning systems. For instance, CGIs can be added with help of (implies subclass superclass), range, domain, inverse, functinal attribute can be provided for roles. Note that DatatypeProperties are not supported within KRSS2.

Abbreviations

CN concept name
C,D,E concept expression
RN role name
R, R1, R2,... role expressions, i.e. role name or inverse role

KRSS concept language

KRSS OWLDescription
(at-least n R C) (OWLObjectMinCardinalityRestriction R n C)
(at-most n R C) (OWLObjectMaxCardinalityRestriction R n C)
(exactly n R C) (OWLObjectExactCardinalityRestriction R n C)
(some R C) (OWLObjectSomeRestriction R C)
(all R C) (OWLObjectAllRestriction R C)
(not C) (OWLObjectComplementOf C)
(and C D E) (OWLObjectIntersectionOf C D E)
(or C D E) (OWLObjectUnionOf C D E)

KRSS role language

KRSS OWLObjectPropertyExpression
(inv R) (OWLInverseObjectPropertiesAxiom R)

KRSS2 OWLAxiom Remarks
(define-primitive-concept CN C) (OWLSubClassOfAxiom CN C) If C is not given owl:Thing will be used instead.
(define-concept CN C) (OWLEquivalentClassesAxiom CN C)
(disjoint C D) (OWLDisjointClassesAxiom C D)
(equivalent C D) (OWLEquivalentClassesAxion C D)
(implies C D) (OWLSubclassOf C D)
(define-role RN RN2) (OWLEquivalentObjectPropertiesAxiom RN RN2)
(define-primitive-role RN :right-identity RN1) (OWLObjectPropertyChainSubPropertyAxiom (RN RN1) RN)
(define-primitive-role RN :left-identity RN1) (OWLObjectPropertyChainSubPropertyAxiom (RN1 RN) RN)
(define-primitive-role RN RN1) (OWLSubObjectPropertyAxiom RN RN1)
(define-primitive-role RN :parents (RN1 RN2 ...RNn)) (OWLSubObjectPropertyAxiom RN RN1)
(OWLSubObjectPropertyAxiom RN RN2)
(OWLSubObjectPropertyAxiom RN RNn)
(define-primitive-role RN :domain (C D ...E) :range (C D ...E) :transitive t :symmetric t :reflexive t :inverse RN1) Corresponding axioms for domain and range as well as transitive, symmetric, reflexive and inverse will be added.
(disjoint-roles R R1) (OWLDisjointObjectPropertiesAxiom R R1)
(implies-role R R) (OWLSubObjectPropertyAxiom R R1) (OWLInverseObjectPropertiesAxiom R R1)
(inverse RN RN1)
(roles-equivalent R R1) (OWLEquivalentObjectPropertiesAxiom R R1)
(role-inclusion (compose RN RN1) RN2 (OWLObjectPropertyChainSubPropertyAxiom (RN RN1) RN2) RN1 can also be (compose RN3 ...).
(transitive RN) (OWLTransitiveObjectPropertyAxiom RN)
(range RN C) (OWLObjectPropertyRangeAxiom RN C)
(instance i C) (OWLClassAssertionAxiom i C)
(related i R i2) (OWLObjectPropertyAssertionAxiom i R i2)
(equal i1 i2) (OWLSameIndividualsAxiom i1 i2)
(distinct i1 i2) (OWLDifferentIndividualsAxiom i1 i2)
Author: Olaf Noppens
Ulm University
Institute of Artificial Intelligence


Constructor Summary
KRSS2OWLParser()
           
 
Method Summary
 OWLOntologyFormat parse(OWLOntologyDocumentSource documentSource, OWLOntology ontology)
          Parses the ontology that has a concrete representation which is pointed to by the specified input source.
 
Methods inherited from class org.semanticweb.owlapi.io.AbstractOWLParser
getInputSource, getInputStream, getOWLOntologyManager, getRequestTypes, parse, setOWLOntologyManager
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

KRSS2OWLParser

public KRSS2OWLParser()
Method Detail

parse

public OWLOntologyFormat parse(OWLOntologyDocumentSource documentSource,
                               OWLOntology ontology)
                        throws OWLParserException,
                               java.io.IOException
Description copied from interface: OWLParser
Parses the ontology that has a concrete representation which is pointed to by the specified input source. Implementors of this method should load any imported ontologies with the makeImportsLoadRequest method on OWLOntologyManager.

Parameters:
documentSource - The input source which points the concrete representation. If the input source can provider a Reader then the ontology is parsed from the Reader. If the input source cannot provide a reader then it is parsed from the InputStream. If the input source cannot provide an InputStream then it is parsed from the ontology document IRI.
ontology - The ontology which the representation will be parsed into
Returns:
An OWLOntologyFormat which describes the concrete representation format which was parsed to obtain the ontology.
Throws:
OWLParserException - if there was a problem parsing the ontology. This indicates an error in the syntax with this ontology document that the parser reads.
java.io.IOException - if there was an IOException during parsing