protected void loadOntology() { try { manager = OWLManager.createOWLOntologyManager(); URI physicalURI = URI.create(PREFERENCES.getOntologyURL()); // Now do the loading ontology = manager.loadOntologyFromPhysicalURI(physicalURI); manager.setPhysicalURIForOntology(ontology, physicalURI); } catch (final Exception e) { Runnable runnable = new Runnable() { public void run() { JOptionPane.showMessageDialog( null, "Could not create the ontology. (This probably happened\n" + "because the ontology could not be accessed due to network\n" + "problems.)\n" + "[" + e.getMessage() + "]", "Error", JOptionPane.ERROR_MESSAGE); System.exit(1); } }; SwingUtilities.invokeLater(runnable); } }
public boolean contains(OWLClass cls) { if (cls.equals(owlOntologyManager.getOWLDataFactory().getOWLThing())) { return true; } else if (cls.equals(owlOntologyManager.getOWLDataFactory().getOWLNothing())) { return true; } return owlClass2ClassPointerMap.containsKey(cls); }
public boolean contains(OWLDataProperty prop) { if (prop.equals(owlOntologyManager.getOWLDataFactory().getOWLThing())) { return true; } else if (prop.equals(owlOntologyManager.getOWLDataFactory().getOWLNothing())) { return true; } return owlDataProperty2DataPropertyPointerMap.containsKey(prop); }
private OWLDescription createIncludeCoffeeDescription(Set<OWLClass> includeExtras) { OWLObjectProperty prop = this.getNamedObjectProperty(PREFERENCES.getExtrasPropertyName()); // has_extras Set<OWLDescription> classes = new HashSet<OWLDescription>(); classes.add(getCoffeeClass()); // get OWL class for Coffee for (OWLClass extra : includeExtras) { classes.add(manager.getOWLDataFactory().getOWLObjectSomeRestriction(prop, extra)); } return manager.getOWLDataFactory().getOWLObjectIntersectionOf(classes); }
private OWLDescription createExcludeCoffeeDescription(Set<OWLClass> excludeExtras) { OWLObjectProperty prop = this.getNamedObjectProperty(PREFERENCES.getExtrasPropertyName()); // has_extras Set<OWLDescription> classes = new HashSet<OWLDescription>(); // Everything must be a coffee for (OWLClass extra : excludeExtras) { classes.add(manager.getOWLDataFactory().getOWLObjectSomeRestriction(prop, extra)); } // are looking for. return manager.getOWLDataFactory().getOWLObjectUnionOf(classes); }
//////////////////////////////// // INDIVIDUAL ASSERTION METHODS// //////////////////////////////// public boolean assertSiteIndividual(String siteNameHash, String siteNameAnnotation) { OWLClassExpression tmpCE = OWLFactory.getOWLClass(":Site", topIxPrefixManager); OWLIndividual tmpInd = OWLFactory.getOWLNamedIndividual(':' + siteNameHash, topIxPrefixManager); manager.addAxiom(topIxOnt, OWLFactory.getOWLClassAssertionAxiom(tmpCE, tmpInd)); manager.addAxiom( topIxOnt, OWLFactory.getOWLAnnotationAssertionAxiom( OWLFactory.getOWLAnnotationProperty( IRI.create( topIxOnt.getOntologyID().getOntologyIRI().toString() + '#' + "individualName")), IRI.create(topIxOnt.getOntologyID().getOntologyIRI().toString() + '#' + siteNameHash), OWLFactory.getOWLLiteral(siteNameAnnotation))); return true; }
public void saveOntology() { try { manager.saveOntology(topIxOnt); } catch (OWLOntologyStorageException ose) { System.out.println(ose.getMessage()); } }
/** setup fact++ reasoner */ protected void setupReasoner() { // run reasoner try { reasoner = new Reasoner(manager); } catch (Exception e) { e.printStackTrace(); // To change body of catch statement use File | Settings | File // Templates. } try { if (reasoner != null) { reasoner.loadOntologies(manager.getOntologies()); reasoner.classify(); } } catch (final OWLReasonerException e) { Runnable runnable = new Runnable() { public void run() { JOptionPane.showMessageDialog( null, "A reasoner error has ocurred.\n" + "[" + e.getMessage() + "]", "Reasoner Error", JOptionPane.ERROR_MESSAGE); } }; } ; }
public boolean assertHouseIndividual(String houseEntryHash, String houseEntryAnnotation) { OWLClassExpression tempClassExpression = OWLFactory.getOWLClass(":House", topIxPrefixManager); OWLIndividual tempIndividual = OWLFactory.getOWLNamedIndividual(':' + houseEntryHash, topIxPrefixManager); manager.addAxiom( topIxOnt, OWLFactory.getOWLClassAssertionAxiom(tempClassExpression, tempIndividual)); manager.addAxiom( topIxOnt, OWLFactory.getOWLAnnotationAssertionAxiom( OWLFactory.getOWLAnnotationProperty( IRI.create( topIxOnt.getOntologyID().getOntologyIRI().toString() + '#' + "individualName")), IRI.create(topIxOnt.getOntologyID().getOntologyIRI().toString() + '#' + houseEntryHash), OWLFactory.getOWLLiteral(houseEntryAnnotation))); return true; }
public void loadOntology() { try { /* * --apaitoymena vimata gia th dhmioyrgia mapped ontologias: * 1.dhmioyrgoyme ena toBeMappedIRI me skopo toy thn antistoixish me * to local File. 2.dhmioyrgoyme ena File me th dieythynsh ths * ontologias sto topiko apothikeytiko meso. 3.dhmioyrgoyme enan * SimpleIRIMapper kai ton prosthetoyme mesw toy manager. o * SimpleIRIMapper syndeei to toBeMappedIRI poy dwsame arxika, me * thn fysikh topothesia ths ontologias sto topiko apothikeytiko * meso. 4.dhmioyrgoyme ena ontologyIRI me akrivws thn idia arxiki * timh me to toBeMappedIRI to opoio tha einai to IRI ths ontologias * mas 5.dhmioyrgoyme thn ontologia mas xrhsimopoiwntas to * manager.loadOntology(ontologyIRI); */ String sep = File.separator; manager = OWLManager.createOWLOntologyManager(); toBeMappedIRI = IRI.create( "http://www.semanticweb.org/ontologies/ptyxiaki_v0.6/2011/5/Ontology1308067064597.owl"); // ontFile = new File("../src/ontologyresources/ptyxiaki_v0.8.owl"); ontFile = new File("src/ontologyresources/ptyxiaki_v0.8.owl"); // in case of alternative location on load time when the application is jar'ed! if (!ontFile.canRead()) { ontFile = new File("ontologyresources/ptyxiaki_v0.8.owl"); } manager.addIRIMapper(new SimpleIRIMapper(toBeMappedIRI, IRI.create(ontFile))); ontologyIRI = IRI.create( "http://www.semanticweb.org/ontologies/ptyxiaki_v0.6/2011/5/Ontology1308067064597.owl"); topIxOnt = manager.loadOntology(ontologyIRI); OWLFactory = manager.getOWLDataFactory(); topIxFormat = manager.getOntologyFormat(topIxOnt); topIxPrefixManager = new DefaultPrefixManager(topIxOnt.getOntologyID().getOntologyIRI().toString() + '#'); System.out.println("loaded ontology: " + this.topIxOnt); System.out.println("from: " + this.manager.getOntologyDocumentIRI(this.topIxOnt)); } catch (OWLException oex) { logger.info(oex.getMessage()); } }
/** * @param entity * @return */ public String render(OWLEntity entity) { for (OWLOntology ont : manager.getOntologies()) { for (OWLAnnotation annot : entity.getAnnotations(ont)) { if (annot.getAnnotationURI().equals(OWLRDFVocabulary.RDFS_LABEL.getURI())) { if (annot instanceof OWLConstantAnnotation) { return ((OWLConstantAnnotation) annot).getAnnotationValue().getLiteral(); } } } } return entity.getURI().getFragment(); }
public boolean assertDataPropertyInstance(String ind, String prop, int value) { OWLDataProperty dataProp = OWLFactory.getOWLDataProperty( IRI.create(topIxOnt.getOntologyID().getOntologyIRI().toString() + '#' + prop)); OWLDataPropertyAssertionAxiom tmpAx = OWLFactory.getOWLDataPropertyAssertionAxiom( dataProp, OWLFactory.getOWLNamedIndividual( IRI.create(topIxOnt.getOntologyID().getOntologyIRI().toString() + '#' + ind)), OWLFactory.getOWLLiteral(value)); manager.addAxiom(topIxOnt, tmpAx); return true; }
// asserts a hasHouse property instance between a house and its corresponding // site public boolean assertHasHousePropertyInstance(String houseEntryHash, String siteNameHash) { OWLObjectProperty objProp = OWLFactory.getOWLObjectProperty( IRI.create(topIxOnt.getOntologyID().getOntologyIRI() + "#hasHouse")); OWLIndividual houseIndividual = OWLFactory.getOWLNamedIndividual(':' + houseEntryHash, topIxPrefixManager); OWLIndividual siteIndividual = OWLFactory.getOWLNamedIndividual(':' + siteNameHash, topIxPrefixManager); manager.addAxiom( topIxOnt, OWLFactory.getOWLObjectPropertyAssertionAxiom(objProp, siteIndividual, houseIndividual)); return true; }
////////////////////////////// // PROPERTY ASSERTION METHODS// ////////////////////////////// public boolean assertPropertyInstance( String comboBoxObjectPropertyEntry, String room1Hash, String room2Hash) { OWLObjectProperty objProp = OWLFactory.getOWLObjectProperty( IRI.create(propEntryNametoPropEntryIRI.get(comboBoxObjectPropertyEntry))); OWLIndividual room1Individual = OWLFactory.getOWLNamedIndividual(':' + room1Hash, topIxPrefixManager); OWLIndividual room2Individual = OWLFactory.getOWLNamedIndividual(':' + room2Hash, topIxPrefixManager); manager.addAxiom( topIxOnt, OWLFactory.getOWLObjectPropertyAssertionAxiom(objProp, room1Individual, room2Individual)); return true; }
/** * Creates OWLDescription (query) by given included extras and excluded extras * * @param includeExtras * @param excludeExtras * @return */ private OWLDescription createCoffeeDescription( Set<OWLClass> includeExtras, Set<OWLClass> excludeExtras) { // Include means existential restrictions // Exclude means negated existential restrictions OWLObjectProperty prop = this.getNamedObjectProperty(PREFERENCES.getExtrasPropertyName()); // has_extras // Create a hash set to store the components (existential restrictions) // of our description Set<OWLDescription> classes = new HashSet<OWLDescription>(); // Everything must be a coffee classes.add(getCoffeeClass()); // get OWL class for Coffee // Create the existential restrictions that represent the extras // that we want to include. for (OWLClass extra : includeExtras) { // e.g. hasExtras some ex_A , hasExtras some ex_B classes.add(manager.getOWLDataFactory().getOWLObjectSomeRestriction(prop, extra)); } // Create the negated existential restrictions of the extras that we // want to exclude for (OWLClass excludeExtra : excludeExtras) { // has_topping some topping_A OWLDescription restriction = manager.getOWLDataFactory().getOWLObjectSomeRestriction(prop, excludeExtra); // not (has_topping some topping_A) OWLObjectComplementOf neg = manager.getOWLDataFactory().getOWLObjectComplementOf(restriction); classes.add(neg); } // Bind the whole thing up in an intersection class // to create a concept description of the coffee we // are looking for. return manager.getOWLDataFactory().getOWLObjectIntersectionOf(classes); }
public boolean assertRoomIndividual( String roomName, String roomIndividualHash, String roomIndividualAnnotation) { OWLClassExpression tempClassExpression = OWLFactory.getOWLClass( IRI.create( roomToIRI.get( roomName))); // retrieves the Room Class IRI fron the roomToIRI map, using // roomID as a key. OWLIndividual tempIndividual = OWLFactory.getOWLNamedIndividual(':' + roomIndividualHash, topIxPrefixManager); manager.addAxiom( topIxOnt, OWLFactory.getOWLClassAssertionAxiom(tempClassExpression, tempIndividual)); manager.addAxiom( topIxOnt, OWLFactory.getOWLAnnotationAssertionAxiom( OWLFactory.getOWLAnnotationProperty( IRI.create( topIxOnt.getOntologyID().getOntologyIRI().toString() + '#' + "individualName")), IRI.create( topIxOnt.getOntologyID().getOntologyIRI().toString() + '#' + roomIndividualHash), OWLFactory.getOWLLiteral(String.format(roomIndividualAnnotation)))); return true; }
public boolean assertHasRoomPropertyInstance( String houseIndividualHash, String roomIndividualHash) { OWLObjectProperty tempOWLbjectProperty = OWLFactory.getOWLObjectProperty( IRI.create(topIxOnt.getOntologyID().getOntologyIRI() + "#hasRoom")); OWLIndividual houseIndividual = OWLFactory.getOWLNamedIndividual(':' + houseIndividualHash, topIxPrefixManager); OWLIndividual roomIndividual = OWLFactory.getOWLNamedIndividual(':' + roomIndividualHash, topIxPrefixManager); manager.addAxiom( topIxOnt, OWLFactory.getOWLObjectPropertyAssertionAxiom( tempOWLbjectProperty, houseIndividual, roomIndividual)); return true; }
public void visit(OWLUntypedConstant node) { try { lastDataValuePointer = owlConstant2DataValuePointerMap.get(node); if (lastDataValuePointer == null) { owlOntologyManager .getOWLDataFactory() .getOWLDataType(XSDVocabulary.STRING.getURI()) .accept((OWLDataVisitor) this); lastDataValuePointer = faCTPlusPlus.getDataValue(node.getLiteral(), getLastDataTypePointer()); owlConstant2DataValuePointerMap.put(node, lastDataValuePointer); dataValuePointerMap.put(lastDataValuePointer, node); } } catch (Exception e) { throw new FaCTPlusPlusRuntimeException(e); } }
public void visit(OWLDataType dataType) { try { lastDataTypeExpressionPointer = null; lastDataTypePointer = (DataTypePointer) owlDataRange2DataTypeExpressionPointerMap.get(dataType); if (lastDataTypePointer == null) { if (owlOntologyManager.getOWLDataFactory().getTopDataType().equals(dataType)) { lastDataTypePointer = faCTPlusPlus.getDataTop(); } else { lastDataTypePointer = faCTPlusPlus.getBuiltInDataType(dataType.getURI().toString()); } owlDataRange2DataTypeExpressionPointerMap.put(dataType, lastDataTypePointer); dataTypeExpressionPointerMap.put(lastDataTypePointer, dataType); } } catch (Exception e) { throw new FaCTPlusPlusRuntimeException(e); } }
/** * Gets the property by given name, e.g. has_topping * * @param propName * @return */ public OWLObjectProperty getNamedObjectProperty(String propName) { if (objPropNameCache == null) { objPropNameCache = new HashMap<String, URI>(); for (OWLOntology ont : reasoner.getLoadedOntologies()) { for (OWLObjectProperty prop : ont.getReferencedObjectProperties()) { objPropNameCache.put(prop.toString(), prop.getURI()); } } } // search the HashMap OWLObjectProperty namedProp = null; URI uri = objPropNameCache.get(propName); if (uri != null) { namedProp = manager.getOWLDataFactory().getOWLObjectProperty(uri); } else { System.err.println("Cannot find object property: " + propName + " in loaded ontologies"); } return namedProp; }
/** * Gets OWL class by given name * * @param className * @return * @throws OWLReasonerException */ public OWLClass getNamedClass(String className) { if (classnameCache == null) { classnameCache = new HashMap<String, URI>(); for (OWLOntology ont : reasoner.getLoadedOntologies()) { for (OWLClass cls : ont.getReferencedClasses()) { classnameCache.put(cls.toString(), cls.getURI()); } } } OWLClass namedCls = null; URI uri = classnameCache.get(className); if (uri != null) { namedCls = manager.getOWLDataFactory().getOWLClass(uri); } else { System.err.println("Cannot find class: " + className + " in loaded ontologies"); } return namedCls; }
public boolean storeSolutions(String siteNameHash) { for (OwlSolution tempSolution : solutionsList) { // assert Solution individual and assert Site->hasSolution OWLClassExpression solutionClassExpression = OWLFactory.getOWLClass(":Solution", topIxPrefixManager); String tempSolutionID = String.format(siteNameHash + "_S_%1$02d", tempSolution.getSolutionID().intValue()); OWLIndividual tempSolutionIndividual = OWLFactory.getOWLNamedIndividual(":" + tempSolutionID, topIxPrefixManager); OWLClassAssertionAxiom tempClassAssertionAxiom = OWLFactory.getOWLClassAssertionAxiom(solutionClassExpression, tempSolutionIndividual); manager.addAxiom(topIxOnt, tempClassAssertionAxiom); OWLObjectProperty tempSolutionObjectProperty = OWLFactory.getOWLObjectProperty(":hasSolution", topIxPrefixManager); OWLIndividual tempSiteIndividual = OWLFactory.getOWLNamedIndividual(":" + siteNameHash, topIxPrefixManager); OWLObjectPropertyAssertionAxiom tempObjPropAssAxiom = OWLFactory.getOWLObjectPropertyAssertionAxiom( tempSolutionObjectProperty, tempSiteIndividual, tempSolutionIndividual); manager.addAxiom(topIxOnt, tempObjPropAssAxiom); // assert SolvedHouse individuals and assert Solution->hasSolvedHouse objProperty. also assert // the DATA PROPERTIES for each solvedHouse indvidual for (OwlSolvedHouse tempSolvedHouse : tempSolution.getSolvedHouses()) { // logger.info("373"); // logger.info(tempSolution.getSolvedHouses().toString()); OWLClassExpression solvedHouseClassExpression = OWLFactory.getOWLClass(":SolvedHouse", topIxPrefixManager); OWLIndividual tempSolvedHouseIndividual = OWLFactory.getOWLNamedIndividual( ":" + tempSolutionID + "_SH_" + tempSolvedHouse.getSolvedHouseHash(), topIxPrefixManager); OWLClassAssertionAxiom tempClassAssAx = OWLFactory.getOWLClassAssertionAxiom( solvedHouseClassExpression, tempSolvedHouseIndividual); manager.addAxiom(topIxOnt, tempClassAssAx); OWLObjectProperty tempSolvedHouseObjectProperty = OWLFactory.getOWLObjectProperty(":hasSolvedHouse", topIxPrefixManager); OWLObjectPropertyAssertionAxiom tempHouseObjPropAssAx = OWLFactory.getOWLObjectPropertyAssertionAxiom( tempSolvedHouseObjectProperty, tempSolutionIndividual, tempSolvedHouseIndividual); manager.addAxiom(topIxOnt, tempHouseObjPropAssAx); OWLDataProperty tempDataProperty; OWLDataPropertyAssertionAxiom tempDataPropertyAssertionAxiom; tempDataProperty = OWLFactory.getOWLDataProperty(":hasLiteral", topIxPrefixManager); tempDataPropertyAssertionAxiom = OWLFactory.getOWLDataPropertyAssertionAxiom( tempDataProperty, tempSolvedHouseIndividual, tempSolvedHouse.getSolvedHouseLiteral()); manager.addAxiom(topIxOnt, tempDataPropertyAssertionAxiom); tempDataProperty = OWLFactory.getOWLDataProperty(":hasL", topIxPrefixManager); tempDataPropertyAssertionAxiom = OWLFactory.getOWLDataPropertyAssertionAxiom( tempDataProperty, tempSolvedHouseIndividual, tempSolvedHouse.getSolvedHouseLength()); manager.addAxiom(topIxOnt, tempDataPropertyAssertionAxiom); tempDataProperty = OWLFactory.getOWLDataProperty(":hasW", topIxPrefixManager); tempDataPropertyAssertionAxiom = OWLFactory.getOWLDataPropertyAssertionAxiom( tempDataProperty, tempSolvedHouseIndividual, tempSolvedHouse.getSolvedHouseWidth()); manager.addAxiom(topIxOnt, tempDataPropertyAssertionAxiom); tempDataProperty = OWLFactory.getOWLDataProperty(":hasX", topIxPrefixManager); tempDataPropertyAssertionAxiom = OWLFactory.getOWLDataPropertyAssertionAxiom( tempDataProperty, tempSolvedHouseIndividual, tempSolvedHouse.getSolvedHouseX()); manager.addAxiom(topIxOnt, tempDataPropertyAssertionAxiom); tempDataProperty = OWLFactory.getOWLDataProperty(":hasY", topIxPrefixManager); tempDataPropertyAssertionAxiom = OWLFactory.getOWLDataPropertyAssertionAxiom( tempDataProperty, tempSolvedHouseIndividual, tempSolvedHouse.getSolvedHouseY()); manager.addAxiom(topIxOnt, tempDataPropertyAssertionAxiom); // logger.info("asserts the house"); // logger.info(tempSolvedHouse.getSolvedHouseLiteral()); } // assert SolvedRoom individuals and assert Solution->hasSolvedRoom objProperty. also assert // the DATA PROPERTIES for each solvedRoom indvidual for (OwlSolvedRoom tempSolvedRoom : tempSolution.getSolvedRooms()) { OWLClassExpression solvedRoomClassExpression = OWLFactory.getOWLClass(":SolvedRoom", topIxPrefixManager); OWLIndividual tempSolvedRoomIndividual = OWLFactory.getOWLNamedIndividual( ":" + tempSolutionID + "_SR_" + tempSolvedRoom.getSolvedRoomHash(), topIxPrefixManager); OWLClassAssertionAxiom tempClassAssAx = OWLFactory.getOWLClassAssertionAxiom( solvedRoomClassExpression, tempSolvedRoomIndividual); manager.addAxiom(topIxOnt, tempClassAssAx); OWLObjectProperty tempSolvedRoomObjectProperty = OWLFactory.getOWLObjectProperty(":hasSolvedRoom", topIxPrefixManager); OWLObjectPropertyAssertionAxiom tempRoomObjPropAssAx = OWLFactory.getOWLObjectPropertyAssertionAxiom( tempSolvedRoomObjectProperty, tempSolutionIndividual, tempSolvedRoomIndividual); manager.addAxiom(topIxOnt, tempRoomObjPropAssAx); OWLDataProperty tempDataProperty; OWLDataPropertyAssertionAxiom tempDataPropertyAssertionAxiom; tempDataProperty = OWLFactory.getOWLDataProperty(":hasLiteral", topIxPrefixManager); tempDataPropertyAssertionAxiom = OWLFactory.getOWLDataPropertyAssertionAxiom( tempDataProperty, tempSolvedRoomIndividual, tempSolvedRoom.getSolvedRoomLiteral()); manager.addAxiom(topIxOnt, tempDataPropertyAssertionAxiom); tempDataProperty = OWLFactory.getOWLDataProperty(":hasL", topIxPrefixManager); tempDataPropertyAssertionAxiom = OWLFactory.getOWLDataPropertyAssertionAxiom( tempDataProperty, tempSolvedRoomIndividual, tempSolvedRoom.getSolvedRoomLength()); manager.addAxiom(topIxOnt, tempDataPropertyAssertionAxiom); tempDataProperty = OWLFactory.getOWLDataProperty(":hasW", topIxPrefixManager); tempDataPropertyAssertionAxiom = OWLFactory.getOWLDataPropertyAssertionAxiom( tempDataProperty, tempSolvedRoomIndividual, tempSolvedRoom.getSolvedRoomWidth()); manager.addAxiom(topIxOnt, tempDataPropertyAssertionAxiom); tempDataProperty = OWLFactory.getOWLDataProperty(":hasH", topIxPrefixManager); tempDataPropertyAssertionAxiom = OWLFactory.getOWLDataPropertyAssertionAxiom( tempDataProperty, tempSolvedRoomIndividual, tempSolvedRoom.getSolvedRoomHeight()); manager.addAxiom(topIxOnt, tempDataPropertyAssertionAxiom); tempDataProperty = OWLFactory.getOWLDataProperty(":hasX", topIxPrefixManager); tempDataPropertyAssertionAxiom = OWLFactory.getOWLDataPropertyAssertionAxiom( tempDataProperty, tempSolvedRoomIndividual, tempSolvedRoom.getSolvedRoomX()); manager.addAxiom(topIxOnt, tempDataPropertyAssertionAxiom); tempDataProperty = OWLFactory.getOWLDataProperty(":hasY", topIxPrefixManager); tempDataPropertyAssertionAxiom = OWLFactory.getOWLDataPropertyAssertionAxiom( tempDataProperty, tempSolvedRoomIndividual, tempSolvedRoom.getSolvedRoomY()); manager.addAxiom(topIxOnt, tempDataPropertyAssertionAxiom); tempDataProperty = OWLFactory.getOWLDataProperty(":hasZ", topIxPrefixManager); tempDataPropertyAssertionAxiom = OWLFactory.getOWLDataPropertyAssertionAxiom( tempDataProperty, tempSolvedRoomIndividual, tempSolvedRoom.getSolvedRoomZ()); manager.addAxiom(topIxOnt, tempDataPropertyAssertionAxiom); } } return true; }