From a48191c26b3fd36721cc7729b996d39e764a0017 Mon Sep 17 00:00:00 2001 From: sjm222 Date: Wed, 15 Dec 2010 17:47:36 +0000 Subject: [PATCH] updates to SimpleReasoner for NIHVIVO-1547 (using too much heap size when adding TBox data) --- .../vitro/webapp/reasoner/SimpleReasoner.java | 13 ++++++------- 1 file changed, 6 insertions(+), 7 deletions(-) diff --git a/webapp/src/edu/cornell/mannlib/vitro/webapp/reasoner/SimpleReasoner.java b/webapp/src/edu/cornell/mannlib/vitro/webapp/reasoner/SimpleReasoner.java index b7b9859d2..8940677a5 100644 --- a/webapp/src/edu/cornell/mannlib/vitro/webapp/reasoner/SimpleReasoner.java +++ b/webapp/src/edu/cornell/mannlib/vitro/webapp/reasoner/SimpleReasoner.java @@ -312,16 +312,15 @@ public class SimpleReasoner extends StatementListener { try { OntModel unionModel = ModelFactory.createOntologyModel(OntModelSpec.OWL_MEM); - unionModel.add(aboxModel); - unionModel.add(inferenceModel); + unionModel.addSubModel(aboxModel); + unionModel.addSubModel(inferenceModel); StmtIterator iter = unionModel.listStatements((Resource) null, RDF.type, subClass); while (iter.hasNext()) { Statement stmt = iter.next(); - Resource ind = unionModel.getResource(stmt.getSubject().getURI()); - Statement infStmt = ResourceFactory.createStatement(ind, RDF.type, superClass); + Statement infStmt = ResourceFactory.createStatement(stmt.getSubject(), RDF.type, superClass); inferenceModel.enterCriticalSection(Lock.WRITE); @@ -353,15 +352,15 @@ public class SimpleReasoner extends StatementListener { try { OntModel unionModel = ModelFactory.createOntologyModel(OntModelSpec.OWL_MEM); - unionModel.add(aboxModel); - unionModel.add(inferenceModel); + unionModel.addSubModel(aboxModel); + unionModel.addSubModel(inferenceModel); StmtIterator iter = unionModel.listStatements((Resource) null, RDF.type, subClass); while (iter.hasNext()) { Statement stmt = iter.next(); - Resource ind = unionModel.getResource(stmt.getSubject().getURI()); + Resource ind = stmt.getSubject(); if (entailedType(ind,superClass)) continue;