Hi Dave,

I finally did it!

OntModel ontModel = ModelFactory.createOntologyModel( PelletReasonerFactory.
THE_SPEC );
FileManager.get().getLocationMapper().addAltEntry( SOURCE_URL, SOURCE_FILE);
Model baseOntology = FileManager.get().loadModel( SOURCE_FILE );
ontModel.addSubModel( baseOntology );

I was not declaring the source_file relatively, like this "./scr/..." ,
with the *dot* in the beginning.

Everything is ok now.

Thanks a lot,

Guilherme





On Wed, Feb 19, 2014 at 11:07 PM, Guilherme Maranhão
<[email protected]>wrote:

> Hi Dave,
>
> I've tried all the possible ways to simply create a model and none did
> work.
>
> I've tried your last suggestion and it sends file not found. I've tried
> with both absolute and relative paths.
>
> Another way I have tried is as follows:
>
> OntModel model = ModelFactory.createOntologyModel( PelletReasonerFactory.THE
> proj_SPEC, null );
> model.read( ontPath, "RDF/XML" );
>
> ontPath is relative to my project path.
>
> I am very new to Jena, that's why I am having these kind of difficulties.
>
> Thanks again,
>
> Guilherme
>
>
> On Wed, Feb 19, 2014 at 11:18 AM, Dave Reynolds <[email protected]
> > wrote:
>
>> On 19/02/14 11:54, Guilherme Maranhão wrote:
>>
>>> Dave,
>>>
>>> I've removed line 2 as you've suggested, but stage3Hypertension continues
>>> null.
>>>
>>> Isn't it the way I am creating the modelMem object?
>>>
>>> ModelMaker modelMaker = ModelFactory.createFileModelMaker(/User/
>>> guilherme
>>> /ontology/vitalSign.owl);
>>> Model modeltmp = modelMaker.createDefaultModel();
>>> modelMem = ModelFactory.createOntologyModel(OntModelSpec.
>>> OWL_MEM_MICRO_RULE_INF, modeltmp);
>>>
>>
>> I don't think modelMaker.createDefaultModel() loads any data, just
>> creates an empty model. But I never use it so can't be sure.
>>
>> Try simply:
>>
>>    Model model = RDFDataMgr.loadModel("your-file-name") ;
>>
>> [Hope that's the right syntax, I'm still too used to FileManager.]
>>
>> Dave
>>
>>
>>
>>> On Wed, Feb 19, 2014 at 5:38 AM, Dave Reynolds <
>>> [email protected]>wrote:
>>>
>>>  On 19/02/14 03:20, Guilherme Maranhão wrote:
>>>>
>>>>  Hello guys,
>>>>>
>>>>> Those are the steps I am using to instantiate an OntClass object:
>>>>>
>>>>> // modelMem is an OntModel object.
>>>>> 1 - Reasoner reasoner = ReasonerRegistry.getOWLReasoner();
>>>>> 2 - reasoner = reasoner.bindSchema(modelMem);
>>>>> 3 - OntModelSpec ontModelSpec = OntModelSpec.OWL_DL_MEM_RULE_INF;
>>>>> 4 - ontModelSpec.setReasoner(reasoner);
>>>>> 5 - OntModel ontModel = ModelFactory.createOntologyModel(ontModelSpec,
>>>>> modelMem);
>>>>> 6 - OntClass stage3Hypertension = ontModel.getOntClass("
>>>>> http://www.semanticweb.org/ontologies/2013/1/
>>>>> Ontology1361391792831.owl#
>>>>> Stage3Hypertension
>>>>> ");
>>>>>
>>>>>
>>>> This is not your underlying problem but you have bound modelMem in
>>>> twice -
>>>> you have bound it to the reasoner and then applied that back to the same
>>>> model. It would be better to just have:
>>>>
>>>> OntModelSpec ontModelSpec = OntModelSpec.OWL_DL_MEM_RULE_INF;
>>>>
>>>> OntModel ontModel = ModelFactory.createOntologyModel(ontModelSpec,
>>>> modelMem);
>>>>
>>>> Though in fact I would recommend OWL_MEM_MICRO_RULE_INF as the best
>>>> default.
>>>>
>>>>
>>>>   After line 2, the console prompt shows a lot of warning messages, like
>>>>
>>>>> this:
>>>>>
>>>>> Fev 19, 2014 12:15:56 AM
>>>>> org.mindswap.pellet.jena.graph.query.GraphQueryHandler findTriple
>>>>> Warning: No query handler found for
>>>>> http://www.w3.org/1999/02/22-rdf-syntax-ns#type
>>>>> http://www.w3.org/1999/02/22-rdf-syntax-ns#type
>>>>> http://www.w3.org/1999/02/22-rdf-syntax-ns#Property
>>>>>
>>>>>
>>>> Those are messages from Pellet. Your above code does not include Pellet
>>>> so
>>>> either this isn't the code you are running or your "modelMem" in the
>>>> above
>>>> is actually Pellet-backed model.
>>>>
>>>> If the latter then you have a rule reasoner running over a rule reasoner
>>>> running over Pellet. Don't know why that would cause outright failures
>>>> but
>>>> certainly not a useful thing to do.
>>>>
>>>> To get help with Pellet you would need to ask the Pellet folks, Pellet
>>>> is
>>>> not part of Jena.
>>>>
>>>> Dave
>>>>
>>>>
>>>>
>>>
>>
>

Reply via email to