I have the following code
data = TDBFactory.createDataset( dir.getAbsolutePath() ); data.begin( ReadWrite.WRITE); // read 2 files into the model (approx 3.5K triples) Model dataM = loadDir( ctxt, "/WEB-INF/resources/rdf/documents"); // read http://www.w3.org/2009/08/skos-reference/skos.rdf Model schemaM = loadDir( ctxt, "/WEB-INF/resources/rdf/schemas" ); Reasoner reasoner = ReasonerRegistry.getOWLMiniReasoner(); reasoner = reasoner.bindSchema(schemaM); infModel = ModelFactory.createInfModel(reasoner, dataM); data.commit(); // DEBUGGING CODE String realPath = ctxt.getRealPath("/WEB-INF/resources/"); File f2 = new File(realPath, "data.rdf"); // OOM occures here infModel.write(new FileOutputStream(f2)); So my questions are: 1) Should in inferencing be done within a write transaction and if so how does one assure that all inferencing will be done within a write transaction? In this case I would expect that all inferencing would be done in the infModel.write() call but in the general case I may not be making that call. 2) Shoudn't the inferencing be writing to the TDB datastore? If so why is there an OOM error? Many thanks, Claude -- I like: Like Like - The likeliest place on the web <http://like-like.xenei.com> LinkedIn: http://www.linkedin.com/in/claudewarren