Search Mailing List Archives


Limit search to: Subject & Body Subject Author
Sort by: Reverse Sort
Limit to: All This Week Last Week This Month Last Month
Select Date Range     through    

[protege-owl] [Pellet-users] Starting with ProtegeOwl Classes

Tania Tudorache tudorache at stanford.edu
Wed Aug 6 15:31:13 PDT 2008


Hi Joseph,

I think your questions are more related to Protege-OWL than Pellet. I 
think we should continue the discussion on the Protege-OWL mailing list. 
I've added it into the cc.

Evren Sirin wrote:
>
>
> On Wed, Aug 6, 2008 at 3:17 PM, Kormann, Joseph 
> <joseph.kormann at lmco.com <mailto:joseph.kormann at lmco.com>> wrote:
>
>     Tim,
>
>     I put some other emails to the Protégé site. I tried using the
>     examples from
>     <http://protege.stanford.edu/plugins/owl/api/ReasonerAPIExamples.html>
>     and others than Tania recommended online.
>
The link you gave is the old reasoner API. I suppose you meant this one:
I suppose you mean this one:  
http://protegewiki.stanford.edu/index.php/ProtegeReasonerAPI

>
>     A couple of problems that I ran into:
>     - Converting from a JenaOwlModel into an OntModel is a one-way
>     process. The OntModel, which can execute Pellet, needs to load the
>     namespaces *again* and it uses the URLs provided, not the
>     local-file references. I don't want to rework all the existing
>     code into Jena just yet.
>

I don't know what you mean here.. When invoking the direct connection to 
Pellet, the Protege OWL internal model is converted either to a Jena 
model that uses the Pellet reasoner, or to an OWL-API model.  (Default 
in the UI is OWL-API).

>
> I don't know why reloading is required but normally if you have a Jena 
> model you can create a Pellet-backed model by doing
>
> OntModel pelletModel = ModelFactory.createOntologyModel( 
> PelletReasonerFactory.THE_SPEC, originalModel );
>
> If there are SWRL rules in the model, Pellet will automatically 
> recognize and reason with them. There are examples in the Pellet 
> distribution with more examples.
>  
>
>
>     - Running the documented ProtegePellet class worked great for
>     class-level inference, however I didn't see it run the SWRL that
>     is in the OWL Model. 
>
>
> I don't know if Protege translates SWRL rules into the Jena OntModel. 
> But one problem that might occur is when you use the SWRL builtins 
> supported by the SWRLTab of Protege. Pellet does not support those 
> built-in extensions and would ignore rules that contain any 
> unsupported built-in (and log a warning message about it).

The Jena implementation of the Protege-OWL reasoner 
(ProtegePelletJenaReasoner) will convert all the SWRL rules and they are 
sent to Pellet. So you will get in the OWL Model all the SWRL related 
inferences. As Evren said, if you are using custom built-ins from the 
SWRL library, Pellet does not ||support those, and they will not be 
executed.

The default direct connection to Pellet available in Protege 3.4 is the 
OWL-API implementation (ProtegePelletOWLAPIReasoner), that does not 
convert the SWRL rules. So, make sure that you are using in your code 
the ProtegePelletJenaReasoner, rather than the 
ProtegePelletOWLAPIReasoner. We already have the code for the latter one 
but it is not included in the distribution.

If you would like to continue this thread, please do so on the 
Protege-OWL mailing list.

Thanks,
Tania*||*


>
> Cheers,
> Evren
>  
>
>     I've had problems with Protégé 3.4b120 and 3.4b504 about executing
>     SWRLs in the Protégé UI - those were posted to the Protégé mail list.
>
>     -Joseph
>
>     > -----Original Message-----
>     > From: Timothy Redmond [mailto:tredmond at stanford.edu
>     <mailto:tredmond at stanford.edu>]
>     > Sent: Wednesday, August 06, 2008 3:11 PM
>     > To: Kormann, Joseph; Pellet Users List
>     > Subject: Re: [Pellet-users] Starting with ProtegeOwl Classes
>     >
>     >
>     > This message almost looks like it belongs more on the protege owl
>     > mailing list.
>     >
>     > There are items that belong here - how to use pellet with the
>     owl api
>     > (I suspect that is actually trivially easy...) and how to use pellet
>     > with an OntModel.  But in general, there are people  on the protege
>     > owl mailing list who know all the choices on how to use the Protege
>     > Owl api and pellet.  This includes using  the jena pellet
>     reasoner and
>     > the owlapi reasoner through protege owl.
>     >
>     > -Timothy
>     >
>     > On Aug 6, 2008, at 6:02 AM, Kormann, Joseph wrote:
>     >
>     > > I'm starting with ProtegeOwl Classes, mainly because of legacy
>     code
>     > > we cannot change at this point. I want to use Pellet as the
>     > > reasoner. The Protégé Pellet wrapper does not appear to be working
>     > > for SWRL, so I'm looking at how to use the OwlApi classes.
>     > >
>     > > I can get an OntModel from ProtegeOwl's JenaOwlModel object.
>     What is
>     > > the right sequence of events to execute the Pellet reasoner
>     against
>     > > it?
>     > >
>     > > Thanks.
>     > > _______________________________________________
>     > > Pellet-users mailing list
>     > > Pellet-users at lists.owldl.com <mailto:Pellet-users at lists.owldl.com>
>     > > http://lists.owldl.com/mailman/listinfo/pellet-users
>     > > _______________________________________________
>     > >
>     > > Sponsored by Clark & Parsia, LLC http://clarkparsia.com/
>
>     _______________________________________________
>     Pellet-users mailing list
>     Pellet-users at lists.owldl.com <mailto:Pellet-users at lists.owldl.com>
>     http://lists.owldl.com/mailman/listinfo/pellet-users
>     _______________________________________________
>
>     Sponsored by Clark & Parsia, LLC http://clarkparsia.com/
>
>




More information about the protege-owl mailing list