Showing posts with label C#. Show all posts
Showing posts with label C#. Show all posts

Wednesday, 22 April 2015

Using Active Rules on Fluent Editor

Active rules is the mechanism Fluent Editor provides for executing custom imperative code in C# upon meeting certain criteria described as SWRL rules. Considering that standard SWRL rule axioms consist of two parts, an antecedent (body) and consequent (head), the body part of active rules exactly follows the standard format of SWRL rules. The difference from standard SWRL lies on the head part, on which you can add your custom C# code as a set of execution commands. We provide some mechanism to deal with the nature of distributed environments through a set of core built-ins. Available functions to use in active rules are as follows:
 
  • KnowledgeInsert(string knowledge) : Inserts knowledge into your ontology.
  • KnowledgeDelete(string knowledge) : Deletes knowledge into your ontology.
  • WriteMessage(string msg) : Prints msg on Active Rules Output window. 

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.

Monday, 19 January 2015

Mixing Text Mining with Semantic Technologies - sample application.

The very broad subject of processing the natural language is incredibly hot nowadays. In many cases, a regular text mining approach is not adequate to the problems that we are facing. Therefore text mining methods are mixed with Natural Language Processing(NLP) methods, like also, with semantic technologies - what gives better results. One of such a problem is how to find out, if two sentences are semantically equal or not.

The solution for the above problem could be used on many fields. One of them is detection of an abusive clauses inside a contract. Sometimes it's really hard to understand correctly, the exact meaning of a clause inside a contract, even for a specialists. For a sake of presentation I have developed a simple application prototype which attempts to solve this problem. Application was developed in C# and it uses Ontorion SDK.

Input

Before running the application we need three files:
  1. File with contract in which we will attempt to detect abusive clauses.
  2. File with abusive clauses.
  3. File with ontology.

Thursday, 9 October 2014

OWL API for .NET

When developing semantic technologies with .Net, it is useful to have access to the OWL standard Api. As the OWL Api is written in Java, this is not always a simple task. Therefore we have created an open source project in Codeplex: OWL API for .Net.

OWLAPI.NET is an open source project that port the java OWLAPI in .Net. In this project we have included the scripts to compile (through IKVM) the OWLAPI library and the reasoners jar in Windows libraries (dll). Furthermore in this project we have a console test application, a .Net version of the Owl reasoner interface and the sample implementation of this interface for HermiT and Pellet.

In the console application, it is possible to test the reasoners and the examples from the OWLAPI examples.