W3C home > Mailing lists > Public > www-rdf-rules@w3.org > November 2007

Re: SWRL Implementations

From: Martin O'Connor <martin.oconnor@stanford.edu>
Date: Wed, 21 Nov 2007 09:55:36 -0800
Message-ID: <47447118.5020203@stanford.edu>
To: Somaya Aboulwafa <somaya.ahmad@gmail.com>
CC: www-rdf-rules@w3.org

Somaya Aboulwafa wrote:

> Many thanks for all your replies.
>  
> I have two questions here, you said that: "The SWRLTab performs 
> inference using a Jess back end and while the implementation supports 
> nearly all of SWRL it does not consider all OWL axioms during 
> inference. However, the latest Protege-OWL 3.4 beta also has a direct 
> connection to the Pellet reasoner, which has a much more formally 
> sound implementation of SWRL, and is also under active development. 
> However, Pellet has limited built-in support."
>  
> Does this mean that if I used SWRLTab with Jess back-end then I won't 
> be able to reason over all the OWL axioms in my swrl ontology? If so, 
> is there any workaround to this problem?

The Jess back end is very much a partial implementation. When I 
developed it (in 2005) there were no usable SWRL implementations. Pellet 
and other OWL reasoners with SWRL support should eventually replace it.

However, in the work that we have been doing with SWRL in the past 
several years and judging from user emails in the Protege-OWL mailing 
list, it became clear that SWRL's built-in support is invaluable when 
tacking many types of problems. In addition to the core built-in library 
described in the SWRL Submission, I have implemented libraries to work 
with XML documents, temporal information, and to support direct TBox 
querying. I have also implemented a built-in library that effectively 
turns SWRL into a query language - called SQWRL. There is also a 
subsystem that allows developers to write their own built-in libraries 
in Java [1].

Since current reasoners do not have strong built-in support and no 
convenient mechanism to incorporate new libraries, the Jess back end is 
essential for our current needs.

>  
> Also if I used SWRLTab with Pellet then I won't be able to make use of 
> the SWRL-builtins implmemntation made by SWRLTab?!

No.

Martin O'Connor

[1] SWRL Built-in Bridge: 
http://protege.cim3.net/cgi-bin/wiki.pl?action=browse&id=SWRLBuiltInBridge&revision=5 


> Thanks and regards,
> Somaya
>
>
> On Nov 19, 2007 4:25 AM, Martin O'Connor <martin.oconnor@stanford.edu 
> <mailto:martin.oconnor@stanford.edu>> wrote:
>
>
>     The SWRLTab in the current Protege-OWL 3.4 beta supports most of the
>     core SWRL built-ins [1] and has an expanding set of other built-in
>     libraries [2]. Protege 3.4 has a SWRL/RDF parser; Protege 4 alpha also
>     has a SWRL/OWLX parser, though the SWRLTab will not be available in
>     Protege 4 for several months. The SWRLTab also has a SWRL-based OWL
>     query language called SQWRL [3]. All SWRLTab functionality is
>     accessible through a fully documented set of Java APIs [4].
>
>     The SWRLTab performs inference using a Jess back end and while the
>     implementation supports nearly all of SWRL it does not consider all
>     OWL axioms during inference. However, the latest Protege-OWL 3.4 beta
>     also has a direct connection to the Pellet reasoner, which has a much
>     more formally sound implementation of SWRL, and is also under active
>     development. However, Pellet has limited built-in support.
>
>     I'm superficially familiar with the other systems you mention but I do
>     not know them in enough detail to answer your questions. Perhaps
>     others here can.
>
>     Martin O'Connor
>
>     [1] http://protege.cim3.net/cgi-bin/wiki.pl?CoreSWRLBuiltIns
>     [2]
>     http://protege.cim3.net/cgi-bin/wiki.pl?SWRLTabBuiltInLibraries
>     <http://protege.cim3.net/cgi-bin/wiki.pl?SWRLTabBuiltInLibraries>
>     [3] http://protege.cim3.net/cgi-bin/wiki.pl?SQWRL
>     [4] http://protege.cim3.net/cgi-bin/wiki.pl?SWRLTab
>     <http://protege.cim3.net/cgi-bin/wiki.pl?SWRLTab>
>
>     Quoting Somaya Aboulwafa <somaya.ahmad@gmail.com
>     <mailto:somaya.ahmad@gmail.com>>:
>
>     > Hi,
>     >
>     >  I have recognized some swrl implementations like Pellet,
>     Bossam, KOAN2,
>     > RacerPro, SweetRules (Jena2 rules), SWRLJessTAB (in protege),
>     R2ML(REWERSE).
>     > And i need to choose one that have the following features:
>     >
>     > 1- Applies most features of SWRL, like (SWRL/OWLX Parser,
>     SWRL/RDF Parser,
>     > SWRL Math Built-Ins, SWRL String Built-Ins, SWRL Comparison
>     Built-Ins, SWRL
>     > Boolean Built-Ins, SWRL Date, Time and Duration Built-Ins,
>     etc.). I know
>     > that almost all of the above implemenattion takes only a
>     decidable frgment
>     > of SWRL. but i need the one that takes the largest fragment
>     without going
>     > through the decidability problem.
>     > 2- Reliable resoning; no need for manual checking of the results.
>     > 3- Java API where i can use it from within java applications.
>     >
>     > Thanks and regards,
>     > Somaya
>     >
>
>
>
Received on Wednesday, 21 November 2007 17:55:49 GMT

This archive was generated by hypermail 2.2.0+W3C-0.50 : Monday, 7 December 2009 10:53:14 GMT