NIHVIVO-3971 setup of inference rebuild and scratchpad models; also bugfix to SimpleBridgingRule
This commit is contained in:
parent
0b3d14ebab
commit
88e44af429
3 changed files with 12 additions and 17 deletions
|
@ -7,6 +7,7 @@ import java.util.HashSet;
|
|||
import com.hp.hpl.jena.rdf.model.ModelChangedListener;
|
||||
|
||||
import edu.cornell.mannlib.vitro.webapp.servlet.setup.JenaDataSourceSetupBase;
|
||||
import edu.cornell.mannlib.vitro.webapp.servlet.setup.SimpleReasonerSetup;
|
||||
|
||||
public class ABoxJenaChangeListener extends JenaChangeListener {
|
||||
|
||||
|
@ -17,6 +18,8 @@ public class ABoxJenaChangeListener extends JenaChangeListener {
|
|||
ignoredGraphs.add(JenaDataSourceSetupBase.JENA_INF_MODEL);
|
||||
ignoredGraphs.add(JenaDataSourceSetupBase.JENA_TBOX_ASSERTIONS_MODEL);
|
||||
ignoredGraphs.add(JenaDataSourceSetupBase.JENA_TBOX_INF_MODEL);
|
||||
ignoredGraphs.add(SimpleReasonerSetup.JENA_INF_MODEL_REBUILD);
|
||||
ignoredGraphs.add(SimpleReasonerSetup.JENA_INF_MODEL_SCRATCHPAD);
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
@ -74,7 +74,7 @@ public abstract class SimpleBridgingRule implements ReasonerPlugin {
|
|||
Model aboxAssertionsModel,
|
||||
Model aboxInferencesModel,
|
||||
OntModel TBoxInferencesModel) {
|
||||
if (ignore(stmt)) {
|
||||
if (!isInterestedInAddedStatement(stmt) || ignore(stmt)) {
|
||||
return;
|
||||
}
|
||||
Model inf = constructInferences(this.queryStr, stmt, aboxAssertionsModel);
|
||||
|
@ -151,7 +151,7 @@ public abstract class SimpleBridgingRule implements ReasonerPlugin {
|
|||
Model aboxInferencesModel,
|
||||
OntModel TBoxInferencesModel) {
|
||||
|
||||
if (ignore(stmt)) {
|
||||
if (!isInterestedInRemovedStatement(stmt) || ignore(stmt)) {
|
||||
return;
|
||||
}
|
||||
|
||||
|
|
|
@ -17,12 +17,14 @@ import javax.sql.DataSource;
|
|||
import org.apache.commons.logging.Log;
|
||||
import org.apache.commons.logging.LogFactory;
|
||||
|
||||
import com.hp.hpl.jena.query.Dataset;
|
||||
import com.hp.hpl.jena.rdf.model.Model;
|
||||
import com.hp.hpl.jena.vocabulary.OWL;
|
||||
|
||||
import edu.cornell.mannlib.vitro.webapp.config.ConfigurationProperties;
|
||||
import edu.cornell.mannlib.vitro.webapp.dao.jena.ModelContext;
|
||||
import edu.cornell.mannlib.vitro.webapp.dao.jena.OntModelSelector;
|
||||
import edu.cornell.mannlib.vitro.webapp.dao.jena.RDFServiceDataset;
|
||||
import edu.cornell.mannlib.vitro.webapp.dao.jena.WebappDaoFactoryJena;
|
||||
import edu.cornell.mannlib.vitro.webapp.dao.jena.pellet.PelletListener;
|
||||
import edu.cornell.mannlib.vitro.webapp.dao.jena.pellet.ReasonerConfiguration;
|
||||
|
@ -87,23 +89,13 @@ public class SimpleReasonerSetup implements ServletContextListener {
|
|||
String dbType = ConfigurationProperties.getBean(ctx).getProperty( // database type
|
||||
"VitroConnection.DataSource.dbtype","MySQL");
|
||||
|
||||
RDFService rdfService = RDFServiceUtils.getRDFServiceFactory(ctx).getRDFService();
|
||||
Dataset dataset = new RDFServiceDataset(rdfService);
|
||||
|
||||
Model rebuildModel = JenaDataSourceSetupBase.makeDBModel(
|
||||
bds,
|
||||
JENA_INF_MODEL_REBUILD,
|
||||
JenaDataSourceSetupBase.DB_ONT_MODEL_SPEC,
|
||||
TripleStoreType.SDB,
|
||||
dbType, ctx);
|
||||
Model scratchModel = JenaDataSourceSetupBase.makeDBModel(
|
||||
bds,
|
||||
JENA_INF_MODEL_SCRATCHPAD,
|
||||
JenaDataSourceSetupBase.DB_ONT_MODEL_SPEC,
|
||||
TripleStoreType.SDB,
|
||||
dbType, ctx);
|
||||
|
||||
Model rebuildModel = dataset.getNamedModel(JENA_INF_MODEL_REBUILD);
|
||||
Model scratchModel = dataset.getNamedModel(JENA_INF_MODEL_SCRATCHPAD);
|
||||
|
||||
// the simple reasoner will register itself as a listener to the ABox assertions
|
||||
RDFService rdfService = RDFServiceUtils.getRDFServiceFactory(ctx).getRDFService();
|
||||
SimpleReasoner simpleReasoner = new SimpleReasoner(
|
||||
unionOms.getTBoxModel(), rdfService, inferencesOms.getABoxModel(), rebuildModel, scratchModel);
|
||||
sce.getServletContext().setAttribute(SimpleReasoner.class.getName(),simpleReasoner);
|
||||
|
|
Loading…
Add table
Reference in a new issue