platform for ABox-based app

classic Classic list List threaded Threaded
9 messages Options
Reply | Threaded
Open this post in threaded view
|

platform for ABox-based app

grantpax
If you were a java novice and needed to get a visual, reasoning, interactive (read “creating and editing”), OWL ABox-centric application up and running as quickly as possible, what platform would you consider using? I’ve been looking into the OWL API with Tom Sawyer as a front end. It is daunting to my inexperienced eyes. I am speaking with both TopQuadrant and Franz today to see what their kit might bring to the party.

Thanks for your thoughts.
_______________________________________________
protege-dev mailing list
[hidden email]
https://mailman.stanford.edu/mailman/listinfo/protege-dev
Reply | Threaded
Open this post in threaded view
|

Re: platform for ABox-based app

Tania Tudorache
I would suggest WebProtege, which is very A-Box friendly, the UI is
customizable, it is pluggable, free and open-source, and implemented in
Java. You could easily create an application on top of it. Reasoning
will also be supported shortly.

Tania


On 01/13/2015 06:15 AM, Grant Pax wrote:
> If you were a java novice and needed to get a visual, reasoning, interactive (read “creating and editing”), OWL ABox-centric application up and running as quickly as possible, what platform would you consider using? I’ve been looking into the OWL API with Tom Sawyer as a front end. It is daunting to my inexperienced eyes. I am speaking with both TopQuadrant and Franz today to see what their kit might bring to the party.
>
> Thanks for your thoughts.
> _______________________________________________
> protege-dev mailing list
> [hidden email]
> https://mailman.stanford.edu/mailman/listinfo/protege-dev


_______________________________________________
protege-dev mailing list
[hidden email]
https://mailman.stanford.edu/mailman/listinfo/protege-dev
Reply | Threaded
Open this post in threaded view
|

Re: platform for ABox-based app

grantpax
Thank you, Tania. Intriguing. I guess the only significant concern I have is "proximity" of reasoner facility to the user interface (graph viz/editor). I want the reasoning feedback real-time - even pre-commit. Any thoughts there? Does WebProtege have transaction facility? If so, can it reason over uncommitted data?

> On Jan 13, 2015, at 2:21 PM, Tania Tudorache <[hidden email]> wrote:
>
> I would suggest WebProtege, which is very A-Box friendly, the UI is customizable, it is pluggable, free and open-source, and implemented in Java. You could easily create an application on top of it. Reasoning will also be supported shortly.
>
> Tania
>
>
> On 01/13/2015 06:15 AM, Grant Pax wrote:
>> If you were a java novice and needed to get a visual, reasoning, interactive (read “creating and editing”), OWL ABox-centric application up and running as quickly as possible, what platform would you consider using? I’ve been looking into the OWL API with Tom Sawyer as a front end. It is daunting to my inexperienced eyes. I am speaking with both TopQuadrant and Franz today to see what their kit might bring to the party.
>>
>> Thanks for your thoughts.
>> _______________________________________________
>> protege-dev mailing list
>> [hidden email]
>> https://mailman.stanford.edu/mailman/listinfo/protege-dev
>
>
> _______________________________________________
> protege-dev mailing list
> [hidden email]
> https://mailman.stanford.edu/mailman/listinfo/protege-dev

_______________________________________________
protege-dev mailing list
[hidden email]
https://mailman.stanford.edu/mailman/listinfo/protege-dev
Reply | Threaded
Open this post in threaded view
|

Re: platform for ABox-based app

Tania Tudorache
The reasoning would happen on the backend for WebProtege, not on the
client. However, the reasoning mechanism in WebProtege is very flexible,
and you could imagine committing some changes, the reasoner would run,
and retract the changes, if you are unhappy with the results. Your
custom app could implement this logic on top of the existing reasoning
infrastructure (which is still to be released). The reasoning
architecture is very lean, and it operates on diffs (so, it's easy to
"go back" to any state).

Matthew could give you more insight into this.

Tania


On 01/13/2015 01:18 PM, Grant Pax wrote:

> Thank you, Tania. Intriguing. I guess the only significant concern I have is "proximity" of reasoner facility to the user interface (graph viz/editor). I want the reasoning feedback real-time - even pre-commit. Any thoughts there? Does WebProtege have transaction facility? If so, can it reason over uncommitted data?
>
>> On Jan 13, 2015, at 2:21 PM, Tania Tudorache <[hidden email]> wrote:
>>
>> I would suggest WebProtege, which is very A-Box friendly, the UI is customizable, it is pluggable, free and open-source, and implemented in Java. You could easily create an application on top of it. Reasoning will also be supported shortly.
>>
>> Tania
>>
>>
>> On 01/13/2015 06:15 AM, Grant Pax wrote:
>>> If you were a java novice and needed to get a visual, reasoning, interactive (read “creating and editing”), OWL ABox-centric application up and running as quickly as possible, what platform would you consider using? I’ve been looking into the OWL API with Tom Sawyer as a front end. It is daunting to my inexperienced eyes. I am speaking with both TopQuadrant and Franz today to see what their kit might bring to the party.
>>>
>>> Thanks for your thoughts.
>>> _______________________________________________
>>> protege-dev mailing list
>>> [hidden email]
>>> https://mailman.stanford.edu/mailman/listinfo/protege-dev
>>
>> _______________________________________________
>> protege-dev mailing list
>> [hidden email]
>> https://mailman.stanford.edu/mailman/listinfo/protege-dev
> _______________________________________________
> protege-dev mailing list
> [hidden email]
> https://mailman.stanford.edu/mailman/listinfo/protege-dev


_______________________________________________
protege-dev mailing list
[hidden email]
https://mailman.stanford.edu/mailman/listinfo/protege-dev
Reply | Threaded
Open this post in threaded view
|

Re: platform for ABox-based app

grantpax
I assume “The reasoning architecture is very lean” means efficient/fast.

Any timeline on reasoning? Not looking for a commitment - just a rough, off-the-top-of-your-head estimate given where you are now. I’m sure it will change.

The initial deployment of my app will be a local install. Anything about that configuration cause you concerns?

Is there a sparql query facility? I can’t find it. That’s where I will bolt on my front end.

Thanks again.

> On Jan 13, 2015, at 4:41 PM, Tania Tudorache <[hidden email]> wrote:
>
> The reasoning would happen on the backend for WebProtege, not on the client. However, the reasoning mechanism in WebProtege is very flexible, and you could imagine committing some changes, the reasoner would run, and retract the changes, if you are unhappy with the results. Your custom app could implement this logic on top of the existing reasoning infrastructure (which is still to be released). The reasoning architecture is very lean, and it operates on diffs (so, it's easy to "go back" to any state).
>
> Matthew could give you more insight into this.
>
> Tania
>
>
> On 01/13/2015 01:18 PM, Grant Pax wrote:
>> Thank you, Tania. Intriguing. I guess the only significant concern I have is "proximity" of reasoner facility to the user interface (graph viz/editor). I want the reasoning feedback real-time - even pre-commit. Any thoughts there? Does WebProtege have transaction facility? If so, can it reason over uncommitted data?
>>
>>> On Jan 13, 2015, at 2:21 PM, Tania Tudorache <[hidden email]> wrote:
>>>
>>> I would suggest WebProtege, which is very A-Box friendly, the UI is customizable, it is pluggable, free and open-source, and implemented in Java. You could easily create an application on top of it. Reasoning will also be supported shortly.
>>>
>>> Tania
>>>
>>>
>>> On 01/13/2015 06:15 AM, Grant Pax wrote:
>>>> If you were a java novice and needed to get a visual, reasoning, interactive (read “creating and editing”), OWL ABox-centric application up and running as quickly as possible, what platform would you consider using? I’ve been looking into the OWL API with Tom Sawyer as a front end. It is daunting to my inexperienced eyes. I am speaking with both TopQuadrant and Franz today to see what their kit might bring to the party.
>>>>
>>>> Thanks for your thoughts.
>>>> _______________________________________________
>>>> protege-dev mailing list
>>>> [hidden email]
>>>> https://mailman.stanford.edu/mailman/listinfo/protege-dev
>>>
>>> _______________________________________________
>>> protege-dev mailing list
>>> [hidden email]
>>> https://mailman.stanford.edu/mailman/listinfo/protege-dev
>> _______________________________________________
>> protege-dev mailing list
>> [hidden email]
>> https://mailman.stanford.edu/mailman/listinfo/protege-dev
>
>
> _______________________________________________
> protege-dev mailing list
> [hidden email]
> https://mailman.stanford.edu/mailman/listinfo/protege-dev

_______________________________________________
protege-dev mailing list
[hidden email]
https://mailman.stanford.edu/mailman/listinfo/protege-dev
Reply | Threaded
Open this post in threaded view
|

Re: platform for ABox-based app

Tania Tudorache
Hi Grant,

I was waiting for Matthew to respond, but he is traveling. Matthew did
all the reasoning work, so he would be in a better position to repsond.
Until he is back, here is my tentative answer inline.

On 01/13/2015 03:01 PM, Grant Pax wrote:
> I assume “The reasoning architecture is very lean” means efficient/fast.
>
> Any timeline on reasoning? Not looking for a commitment - just a rough, off-the-top-of-your-head estimate given where you are now. I’m sure it will change.

The reasoning mechanism is already implemented, but we need to test it
thoroughly before we release it. I can't tell you a timeline before
confirming with Matthew, but I guess it should be in the next 2-3
months. Matthew might correct me.

> The initial deployment of my app will be a local install. Anything about that configuration cause you concerns?

You will need enough memory to load your ontology in memory, and also
for the reasoning. The amount of memory needed really depends on your
ontology and its complexity. You can check when running in desktop
Protege how much memory is used to load the ontology, and how much you
need to perform reasoning on it, to get an idea.

> Is there a sparql query facility? I can’t find it. That’s where I will bolt on my front end.

No, there is no SPARQL facility. It is in general not a good idea to
expose a SPARQL endpoint to your ontology/data, because people might run
all kind of expensive queries that don't necessarily make sense and
bring the server down.  There are other alternative approaches (maybe
supporting certain types of queries by using some UI templates, etc.) .

If you want your queries to take into account the inferred knowledge,you
could use the DL querying facilities from the OWL-API:
https://github.com/owlcs/owlapi/blob/master/contract/src/test/java/org/coode/owlapi/examples/DLQueryExample.java

If you prefer SPARQL, you could use one of these two approaches:
http://www.derivo.de/en/resources/sparql-dl-api.html
http://clarkparsia.com/pellet/faq/owlapi-sparql/

Tania

>
> Thanks again.
>
>> On Jan 13, 2015, at 4:41 PM, Tania Tudorache <[hidden email]> wrote:
>>
>> The reasoning would happen on the backend for WebProtege, not on the client. However, the reasoning mechanism in WebProtege is very flexible, and you could imagine committing some changes, the reasoner would run, and retract the changes, if you are unhappy with the results. Your custom app could implement this logic on top of the existing reasoning infrastructure (which is still to be released). The reasoning architecture is very lean, and it operates on diffs (so, it's easy to "go back" to any state).
>>
>> Matthew could give you more insight into this.
>>
>> Tania
>>
>>
>> On 01/13/2015 01:18 PM, Grant Pax wrote:
>>> Thank you, Tania. Intriguing. I guess the only significant concern I have is "proximity" of reasoner facility to the user interface (graph viz/editor). I want the reasoning feedback real-time - even pre-commit. Any thoughts there? Does WebProtege have transaction facility? If so, can it reason over uncommitted data?
>>>
>>>> On Jan 13, 2015, at 2:21 PM, Tania Tudorache <[hidden email]> wrote:
>>>>
>>>> I would suggest WebProtege, which is very A-Box friendly, the UI is customizable, it is pluggable, free and open-source, and implemented in Java. You could easily create an application on top of it. Reasoning will also be supported shortly.
>>>>
>>>> Tania
>>>>
>>>>
>>>> On 01/13/2015 06:15 AM, Grant Pax wrote:
>>>>> If you were a java novice and needed to get a visual, reasoning, interactive (read “creating and editing”), OWL ABox-centric application up and running as quickly as possible, what platform would you consider using? I’ve been looking into the OWL API with Tom Sawyer as a front end. It is daunting to my inexperienced eyes. I am speaking with both TopQuadrant and Franz today to see what their kit might bring to the party.
>>>>>
>>>>> Thanks for your thoughts.
>>>>> _______________________________________________
>>>>> protege-dev mailing list
>>>>> [hidden email]
>>>>> https://mailman.stanford.edu/mailman/listinfo/protege-dev
>>>> _______________________________________________
>>>> protege-dev mailing list
>>>> [hidden email]
>>>> https://mailman.stanford.edu/mailman/listinfo/protege-dev
>>> _______________________________________________
>>> protege-dev mailing list
>>> [hidden email]
>>> https://mailman.stanford.edu/mailman/listinfo/protege-dev
>>
>> _______________________________________________
>> protege-dev mailing list
>> [hidden email]
>> https://mailman.stanford.edu/mailman/listinfo/protege-dev
> _______________________________________________
> protege-dev mailing list
> [hidden email]
> https://mailman.stanford.edu/mailman/listinfo/protege-dev


_______________________________________________
protege-dev mailing list
[hidden email]
https://mailman.stanford.edu/mailman/listinfo/protege-dev
Reply | Threaded
Open this post in threaded view
|

Re: platform for ABox-based app

grantpax
Hey Tania,

Thanks for your reply. Inline below…

On Jan 15, 2015, at 5:55 PM, Tania Tudorache <[hidden email]> wrote:

Hi Grant,

I was waiting for Matthew to respond, but he is traveling. Matthew did all the reasoning work, so he would be in a better position to repsond. Until he is back, here is my tentative answer inline.

On 01/13/2015 03:01 PM, Grant Pax wrote:
I assume “The reasoning architecture is very lean” means efficient/fast.

Any timeline on reasoning? Not looking for a commitment - just a rough, off-the-top-of-your-head estimate given where you are now. I’m sure it will change.

The reasoning mechanism is already implemented, but we need to test it thoroughly before we release it. I can't tell you a timeline before confirming with Matthew, but I guess it should be in the next 2-3 months. Matthew might correct me.

Thank you.


The initial deployment of my app will be a local install. Anything about that configuration cause you concerns?

You will need enough memory to load your ontology in memory, and also for the reasoning. The amount of memory needed really depends on your ontology and its complexity. You can check when running in desktop Protege how much memory is used to load the ontology, and how much you need to perform reasoning on it, to get an idea.

Helpful.


Is there a sparql query facility? I can’t find it. That’s where I will bolt on my front end.

No, there is no SPARQL facility. It is in general not a good idea to expose a SPARQL endpoint to your ontology/data, because people might run all kind of expensive queries that don't necessarily make sense and bring the server down.  There are other alternative approaches (maybe supporting certain types of queries by using some UI templates, etc.) .

If you want your queries to take into account the inferred knowledge,you could use the DL querying facilities from the OWL-API:
https://github.com/owlcs/owlapi/blob/master/contract/src/test/java/org/coode/owlapi/examples/DLQueryExample.java

If you prefer SPARQL, you could use one of these two approaches:
http://www.derivo.de/en/resources/sparql-dl-api.html
http://clarkparsia.com/pellet/faq/owlapi-sparql/

Interesting. Yeah, I would lock down the endpoint to serve the local app only. I understand why one wouldn’t want it out for public consumption. The trouble is that my graph visualization kit speaks to a finite set of data sources. Of those, SPARQL is the only adapter that could be reasoner-supported in this situation.

Maybe I just have to build from the OWL API up. Wow.

Now and always, thank you.


Tania


Thanks again.

On Jan 13, 2015, at 4:41 PM, Tania Tudorache <[hidden email]> wrote:

The reasoning would happen on the backend for WebProtege, not on the client. However, the reasoning mechanism in WebProtege is very flexible, and you could imagine committing some changes, the reasoner would run, and retract the changes, if you are unhappy with the results. Your custom app could implement this logic on top of the existing reasoning infrastructure (which is still to be released). The reasoning architecture is very lean, and it operates on diffs (so, it's easy to "go back" to any state).

Matthew could give you more insight into this.

Tania


On 01/13/2015 01:18 PM, Grant Pax wrote:
Thank you, Tania. Intriguing. I guess the only significant concern I have is "proximity" of reasoner facility to the user interface (graph viz/editor). I want the reasoning feedback real-time - even pre-commit. Any thoughts there? Does WebProtege have transaction facility? If so, can it reason over uncommitted data?

On Jan 13, 2015, at 2:21 PM, Tania Tudorache <[hidden email]> wrote:

I would suggest WebProtege, which is very A-Box friendly, the UI is customizable, it is pluggable, free and open-source, and implemented in Java. You could easily create an application on top of it. Reasoning will also be supported shortly.

Tania


On 01/13/2015 06:15 AM, Grant Pax wrote:
If you were a java novice and needed to get a visual, reasoning, interactive (read “creating and editing”), OWL ABox-centric application up and running as quickly as possible, what platform would you consider using? I’ve been looking into the OWL API with Tom Sawyer as a front end. It is daunting to my inexperienced eyes. I am speaking with both TopQuadrant and Franz today to see what their kit might bring to the party.

Thanks for your thoughts.
_______________________________________________
protege-dev mailing list
[hidden email]
https://mailman.stanford.edu/mailman/listinfo/protege-dev
_______________________________________________
protege-dev mailing list
[hidden email]
https://mailman.stanford.edu/mailman/listinfo/protege-dev
_______________________________________________
protege-dev mailing list
[hidden email]
https://mailman.stanford.edu/mailman/listinfo/protege-dev

_______________________________________________
protege-dev mailing list
[hidden email]
https://mailman.stanford.edu/mailman/listinfo/protege-dev
_______________________________________________
protege-dev mailing list
[hidden email]
https://mailman.stanford.edu/mailman/listinfo/protege-dev


_______________________________________________
protege-dev mailing list
[hidden email]
https://mailman.stanford.edu/mailman/listinfo/protege-dev


_______________________________________________
protege-dev mailing list
[hidden email]
https://mailman.stanford.edu/mailman/listinfo/protege-dev
Reply | Threaded
Open this post in threaded view
|

Re: platform for ABox-based app

kotsomit
In reply to this post by Tania Tudorache
We would also be very much interested in a reasoning mechanism for webprotege.
In fact, we have been thinking to create our own, by interfacing a reasoner externally and synchronizing with the ontology (ies) on the file system level.
a) Is this any similar to what is planned/implemented?
b) Do you think this approach would be feasible?
c) Are there any pointers on how webprotege maintains ontologies as files? What about versioning?

Dimitrios

Tania Tudorache wrote
The reasoning mechanism is already implemented, but we need to test it
thoroughly before we release it. I can't tell you a timeline before
confirming with Matthew, but I guess it should be in the next 2-3
months. Matthew might correct me.
Reply | Threaded
Open this post in threaded view
|

Re: platform for ABox-based app

Matthew Horridge-2
Administrator
Hi,

The current design is to have a reasoning server which gets synchronised by WebProtege.  You can find the code for the sever here:


and a branch of WebProtege that connects to it here:


It’s not quite ready for production yet.

If you check the code out then you need to build the reasoning server using maven first and install it to your local repository.  You then need to launch the server, using the ReasoningServerMain class.  The port will be 3456 (this should be configurable, but it isn’t at the moment).

You can pose DL queries using the DL Query Portlet.  If you make a change to the ontology the reasoner will automatically be synchronised - the particular revision that the DL Query is answered with respect to is shown in the results list.

Hope this helps,

Cheers,

Matthew





On 22 Jan 2015, at 07:49, kotsomit <[hidden email]> wrote:

We would also be very much interested in a reasoning mechanism for
webprotege.
In fact, we have been thinking to create our own, by interfacing a reasoner
externally and synchronizing with the ontology (ies) on the file system
level.
a) Is this any similar to what is planned/implemented?
b) Do you think this approach would be feasible?
c) Are there any pointers on how webprotege maintains ontologies as files?
What about versioning?

Dimitrios


Tania Tudorache wrote
The reasoning mechanism is already implemented, but we need to test it
thoroughly before we release it. I can't tell you a timeline before
confirming with Matthew, but I guess it should be in the next 2-3
months. Matthew might correct me.





--
View this message in context: http://protege-project.136.n4.nabble.com/platform-for-ABox-based-app-tp4662119p4662202.html
Sent from the Protege Developer mailing list archive at Nabble.com.
_______________________________________________
protege-dev mailing list
[hidden email]
https://mailman.stanford.edu/mailman/listinfo/protege-dev


_______________________________________________
protege-dev mailing list
[hidden email]
https://mailman.stanford.edu/mailman/listinfo/protege-dev