When I read the docs for Jena2 Inference Support I found the following.  It 
says "one set of data (typically some schema definitions) to be efficiently 
applied" (see below).  Does this mean that if your data and ontology were in 
one file, with the ontology at the end, that you would still end up with the 
same inferences as in the case where they were mixed in one file with the 
ontology defined at the beginning?  But that it would be a performance hit?  If 
so, why?

Applying a reasoner to data
Once you have an instance of a reasoner it can then be attached to a set of RDF 
data to create an inference model. This can either be done by putting all the 
RDF data into one Model or by separating into two components - schema and 
instance data. For some external reasoners a hard separation may be required. 
For all of the built in reasoners the separation is arbitrary. The prime value 
of this separation is to allow some deductions from one set of data (typically 
some schema definitions) to be efficiently applied to several subsidiary sets 
of data (typically sets of instance data).
If you want to specialize the reasoner this way, by partially-applying it to a 
set schema data, use the Reasoner.bindSchema method which returns a new, 
specialized, reasoner.
To bind the reasoner to the final data set to create an inference model see the 
ModelFactory methods, particularly ModelFactory.createInfModel.


      

Reply via email to