Introduction to Semantic Web Ontology Languages
نویسندگان
چکیده
The aim of this chapter is to give a general introduction to some of the ontology languages that play a prominent role on the Semantic Web, and to discuss the formal foundations of these languages. Web ontology languages will be the main carriers of the information that we will want to share and integrate. 1 Organisation of This Chapter In section 2 we discuss general issues and requirements for Web ontology languages, including the semantics issues. We then describe briefly the most important ontology languages in the design of the Semantic Web, namely RDF Schema in section 3 and OWL in section 4. Section 5 contains a brief comparison with other ontology languages. A brief introduction to description logics and their relation to the OWL family of web ontology languages is included. The chapter is concluded by a discussion on the importance of having correct and complete inference engines for web ontology languages. 2 On Web Ontology Languages Even though ontologies have a long history in Artificial Intelligence (AI), the meaning of this concept still generates a lot of controversy in discussions, both within and outside of AI. We follow the classical AI definition: an ontology is a formal specification of a conceptualisation, that is, an abstract and simplified view of the world that we wish to represent, described in a language that is equipped with a formal semantics. In knowledge representation, an ontology is a description of the concepts and relationships in an application domain. Depending on the users of this ontology, such a description must be understandable by humans and/or by software agents. In many other field – such as in information systems and databases, and in software engineering – an ontology would be called a conceptual schema. An ontology is formal, since its understanding N. Eisinger and J. Maluszynski (Eds.): REWERSE 2005, LNCS 3564, pp. 1–21, 2005. c © Springer-Verlag Berlin Heidelberg 2005 2 G. Antoniou, E. Franconi, and F. van Harmelen should be non ambiguous, both from the syntactic and the semantic point of views. Researchers in AI were the first to develop ontologies with the purpose of facilitating automated knowledge sharing. Since the beginning of the 90’s, ontologies have become a popular research topic, and several AI research communities, including knowledge engineering, knowledge acquisition, natural language processing, and knowledge representation, have investigated them. More recently, the notion of an ontology is becoming widespread in fields such as intelligent information integration, cooperative information systems, information retrieval, digital libraries, e-commerce, and knowledge management. Ontologies are widely regarded as one of the foundational technologies for the Semantic Web: when annotating web documents with machine-interpretable information concerning their content, the meaning of the terms used in such an annotation should be fixed in a (shared) ontology. Research in the Semantic Web has led to the standardisation of specific web ontology languages. An ontology language is a mean to specify at an abstract level – that is, at a conceptual level – what is necessarily true in the domain of interest. More precisely, we can say that an ontology language should be able to express constraints, which declare what should necessarily hold in any possible concrete instantiation of the domain. In the following, we will introduce various ways to impose constraints over domains, by means of statements expressed is some suitable ontology language. 2.1 What Are Ontology Languages How do we describe a particular domain? Let us consider the domain of courses and lecturers at Griffith University. First we have to specify the “things” we want to talk about. Here we will make a first, fundamental distinction. On one hand we want to talk about particular lecturers, such as David Billington, and particular courses, such as Discrete Mathematics. But we also want to talk about courses, first year courses, lecturers, professors etc. What is the difference? In the first case we talk about individual objects (resources), in the second we talk about classes (also called concepts) which define types of objects. A class can be thought of as a set of elements, called the extension of the class. Individual objects that belong to a class are referred to as instances of that class. An important use of classes is to impose restrictions on what can be stated. In programming languages, typing is used to prevent nonsense from being written (such as A+1, where A is an array; we lay down that the arguments of + must be numbers). The same is needed in RDF. After all, we would like to disallow statements such as: – Discrete Mathematics is taught by Concrete Mathematics. – Room MZH5760 is taught by David Billington. The first statement is non-sensical because we want courses to be taught by lecturers only. This imposes a restriction on the values of the property “is taught by”. In mathematical terms, we restrict the range of the property. Introduction to Semantic Web Ontology Languages 3 The second statement is non-sensical because only courses can be taught. This imposes a restriction on the objects to which the property can be applied. In mathematical terms, we restrict the domain of the property. Class Hierarchies. Once we have classes we would also like to establish relationships between them. For example, suppose that we have classes for – staff members – academic staff members – professors – associate professors – assistant professors – administrative staff members – technical support staff members. These classes are not unrelated to each other. For example, every professor is an academic staff member. We say that professor is a subclass of academic staff member, or equivalently, that academic staff member is a superclass of professor. The subclass relationship is also called subsumption. The subclass relationship defines a hierarchy of classes. In general, A is a subclass of B if every instance of A is also an instance of B. A hierarchical organisation of classes has a very important practical significance, which we outline now. Consider the range restriction Courses must be taught by academic staff members only. Suppose Michael Maher was defined as a professor. Then, according to the restriction above, he is not allowed to teach courses. The reason is that there is no statement which specifies that Michael Maher is also an academic staff member. Obviously it would be highly counterintuitive to overcome this difficulty by adding that statement to our description. Instead we would like Michael Maher to inherit the ability to teach from the class of academic staff members. Property Hierarchies. We saw that hierarchical relationships between classes can be defined. The same can be done for properties. For example, “is taught by” is a subproperty of “involves”. If a course c is taught by an academic staff member a, then c also involves a. The converse is not necessarily true. For example, a may be the convenor of the course, or a tutor who marks student homework, but does not teach c. In general, P is a subproperty of Q if two objects are related by Q whenever they are related by P . Summary. As a consequence of the discussion above, (Web) ontology languages consist of: 4 G. Antoniou, E. Franconi, and F. van Harmelen – the important concepts (classes) of a domain – important relationships between these concepts. These can be hierarchical (subclass relationships), other predefined relationships contained in the ontology language, or user defined (properties). – further constraints on what can be expressed (e.g. domain and range restrictions, cardinality constraints etc.). 2.2 Formal Semantics Ontology languages allow users to write explicit, formal conceptualisations of domains models. The main requirements are: 1. a well-defined syntax 2. a well-defined semantics 3. efficient reasoning support 4. sufficient expressive power 5. convenience of expression. The importance of a well-defined syntax is clear, and known from the area of programming languages; it is a necessary condition for machine-processing of information. Web ontology languages have a syntax based on XML, though they may also have other kinds of syntaxes. Of course it is questionable whether the XML-based syntax is very userfriendly, there are alternatives better suitable for humans. However this drawback is not very significant, because ultimately users will be developing their ontologies using authoring tools, or more generally ontology development tools, instead of writing them directly in the Web ontology language. Formal semantics describes precisely the meaning of knowledge. “Precisely” here means that the semantics does not refer to subjective intuitions, nor is it open to different interpretations by different persons (or machines). The importance of formal semantics is well-established in the domain of mathematical logic. In the context of ontology languages, the semantics enforces the meaning of the expressed knowledge as a set of constraints over the domain. Any possible instantiation of the domain should necessarily conform to the constraints expressed by the ontology. Given a statement in an ontology, the role of the semantics is to devise precisely which are the models of the statement, i.e., all the possible instantiations of the domain that are compatible with the statement. We say that a statement is true in an instantiation of the domain if this instantiation is compatible with the statement; the instantiation of the domain in which a statement is true is of course a model of the statement, and viceversa. So, an ontology will itself devise a set of models, which is the intersection among all the models of each statement in the ontology. The models of an ontology represent the only possible realisable situations. For example, if an ontology states that professor is a subclass of academic staff member (i.e., in any possible situation, each professor is also an academic staff member), and if it is known that Michael Maher is a professor (i.e., Michael Introduction to Semantic Web Ontology Languages 5 Maher is an instance of the professor class), then in any possible situation it is necessarily true that Michael Maher is an academic staff member, since the situation in which he would not be an academic staff member is incompatible with the constraints expressed in the ontology. If we understand that an ontology language talks basically about classes, properties and objects of a domain, then a model (i.e., a specific instantiation of the domain) is nothing else than the precise characterisation for each objects of the classes it is instance of, and of the properties it participates to. So, in the above example, in any model of the ontology Michael Maher should be an instance of the academic staff member class.
منابع مشابه
An Executive Approach Based On the Production of Fuzzy Ontology Using the Semantic Web Rule Language Method (SWRL)
Today, the need to deal with ambiguous information in semantic web languages is increasing. Ontology is an important part of the W3C standards for the semantic web, used to define a conceptual standard vocabulary for the exchange of data between systems, the provision of reusable databases, and the facilitation of collaboration across multiple systems. However, classical ontology is not enough ...
متن کاملDevelopment of a Combined System Based on Data Mining and Semantic Web for the Diagnosis of Autism
Introduction: Autism is a nervous system disorder, and since there is no direct diagnosis for it, data mining can help diagnose the disease. Ontology as a backbone of the semantic web, a knowledge database with shareability and reusability, can be a confirmation of the correctness of disease diagnosis systems. This study aimed to provide a system for diagnosing autistic children with a combinat...
متن کاملDevelopment of a Combined System Based on Data Mining and Semantic Web for the Diagnosis of Autism
Introduction: Autism is a nervous system disorder, and since there is no direct diagnosis for it, data mining can help diagnose the disease. Ontology as a backbone of the semantic web, a knowledge database with shareability and reusability, can be a confirmation of the correctness of disease diagnosis systems. This study aimed to provide a system for diagnosing autistic children with a combinat...
متن کاملQuery Architecture Expansion in Web Using Fuzzy Multi Domain Ontology
Due to the increasing web, there are many challenges to establish a general framework for data mining and retrieving structured data from the Web. Creating an ontology is a step towards solving this problem. The ontology raises the main entity and the concept of any data in data mining. In this paper, we tried to propose a method for applying the "meaning" of the search system, But the problem ...
متن کاملOntological Modeling: Part 1
This is the first in a series of articles on ontology-based approaches to modeling. The main focus is on popular ontology languages proposed for the Semantic Web, such as the Resource Description Framework (RDF), RDF Schema (RDFS), and the Web Ontology Language (OWL). OWL is based on description logic. A later series of articles will explore other logic-based languages such as Datalog. This fir...
متن کاملPresenting a method for extracting structured domain-dependent information from Farsi Web pages
Extracting structured information about entities from web texts is an important task in web mining, natural language processing, and information extraction. Information extraction is useful in many applications including search engines, question-answering systems, recommender systems, machine translation, etc. An information extraction system aims to identify the entities from the text and extr...
متن کامل