Thursday, April 9, 2009

Semantic Web and Business (Part 2)

In the last post, I talked about business' implicit ontologies and using semantic computing to help map and align different ontologies. In this post, I want to spend some time on the basics of ontology analysis and what a semantic (description logic) reasoner can do.

A description-logic reasoner (DL reasoner) takes concepts, individual instances of those concepts, roles (relationships between concepts and individuals) and sometimes constraints and rules - and then "reasons" over them to find inconsistencies (errors), infer new information, and determine classifications and hierarchies. Some basic relationships that are always present come from first-order logic - like intersections, unions, negations, etc. These are explicitly formalized in languages like OWL.

The reasoner that I am now using is Pellet from Clark and Parsia (http://clarkparsia.com/pellet/). It is integrated with Protege (which I mentioned in an earlier post), but also operates standalone. The nice thing is that Pellet has both open-source and commercial licenses to accomodate any business model - and is doing some very cool research on data validation and probabilistic reasoning (which you can read about on their blog, http://clarkparsia.com/weblog/).

How cool is it when you can get a program to tell you when your vocabulary is inconsistent or incomplete? Or, when a program can infer new knowledge for you, when you align two different vocabularies and then reason over the whole? No more relying on humans and test cases to spot all the errors!

No comments:

Post a Comment