Sunday, 15 February 2015

Collaborative ontology editing with the use of Fluent Editor and the Ontorion Server

In the latest release of Fluent Editor, we have implemented a simple and intuitive way for multiple users to edit the same ontology at the same time. This is possible by using the functionalities of both Fluent Editor and Cognitum's scalable knowledge management system Ontorion. In this article we will try to give you a general understanding of how this concurrent editing of ontologies is working.

As a comment we would like to stress that the component that we will show you has been implemented in C# using the Ontorion API (that is part of the Ontorion Server). If thus have access to the Ontorion API and Ontorion Server, you can implement all functionalities that you see in this article in your custom program. For more information about Ontorion Server and the Ontorion API you can contact us here.

First of all open Fluent Editor, click File, Open&Import , Ontorion Server and then Connect to Ontorion.

You will thus see the Ontorion connection window where you need to specifty the username and password and the database to which you want to connect. In this case we will connect as the user "john.doe" that has access only to a database ItExample. The database has been created by exporting the Simple It infrastructure template in Fluent Editor to Ontorion.

When you click Connect, you will connect to Ontorion and Fluent Editor will enter in an Ontorion mode. In this mode you can:
  • download the module corresponding to a certain entity stored in the database
  • modify and save the changes
  • refresh the current loaded knowledge
  • do sparql queries directly to Ontorion
  • see the taxonomy tree of the concepts stored in the database
In this screenshot, we show the Taxonomy tree window that when in Ontorion Mode will generate the taxonomy tree directly from Ontorion

In this other screenshot we show that in the Server tab if you start writing, Fluent Editor will autocomplete with all possible entities directly taken from Ontorion.

After clicking on one of the entities, this entity will be added to the signature and the module relative to this entity will be downloaded from Ontorion. In this case we have downloaded the module for "an application" and got back all sentences necessary to reason over the "application" concept.

Now that we have introduced the Ontorion mode in Fluent Editor, we would like to show how this Ontorion mode can be used for more than one user to add or edit the knowledge contained in Ontorion.
We will simulate the multi-user behavior in a local environment, You can see this in the screenshot that follows in which you can see that we are on the left connected as user mary.rose and on the right as john.doe. When deploying, each user will be connected to a remote Ontorion Server from his/her own computer. In this screenshot, John.doe added a sentence (in black) to the module.

He will then click on Save Changes

The will show to him the changes he made and clicking Save it will commit the changes to Ontorion.

After the changes have been committed, the other user (mary.rose) will see on her Fluent Editor a Resync Needed icon, telling the user that the knowledge he/she is using is not up to date.

If the user then clicks Refresh, the changes will be downloaded from Ontorion

and the user will thus see the sentences added (or removed) by the other user and the user that modified the knowledge.

After clicking Change these modifications will be loaded in the local copy of the user and the knowlecge will be again in sync.

If you want to learn more about Fluent Editor 2014 R2, visit this link.

*) FluentEditor 2014 R2, ontology editor, is a comprehensive tool for editing and manipulating complex ontologies that uses Controlled Natural Language. Fluent editor provides one with a more suitable for human users alternative to XML-based OWL editors. It's main feature is the usage of Controlled English as a knowledge modeling language. Supported via Predictive Editor, it prohibits user from entering any sentence that is grammatically or morphologically incorrect and actively helps the user during sentence writing. 

No comments:

Post a Comment