12
S – 153 Knowledge representation in the ontological engineering using conceptual modeling and graph-based reasoning Karmen Klarin University department of professional studies, University of Split, Split, Croatia [email protected] Stipo Čelar Faculty of Electrical Engineering, Mechanical Engineering and Naval Architecture, University of Split, Split, Croatia [email protected] Abstract. The process of software engineering follows a few basic stages of development: the business system analysis, the design of the new software solution, the software development with correctness verification and, finally, the software implementation in a user environment. Ontological engineering is also considered through the basic engineering steps. It can be perceived as a support for the process of developing information systems through two aspects: the conceptual modeling and the formal implementation. The conceptual knowledge is a representation of knowledge of considering the business system domain. Tools and languages for building formal ontology support the knowledge representation described with the conceptual model. The integration of ontological engineering in software engineering can be considered as the improvement in the development, implementation and use of the information system. In this paper, the knowledge representation and reasoning formalism of ontology are presented with a graph-based formalism. This formalism is logically founded, and it is a key feature for knowledge representation and reasoning. An ontology lifecycle development starts with competency questions about the domain specification. The specification of concepts and basic relationships by a conceptual graph model are the foundations for the modeling of formal ontology elements such as rules and constraints. Complex queries derived from competency questions are also presented with graph-based formalism. Relations between graphs like specializations and generalization operations, and also mapping like homomorphism, will optimize the ontology structure. The described process of ontology development is applied to a case of education domain modeling. Keywords: knowledge base, knowledge reasoning, ontology, competency questions, conceptual graph 1. Introduction Development and maintenance processes of software solution can be complemented by the usage and integration of ontologies. The role of ontology using is manifold: the support in modeling, the impact on the architecture of processes and data, and the implementation of ontology as an integral part of the new software versions [1]. Using the ontology we can show the structure of any domain, organized at the level of concepts and their relationships. In practice ontology represents a meta-model for database model of individual software solutions. Defined standards are used to support programs with the aim of the better communication with the environment. In this case we are talking about achieving interoperability (especially on the Web) among software solutions [2]. We say that the ontology allows efficiency of collecting and processing the diverse and multi-purpose knowledge. So the ontology becomes an integral part of knowledge representation. Using the software solution

Knowledge representation in the ontological engineering ...d.researchbib.com/f/enBQt1ZGVhpTEz.pdf · software engineering can be considered as the improvement in the development,

  • Upload
    others

  • View
    28

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Knowledge representation in the ontological engineering ...d.researchbib.com/f/enBQt1ZGVhpTEz.pdf · software engineering can be considered as the improvement in the development,

S – 153

Knowledge representation in the ontological engineering using

conceptual modeling and graph-based reasoning

Karmen Klarin

University department of professional studies, University of Split, Split, Croatia

[email protected]

Stipo Čelar

Faculty of Electrical Engineering, Mechanical Engineering and Naval Architecture,

University of Split, Split, Croatia

[email protected]

Abstract. The process of software engineering follows a few basic stages of development: the

business system analysis, the design of the new software solution, the software development with

correctness verification and, finally, the software implementation in a user environment. Ontological

engineering is also considered through the basic engineering steps. It can be perceived as a support for

the process of developing information systems through two aspects: the conceptual modeling and the

formal implementation. The conceptual knowledge is a representation of knowledge of considering the

business system domain. Tools and languages for building formal ontology support the knowledge

representation described with the conceptual model. The integration of ontological engineering in

software engineering can be considered as the improvement in the development, implementation and

use of the information system.

In this paper, the knowledge representation and reasoning formalism of ontology are presented with a

graph-based formalism. This formalism is logically founded, and it is a key feature for knowledge

representation and reasoning.

An ontology lifecycle development starts with competency questions about the domain specification.

The specification of concepts and basic relationships by a conceptual graph model are the foundations

for the modeling of formal ontology elements such as rules and constraints. Complex queries derived

from competency questions are also presented with graph-based formalism. Relations between graphs

like specializations and generalization operations, and also mapping like homomorphism, will optimize

the ontology structure. The described process of ontology development is applied to a case of education

domain modeling.

Keywords: knowledge base, knowledge reasoning, ontology, competency questions, conceptual graph

1. Introduction

Development and maintenance processes of software solution can be complemented by the

usage and integration of ontologies. The role of ontology using is manifold: the support in

modeling, the impact on the architecture of processes and data, and the implementation of

ontology as an integral part of the new software versions [1].

Using the ontology we can show the structure of any domain, organized at the level of concepts

and their relationships. In practice ontology represents a meta-model for database model of

individual software solutions. Defined standards are used to support programs with the aim of

the better communication with the environment. In this case we are talking about achieving

interoperability (especially on the Web) among software solutions [2]. We say that the ontology

allows efficiency of collecting and processing the diverse and multi-purpose knowledge. So the

ontology becomes an integral part of knowledge representation. Using the software solution

Page 2: Knowledge representation in the ontological engineering ...d.researchbib.com/f/enBQt1ZGVhpTEz.pdf · software engineering can be considered as the improvement in the development,

S – 154

supported by the ontology [3] and by Semantic Web [2] [4] we have the following important

features:

• Providing communication between people and systems supported by computer because it

reduces the conceptual and terminological ambiguities. The ontology increases the

consistency of information, eliminates ambiguity and combines different versions of the

same domain.

• Information retrieval on the Internet is facilitated by using the ontology. The ontology

contains information structured in a vocabulary. Web becomes a huge dictionary that

provides faster and more comprehensive access to the source of the requested

information.

• Accessing to information from the user or the system can be expressed in an unfamiliar

language or an unknown format. Ontology helps to identify information and helps to

improve associations between sets of concepts and relations between concepts.

• Interoperability as an interaction among different users or software tools for data

exchange. In this case the ontology plays a role of the reference domain model that will

be able to support translation from one programming language to another and from one

data structure to another.

A development and implementation of the ontology is not an easy task. This problem requires

a detailed and sophisticated development methodology, and even with this strategy ontology

development is more an art than conventional technological or engineering task [4].

Authors of ontology development use ontological editors that offer a graphical interface for

creating and editing ontology which is necessary to define the ontological concepts, their

attributes, properties and relationships. After this activity it is necessary to decide how to record

the ontology in a formal language such as OWL and RDF / RDFS [5].

In this paper we proposed a method of ontology development combining the best practices of

several established sources. We are using, so called, competency questions [6] in learning about

domain (such as user requirements in software engineering). Elements of ontology modeling

are creating according to the ontology engineering such as methodology in [5]. For the domain

knowledge representation and reasoning we are using techniques of conceptual graphs [7]. This

procedure follows the development of a case study of the Human Resource Management

(HRM) domain.

The second chapter of this paper describes opportunities provided by ontological engineering

for upgrading the software solution development and an information system architecture. The

third chapter defines specification purpose and scope for example of ontology cluster for HRM.

We create a part of concepts and relations taxonomies for HRM ontologies. In the fourth chapter

we have used, so-called, Competency Questions (CQs) for developing an ontology purpose and

scope. For those CQs examples we made compatible conceptual graphs. The fifth chapter is

composed of (1) an example of the conceptual graph formalized into RDF(S) language, and (2)

the conceptual graphs homomorphism that help us to demonstrate that individual programs can

be upgraded with ontology. The conclusion highlights the possibility of sharing the software

engineering and the ontological engineering.

2. Ontologies in software engineering

The software (or the information system) construction is a complex process, and it is necessary

to look at the overall architecture of the business processes. The study of enterprise business

includes activities like modeling the business organization, the business information and the

business technology. These models are then used in business software engineering, from

problem analysis, program's design, program's development, to testing and implementation in

user's environment.

Page 3: Knowledge representation in the ontological engineering ...d.researchbib.com/f/enBQt1ZGVhpTEz.pdf · software engineering can be considered as the improvement in the development,

S – 155

2.1 Ontological engineering as an extension of software engineering

Software engineering is composed of several basic stages of development such as analysis of

the business system, the design of future software, development of the software solution,

testing, validation and verification, and, finally, the implementation in the user environment

(Figure 1). At the very beginning, before development activities, it is necessary to make a

project plan and also, consider the business problems and the scope of the required solutions. It

is necessary to create a schedule of software development activities according to the selected

methodology.

The complexity of development of the entire information system required to pay attention to

the information system architecture [8] [9] [10]. Except the functionality of business it is

necessary to examine the relationships of different business subsystems, especially data and

information sharing among these subsystems. These requirements have influence to the

architecture of databases, software, hardware, communication and so on.

Figure 1 Software development and Ontology development

On the other hand, methodologies for ontology development are used in various areas of

business and human activities [4] [5] [11]. To improve the process of information system

development and quality assurance of software solutions we are considering the influence of

ontological engineering as a part of software engineering.

In the ontology development we also recognize the basic engineering steps. Figure 1 shows the

ontological engineering composed of the specification of domain models, the conceptualization

of domain elements and the formalization of these elements in the computer supported

ontology. We can conclude that the combination of the ontological engineering and the software

engineering together is an improvement of development, implementation and use of the system

[12].

2.2 Ontological engineering process

The elaboration of basic stages of the ontology development is described in detail in several

methodologies [4] [5] [11] [12]. Some methodologies describe only the ontology development

and some others are comprehensive and include planning, management of ontology developing

and results monitoring. Examples of such methodologies are METHONTOLOGY [5] and

NeOn [13].

According to aforementioned references, we can conclude that, in addition to the basic stages

of ontology development, we need a detailed specification of each phase (Figure 2). Like a

classical requirements engineering in the software engineering process, the ontology

development starts with the domain specification which is composed of (1) the specification of

purpose and usage of the ontology, scope of the domain and, finally, degree of the formality,

and (2) data collection using different methods. The conceptualization phase is divided into (1)

Page 4: Knowledge representation in the ontological engineering ...d.researchbib.com/f/enBQt1ZGVhpTEz.pdf · software engineering can be considered as the improvement in the development,

S – 156

the conceptualization of domain vocabulary and the result is the preliminary ontology, and (2)

consideration of possible integration with other ontologies. The implementation phase is

composed of (1) the formalization in an ontology language and (2) the evaluation of the

completeness, consistency and redundancy of developed ontology. Most of these steps, we will

describe and use in modeling the HRM case study.

Figure 2 Ontological engineering phases and models

Figure 2 shows the steps of the ontology development and input/output documents or models.

Techniques used in this paper for modeling ontology elements during ontological engineering

are motivating scenarios and competency questions for the domain description [6], and graph-

based knowledge representation and reasoning for the ontology structure [14]. Logical

sentences are a form of knowledge representation described by CQs. Logical sentences are

written using conceptual graphs. Construction, testing and modification of conceptual graphs

are accompanied by reasoning formalisms.

3. Ontology design for the domain of Human Resource Management

A HRM problem will be the basis for a case study where we will present (1) development of

ontology model elaborated towards activities in Figure 2, (2) model of domain knowledge using

conceptual graphs, and (3) application in a Web environment by testing the possibility of

matching a one software example in the default ontological model.

Literature [15] [16] describes mentioned problem and suggests some solutions. The enterprise

management emphasizes the HRM as an ongoing process that important fields are shown in

Figure 3. The focus of the case study will be on education, competence and knowledge.

3.1 Ontologies cluster for Human Resource Management

The set (the cluster) of HRM ontologies are based on two key elements: Job Offer Ontology

and Job Seeker Ontology. Job Seeker Ontology includes information from a CV like education

and acquired knowledge, previous jobs, skills and competences. Job Offer Ontology contains

information about employers, job offers and job vacancies.

Page 5: Knowledge representation in the ontological engineering ...d.researchbib.com/f/enBQt1ZGVhpTEz.pdf · software engineering can be considered as the improvement in the development,

S – 157

Education Ontology includes information about levels and fields of education. Fields of

education are based on FOET1 taxonomy and level of education on standard ISCED 972 [17].

Figure 3 Ontologies cluster for Human Resource Management [18]

Occupation Ontology includes information about occupations and workplaces. An integral part

of this ontology is taxonomy of workplaces standard ISCO-883 [19]. In the following discussion

it will be analyzed the set of occupations associated with Job Seeker Ontology work experience

and workplace, or required work experience from Job Offer Ontology.

Compensation Ontology describes the concepts related to salaries and wages for employees. An

integral part of this ontology is the currencies concept standard ISO 42174. Economic Activity

Ontology describes a model of economic activities which includes a taxonomy of standard

NACE5 [20]. For simplicity and because of the case study specification of purpose,

Compensation Ontology and Economic Activity Ontology will not be include in further

considerations.

Competency Ontology combines several sub-ontologies from different fields of competences.

Figure 3 shows examples for skills, language and driving license. Competency Ontology and

Job Offer Ontology are connected via the vacant jobs. Both are related to Job Seeker Ontology

through the application of candidates. Education Ontology is connected via competencies

required by education. For simplicity of further analysis of our case study, only Competency

Ontology (not its sub-ontology) will be considering. It is not easy to give a precise definition of

competence. Many papers highlight this issue and give a proposal of definition. So the

1 FOET Fields of Education and Training 2 ISCED International Standard Classification of Education was adopted by the UNESCO General Conference in

November 2011. The ISCED classification serves as an instrument to compile and present education statistics both

nationally and internationally. The framework is occasionally updated in order to better capture new developments in

education systems worldwide. 3 ISCO-88 International Standard Classification of Occupations 4 ISO 4217 International Standard for currency codes 5 NACE European Classification of Economic Activities

Page 6: Knowledge representation in the ontological engineering ...d.researchbib.com/f/enBQt1ZGVhpTEz.pdf · software engineering can be considered as the improvement in the development,

S – 158

definition from the paper ECTS User's Guide [21] says that the competencies include dynamic

combination of knowledge and understanding, intellectual and practical skills, and so on.

Clusters described above are extended with Knowledge Ontology. Concepts of knowledge areas

are associated with Education Ontology and Competency Ontology. For our case study, we have

set a small part of the Computer science knowledge area [22].

3.2 The importance of the selected ontologies cluster and fraction of their taxonomy

We have seen that ontologies clusters described above (cluster of Job Offer Ontology and

cluster of Job Seeker Ontology) containing well-defined standards. Concepts and relations of

standardized taxonomies are the foundation for automating queries addressed to the potentially

interested actors. For example, after RH joined EU, our citizens have the opportunity for

employment in the large labor market. However, if we have search (via the Web) these wide

area, we probably will not receive clear answers about job offer or job seeker and what are their

requests. So far we have looking for the job in RH where we know a lot of information about

enterprises, their activities, workplaces and so on. Now, we can access to the large number of

data at EU level, but these data are not unified in one location neither are grouped by businesses,

professions, education areas or languages. Therefore, it makes sense to modeling the conceptual

knowledge level about this complex issue, and for the beginning it is exactly the model in Figure

3. The problem is very complex and detailed design of all clusters and related ontology exceed

the scope of this paper (there are examples of case studies that deal with these details, such as

[15] [18]).

However, for further analysis of our case study we should develop our ontologies in more

detailed elements (concepts and relations). Figure 4 shows only the part of concepts taxonomy

and relations taxonomy. We will specify the definition of vocabulary in the following way:

Definition of vocabulary: Let a triple (𝑇𝐶 , 𝑇𝑅 , 𝐼) is consists of 𝑇𝐶, 𝑇𝑅 and 𝐼 that are finite pairwise

disjoint sets. The set of concepts 𝑇𝐶, the set of relations 𝑇𝑅, and the set of individuals 𝐼 defined

vocabulary 𝒱 = (𝑇𝐶 , 𝑇𝑅, 𝐼), and there are satisfying the following conditions:

• 𝑇𝐶 is the set of concepts with a subsumption6 relation, denoted ≼, and with maximal element

denoted ⊤,

• 𝑇𝑅 is the set of relation divided into subsets 𝑇𝑅1, … , 𝑇𝑅

𝑘 with arity 1,… , 𝑘, respectively. Any

two relations with different arities are not comparable. Every relation subset has subsumption

hierarchy.

By the definition, in Figure 4 is shown the part of the vocabulary of the HRM. There is a set of

concepts (A), a set of relations (B) and an example of individuals (C). An example of the

ontologies cluster is made in the tool CoGui [23].

4. Ontology specification and conceptualization

Specification of the problem begins with the purpose of our case study.

The first step in the specification of ontology is the creation of, so-called, motivating scenarios,

which describe a business problem. Scenarios are the basis for defining the competency

questions about a detail level of conceptualization. Furthermore, these questions are the basis

for the development of ontology elements, like dictionaries and taxonomies, and also rules

among concepts and relations [24].

6 A subsumptive containment hierarchy is a classification of object classes from the general to the specific. Other names

for this type of hierarchy are taxonomic hierarchy and is-a hierarchy. The taxonomical structure is a subsumptive

containment hierarchy.

Page 7: Knowledge representation in the ontological engineering ...d.researchbib.com/f/enBQt1ZGVhpTEz.pdf · software engineering can be considered as the improvement in the development,

S – 159

Figure 4 A part of ontology cluster for Human Resource Management

4.1 Motivating scenarios

We chose one motivating scenario that describes an example of request for workplace:

In the job offer of ICT sector someone is seeking candidates for Computer Systems

Designers/Analysts/Programmers jobs, for example, for the working place of BI/DWH7

developers. Required knowledge must be in the field of Software Engineering (specifically in

fields of Software Design and Construction Software), Programming (specifically in fields of

Object Oriented Programming and Algorithms and Complexity) and Data Management and

Databases (specifically in fields of Database Structure, Query Languages and Data

Warehousing and Data Mining). Candidates must have a degree of bachelor or master of

profession of ICT studies. The skills that candidates must have are excellent knowledge of

software tools such as Word, Excel, PowerPoint, JavaScript, C # and SQL Server or Oracle.

7 Business Intelligence / Data Warehouse

Page 8: Knowledge representation in the ontological engineering ...d.researchbib.com/f/enBQt1ZGVhpTEz.pdf · software engineering can be considered as the improvement in the development,

S – 160

This scenario describes a typical example of job advertising. This is a good reason to modeling

the scenario functionality through the ontologies cluster, like the example in Figure 3.

According to [6] [25] the detail specification of the scope and usage will be written in the form

of competency questions.

4.2 Competency questions and conceptual graph

Competency questions (CQs) are written in the informal form and they describe elements of

ontology. Responding to these questions ontologist checks taxonomy of concepts and relations,

and develops other structure of the ontology. CQs are made on the basis of motivating scenarios.

For the scenario from the previous chapter, here are some important CQs:

CQ1) Job Offer provides jobs for a certain profession and completed education with specific skills

and competencies.

CQ2) Job Seeker was completed ICT education, he has a knowledge about databases and

programming, and he is looking for developer jobs.

CQ3) The person was working as a software engineer and acquired 3th8 level of skills, and also,

he was working as a programmer and acquired 4th9 level of skills.

CQ4) What skills can expect employers for completed education in the field of software and

application analysis/development?

In the practice, the use of CQs is quite subjective and depends on the ontologist experience

(after all, this process is similar to the user requiremets specification in software engineering).

One of the important dilemma when we are creating the vocabulary and taxonomies is an

identification of granularity. It is important, but not easy, to determine the level of detail when

we build the structure of concepts (also the structure of relations). For example, in Figure 3, we

can ask the question whether we will develop Education Ontology on the level of overall FOET

taxonomy, or we will make only the elementary level. Because of the limited space of this paper

an example of taxonomy, Figure 4 shows a small part of whole ontologies cluster.

Four examples of CQs will be written in the form of graph-based sentences. Parts of these

sentences are concepts and relations with each other graphically related. We will specify the

definition of conceptual graph in the following way:

Definition of Conceptual graph: A basic conceptual graph over a vocabulary 𝒱 = (𝑇𝐶 , 𝑇𝑅 , 𝐼), is a

4-tuple 𝐺 = (𝐶, 𝑅, 𝐸, 𝑙) satisfying the following conditions:

• A triple (𝐶, 𝑅, 𝐸) is a finite bipartite multigraph. 𝐶 is the set of concept nodes, 𝑅 is the set of

relation nodes, and 𝐸 is the family of edges,

• 𝑙 is a labeling function that joined nodes and edges,

• Edges incident to a relation node 𝑟 ∈ 𝑅 are totally ordered and they are labeled from 1 to arity

of relation 𝑟.

According to [26] each recognized CQs will be modeled in appropriate conceptual graph. All

relations in the conceptual graphs in Figure 5 have arity of relation 2. Labels of concepts and

relations are specified in all graphs, and the edges of relations should not be labeled because

each of edges is the first (start arrow) or the second (end arrow).

The conceptual graph in Figure 7a) is the result of procedures like generalization and

specialization of graphical structures in Figure 5 (procedures are described in [14]). If we apply

these procedures, we can define a procedure that optimized the development of the integrated

graph. In this paper we assume the existence of the graph in Figure 6. The procedure itself will

be the subject of the further research.

8 According to the ISCO-88 specification that may include skills such as communication with customer, understanding the needs of business system, and the coordination and control of the software development process. 9 According to the ISCO-88 specification that may include skills such as passed advanced courses of programming

languages, analysis of complex algorithms, design of demanding interfaces, and integration of software solutions.

Page 9: Knowledge representation in the ontological engineering ...d.researchbib.com/f/enBQt1ZGVhpTEz.pdf · software engineering can be considered as the improvement in the development,

S – 161

Figure 5 CQs in the form of conceptual graphs

5. Formalization and evaluation

Characteristics of the Web are the basis for the development of ontology languages (Web-based

ontology language or ontology markup language). The syntax of ontology languages is based

on HTML and XML languages. RDF (Resource Description Framework) and its extension

RDFS (RDF Schema), together denotes as RDF(S), allowing the construction of semantic

annotations given by a set of triples (subject, predicate, object) [4]. RDF(S) is a language

designed for processing metadata to support the exchange of information by the Web

(interoperability among applications).

5.1 An example of general concepts formalization

Ontologies cluster for our case study is a reference model for the structure, format and the

understanding of information. Take a look at descriptions of some basic elements of RDF(S)

language [5]. The most general class is rdfs:Resource for defining any Web resource. The class

rdfs:Class defines the class of all classes. The class rdf:Property defines the class of properties.

Some of core properties are: rdf:type states that a resource is an instance of a class,

rdfs:subClassOf and rdfs:subPropertyOf are used to define class taxonomies and property

taxonomies respectively. The conceptual graph and RDF structure share very similar

characteristics. Therefore, the conceptual graph can be written in RDF(S) language [27]

following the comparison shown in Figure 6.

Figure 6 Comparison between conceptual graph and RDF(S) triples (a part of)

Applying the aforementioned rules conceptual graph in Figure 7a) can be written in RDF(S)

triples form as it is written in Figure 7b).

Page 10: Knowledge representation in the ontological engineering ...d.researchbib.com/f/enBQt1ZGVhpTEz.pdf · software engineering can be considered as the improvement in the development,

S – 162

Figure 7 a) General concepts of ontology cluster for HRM and b) their equivalent in RDF(S) triples

5.2 Database and graph homomorphism

This previously described procedure makes sense if the wide community adopts the significance

of ontology concept, and also be able to involve actively in the development of ontology

conceptual structure and its implementation. Despite extensive analysis and study of possible

applications of ontology, today it is still not represented in significant extent.

By now, we was developed (a part of) the formal HRM cluster ontology. In practice, an

individual instance of HRM database can be partially mapped with the ontology through the

structure and rules. Figure 8 shows the comparison of two graphs. On the left side is an

imaginary graph-based data model of enterprise HRM business process, and on the right side

is our HRM ontologies cluster. Comparison can be done through the formal verification of

graphs homomorphism.

Figure 8 a) Graph-based data model, b) graph-based reference ontological model, and c) properties, facts and

rules for generalization/specialization

Page 11: Knowledge representation in the ontological engineering ...d.researchbib.com/f/enBQt1ZGVhpTEz.pdf · software engineering can be considered as the improvement in the development,

S – 163

Definition of Graph homomorphism: Let 𝐺 = (𝐶𝐺 , 𝑅𝐺 , 𝐸, 𝑙𝐺) and 𝐻 = (𝐶𝐻, 𝑅𝐻 , 𝐸, 𝑙𝐻) be two

conceptual graphs defined over the same vocabulary. A homomorphism π form 𝐺 to 𝐻 is a mapping

form 𝐶𝐺 to 𝐶𝐻 and from 𝑅𝐺 uto 𝑅𝐻 which preserves edges and related labels of concepts and

relations, and satisfying the following conditions:

• ∀(𝑟, 𝑐) ∈ 𝐺 ⇒ (𝜋(𝑟), 𝜋(𝑐)) ∈ 𝐻, where is 𝑟 ∈ 𝑅𝐺 and 𝑐 ∈ 𝐶𝐺, and

• ∀𝑒 ∈ 𝐶𝐺 ∪ 𝑅𝐺 ⇒ 𝑙𝐻(𝜋(𝑒)) ≼ 𝑙𝐺(𝑒).

According to the definition and using the rules listed in the table in Figure 8c) we can conclude

that the left graph, Figure 8a), is homomorphic with the right graph, Figure 8b). This example

shows how the software solution can adapt and upgrade to the existing ontology.

6. Conclusion

A practical application of the ontology today is still lagging behind the potential that it offers.

Two problems are constantly present. The first is the development of an ontology for some

domain because it is a tedious task for the whole community of interest. The second problem is

the inclusion of individual software solutions in developed and usable ontology. Adjustment

software solutions requires an extra effort that may not be cost effective or may not be known

for developers.

However, the Internet (specifically Semantic Web), business expansion and globalization

emphasize the importance of the software solution customization with the ontological platform.

According to the stages of ontology development, the ontology specification and

conceptualization can extend the process of software solution reengineering. Comparing

conceptual structures using mapping such as homomorphism helps to identify the place where

one can customize and change the existing software solution.

In the further work it is necessary to develop the comparison process for the structure of

individual software solution, comparing it with the existing ontology. This process is time

consuming because it involves all phases of the ontology development. Therefore, it is

important to improve the activities of the ontology development which can enhance the

software solution.

REFERENCES

[1] N. Guarino, „Formal Ontology in Information Systems,“ FOIS'98, Trento, Italy, 1998.

[2] M. d’Aquin, N. F. Noy, „Where to publish and find ontologies? A survey of ontology libraries,“

Web Semantics: Science, Services and Agents on the World Wide Web 11, pp. 96–111, Elsevier,

2012.

[3] K. Kozaki, Y. Hayashi, M. Sasajima, S. Tarumi and R. Mizoguchi, „Understanding Semantic

Web Application,“ The Semantic Web - Lecture Notes in Computer Science, vol. 4825, pp. 524-

539, Springer, 2008.

[4] J. Hendler, T. Berners-Lee, E. Miller, „Integrating Applications on the Semantic Web,“ Journal

of the Institute of Electrical Engineers of Japan, vol. 122(10), pp. 676-680, 2002.

[5] A. Gomez-Perez, M. Fernandez-Lopez, O. Corcho, „Ontological Engineering,“ Springer-Verlag,

Berlin, Heidelberg, 2004.

[6] M. Gruninger and M. S. Fox, „Methodology for the Design and Evaluation of Ontologies,“

Department of Industrial Engineering University of Toronto, Toronto, Canada, 1995.

[7] J. F. Sowa, „Conceptual graphs for representing conceptual structures,“ in Conceptual Structures

in Practice, pp. 125-136, 2009.

[8] NIST Special Publication 500-167, „Information Management Directions: The Integration

Challenge,“ 1989.

[9] DoDAF – Department od Defense Architecture Framework Version 2.02, SAD, 2010.

Page 12: Knowledge representation in the ontological engineering ...d.researchbib.com/f/enBQt1ZGVhpTEz.pdf · software engineering can be considered as the improvement in the development,

S – 164

[10] T. A. Hokel, „The Zachman Framework for Enterprice Architecture: an Overview,“ Framework

Software, Inc., The Enterprise Framework Group, 2008.

[11] W. N. Borst, „Construction of Engineering Ontologies for Knowledge Sharing and Reuse,“

Centre for Telematica and Information Technology, University of Twenty, Enschede, The

Netherlands, 1997.

[12] V. Devedžić, „Understanding ontological engineering,“ Communications of the ACM, vol.45(4),

pp. 136-144, 2002.

[13] M. C. Suárez-Figueroa et al., „NeOn Methodology for Building Contextualized Ontology

Networks,“ NeOn Project, February, 2008.

[14] M. Chein, M.-L. Mugnier, „Graph-based knowledge representation: Computational foundations

of conceptual graphs,“ DOI: 10.1007/978-1-84800-286-9, Springer, 2010.

[15] A. Gómez-Pérez, J. Ramírez, B. Villazón-Terrazas, „An Ontology for Modelling Human

Resources Management Based on Standards,“ Knowledge-based Intelligent Information and

Engineering Systems, vol. 4692, pp. 534-541, Springer, 2007.

[16] M. Popescu, E. Popescu, „A human resource ontology for recruitment,“ Annals. Economic

Science Series, vol. XVI, pp. 896–900, 2010.

[17] „International Standard Classification of Education ISCED 2011,“ UNECSO Institute for

Statistics, 2011.

[18] http://mayor2.dia.fi.upm.es/oeg-upm/index.php/en/ontologies/99-hrmontology, january 2016.

[19] P. Elias and M. Birch, „ISCO 88 (COM) A Guide for Users,“ Establishment of Community-Wide

Occupational Statistics, University of Warwick, Institute for employment rerearch, 1994.

[20] „NACE Rev. 2 - Statistical classification of economic activities,“ in the European Community,

Eurostat European Commission, European Communities, 2008.

[21] „ECTS User's Guide,“ DOI: 10.2766/88064, Luxembourg, Office for Official Publications of the

European Communities, 2009.

[22] „Computer Science Curricula 2013, Curriculum Guidelines for Undergraduate Degree Programs

in Computer Science,“ The Joint Task Force on Computing Curricula ACM, IEEE Computer

Society, 2013.

[23] http://www.lirmm.fr/cogui , february, 2016.

[24] K. Klarin, S. Čelar, „Modeling information resources and application using ontological

engineering,“ DOI: 10.1109/ICCVIA.2015.7351877, WSCAR 2015, Rim, 2015.

[25] C. Bezerra, F. Freitas, and F. Santana, „Evaluating Ontologies with Competency Questions,“

2013 IEEE/WIC/ACM, DOI 10.1109/WI-IAT.2013.199, 2013.

[26] W. Hamdan et al., „On Ontological Expressivity and Modelling Argumentation Schemes Using

COGUI,“ AI’2014, Research and Development in Intelligent Systems XXXI, pp. 5-18, 2014.

[27] J.-F. Baget, M. Croitoru, M. Leclere, M.-L. Mugnier, „Translations between RDF(S) and

Conceptual Graphs,“ ICCS'10, pp. 28-41, Springer, 2010.