You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@stanbol.apache.org by Enrico Daga <en...@gmail.com> on 2011/04/18 15:17:47 UTC

Reasoning about reasoners

Dear Stanbol friends,
as you know there are some issues related to three LGPL dependencies
in the code.

Briefly, this is the status:
* OWLApi -> solved, the latest code in SVN is dual licensed
* OWLLink -> going to be solved, we have informal guarantees it will
be delivered dual licensed, as OWLApi
* HermiT -> this is still a problem, and is the main reason of this e-mail

The stanbol/reasoners module offers some rest based reasoning
services. They come with a built-in reasoner (HermiT[1], currently),
or a binding to an OWL Link[2, 3] client.
HermiT cannot be used right now. It is LGPL v3 licensed and includes
another LGPL dependency (JAutomata). Hermit team cannot devolve time
to fix this for licensing needs. We can see if this can be overcomed
by contacting the JAutomata maintainers but I would not see it as a
solution for the near future.

OWLLink will be released in a dual license fashion soon, this means
that we will provide extendibility of reasoners through it (users can
then setup an OWLLink server with HermiT, Pellet, for instance).

But we need to provide to the Stanbol users some base reasoning
capabilities embedded in the default distribution. Actually, it seems
that do not exists a OWL2 reasoner with a license compatible with
Apache criteria.

The Jena project (now incubating in Apache[4] ) incudes a rule based
reasoner, which has also a default configuration which supports a
subset of OWL axioms (known as OWL lite, similar to OWL EL
profile[5]). If anybody wants can have more details about OWL profiles
here[6] -  in two words is a way of restricting the number of
statements supported by the language to have more efficiency.
What is interesting is that Stanbol comes with a rule system
(stanbol/rules) which is currently used for graph refactoring
operations, and can therefore adapt to work with the Jena reasoner.

We would have:
* A default OWL Lite reasoner as built-in DL reasoner.
* A generic rule based reasoner which could be fed by stanbol recipes
(in the future we could define different instances based on different
Stanbol recipes, or we can study/test more 'profiles', for specific
tasks)
We would loose:
* Support for some statements of OWL2 in the default built in
reasoner, for instance complex Class expressions in axiom subjects.

Corrections/extensions of what I'm writing are welcome, of course.

I propose to concentrate the work, for the moment, to these tasks:
+ Add Jena rule based reasoner as a new separate inference module
inside the reasoners package;
+ Implement the Reasoners OWLApi interface to adapt to Jena rule based
inference engine with OWL lite profile;
+ Remove HermiT fro within the reasoners module

What do you think? Other ideas?

Enrico


[1] http://hermit-reasoner.com/
[2] http://www.owllink.org/
[3] http://owllink-owlapi.sourceforge.net/
[4] http://incubator.apache.org/jena/
[5] http://jena.sourceforge.net/inference/
[6] http://www.w3.org/TR/owl2-profiles/





-- 
Enrico Daga

--
http://www.enridaga.net
skype: enri-pan

Re: Reasoning about reasoners

Posted by Olivier Grisel <ol...@ensta.org>.
2011/4/18 Andrea Giovanni Nuzzolese <nu...@cs.unibo.it>:

> I am pretty sure that you can map rdfQuery to Jena and Stanbol Rules. The
> inverse depends
> on the expressivity of the rules (e.g. use of comparison or string built-in
> primitives from Jena do not seem to be supported in rdfQuery).

Thanks this is exactly the kind of insight I was looking for. Don't
hesitate to gather such remarks on a wiki page somewhere or as a
markdown document in the stanbol site folder on svn.

-- 
Olivier
http://twitter.com/ogrisel - http://github.com/ogrisel

Re: Reasoning about reasoners

Posted by Andrea Giovanni Nuzzolese <nu...@cs.unibo.it>.
On Apr 18, 2011, at 3:44 PM, Olivier Grisel wrote:

> 2011/4/18 Enrico Daga <en...@gmail.com>:
>
> Thanks Enrico for taking the time to write such a detailed wrappup.
>
>> I propose to concentrate the work, for the moment, to these tasks:
>> + Add Jena rule based reasoner as a new separate inference module
>> inside the reasoners package;
>> + Implement the Reasoners OWLApi interface to adapt to Jena rule  
>> based
>> inference engine with OWL lite profile;
>> + Remove HermiT fro within the reasoners module
>>
>> What do you think? Other ideas?
>
> I am fully +1.

Fully +1.
I also like the idea of using the Stanbol rules together with Jena  
inference.
I think that a default OWL Lite reasoner is a compromise between  
expressivity and efficiency.
Considering that OWL-Link will be released with a dual licence, those  
interested in OWL-DL reasoning
may use an external DL reasoner via OWL-Link.

> Also could you or someone else do a quick comparative study of the
> Jena reasoner and RDFquery javascript rules system and reasoner and
> tell whether we could have a way to translate a set of rules from one
> reasoner to another while keeping the same operational semantics, and
> if not what would be missing on one side or the other to achieve that
> goal.

I am pretty sure that you can map rdfQuery to Jena and Stanbol Rules.  
The inverse depends
on the expressivity of the rules (e.g. use of comparison or string  
built-in primitives from Jena do not seem to be supported in rdfQuery).

>
> -- 
> Olivier
> http://twitter.com/ogrisel - http://github.com/ogrisel

--
Andrea Giovanni Nuzzolese
Semantic Technology Laboratory (STLab)
Institute for Cognitive Science and Technology (ISTC)
National Research Council  (CNR)
Via Nomentana 56, Roma - Itay







Re: Reasoning about reasoners

Posted by Olivier Grisel <ol...@ensta.org>.
2011/4/18 Enrico Daga <en...@gmail.com>:

Thanks Enrico for taking the time to write such a detailed wrappup.

> I propose to concentrate the work, for the moment, to these tasks:
> + Add Jena rule based reasoner as a new separate inference module
> inside the reasoners package;
> + Implement the Reasoners OWLApi interface to adapt to Jena rule based
> inference engine with OWL lite profile;
> + Remove HermiT fro within the reasoners module
>
> What do you think? Other ideas?

I am fully +1.

Also could you or someone else do a quick comparative study of the
Jena reasoner and RDFquery javascript rules system and reasoner and
tell whether we could have a way to translate a set of rules from one
reasoner to another while keeping the same operational semantics, and
if not what would be missing on one side or the other to achieve that
goal.

-- 
Olivier
http://twitter.com/ogrisel - http://github.com/ogrisel