[Pellet-users] Consistency, Classifying, Realizing : Need some Help

Paolo Bussotti paolo.bussotti at unifi.it
Mon May 12 10:19:05 UTC 2008


Hi everybody,
Excuse me for my previous mails which, maybe, are a little bit confusing.
What would like to know is this:
I work on a pellet-backed jena ontmodel and try to make the underlying 
Pellet ABox dynamic.
Whenever I make a new assertion I prepare the OntModel (or equivalently 
the PelletInfGraph) and therefore load the new contents to the Pellet KB.
Then I explicitly call kb.isConsistent and treat the new assertions 
dependently.
I call explicitly classify() and and realize() at the very beginning of 
the session (when I load the ontology), but I dont make any explicit 
call to these
methods after assertions, becouse instrumental queries of the kind 
getTypes() already call for them inside their bodies.
I would like to know:
1) Is isConsistent() correct if I only use model.prepare() without 
classifying/realizing the updated KB? I think so from the source code 
(in these methods there is a consistencyEnsure() at the very start), but 
please confim it.
2) Is it a correct practice to avoid direcly calling classify/realize 
and instead to let these method be performed by query methods?
3) Does it work the same also for SPARQL queries?
4) In the faq about concurrency on Pellet you advice to use 
PelletInfGraph.classify() before any query, which includes calling 
kb.prepare() and kb.classify() -if I remember correctly). If I use some 
external java synchronisation construct (a mutex) can I avoid to 
explicitly call fot classify and only using model.prepare() or 
PelletInfGraph.prepare() , which should call for kb.prepare as well, 
being my purpose just to check consistency of new assertions and 
querying the Kb by letting classification calls to be called inside the 
query method.
5) Why I always obtain isClassyfied=false (direcly asking the kb) after 
some query that, apparently, do classification or realization ? or is it 
a form of classification/realization which, after the assertion and the 
query does not set to true the classification flag?
Excuse for my reiterate questions but I really need some help 
understanding these issues.
Best Regards (and many thanks in advance)
Paolo Bussotti




More information about the Pellet-users mailing list