Powerloom Manual

Total Page:16

File Type:pdf, Size:1020Kb

Powerloom Manual PowerLoom R Manual Powerful knowledge representation and reasoning with delivery in Common-Lisp, Java, and C++ Version: 1.48 16 October 2010 This manual describes PowerLoom 3.2 or later. The PowerLoom development team Hans Chalupsky Robert M. MacGregor Thomas Russ {hans,tar}@isi.edu Copyright c 2010 University of Southern California, Information Sciences Institute, 4676 Admiralty Way, Marina Del Rey, CA 90292, USA Permission is granted to make and distribute verbatim copies of this manual provided the copyright notice and this permission notice are preserved on all copies. PowerLoom is a registered trademark of the University of Southern California. i Table of Contents 1 Introduction::::::::::::::::::::::::::::::::::::: 1 1.1 Powerloom Features :::::::::::::::::::::::::::::::::::::::::::: 1 1.2 Powerloom History ::::::::::::::::::::::::::::::::::::::::::::: 4 1.3 Running PowerLoom ::::::::::::::::::::::::::::::::::::::::::: 4 1.3.1 Command-Line Options ::::::::::::::::::::::::::::::::::: 5 2 Conceptual Framework ::::::::::::::::::::::::: 6 2.1 Terms and Propositions :::::::::::::::::::::::::::::::::::::::: 6 2.2 Definitions ::::::::::::::::::::::::::::::::::::::::::::::::::::: 7 2.3 Truth Values ::::::::::::::::::::::::::::::::::::::::::::::::::: 8 2.4 Modules ::::::::::::::::::::::::::::::::::::::::::::::::::::::: 9 3 Annotated Example ::::::::::::::::::::::::::: 11 3.1 Using Modules :::::::::::::::::::::::::::::::::::::::::::::::: 11 3.2 Concepts:::::::::::::::::::::::::::::::::::::::::::::::::::::: 11 3.3 Relations ::::::::::::::::::::::::::::::::::::::::::::::::::::: 12 3.4 Relation Hierarchies::::::::::::::::::::::::::::::::::::::::::: 13 3.5 Functions ::::::::::::::::::::::::::::::::::::::::::::::::::::: 13 3.6 Defined Concepts ::::::::::::::::::::::::::::::::::::::::::::: 14 3.7 Negation and Open and Closed World Semantics :::::::::::::: 15 3.8 Retraction :::::::::::::::::::::::::::::::::::::::::::::::::::: 17 3.9 Clipping of Values :::::::::::::::::::::::::::::::::::::::::::: 18 3.10 Rule-based Inference ::::::::::::::::::::::::::::::::::::::::: 19 3.11 Explanation ::::::::::::::::::::::::::::::::::::::::::::::::: 20 3.12 Contexts and Modules ::::::::::::::::::::::::::::::::::::::: 22 3.13 Equality Reasoning :::::::::::::::::::::::::::::::::::::::::: 23 3.14 Classification, Subsumption :::::::::::::::::::::::::::::::::: 23 3.15 Truth Maintenance :::::::::::::::::::::::::::::::::::::::::: 24 3.16 Inference Control :::::::::::::::::::::::::::::::::::::::::::: 24 3.17 Keyword Axioms::::::::::::::::::::::::::::::::::::::::::::: 24 3.18 Cardinality/Type Reasoning with Frame Predicates :::::::::: 24 3.19 Loom-to-PowerLoom ::::::::::::::::::::::::::::::::::::::::: 24 3.20 Deviations from KIF ::::::::::::::::::::::::::::::::::::::::: 24 3.21 Differences from Loom ::::::::::::::::::::::::::::::::::::::: 24 3.22 Defaults ::::::::::::::::::::::::::::::::::::::::::::::::::::: 24 3.23 Sets, Lists, SETOFALL, KAPPA ::::::::::::::::::::::::::::: 24 4 Communicating with PowerLoom :::::::::::: 25 4.1 Command Interpreter ::::::::::::::::::::::::::::::::::::::::: 25 4.2 Persistent Knowledge Bases ::::::::::::::::::::::::::::::::::: 26 5 Commands ::::::::::::::::::::::::::::::::::::: 27 ii 6 PowerLoom API ::::::::::::::::::::::::::::::: 40 6.1 API Functions :::::::::::::::::::::::::::::::::::::::::::::::: 40 6.2 Language Specific Interface:::::::::::::::::::::::::::::::::::: 58 6.2.1 Lisp API ::::::::::::::::::::::::::::::::::::::::::::::::: 59 6.2.1.1 Common Lisp Initialization :::::::::::::::::::::::::: 59 6.2.1.2 Type Declarations ::::::::::::::::::::::::::::::::::: 59 6.2.1.3 NULL values :::::::::::::::::::::::::::::::::::::::: 59 6.2.1.4 Wrapped Literal Values:::::::::::::::::::::::::::::: 59 6.2.1.5 Special Variables :::::::::::::::::::::::::::::::::::: 60 6.2.1.6 CLOS Objects versus Structs :::::::::::::::::::::::: 60 6.2.2 C++ API :::::::::::::::::::::::::::::::::::::::::::::::: 60 6.2.3 Java API::::::::::::::::::::::::::::::::::::::::::::::::: 60 6.2.3.1 Initializing PowerLoom :::::::::::::::::::::::::::::: 60 6.2.3.2 PowerLoom Java Conventions ::::::::::::::::::::::: 60 6.2.3.3 Using the PLI Class ::::::::::::::::::::::::::::::::: 62 6.2.3.4 Using Stella Objects ::::::::::::::::::::::::::::::::: 63 6.2.3.5 PowerLoom and Threads :::::::::::::::::::::::::::: 63 6.2.3.6 Setting and Restoring Global Variable Values :::::::: 63 6.2.3.7 Java Character Mapping::::::::::::::::::::::::::::: 65 6.2.3.8 Stella Exceptions in Java :::::::::::::::::::::::::::: 66 6.2.3.9 Iteration in Java::::::::::::::::::::::::::::::::::::: 66 6.2.3.10 Utility Classes for Java ::::::::::::::::::::::::::::: 67 7 Built-In Relations ::::::::::::::::::::::::::::: 68 8 PowerLoom GUI :::::::::::::::::::::::::::::: 84 8.1 Invoking the GUI ::::::::::::::::::::::::::::::::::::::::::::: 84 8.1.1 Starting a PowerLoom Server::::::::::::::::::::::::::::: 85 8.2 GUI Design Goals::::::::::::::::::::::::::::::::::::::::::::: 86 8.3 GUI Overview :::::::::::::::::::::::::::::::::::::::::::::::: 88 8.4 GUI Features ::::::::::::::::::::::::::::::::::::::::::::::::: 90 8.4.1 Connect to Server :::::::::::::::::::::::::::::::::::::::: 90 8.4.2 Edit Preferences:::::::::::::::::::::::::::::::::::::::::: 90 8.4.3 KB Load/Save ::::::::::::::::::::::::::::::::::::::::::: 90 8.4.4 Browsing::::::::::::::::::::::::::::::::::::::::::::::::: 90 8.4.5 Editing :::::::::::::::::::::::::::::::::::::::::::::::::: 93 8.4.6 Choosers ::::::::::::::::::::::::::::::::::::::::::::::::: 95 8.4.7 Extension Editor ::::::::::::::::::::::::::::::::::::::::: 96 8.4.8 Ask and Retrieve Queries::::::::::::::::::::::::::::::::: 97 8.4.9 Search ::::::::::::::::::::::::::::::::::::::::::::::::::: 98 8.4.10 Console ::::::::::::::::::::::::::::::::::::::::::::::::: 99 8.4.11 Cut/Copy/Paste/Delete:::::::::::::::::::::::::::::::: 100 8.5 Future Work ::::::::::::::::::::::::::::::::::::::::::::::::: 100 8.5.1 Large KBs :::::::::::::::::::::::::::::::::::::::::::::: 101 8.5.2 Undo ::::::::::::::::::::::::::::::::::::::::::::::::::: 101 8.5.3 Drag and Drop:::::::::::::::::::::::::::::::::::::::::: 101 8.5.4 Scrapbook :::::::::::::::::::::::::::::::::::::::::::::: 101 iii 8.5.5 Instance Cloning :::::::::::::::::::::::::::::::::::::::: 101 8.5.6 Security::::::::::::::::::::::::::::::::::::::::::::::::: 101 8.5.7 Multiple Users :::::::::::::::::::::::::::::::::::::::::: 101 9 Ontosaurus ::::::::::::::::::::::::::::::::::: 103 10 Installation :::::::::::::::::::::::::::::::::: 104 10.1 System Requirements ::::::::::::::::::::::::::::::::::::::: 104 10.2 Unpacking the Sources :::::::::::::::::::::::::::::::::::::: 105 10.3 Lisp Installation :::::::::::::::::::::::::::::::::::::::::::: 105 10.4 C++ Installation ::::::::::::::::::::::::::::::::::::::::::: 106 10.5 Java Installation :::::::::::::::::::::::::::::::::::::::::::: 107 10.6 Removing Unneeded Files ::::::::::::::::::::::::::::::::::: 107 10.7 Installing PowerLoom Patches :::::::::::::::::::::::::::::: 108 11 Miscellaneous ::::::::::::::::::::::::::::::: 109 12 Glossary ::::::::::::::::::::::::::::::::::::: 134 13 PowerLoom Grammar :::::::::::::::::::::: 137 13.1 Alphabet ::::::::::::::::::::::::::::::::::::::::::::::::::: 137 13.2 Grammar ::::::::::::::::::::::::::::::::::::::::::::::::::: 137 13.2.1 Constants and Typed Variables :::::::::::::::::::::::: 137 13.2.2 Terms ::::::::::::::::::::::::::::::::::::::::::::::::: 138 13.2.3 Sentences :::::::::::::::::::::::::::::::::::::::::::::: 138 13.2.4 Definitions ::::::::::::::::::::::::::::::::::::::::::::: 139 Function Index ::::::::::::::::::::::::::::::::::: 141 Variable Index:::::::::::::::::::::::::::::::::::: 142 Concept Index:::::::::::::::::::::::::::::::::::: 143 Chapter 1: Introduction 1 1 Introduction This document describes the PowerLoom knowledge representation and reasoning system. PowerLoom is the successor to the Loom knowledge representation system. It provides a language and environment for constructing intelligent, knowledge-based applications. Pow- erLoom uses a fully expressive, logic-based representation language (a variant of KIF). It uses a natural deduction inference engine that combines forward and backward chaining to derive what logically follows from the facts and rules asserted in the knowledge base. While PowerLoom is not a description logic, it does have a description classifier which uses technology derived from the Loom classifier to classify descriptions expressed in full first order predicate calculus. PowerLoom uses modules as a structuring device for knowledge bases, and ultra-lightweight worlds to support hypothetical reasoning. To implement PowerLoom we developed a new programming language called STELLA, which is a Strongly Typed, Lisp-like LAnguage that can be translated into Lisp, Java, and C++. STELLA tries to preserve those features of Lisp that facilitate symbolic programming and rapid prototyping, while still allowing translation into readable as well as efficient Java and C++ code. Because PowerLoom in written STELLA, we are able to deliver it in all three languages. 1.1 Powerloom Features PowerLoom is a full-function, logic-based knowledge representation and reasoning system, that supports all aspects of knowledge-based applications. It allows the representation of complex knowledge in a declarative, logic-based language, supports a variety of reasoning mechanisms to make implicit knowledge explicit, has a powerful query engine to retrieve what has been asserted and logically follows from the KB, provides file-based and RDBMS- based storage of knowledge bases, has
Recommended publications
  • A Framework for Comparing the Use of a Linguistic Ontology in an Application
    A Framework for Comparing the use of a Linguistic Ontology in an Application Julieanne van Zyl1 and Dan Corbett2 Abstract. A framework recently developed for understanding and “a body of knowledge about the world (or a domain) that a) is classifying ontology applications provides opportunities to review a repository of primitive symbols used in meaning the state of the art, and to provide guidelines for application b) organises these symbols in a tangled subsumption developers from different communities [1]. The framework hierarchy; and identifies four main categories of ontology applications: neutral c) further interconnects these symbols using a rich system of authoring, ontology as specification, common access to semantic and discourse-pragmatic relations defined among information, and ontology-based search. Specific scenarios are the concepts” [2]. described for each category and a number of features have been identified to highlight the similarities and differences between There has been some work on comparing ontology applications, them. In this paper we identify additional scenarios, describing the which refer to “the application that makes use of or benefits from use of a linguistic ontology in an application. We populate the the ontology (possibly directly)” [1]. A framework [3] was scenarios with a number of prominent research and industrial developed for comparing various projects in ontology design, applications from diverse communities such as knowledge-based which considered the differences and similarities in the way the machine translation, medical databases, heterogenous information projects treat some basic knowledge representation aspects. The systems integration, multilingual text generation, Web-based projects compared include three natural language ontologies, two applications, and information retrieval.
    [Show full text]
  • A Translation Approach to Portable Ontology Specifications
    Knowledge Systems Laboratory September 1992 Technical Report KSL 92-71 Revised April 1993 A Translation Approach to Portable Ontology Specifications by Thomas R. Gruber Appeared in Knowledge Acquisition, 5(2):199-220, 1993. KNOWLEDGE SYSTEMS LABORATORY Computer Science Department Stanford University Stanford, California 94305 A Translation Approach to Portable Ontology Specifications Thomas R. Gruber Knowledge System Laboratory Stanford University 701 Welch Road, Building C Palo Alto, CA 94304 [email protected] Abstract To support the sharing and reuse of formally represented knowledge among AI systems, it is useful to define the common vocabulary in which shared knowledge is represented. A specification of a representational vocabulary for a shared domain of discourse — definitions of classes, relations, functions, and other objects — is called an ontology. This paper describes a mechanism for defining ontologies that are portable over representation systems. Definitions written in a standard format for predicate calculus are translated by a system called Ontolingua into specialized representations, including frame-based systems as well as relational languages. This allows researchers to share and reuse ontologies, while retaining the computational benefits of specialized implementations. We discuss how the translation approach to portability addresses several technical problems. One problem is how to accommodate the stylistic and organizational differences among representations while preserving declarative content. Another is how
    [Show full text]
  • Formalizing Knowledge by Ontologies: OWL and KIF
    Formalizing Knowledge by Ontologies: OWL and KIF Marchetti Andrea, Ronzano Francesco, Tesconi Maurizio, Minutoli Salvatore CNR, IIT Department, Via Moruzzi 1, I-56124, Pisa, Italy (andrea.marchetti, francesco.ronzano, maurizio.tesconi, salvatore.minutoli)@iit.cnr.it 2 I Abstract. During the last years, the activities of knowledge formaliza- tion and sharing useful to allow for semantically enabled management of information have been attracting growing attention, expecially in dis- tributed environments like the Web. In this report, after a general introduction about the basis of knowledge abstraction and its formalization through ontologies, we briefly present a list of relevant formal languages used to represent knowledge: CycL, F- Logic, LOOM, KIF, Ontolingua, RDF(S) and OWL. Then we focus our attention on the Web Ontology Language (OWL) and the Knowledge Interchange Format (KIF). OWL is the main language used to describe and share ontologies over the Web: there are three OWL sublanguages with a growing degree of expressiveness. We describe its structure as well as the way it is used in order to reasons over asserted knowledge. Moreover we briefly present three relevant OWL ontology editors: Prot´eg´e, SWOOP and Ontotrack and two important OWL reasoners: Pellet and FACT++. KIF is mainly a standard to describe knowledge among different com- puter systems so as to facilitate its exchange. We describe the main elements of KIF syntax; we also consider Sigma, an environment for cre- ating, testing, modifying, and performing inference with KIF ontologies. We comment some meaningful example of both OWL and KIF ontologies and, in conclusion, we compare their main expresive features.
    [Show full text]
  • Representing and Using Ontologies
    USC-CIT Technical Report 98-01 1 Representing and Using Ontologies Kuhanandha Mahalingam and Michael N. Huhns January 1998 Center for Information Technology Department of Electrical and Computer Engineering University of South Carolina Columbia, SC, U.S.A. 29208 (803) 777-5921 or [email protected] (803) 777-8045 FAX Keywords: Ontology, Java, Distributed Information Systems Abstract This paper discusses the representation of large ontologies, especially in a graphical format. It describes a tool, developed using Java, that incorporates several abstraction mechanisms that can help manage such ontologies. Furthermore, it briefly analyzes possible point-and-click approaches that can be used to form queries on these ontologies. 1 This research was partially done under a cooperative agreement between the National Institute of Standards and Technology Advanced Technology Program (under the HIIT contract, number 70NANB5H1011) and the Healthcare Open Systems and Trials, Inc. consortium. 1. Introduction The introduction of the World Wide Web (Web) and the consequent growth of other supporting technologies that, without doubt, have driven the Internet’s widespread usage have created many new problems. The most notable problem is how to manage efficiently the volume and heterogeneity of information produced on the Web each day. Further, most of the data produced is no longer just simple text, but also consists of multimedia objects. Multimedia objects require different policies, procedures, and conventions. They originate from and reside on a variety of different operating systems, and, most importantly, are large and complex. There are many approaches for coping with these problems. One of these approaches is to use ontologies for capturing the knowledge represented by the information sources, so that it can be viewed and manipulated declaratively.
    [Show full text]
  • Ontology and Information Systems
    Ontology and Information Systems 1 Barry Smith Philosophical Ontology Ontology as a branch of philosophy is the science of what is, of the kinds and structures of objects, properties, events, processes and relations in every area of reality. ‘Ontology’ is often used by philosophers as a synonym for ‘metaphysics’ (literally: ‘what comes after the Physics’), a term which was used by early students of Aristotle to refer to what Aristotle himself called ‘first philosophy’.2 The term ‘ontology’ (or ontologia) was itself coined in 1613, independently, by two philosophers, Rudolf Göckel (Goclenius), in his Lexicon philosophicum and Jacob Lorhard (Lorhardus), in his Theatrum philosophicum. The first occurrence in English recorded by the OED appears in Bailey’s dictionary of 1721, which defines ontology as ‘an Account of being in the Abstract’. Methods and Goals of Philosophical Ontology The methods of philosophical ontology are the methods of philosophy in general. They include the development of theories of wider or narrower scope and the testing and refinement of such theories by measuring them up, either against difficult 1 This paper is based upon work supported by the National Science Foundation under Grant No. BCS-9975557 (“Ontology and Geographic Categories”) and by the Alexander von Humboldt Foundation under the auspices of its Wolfgang Paul Program. Thanks go to Thomas Bittner, Olivier Bodenreider, Anita Burgun, Charles Dement, Andrew Frank, Angelika Franzke, Wolfgang Grassl, Pierre Grenon, Nicola Guarino, Patrick Hayes, Kathleen Hornsby, Ingvar Johansson, Fritz Lehmann, Chris Menzel, Kevin Mulligan, Chris Partridge, David W. Smith, William Rapaport, Daniel von Wachter, Chris Welty and Graham White for helpful comments.
    [Show full text]
  • Ontology for Information Systems (O4IS) Design Methodology Conceptualizing, Designing and Representing Domain Ontologies
    Ontology for Information Systems (O4IS) Design Methodology Conceptualizing, Designing and Representing Domain Ontologies Vandana Kabilan October 2007. A Dissertation submitted to The Royal Institute of Technology in partial fullfillment of the requirements for the degree of Doctor of Technology . The Royal Institute of Technology School of Information and Communication Technology Department of Computer and Systems Sciences IV DSV Report Series No. 07–013 ISBN 978–91–7178–752–1 ISSN 1101–8526 ISRN SU–KTH/DSV/R– –07/13– –SE V All knowledge that the world has ever received comes from the mind; the infinite library of the universe is in our own mind. – Swami Vivekananda. (1863 – 1902) Indian spiritual philosopher. The whole of science is nothing more than a refinement of everyday thinking. – Albert Einstein (1879 – 1955) German-Swiss-U.S. scientist. Science is a mechanism, a way of trying to improve your knowledge of na- ture. It’s a system for testing your thoughts against the universe, and seeing whether they match. – Isaac Asimov. (1920 – 1992) Russian-U.S. science-fiction author. VII Dedicated to the three KAs of my life: Kabilan, Rithika and Kavin. IX Abstract. Globalization has opened new frontiers for business enterprises and human com- munication. There is an information explosion that necessitates huge amounts of informa- tion to be speedily processed and acted upon. Information Systems aim to facilitate human decision-making by retrieving context-sensitive information, making implicit knowledge ex- plicit and to reuse the knowledge that has already been discovered. A possible answer to meet these goals is the use of Ontology.
    [Show full text]
  • 74.419 Artificial Intelligence 2004 Ontology
    74.419 Artificial Intelligence 2004 Ontology • Ontology Languages • Semantic Web • "Real" Ontologies Ontology Languages LOOM – DL based language by Bob McGregor, ISI, USC, Los Angeles Classic – DL based language by Deborah McGuiness, Alex Borgida et al., ATT Bell Labs Ontolingua – KB development tool (with predefined Ontology), Stanford U. Semantic Web – Ontology languages for Internet organization and search (DAML, OIL, OWL), see W3C 1 Ontologies Wordnet – based on linguistic descriptions Ontosaurus – Ontology used with LOOM Cyc, OpenCyc – Knowledge Base organization system Ontolingua – KB development tool with predefined Ontologies, Stanford U. Microcosmos – Ontology developed for Computational Linguistics, CRL Semantic Web - Ontology General Ontology Languages (similar to LOOM, based on DL) for the WWW 2 Semantic Web Definition: The Semantic Web is the representation of data on the World Wide Web. It is a collaborative effort led by W3C with participation from a large number of researchers and industrial partners. It is based on the Resource Description Framework (RDF), which integrates a variety of applications using XML for syntax and URIs for naming. "The Semantic Web is an extension of the current web in which information is given well-defined meaning, better enabling computers and people to work in cooperation." -- Tim Berners-Lee, James Hendler, Ora Lassila, The Semantic Web, Scientific American, May 2001 OWL, OIL, and DAML • DAML - DARPA Agent Markup Language • OIL - Ontology Inference Engine • DAML+OIL - "semantic markup language
    [Show full text]
  • Environments, Methodologies and Languages for Supporting Users in Building a Chemical Ontology
    Environments, Methodologies and Languages for supporting Users in building a Chemical Ontology A dissertation submitted to The University of Manchester for the degree of MSc Bioinformatics in the F aculty of Life Sciences September 2005 Louisa Casely-Hayford Evaluation notes were added to the output document. To get rid of these notes, please order your copy of ePrint IV now. TABLE OF CONTENTS TABLE OF CONTENTS……………………………………………………….……1 LIST OF TABLES…………………………………………………………………...4 LIST OF FIGURES…………………………………………………………….…….5 ABSTRACT……………………………………………………………………....….6 DECLARATION……………………………………………………………….…....8 COPYRIGHT STATEMENT………………………………………………….…….9 ACKNOWLEDGEMENTS……………………………………………………..….10 1 Introduction……………………………………………………………..….11 1.1 Ontologies…………………………………………………………..….12 1.2 The Role of Ontologies in the CCLRC Data Portal………..……….....12 1.3 Objectives………………………………………………………....…....14 1.4 Structure of Dissertation………………………………………………..15 2 Background and Literature review ……………………………………….16 2.1 The Council for the Central Laboratory of the Research Councils.........16 2.2 What is an Ontology?...............................................................................18 2.3 Types of Ontologies and their uses…………………………..……….....21 2.4 Building an Ontology………………………………………………..…..25 2.5 Methodologies, Languages and Editing environments…………….……29 2.6 The role of ontologies in Semantic Web(SW) Portals…………….…….35 2.7 Topic Maps………………………………………………………….......37 1 Evaluation notes were added to the output document. To get rid of these notes,
    [Show full text]
  • A Roadmap to Ontology Specification Languages
    Page 1 A Roadmap to Ontology Specification Languages Oscar Corcho1, Asunción Gómez-Pérez1 1Facultad de Informática, Universidad Politécnica de Madrid. Campus de Montegancedo s/n. Boadilla del Monte, 28660. Madrid. Spain. [email protected], [email protected] Abstract. The interchange of ontologies across the World Wide Web (WWW) and the cooperation among heterogeneous agents placed on it is the main reason for the development of a new set of ontology specification languages, based on new web standards such as XML or RDF. These languages (SHOE, XOL, RDF, OIL, etc) aim to represent the knowledge contained in an ontology in a simple and human-readable way, as well as allow for the interchange of ontologies across the web. In this paper, we establish a common framework to compare the expressiveness and reasoning capabilities of “traditional” ontology languages (Ontolingua, OKBC, OCML, FLogic, LOOM) and “web-based” ontology languages, and conclude with the results of applying this framework to the selected languages. 1 Introduction In the past years, a set of languages have been used for implementing ontologies. Ontolingua [6] is perhaps the most representative of all of them. Other languages have also been used for specifying ontologies: LOOM [16], OCML [17], FLogic [12], etc. Protocols such as OKBC[4] have been also developed to access KR systems. KR paradigms underlying these languages and protocols are diverse: frame-based, description logic, first (and second) order predicate calculus and object-oriented. In the recent years, new languages for the web have been created -XML [2], RDF [13] and RDF Schema [3]- and are still in a development phase.
    [Show full text]
  • Methodologies, Tools and Languages for Building Ontologies. Where Is Their Meeting Point?
    Data & Knowledge Engineering 46 (2003) 41–64 www.elsevier.com/locate/datak Methodologies, tools and languages for building ontologies. Where is their meeting point? Oscar Corcho 1, Mariano Fernaandez-L oopez 2, Asuncioon Goomez-P eerez * Facultad de Informatica, Universidad Politecnica de Madrid, Campus de Montegancedo s/n, Boadilla del Monte, Madrid 28660, Spain Received 28 November 2001; received in revised form 21 August 2002; accepted 30 October 2002 Abstract In this paper we review and compare the main methodologies, tools and languages for building on- tologies that have been reported in the literature, as well as the main relationships among them. Ontology technology is nowadays mature enough: many methodologies, tools and languages are already available. The future work in this field should be driven towards the creation of a common integrated workbench for ontology developers to facilitate ontology development, exchange, evaluation, evolution and management, to provide methodological support for these tasks, and translations to and from different ontology lan- guages. This workbench should not be created from scratch, but instead integrating the technology com- ponents that are currently available. Ó 2002 Elsevier Science B.V. All rights reserved. Keywords: Ontology; Ontology methodology; Ontology language; Ontology tool 1. Introduction In the last decade, the word ‘‘ontology’’ has become a fashionable word inside the Knowledge Engineering Community. We have seen many definitions about what an ontology is and we have also seen how such definitions have changed and evolved over the time. * Corresponding author. Tel.: +34-913367439; fax: +34-913524819. E-mail addresses: ocorcho@fi.upm.es (O. Corcho), mfernandez@fi.upm.es (M.
    [Show full text]
  • Description Logics and Planning
    To appear in AI Magazine, Summer 2005. Description Logics and Planning Yolanda Gil USC/Information Sciences Institute 4676 Admiralty Way Marina del Rey CA 90292 [email protected] Abstract This paper surveys previous work on combining planning techniques with expressive representations of knowledge in description logics to reason about tasks, plans, and goals. Description logics can reason about the logical definition of a class and automatically infer class-subclass subsumption relations as well as classify instances into classes based on their definitions. Descriptions of actions, plans and goals can be exploited during plan generation, plan recognition, or plan evaluation. These techniques should be of interest to planning practitioners working on knowledge-rich application domains. Another emerging use of these techniques is the semantic web, where current ontology languages based on description logics need to be extended to reason about goals and capabilities for web services and agents. 1 Introduction Most real-world planning applications are naturally knowledge rich. Yet, planning research to date has concentrated on languages and algorithms to represent and search through decision spaces in order to generate feasible plans. Typical planning systems use very small amounts of knowledge, and the representations of the domain or the planning tasks are typically not very expressive. A challenging area of future research is the integration of existing planning algorithms with rich representations of domain-specific knowledge about planning tasks and objectives, actions and events as part of a plan, and the complex relations among them. The combination of these techniques will result in planning systems that will be better equipped to address more effectively the needs of real-world planning applications.
    [Show full text]
  • THE DESCRIPTION LOGIC HANDBOOK: Theory, Implementation, and Applications
    THE DESCRIPTION LOGIC HANDBOOK: Theory, implementation, and applications Edited by Franz Baader Deborah L. McGuinness Daniele Nardi Peter F. Patel-Schneider Contents List of contributors page 1 1 An Introduction to Description Logics D. Nardi, R. J. Brach- man 5 1.1 Introduction 5 1.2 From networks to Description Logics 8 1.3 Knowledge representation in Description Logics 16 1.4 From theory to practice: Description Logics systems 20 1.5 Applications developed with Description Logics systems 24 1.6 Extensions of Description Logics 34 1.7 Relationship to other fields of Computer Science 40 1.8 Conclusion 43 Part one: Theory 45 2 Basic Description Logics F. Baader, W. Nutt 47 2.1 Introduction 47 2.2 Definition of the basic formalism 50 2.3 Reasoning algorithms 78 2.4 Language extensions 95 3 Complexity of Reasoning F. M. Donini 101 3.1 Introduction 101 3.2 OR-branching: finding a model 105 3.3 AND-branching: finding a clash 112 3.4 Combining sources of complexity 119 3.5 Reasoning in the presence of axioms 121 3.6 Undecidability 127 3.7 Reasoning about individuals in ABoxes 133 3.8 Discussion 137 3.9 A list of complexity results for subsumption and satisfiability 138 iii iv Contents 4 Relationships with other Formalisms U. Sattler, D. Cal- vanese, R. Molitor 142 4.1 AI knowledge representation formalisms 142 4.2 Logical formalisms 154 4.3 Database models 166 5 Expressive Description Logics D. Calvanese, G. De Giacomo184 5.1 Introduction 184 5.2 Correspondence between Description Logics and Propositional Dy- namic Logics 185 5.3 Functional restrictions 192 5.4 Qualified number restrictions 200 5.5 Objects 204 5.6 Fixpoint constructs 207 5.7 Relations of arbitrary arity 211 5.8 Finite model reasoning 215 5.9 Undecidability results 222 6 Extensions to Description Logics F.
    [Show full text]