private void process(Connection conn, ClassAssertion ax, PreparedStatement uriidStm, Map<SemanticIndexViewID, PreparedStatement> stmMap) throws SQLException { // replace concept by the canonical representative (which must be a concept name) OClass concept0 = ax.getConcept(); OClass concept = (OClass)reasonerDag.classesDAG().getCanonicalForm(concept0); int conceptIndex = cacheSI.getEntry(concept).getIndex(); ObjectConstant c1 = ax.getIndividual(); SemanticIndexView view = views.getView(c1.getType()); PreparedStatement stm = stmMap.get(view.getId()); if (stm == null) { stm = conn.prepareStatement(view.getINSERT()); stmMap.put(view.getId(), stm); } int uri_id = getObjectConstantUriId(c1, uriidStm); // Construct the database INSERT statements stm.setInt(1, uri_id); stm.setInt(2, conceptIndex); stm.addBatch(); // Register non emptiness view.addIndex(conceptIndex); }
DataPropertyExpression dpe = reasonerDag.dataPropertiesDAG().getCanonicalForm(dpe0); int idx = cacheSI.getEntry(dpe).getIndex();
OClass equivalent = (OClass)reasoner.classesDAG().getCanonicalForm(c); if (equivalent != null && !equivalent.equals(c)) { return atomFactory.getMutableTripleBodyAtom(bodyAtom.getTerm(0), equivalent.getIRI()); ObjectPropertyExpression equivalent = reasoner.objectPropertiesDAG().getCanonicalForm(ope); if (equivalent != null && !equivalent.equals(ope)) { if (!equivalent.isInverse()) DataPropertyExpression equivalent = reasoner.dataPropertiesDAG().getCanonicalForm(dpe); if (equivalent != null && !equivalent.equals(dpe)) { return atomFactory.getMutableTripleBodyAtom(bodyAtom.getTerm(0), equivalent.getIRI(), bodyAtom.getTerm(2));
throw new RuntimeException("INVERSE PROPERTIES ARE NOT SUPPORTED IN ABOX:" + ax); ObjectPropertyExpression ope = reasonerDag.objectPropertiesDAG().getCanonicalForm(ope0);