Approach To Build Ontology Library Computer Science Essay

Published: Last Edited:

This essay has been submitted by a student. This is not an example of the work written by our professional essay writers.

In this paper we suggest an approach to bluid ontology library for academic portal that used Semantic Web technologies: RDF, XML, ontology, Simple Protocol and RDF Query Language (SPARQL) besides ASP.NET language. The OntoStudio, dotNetRDFstore, OntoMat, Ontobroker, SQL server 2005 and Visual Studio 2008 programs will be used also in this paper to achieve the proposed OntoLib and create ontologies library component

OntoLib enables the Academic portal faculty to have their research papers published in one centralized place and make it easy for them to find the research papers that belongs to their colleges. This research papers is added to the OntoLib using a Semantic Web model and stored in a knowledge base using ontology. In this paper an OnloLib is a Semantic Web components that is lead to an intelligent Web.

Similar studies have shown some results and conclusions regarding the OntoLib and academic web portals. Alexander et al. [Maedche et al., 2003] have done a similar research paper talking about "SEAL - A Framework for Developing Semantic Web PortALs", they developed a generic approach for developing semantic portals. This approach is based on enriching the portal with utilized semantics. The main goal of their SEAL framework origin from Ontobroker is to allow users to search for knowledge on the Web. Yuangui Lei et al. [Lei et al., 2005] presented their work which is KMi semantic web portal infrastructure. They specified three main components for the infrastructure, an automated metadata extraction tool that supports the extraction of high quality metadata from heterogeneous sources, an ontology driven question answering tool which makes use of the domain specific ontology and the semantic metadata to answers questions in natural language format, and semantic search engine which enhances traditional text based searching. Their infrastructure contains a source data layer, extraction layer, a semantic data layer, a semantic service layer, and a presentation layer. Nicola Guarino and Pierdaniele Giaretta (ref) presented in their papers Ontologies and Knowledge Bases. They have clearly defined the Ontology from the technology view and philosophy view. They analyzed the Gruber's definition of ontology that presents a specification of a conceptualization. Alexander and Seffen [Maedche, 2001] have written a paper about "Ontology Learning for the Semantic Web". This paper concentrates on the Ontology and presented it as major component of Semantic Web that it relies on. They advicing on engineer ontologies fastly and easily and avoid knowledge acquisition problems to have a success Semantic Web.

Another paper that is discusses the extensible markup Language (XML) and Resource Descriptive Framework (RDF) standards in depth. These standards are used as part of this paper. The paper title is "The Semantic Web - on the respective Roles of XML and RDF" and it was written by Stefan Decher, et al. [Decher et al., 2000]

In this paper we develop a new OntoLib for Academic portal that will use the Semantic Web technologies: RDF, XML, ontology, Simple Protocol and RDF Query Language (SPARQL) besides ASP.NET language. The OntoStudio, dotNetRDFstore, OntoMat, Ontobroker, SQL server 2005 and Visual Studio 2008 programs will be used also in this paper to achieve the proposed OntoLib .

Definition of Ontology

The ontology is simply defined as a set of concepts (classes) and the relationship between these concepts. Ontology, is also defined as an explicit specification of a conceptualization [Gruber, 2003] often considered as a reusable and shareable model. Geographical ontology can be used for exploration, and extraction information and also for inter operation of GIS [Nadine, 2003]. An Ontology is defined as, a common vocabulary for persons who need to share information in a specific domain. Different ontology are used in different domains (Geography, Biology, …) to share common understanding of the structure of information among people or software agents, to analyze domain knowledge, and enable reuse of domain knowledge. definition in our case: we define an ontology as a description of concepts in a domain (classed, concepts) when the properties of each concept describe various features and attributes of the concept (properties, roles), and Slots that describe properties of classes and instances. According to (Gruber, 1993), ontology is an explicit specification of conceptualization. Conceptualization is basically how we express our views through words, expression of concept and elements, and relations between entities. This definition stresses on the application of the common ontology in different application as well as translating the language text or the documentation to defined terms. Similar related work was done by (Yuemi et al, 2008) where they proposed ontology structure with their concepts, properties, and with some fuzzy linguistic variable ontology.

Domains of application

Ontology being common and used in different applications, ontology was applied in the field of health, in terms of fight against malaria disease, where the concepts and techniques presented precise conceptualization. (Zimmermann HJ, 1996) has combined the Fuzzy logic rules with the ontology to improve the importance of sharing knowledge with heterogeneous agent to interact in open environment. Similar related work comes from researchers in the field of geographical information where intelligent modules for user given GIS decision support for spatial analysis functions for multiple sources are used. It provides user the necessary knowledge to complete a task with reduced error (Claire et al, 2002).

Similar related work for fuzzy ontology was presented by (Jun Zhai, et al, 2008). Fuzzy ontology is used to create an extension to standard ontology. The proposed fuzzy domain ontology consisted of 5-tuple extension. To asset in presenting the concepts, a concept is considered as class in ontology with a set of properties which include 5-tuple (ontology concept, property values, linguistic qualifiers to control the strength of a property value, the restriction facts, and the universe of discourse). For example, "price" is a property of concept "fruit". The value of the "price" may be either fuzzy concept, "cheap", or fuzzy number, "around 50". The linguistic qualifiers may be either "very little" or "close to", therefore the final value of "price" may be "very cheap" or little expensive" as was illustrated in (Jun Zhai, et al, 2008). Fuzzy sets can provide more choices for attributes description of an object. It also has stronger ability to express uncertainty than an ordinary fuzzy set. There are several kinds of approaches for constructing a fuzzy ontology. Fuzzy sets have been applied to many fields including artificial intelligence and decision-making analysis.


In the literature, different methodology approaches for building ontology have been proposed (Fernandez-Lopez 1999; Beck and Pinto, 2003; Calero et al. 2006). Still now, there is no standard method used for building ontology. The approach described in this paper was adopted from (Noy and McGuinness , ; Fernandez-Lopez 1999 ontology modeling approach. Another approach to build ontology from existing ontologies or from scratch is presented by Carelo et al.(Calero et al., 2006). Our ontology will cover the two main important government sectors in Kuwait, Kuwait Investment Authority (KIA), and Ministry of Foreign Affairs (MFA). It is important in the first step to know how these two sectors model and present their major trends, break concepts down them into objectives, actions, norms, and principles to be able to see the relationship between them and the complexity when making decision and how building an Ontology can be helpful and benefic for decision makers.

The second step consists in identifying the ontology concepts for them including the definition of classes and subclasses, characterize the properties between classes, shared elements, and description of entities in these classes. This will enable us to describe the domain and the relation between them.

The aim of conducting the ontology approach is to provide an insight into how knowledge is represented and handled via different perspectives software tools. A system will be developed using software tools for modeling and implementing the ideas and applications of this ontology. Possible software tools include Protégé which is an ontology editor and knowledgebase framework and Fuzzy Logic Toolbox that extends the technical computing environment with tools for designing systems based on fuzzy logic.

Before defining the classes of the Ontology, we should determine, specify the domain that this ontology will cover and define the goal of use of the Ontology. An ontology is built to provide answers to specific questions that we should specify also at this level. Competency questions should be asked at this level such as for example in our case: Which characteristics should be considered …

The second step consist in verifying the existing of an Ontology in the domain that can be extended. As mentioned before, there are a lot of existing ontology for different domains such as DAML ontology library, UNSPSC ontology which provides terminology for products and services, and RosettaNet and other ontology for different domains except the political one.

The third step consists in listing the main terms that will be used in the ontology without considering overlaps between them such as, … In the fourth step we should choose the approach to define the classes and the hierarchy. There are two different approaches, the top down and the bottom up, in this paper the first approaches will be followed. We start by defining the most general concepts then adds different specifications (kind of) of those concepts as for example: …

During the fifth step, we should find the properties of classes and decide for each term to which class it belongs before adding it as a slot such as intrinsic (example) , extrinsic (example), relationships between different members of the class . We should mention here that every subclass inherit all slots from superclasses. Step six consists in defining the facets of the slots such as, the cardinality, type, allowed values, instance and the relationship to another instance, and defines the domain of the slot which means defining the classes to which a slot is attached. And the last step consists in creating the instances by choosing the class and filling in the slot values.


Ontology plays a major role in the availability of sharing the information. (Jun Zhai, et al, 2008). We will start by represent a model diagram consisting of classes, subclasses, elements that are important in the domain with relationship properties. This diagram can be used as an illustrative description for any future needs. We will propose an ontology structure with their concepts, properties. We will use ontology to represent and organize different domain knowledge in terms of concepts, properties, relations and axioms.

Using this developed model of ontology, we will share information from different domains with others to present high level of knowledge for …... We create a decision model that facilitates the decision maker in the decision making process in …. field. Hence, we will use a similar approach for the construction of ontology for which the steps are as follows:

input the unstructured data ,

specify the definition of related concepts in the domain and their relation,

clarify the generation of domain ontology,

define the domain ontology extension as fuzzy ontology,

applying the ontology into the specific domain

The first step in this process is to input the unstructured data……

After this step, we will have to complete the process by specifying the definition of related concepts in the domain and their relation then clarifying the generation of domain ontology, …

Conceptual representation of the Ontology

In this paragraph, we represented the conceptual version of the ontology as in Figure 2.

2.4.2 Resource Definition Framework

Resource Definition Framework (RDF) is a W3C standard model used for the purpose of data interchange in the Web. It's providing the semantic web application with interoperability feature because RDF is readily for any program and facilitates data merging, no matter what schema used. Storing knowledge using this standard done by decomposing it into (3 tuples) triples. One triple is composed of object, attribute and value. In another way it composed of a resource (object), named property (attribute) and value for the property (value).

RDF allows structured and semi structured data to be exchanged between applications by using URI to identify each relationship between data in a triple.

The triples can be expressed in three ways: tables, xml files and graphs. The easiest view is the graph view. Let's take this example: Name ('http://www.acadimic portal", " Amani "). This example has three views table (see table 2.1), xml and graph (see Fig. 2.4).

Table (2.3): Table View of RDF example




http://www.acadimic portal



The xml expression of the example is:

2.4.3 Simple Protocol and RDF Query Language

Simple Protocol and RDF Query Language (SPARQL) is a query language just like Standard Query Language (SQL) and used to perform manipulations add, update and delete the native graph stored in RDF stores. The results of the executed query using SPARQL are a set of RDF graphs, XML, JSON and HTML.

The query of SPARQL should, declare Prefix using URIs, define RDF dataset and specifying the graph to be queried, identify which information should be returned as a result of the query, decide what the information to query for, and also contain the arranging query like ordering the resulted data.

The following figure presents an example of SELECT query in SPARQL:

To execute SPARQL query via HTTP, the SPARQL endpoint must be used for querying from RDF stores that can be accessed through Web.

2.4.4 Ontology

The ontology is the brain component of the semantic web application. It's providing the application or the machine the understanding capability. Thomas Gruber defines the ontology as "explicit specification of conceptualization" [Michael et al, 2003] while it also can be defined as the relationships that connect concepts, nodes or entities to each other.

The Ontology or the data schema provides the concepts with a meaning that makes the machine understand it. It is the tool that connects people with machines and makes them communicate in a smooth way.

The idea that gives the ontology its ability to learn is to have the real world conceptualization in a knowledge base and digitalize it using a readable language such as Ontology Web Language (OWL).

In the ontology, everything in the real world expressed as <owl: Thing> that composed of properties and instances. The thing is drill down to classes that holds the concepts which is in turn drill down to object properties that describes the properties of the concepts. The object composed of instances that depict the properties. It's important to mention that the combination of them is composing the knowledge base.

The knowledge sharing and reusing the knowledge are important features of any semantic web application. The ontology is to component that brings this feature the semantic web application as it is developed based on artificial intelligence concepts. It's responsible for sharing the common understanding of domain between people and machine and that's important for providing the interoperability feature to the semantic web application.

The component of ontology are, the classes which are the concepts or things that describe any object in the world (e.g. Person, table, chair, etc…), the relations used to provide relations between classes (e.g. hasName, hasArticle, etc…), the functions that represent the relations with one result, and the instances of the classes (e.g. Amani, apple, etc…).

To create ontology, we should follow different steps. The first step consists in importing information from another ontology if needed, the second consists in identifying the classes and their description. During the third step, we should identify the properties. When the fourth step consists in creating the instances and individuals and make the rule. And finally we should experience the reasoning.

The following is an example of ontology in xml that showing the components of ontology described in previous section:

figure x shows the diagram of the example described above:

Figure (2.9): Diagram of ontology

Building ontology is an iterative process that consists in different steps. The first step consists in defining the classes of the ontology, and arranging them in a taxonomic hierarchy. After relating between the classes and specifying the super and subclasses, we start the second step in which we should define slots, describe the allowed values for them and filling in the values for slots for instances. The third step consists in creating a knowledge-base by defining individual instances, filling the slots with specific values and adding restrictions to slots. (repetition)

3.3 The Proposed System Design

In this paper we suggest a proposed website for ACADEMIC PORTAL library that has a semantic web technology to search in the instructors' papers. we build also a OntoLib model for ACADIMIC PORTAL 's library that is really considered an important need for a university.

OntoLib enables the Academic portal faculty to have their research papers published in one centralized place and make it easy for them to find the research papers that belongs to their colleges. This research papers is added to the OntoLib using a Semantic Web model and stored in a knowledge base using ontology. The Semantic Web is as mentioned above a component of Web 3.0 that its major idea is the intelligent addition to Web. The proposed system is also going to increase the reputation of ACADEMIC PORTAL and will move the ranking of its website to upper levels. As a result, the visitors of the website will be increased and more knowledge will be available for the ACADEMIC PORTAL faculty and the visitors. It permits academics to search for researches and information based on their semantic not syntax.

Before presenting …., we start by discussing the different components for Ontolib.

Ontologies: The first step in designing the semantic service is to design the ontology.

RDF Documents: The resulted ontology is stored as RDF documents.

Application Program: DotNetRDF is the framework used in this step. It is developing application that interacts with the SQL database and query data by using SPARQL.

During the design phase for the OntoLib we should follow the different following steps (See Fig. (3.10)):

Create ERD diagram which compose of classes and relations between. See Fig. (3.11).

Create the use case diagram. See Fig. (3.12).

Activity diagram for engineering ontology. See Fig. (3.13).

Engineer the ontology. See Fig. (3.18), Fig. (3.19), Fig. (3.20), Fig. (3.21) and Fig. (3.22).

Indexing step which use the dotNetRDFStore program for indexing and store the RDF to SQL database to create the RDF store. See Fig. (3.25).

Design the RDF graphs. See Fig. (3.26).

Fig.(3.11) Class diagram

Fig.(3.12) Use case diagram

Fig.(3.13) Activity diagram for engineering an ontology

Fig.(3.18) Diagram visualizing the general ontology

Fig. (3.20) Diagram visualizing the ontology-publication concept

Fig. (3.22) Rule diagram for the ontology

Fig. (3.26) The RDF graph


In this paper, we introduced the proposal to develop ontology approach and how to conduct this approach in …. To build this ontology, it is very important to understand …. This help in identifying the proper ontology concepts, classes, subclasses, characterize the properties between them, shared all elements, and describe the entities in those classes to describe the domain and the relationships between them. The aim of conducting the ontology approach is to provide an insight into how knowledge can be represented and ...