[Pellet-users] Detaching Pellet model from a base model
Todor Dimitrov
todor.dimitrov at stud.uni-due.de
Wed Jul 16 16:16:37 UTC 2008
Hi everybody,
is there a possibility of detaching a Pellet model from its base model.
What I have tried is to add the base model as a sub-model and later on to
remove it. The problem is though that whenever I call close() on the
Pellet model, the base model also gets closed. Here is the example code:
...
m_pelletModel = ModelFactory.
createOntologyModel(PelletReasonerFactory.THE_SPEC);
m_pelletModel.addSubModel(m_baseModel);
...
...
m_pelletModel.removeSubModel(m_baseModel, false);
m_pelletModel.close();
...
If I then call for example:
...
final OntClass ontClass = m_baseModel.getOntClass(classUri);
final Individual individual = ontClass
.createIndividual(instanceUri);
...
I get the following exception:
Caused by: com.hp.hpl.jena.shared.ClosedException: already closed
at com.hp.hpl.jena.graph.impl.GraphBase.checkOpen(GraphBase.java:62)
at com.hp.hpl.jena.graph.impl.GraphBase.find(GraphBase.java:239)
at
org.mindswap.pellet.jena.DisjointMultiUnion.graphBaseFind(DisjointMultiUnion.java:125)
at com.hp.hpl.jena.graph.impl.GraphBase.find(GraphBase.java:240)
at
com.hp.hpl.jena.graph.impl.GraphBase.graphBaseFind(GraphBase.java:260)
at com.hp.hpl.jena.graph.impl.GraphBase.find(GraphBase.java:257)
at org.mindswap.pellet.jena.OWLLoader.hasObject(OWLLoader.java:396)
at org.mindswap.pellet.jena.OWLLoader.node2term(OWLLoader.java:657)
at
org.mindswap.pellet.jena.DisjointMultiUnion.addABoxChange(DisjointMultiUnion.java:446)
at
org.mindswap.pellet.jena.DisjointMultiUnion.notifyAddTriple(DisjointMultiUnion.java:172)
at
com.hp.hpl.jena.graph.impl.SimpleEventManager.notifyAddTriple(SimpleEventManager.java:60)
at com.hp.hpl.jena.graph.impl.GraphBase.notifyAdd(GraphBase.java:133)
at com.hp.hpl.jena.graph.impl.GraphBase.add(GraphBase.java:200)
at
com.hp.hpl.jena.graph.compose.MultiUnion.performAdd(MultiUnion.java:116)
at com.hp.hpl.jena.graph.impl.GraphBase.add(GraphBase.java:199)
at com.hp.hpl.jena.rdf.model.impl.ModelCom.add(ModelCom.java:939)
at
com.hp.hpl.jena.rdf.model.impl.ResourceImpl.addProperty(ResourceImpl.java:245)
at
com.hp.hpl.jena.ontology.impl.OntModelImpl.getResourceWithType(OntModelImpl.java:2963)
at
com.hp.hpl.jena.ontology.impl.OntModelImpl.createOntResource(OntModelImpl.java:1836)
at
com.hp.hpl.jena.ontology.impl.OntModelImpl.createIndividual(OntModelImpl.java:1137)
at
com.hp.hpl.jena.ontology.impl.OntClassImpl.createIndividual(OntClassImpl.java:679)
Any clues on what I might be doing wrong?
Thanks in advance,
Todor
More information about the Pellet-users
mailing list