Perhaps my issue here arises from my not quite understanding how validation works.
In my mind, I had this simplified to: "Here are a bunch of triplets... do they make sense?" The reasoning engine then says: "I can't be sure, I'll have to add a bunch more (via inference) to be sure I'm seeing the entire picture." After inferencing, the engine now looks at an expanded store of triples and decides if they make sense. I wanted to skip the middle step. I'd prefer to do validation as a set of queries that do not trigger any inferencing. I'm not at all familiar enough with the machinery that gets this done to know if this is even reasonable. I've been treating the reasoning engines as black boxes thus far. Perhaps it won't be such a bad idea to look into their workings a bit more closely. -- Mark Fischer On Sat, Sep 29, 2012 at 11:57 AM, Dave Reynolds <[email protected]>wrote: > On 29/09/12 16:20, Mark Fischer wrote: > >> Is there some way in which I can attach a reasoning engine to a model and >> convince it to >> not do any inferencing? I don't want any of the added triplets. >> > > Not sure I follow. > > If you attach a reasoner to a model then the model is not changed. When > you query the InfModel (or equivalently OntModel) then inferences will be > done to answer that query. This is typically a mix of forward inferences > (all of which will be created as soon as you ask the first query) and > backward inferences (which will be elaborated only on demand). > > Validation is in effect a set of queries (in fact a set of backward rules > and query to trigger those rules). > > Having done the validation you can discard the InfModel and still keep the > base model around. > > > I'm well aware that calling validate() on such a model would not give me a >> complete set of >> reports but I'm convinced it would give me the information I'm interested >> in without bloating >> my database/triplet store. >> >> Ideally I'd like to be able to control which types are inferencing are >> allowed. >> > > To get full control then use the generic rules engine [1] and create your > own rules. The rules for the supplied configurations (default, micro, mini) > are all in the distribution so you can take those and edit them down how > you wish. > > Dave > > [1] > http://jena.apache.org/**documentation/inference/#rules<http://jena.apache.org/documentation/inference/#rules> > >
