Dot Net Based Tool For Ontology Development Computer Science Essay
Disclaimer: This essay has been submitted by a student. This is not an example of the work written by our professional essay writers.
Any opinions, findings, conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of UK Essays.
Semantic Web is an efficient way of representing data on the current world-wide-web. Ontology is one of the vital components of semantic web. It is used to capture knowledge about some domain of interest and to describe the concepts in the domain and also to express the relationships that hold between those concepts. In this paper, we have proposed a Dot Net based tool for ontology development, reasoning and visualization. The last few years have witnessed the emergence of a large number of ontology editing tools that facilitates the ontology designers in the construction of ontologies.Tool for Ontology Development and Editing (TODE) has been developed realizing the dearth of a Dot Net based ontology editing tool. TODE 2.0 bumps up the earlier work on TODE through the development of a user friendly ontology visualization tool that aids the designer in analyzing any ontology from different outlooks. In addition, the TODE 2.0 also supports Reasoning.
Keywords: Ontology Editor, Dot Net based tool, Semantic Web, SPARQL
The term Semantic Web has been coined by Tim Berners-Lee. The Semantic Web is nothing but the second-generation Web. It weaves together a network of information that allows more efficiency, greater knowledge sharing, and ease of use. The Semantic Web is a web that is able to describe things in a way that computers can understand. Ontology consists of finite list of terms (or important concepts) and the relationships among the terms (or Classes of Objects.Semantic Web is not a single technology and it comprises of a number of components including ontology languages (RDF/RDFS, OWL, etc.), editing tools (Protégé, Ontolingua, etc.) and standards (WSMO, OWL-S etc.)Visualizers (OntoViz , Jambalaya , TGVizTab) and reasoneres (racer, pallet, Fact++) .
Ontologies, as sets of concepts and their interrelations in a specific domain, have proven to be a useful tool in the areas of digital libraries, the semantic web, and personalized information management. As a result, there is a growing need for effective ontology visualization for design, management and browsing. As the value of ontology based information systems is beginning to be realized, the mechanism of visualizing ontologies assumes importance. For small ontologies, it might be easy for the user to browse the full ontology and find relevant information. Special visualization techniques are required for large ontologies to enable the user to find the relevant information quickly.
Reasoning is the process of drawing conclusions from facts.". Ontology specifications, together with a large number of instance data, are becoming available on the Semantic Web in ontology languages such as RDFS and OWL. Access to data encoded in a semi-structured format as opposed to unstructured documents already facilitates many information integration tasks. However, the full power of ontologies can be only leveraged when the reasoning infrastructure is in place to process the vast amount of semi-structured information made available online. Reasoning will be an important building block in the future Semantic Web infrastructure. Automated reasoning has a broad range of application scenarios: advanced query answering services, schema matching and ontology alignment, and data integration across heterogeneous data sources, and personalization of web sites.
Ontology editor assists the ontology developer by providing a number of facilities like a friendly user interface for ontology creation, a collaborative environment where multiple users can work together and support for reasoning and inferencing etc. Ontology editor also provides facility to import and export ontology in languages like RDF, DAML, OWL and OIL. In addition, some ontology editors support well defined methodology for ontology creation.
Despite the availability of a large number of ontology editing tools, it is observed that no tool is developed in Dot Net Environment which supports reasoning and visualization of ontology. Protégé is a well known and probably the most stable, desktop based ontology editing tool developed by Stanford University. It provides support for RDF(S) and OWL. The tool is easily extendable via its plug-in feature; reasoner like Pellet can be attached with this tool and jambalaya is available for visualization. The availability of a tool in Dot Net Environment gives rise to development of supporting tools, visualizers, plug-ins, reasoning and inferencing tools. Due to un-availability of Dot Net based ontology editing tool, the Dot Net community is silent in this active area of research, while the open source community is very active in this area. For example, Protégé is a Java based tool, which has been extended further through a large number of plug-ins like tools for Natural Language Processing, reasoning and project management. Realizing this demand, we developed A Tool for Ontology Editing, reasoning and visualization which is a Dot Net based ontology editor.
In next sections, we will discuss our proposed ontology editing tool which supports reasoning and visualization of ontology. First, Literature review related to this Reasoning and visualization will be discussed. We will also discuss the implementation details. Finally, the paper will be concluded with future directions.
Reasoning is the process of drawing conclusion from facts. There are many rasoners available in open source environment. Pellet  is one of them. It is an open source reasoner for OWL 2 DL in Java. It provides standard reasoning services for OWL ontologies. For applications that need to represent and reason about information using OWL, Pellet is the best choice for systems where complete OWL DL reasoning is essential. Pellet includes support for OWL 2 profiles including OWL 2 ELFact++  are the new generation of the well-known FaCT OWL-DL reasoner. FaCT++ uses the established FaCT algorithms, but with a different internal architecture. Additionally, FaCT++ is implemented using C++ in order to create a more efficient software tool, and to maximize portability. RacerPro is an OWL reasoner and inference server for the Semantic Web. HermiT is the first publicly-available OWL reasoner based on a novel "hypertableau" calculus which provides much more efficient reasoning than any previously-known algorithm. 
Many visualization techniques are available for ontologies.OntoViz , based on AT&T's GraphViz software, provides customizable graphical visualizations of Protégé's ontologies. OntoViz generates graphs with very good clarity with little overlap between nodes. However, OntoViz graphs are static and non-interactive, making them non-suitable for certain purposes.
Jambalaya is based on ShriMP . ShriMP is an information visualization technique for navigating abstracted structures of complex information networks with animated zoom. Jambalaya plug-in integrates ShriMP into Protégé. It offers interchangeable views of nested graphs for interactive ontology navigation. Jambalaya supports wide range of layout algorithms such as Tree layout, Radial layout etc.
TGVizTab is another visualization plug-in for Protégé  which uses Touch Graph for graph infrastructure. It supports handling different types of relations and edge labeling. It allows for storing the generated graph in XML which can be viewed by other Touch Graph applications.
The implementation of TODE has done by a group in last year. It provides an easy-to-use interface for modeling any domain knowledge through the use of hierarchy of classes, their attributes, relationships and instances. Ontologies can be created easily through a well-defined methodology that can be exported further to a number of languages like RDF, OWL-Lite, N-Triple, N-3, RDBMS etc. To simplify the ontology creation, a one-tabbed, AJAX based and consistent web interface is provided for ontology creation. This is in contrast to existing ontology development tools that provides a multi-tabbed or multi-page interface for ontology creation. To develop a simplified web-based interface, they followed all the Human Computer Interaction (HCI) recommendations of W3C that are required for developing a user friendly web site.
They selected JENA library. It provides a comprehensive set of Java classes that can
be used for ontology creation, manipulation,
reasoning, inferencing and support for ontology languages like RDF and OWL. since, JENA is developed in Java it can't be directly used in Dot Net and they need to convert JENA code into Dot Net code. The IKVM Conversion Utility solves this problem by providing a console based environment for converting any Java class to Dot Net library. All business logic has been implemented in Visual C# and MS SQL Server has been used as a backend database for maintaining ontology repositories. ASP .NET and AJAX was selected for the development of view component of tool.
From this action we can view the properties of the class
From this action we can expand the sub class of the respective class
This is the name of ontology
This popup window shows the properties of the particular class
Fig1. Visualization of Ontology
Fig2. Visualization of Ontology showing Properties of a Class
This existing tool has many deficiencies like it has no visualization and reasoning support. For visualization we used ICE  information connection engine. ICE renders relational data in Silverlight. Users can explore and interact with the network of relationships and nodes. Based on a force directed layout, it can render non-hierarchical relationships, infinite datasets, and unrelated data sources. Fundamentally, we display nodes that are related to other nodes through links. Links behave like rubber bands (or springs), and nodes behave like magnets with the same polarity.
This conveniently automatically prevents nodes from overlapping with each other's IceDataSchema contains all classes that we need in our project (Root, RootCurrentNode, Node, Link, LinkGrammar,Action,LinkDrawingInformation,andNodeDrawingInformation).We need these classes and the .NET serialization API to dynamically generate an XML file that complies with the schema specification. A node is typically an entity coming from a database . Any user who makes ontology
Fig3. Reasoning of Ontology
saved in database. We retrieve that hierarchy of ontology classes and visualize it.In this way the user can see and understand large ontologies in better way.We used jena API for reasoning support.The number of predefined reasoner are available in Jena are follows:
Transitive reasoner,RDFS rule reasoner, OWL, OWL Mini, OWL Micro Reasoners,DAML micro reasoner, Generic rule reasoned.  For each type of reasoner there is a factory class (which
Model or by separating into two components - schema and instance data.In this reasoning Interface first of all user select an ontology file and upload it.Then he enter a SPARQL query in the query interface. Results of the Entered query are shown in the grid view.
We developed a Dot Net based tool for ontology editing, visualization and reasoning.The tool provides the facility to ontology developers to create ontologies in a simplified way using a well defined methodology and an easy-to-use GUI. It has facility for ontology visualization for purpose of better understanding. Also it has reasoning support so that a user can draw conclusion from different facts.