Quick viewing(Text Mode)

Knowledge Representation Formalism for Building Semantic Web Ontologies

Knowledge Representation Formalism for Building Semantic Web Ontologies

Knowledge Representation Formalism For Building

by

Basak Taylan

A survey submitted to the Graduate Faculty in Science in partial fulfillment of the requirements for the of Doctor of , The City University of New York.

2017 Contents

1 INTRODUCTION 6

2 SEMANTIC WEB 11

3 KNOWLEDGE REPRESENTATION 24 3.1 KNOWLEDGE ...... 24 3.2 KNOWLEDGE REPRESENTATION FORMALISM . . . . . 27 3.2.1 Roles Of Knowledge Representation ...... 27 3.3 KNOWLEDGE REPRESENTATION METHODS ...... 33 3.3.1 NETWORKED REPRESENTATION ...... 33 3.3.1.1 SEMANTIC NETWORKS ...... 33 3.3.1.2 CONCEPTUAL GRAPHS ...... 39 3.3.2 STRUCTURAL REPRESENTATION ...... 42 3.3.2.1 FRAMES ...... 42 3.3.2.2 KL-ONE KNOWLEDGE REPRESENTATION SYSTEMS ...... 49 3.3.3 -BASED REPRESENTATION ...... 53 3.3.3.1 PROPOSITIONAL LOGIC(PL) ...... 54 3.3.3.2 FIRST-ORDER LOGIC(FOL) ...... 58

2 CONTENTS 3

3.3.3.3 ...... 64 3.3.3.4 LOGIC(F-LOGIC) ...... 76

4 APPLICATIONS 86 4.1 The Project(OMCS) ...... 86 4.2 ConceptNet 3: a Flexible, Multilingual for Common Sense Knowledge ...... 89 4.3 WordNet ...... 94 4.4 FrameNet ...... 99 4.5 VerbNet ...... 102 4.6 The Brandeis Semantic (BSO) ...... 107

5 CONCLUSION 109 Abstract

The initial idea of Tim Berners Lee when designing The Wold Wide Web was creating a commonly accessible area in the network for information sharing by means of without concerning about platform dependency in late 1980s[28]. Since then, the Web has been growing dramatically and it has became a major means. By 2014, number of reached over a billion. Looking for a particular information within these globally connected pages can be explained by analogy with looking for a black cat in a coal cellar. Thus, manual search within such huge network becomes more and more difficult as the number of web pages increase. This necessity lead adding another layer,“the ”, on top of the current Web. This additional layer also known as Semantic Web, adds machine readability to the current web pages, that are designed for human consumption. By having machine processable data, data will be suitable for both machine and human consumption, information will be accessed faster, and search results will be more accurate. In addition, by being able to do on the Web data, the pieces that consists of the answer that are partially located on different web pages can be combined and instead of referring a list of web pages, that consists of part of the answer, the answer itself collected from different web resources as a whole can be returned by using Semantic Web.

4 CONTENTS 5

Knowledge representation and ontology construction plays a crucial role in order to establish such layer on top of the current Web.

In section-1, we are going to present a review about Web history and evolution of the Web since its invention. In section-2, we will introduce the Semantic Web structure. In section-3 we will present major knowledge representation formalism and methods that influenced construction of Ontologies for Semantic Web. In section-4, we will introduce some of the applications that are used to build Ontologies. In section-5, we will have the conclusion of Ontology building for Semantic Web. Chapter 1

INTRODUCTION

The ,“the embodiment of human knowledge[1].”, was first proposed in 1989 by Tim Berners-Lee at the European Organization for Nuclear Research (CERN) in Geneva. The idea of creating the web was enabling an area in the computer that is accessible by other people. After his proposal, Berners-Lee coded the first browser, and WEB server working on NEXT [78, 18, 16, 20]. After invention of the platform independent “line mode” browser[17] developed by Nicola Pellow in 1991, the web evolved rapidly. The web evolution consists of three phases: web 1.0, web 2.0, web 3.0 [30].

Web 1.0, the Web of documents, includes development in The World Wide Web within the time range between 1989 and 2005. The first generation of the Web consists of static pages, where information was only accessed only in “read-only” mode. Users had limited interaction with the pages. Thus, communication was unidirectional.Web 1.0 includes core web protocols, HTML, HTTP, and URI [32, 30, 66, 95].

6 CHAPTER 1. INTRODUCTION 7

Web 2.0, the second generation of the Web (a.k.a “the wisdom web, people-centric web, participative web, or read-write web”), is a result of a brainstorming session between O’Reilly and MediaLive International in a conference. It allows users to be content creators by participation, collabora- tion, and information sharing on the web. Since user can both read from and write into the web pages, communication is bi-directional. Web 2.0 is differ- ent than web 1.0 in various aspects such as technological(Ajax, JavaScript, Cascading Style Sheets (CSS), Document Model (DOM), Extensible HTML (XHTML), XSL Transformations (XSLT)/XML, and Adobe Flash), structural(page layout) and sociological aspects(notion of friends and groups) [32, 79, 30, 66, 95].Youtube, Flickr, personal blogs, search engines, , Voice over IP, chat applications, instant messages, etc can be shown as Web 2.0 platform applications.

The World Wide Web has become irreplaceable means of accessing the information. According to [64], The Indexed Web contains at least 4.6 billion pages as of today (18 August 2017), and it is continuously getting larger and larger while even this paper is being typed. In this rapidly growing environment, accessing correct information within acceptable time limit is one of challenges that every user experiences. Technological developments changed our way for seeking for information and most of us became dependent on search engines. Difficulty of finding a little piece of information in such a big environment can be explained by analogy with looking for a black cat in a coal cellar in less than a second. Despite the many advanced searching algorithms that are used in search engines, search engines are still suffering from returning completely irrelevant results along with the correct answers. One of the that causes this undesired situation is that CHAPTER 1. INTRODUCTION 8 textual or graphical resources on the Internet are designed for mostly human consumption [9]. In addition to that, query results are independent web pages. If we are looking for information spread over multiple pages, current web technology falls short of satisfying our needs [4].

Web 3.0, the third generation of the Web (a.k.a “Semantic Web, executable Web, or read-write-execute Web”), is an extension of Web 2.0, that aims to add to the Web by enabling machine processable documents [30, 66, 95, 19, 56]. Semantic Web can be considered as a globally linked where the information is suitable for both human and machine consumption. Google Squared, Hakia, Walfram Alfa, IBM , Browser Plugin Zemanta, “like button” of Facebook, E-Commerce travelling service site TripIt are only some of the Semantic Web platform applications. Figure-1.1 and Figure-1.2 summarizes the differences of Web 1.0, Web 2.0, and Web 3.0.

Web 4.0 (a.k.a read-write-concurrency, or the symbiotic web) is the future generation of the Web. It is still in idea level. It aims creating human- machine interaction. It will be possible to build more powerful interfaces such as mind-controlled interfaces with web 4.0[30, 95, 47]. CHAPTER 1. INTRODUCTION 9

Figure 1.1: Comparisons of Web 1.0, Web 2.0 and Web 3.0 [30] CHAPTER 1. INTRODUCTION 10

Figure 1.2: Comparisons of Web 1.0, Web 2.0 and Web 3.0 [95] Chapter 2

SEMANTIC WEB

The World Wide Web was initially designed to create a universal environment for document sharing. Over the years main purpose of the internet has shifted from document sharing to information retrieval. Search engines have become irreplaceable part of our daily life. As a result, information presented on web pages were mainly designed in a way that it makes it easier for human consumption. However, accessing the correct information in such a rapidly growing environment within a reasonable amount of time is getting harder and harder. We can use analogy of trying to find a needle in a haystack to explain looking for information in Web environment.

Semantic Web was first introduced by Tim Berners Lee in 2001. As Berners Lee stated in [19], Semantic Web is not a separate Web; but it is the extension of the current web. Semantic Web (a.k.a Web3.0) is designed for both human and machine consumption. In other , Semantic Web aims applying machine processable layer on top of the human processable version. Although HTML tags are used to create web pages in current Web, those

11 CHAPTER 2. SEMANTIC WEB 12 tags do contain any information about the structure but only focus on the presentation[80]. This makes current keyword-based search engines sensitive to vocabulary. Documents that use different terminology than the key words are often not seen in the search results. In addition, search results not only returns relevant answers but also returns mildly relevant or completely irrelevant documents as well. Ratio of correct information becomes too small compared to total results. Also, current search engines are not capable of giving an answer to a question but it returns location of a single document that contains the keywords[4].

By having Semantic Web layer, search engines will not only return the location of the documents but they will also be able to manage . Knowledge will be extracted from the web and it will be shown in a user-friendly mode. In addition, knowledge will be organized according to its meaning.

Figure 2.1: Semantic Web Layer Cake [4] CHAPTER 2. SEMANTIC WEB 13

Semantic Web has a layered structure consists of multiple steps. Each step builds another layer on top of previous ones. Semantic Web is based on hierarchy of , each extends the features and capabilities of previous layers [52]. Figure-2.1 shows the layered Semantic Web architecture[4] defined by Tim Berners Lee. Due to its layered structure, it is known as Semantic Web Cake, Semantic Web Layer Cake, or . Due to debates about this classical layer stack, there are alternative Semantic Web Stacks as seen in Figure-2.2.

Figure 2.2: Semantic Web Layer Cake [4]

Unicode and Uniform Resource Identifier(URI) are placed in the bottom layer of the cake. is a standardized encoding for the character settings for the Semantic Web. Every resource on the Web has a unique identifier just like every citizens of countries. URIs are identifiers for the resources on the CHAPTER 2. SEMANTIC WEB 14

Web. For instance, URLs can be given as example of URIs. URLs are subset of URIs. URLs not only identify a resource but also locate the resources on the Web[70].

Most of the web pages are designed with Hyper Text Markup Lan- guage(HTML). HTML provides human-friendly means of representing docu- ments on the Web. HTML documents are human-centered and designed for human consumption. Thus, documents presented in HTML are difficult for the machines to process.

Structure of a HTML document consists of tags. Tags are building blocks of the . Most of the tags have to be in the form of open and close pairs. However, there are exceptions such as
,


, etc. These tags do not have to be closed as
or .

Nonmonotonic Reasoning: Context−Dependent Reasoning

by V. Marekand M. Truszczynski
Springer 1993
ISBN 0387976892

Since HTML is not a machine-friendly language, it does not appear on the Semantic Web Layer Cake as a layer. The partial code written in HTML above can also be expressed in Extensible (XML) as the follows: CHAPTER 2. SEMANTIC WEB 15

Nonmonotonic Reasoning: Context−Dependent Reasoning V. Marek M. Truszczynski Springer 1993 0387976892

Both of the codes are easily readable by human. However, XML structure is a lot easier for machines to process because XML files have the structured information. For instance, for the machines it is difficult to interpret that Nonmonotonic Reasoning: Context-Dependent Reasoning is a book title and the book has two authors; however, it is a lot more easier for a machine to infer that information from the same data written in XML format due to nested tag structure. XML is a metalanguage for markup. It does not have predefined tags. It allows users to define their own tags. XML is another standardized layer in Semantic Web Architecture as seen in Figure-2.1 and Figure-2.2[4].

Besides XML, there is also XML namespace(NS) and xmlschema in the second layer of Semantic Web Stack. If two of the applications want to communicate, all the element and attribute must be uniquely defined. Imagine two applications using customer information and product information. CHAPTER 2. SEMANTIC WEB 16

Using the same child element id for both customer and product creates ambiguity. Thus, id element for both applications should be defined in different namespaces. XML namespaces are used to uniquely define named elements and attributes in an XML document. In addition to namespace, the structure of the XML document should also be defined. XML schema defines what values an attribute may take, which elements occur within other elements, which elements might occur or must occur, and so on.

Although XML carries information about structure of the document, provides tools such as parsers, and provides a means of exchanging data between applications, it does not give information about the meaning of the document.

Resource Description Framework(RDF) is another W3C recommendation to standardize the definition and use of of Web-based resources [34]. Everything can be a resource such as books, authors, images, abstract , relations, etc. RDF consists of (S)-predicate(P)- Object(O) triples. Some resources refers those triples as object-attribute-value triple as well. RDF triples can be expressed as logical formula P(S,O) such that binary predicate P relates subject S and object O [80, 4, 72, 112, 84]. An RDF-based model can be represented in a variety of :RDF/XML, N3, , and RDFa, etc.

RDF statements can be modeled as directed, labelled graphs where nodes are subjects/objects and labelled arcs are predicates. More complex state- ments can be constituted by merging simple statements. URIs play curucial role in RDF. For instance, while creating more complex relations by merging the graphs based on common nodes, URIs are the only way of making sure CHAPTER 2. SEMANTIC WEB 17 that merged nodes are exactly the same nodes[2].

Figure 2.3: A simple RDF graph representation [34]

Figure-2.3 shows a simple graphical representation for RDF. Turtle repre- sentation for the same graph is as follows [34]:

@prefix s:

<“Jim Lerners”>.

.

<“$62”>.

Another representation for RDF is RDF/XML language. Figure-2.4 is CHAPTER 2. SEMANTIC WEB 18

Figure 2.4: A simple RDF graph representation [31] graphical representation of following RDF/XML description:

CHAPTER 2. SEMANTIC WEB 19

RDF Schema(RDFS) is a language that provides vocabulary used in RDF data models. RDF Schema is based on RDF. It allows organizing web objects into hierarchies such as classes, subclasses, properties, doman/range restrictions. It can be considered as an ontology language but it is very primitive. In semantic web a more developed language is needed to represent more complex relationships between objects [4, 2].

rdfs:Resource, rdfs:Class,rdfs:Literal,rdf:Property, and rdf: are core classes, rdf:type,rdfs:subClassOf, rdfs:subPropertyOf are the core proper- ties for defining relationships, rdfs:domain,rdfs:range are core properties for restricting properties, rdf:subject, rdf:predicate, rdf:object are core properties for reification, rdf:Bag, rdf:Seq, rdf:Alt, rdfs:Container are container classes, rdfs:seeAlso , rdfs:isDefinedBy are utility properties in RDFS. Fig-2.5 is an example of motor vehicles[4].

Figure 2.5: Class hierarchy for the motor vehicles [4] CHAPTER 2. SEMANTIC WEB 20

Listing 2.1: A simple ontology for motor vehicles.

RDF data can be queried. SPARQL Protocol and RDF Query Lan- guage(SPARQL) is SQL like query language that is executed on RDF for- matted data.RDF data is stored in a database called RDF Store. RDF stores can be considered as SQL relational database consists of subject-predicate- object triples[84, 4, 2].

Figure-2.6 shows a simple RDF graph consists of following RDF triples: CHAPTER 2. SEMANTIC WEB 21

RebelWithoutCause playedIn

playedIn JamesDean EastOfEden playedIn

Giant

Figure 2.6: A simple RDF relation [2]

:JamesDean :playedIn :Giant

:JamesDean :playedIn :EastOfEden

:JamesDean :playedIn :RebelWithoutCause

Assume RDF database consists of above triples. Let us execute following SPARQL queries on the database:

SELECT ?who WHERE{?who :playedIn :Giant.}

In this simple SPARQL query above SELECT and WHERE are the keywords, literals starting with question mark are variables. Thus, “?who” is a variable in the query. WHERE part of the query is the pattern that will be seek in the subject-predicate-object database. Predicate and object are already given in the query. Database will be searched for matching patterns where predicate is “playedIn” and object is “Giant”. When a matching pattern found in database, subject of the triples will be returned as a result of the query. Hence, the answer for the query above will be “JamesDean”. CHAPTER 2. SEMANTIC WEB 22

SELECT ?what WHERE{:JamesDean :playedIn ?what}

Similarly for the query above, the database will be seek for the match- ing patterns where subject is “JamesDean” and the predicate is “playedIn”. Database consists of three matching patterns for JamesDean as subject and playedIn as predicate. “Giant, EastOfEden, RebelWithoutCause” will be returned as an answer to the query.

Ontology is the representation of terms and their interrelationships. (OWL) is the ontology language of the Semantic Web. It provides standard vocabulary[95] for machine processable Web. XML, RDF and RDF(S) are not enough to perform reasoning. OWL is more expressive than the data created by XML, RDF and RDF(S)[74, 45]. OWL extends RDF for describing properties and classes: such as disjointness, cardinality, equality, symmetry, transitivity, inverse of properties, enumerated classes, etc. Figure-2.7 shows OWL2 structure that is extension and revision of the OWL[44]. There are three flavours of OWL available : OWL Lite, OWL DL, OWL Full.

Rules RIF/SWRL enables us to write rules beyond RDFS and OWL[95].

Logic ,Proof, and Trust layers are used for validation of trustability of inputs. Digital signatures are used to verify origin of the sources for input data. Trust layer will be created by validation of trusted agents through digital signatures, certifications and other kinds of knowledge. [4] CHAPTER 2. SEMANTIC WEB 23

Figure 2.7: OWL2 Structure [44] Chapter 3

KNOWLEDGE REPRESENTATION

3.1 KNOWLEDGE

Definition of knowledge has been discussed for years by philosophers since ancient Greek times, and still not reached a concrete conclusion. An informal description of knowledge can be stated as a relation between a knower and the known [24]. When we say “Pablo knows that some apples are green”, we define a relation between the knower Pablo and the statement “Some apples are green”.

Zagzebski [54] defines knowledge as a state of a person’s being in cognitive contact with reality. Knowledge is a relation between a conscious subject, and a portion of reality that is knower is related. Knowledge of things can be direct or indirect. The former one is called as knowledge by acquaintance that subject gains the knowledge by experience. Knowing Roger as a person can be an example to knowledge by acquaintance. On the other hand later one is called propositional knowledge where the subject knows a true proposition

24 CHAPTER 3. KNOWLEDGE REPRESENTATION 25 about the world. Knowing that Roger is a philosopher can be given as an example of propositional knowledge.[54]

In philosophy propositional knowledge has been discussed more than knowledge by acquaintance. One of the reasons is that reality becomes understandable to the human mind when it is stated in propositional form. Another is that knowledge by acquaintance cannot be transferred from one person to another where as propositions are the form in which knowledge is communicated.

According to Kumar [63] data is raw form of observations. And knowledge is organized form of data and procedures that can be used in some other purposes. When a doctor diagnoses a patient, he/she uses both data and knowledge to diagnose.

Knowledge can be collected from many sources. Books, movies, the Internet, pictures, friends, in short everything can be a source for knowl- edge. Knowledge can be in various types such as declarative knowledge , procedural knowledge, heuristic knowledge, meta-knowledge. More categorizations can also be seen in artificial intelligence such as inherita- ble knowledge, inferential knowledge, relational knowledge, common sense knowledge, explicit knowledge, tacit knowledge, and uncertain knowledge.

Declarative knowledge describes facts or assertions. Declarative knowl- edge includes propositions about “what” is known about the world. Those propositions are simple statements which can be asserted to be either true or false. Declarative knowledge can be easily expressed verbally and may change CHAPTER 3. KNOWLEDGE REPRESENTATION 26 with new memories. Knowledge can be static or dynamic. Frame structure can be used to represent static knowledge [104, 63].

“Apple is a fruit.”

The example above gives information about a fact about the world, and truthness or falseness of the fact can be proven.

Procedural knowledge contains information about “how” to do things. Knowledge on how to play piano, how to dance, how to bake a cake can be example for this type of knowledge. This type of knowledge is usually gained by experience. Procedural knowledge is difficult to express verbally. Most of the time it requires performing the action to transfer knowledge from one person to another one. Production rules, condition-action pairs, can be used to represent procedural knowledge [104, 63].

Heuristic knowledge is also known as shallow knowledge. The knowl- edge is gained by past experiences in a particular domain. Think of a chess expert, it is very unlikely that the expert has strong algebraic background or he/she is expert in mass spectrum analyst. The player uses his prior knowl- edge and experience while playing the game. This type of “good practice” or “good guess” can be considered as heuristic knowledge. Knowledge contains uncertainty in it [63, 36, 55].

Meta-knowledge is knowledge about what we know. In other words, meta-knowledge is knowledge of other knowledge and knowledge of how to use other knowledge [105, 43]. CHAPTER 3. KNOWLEDGE REPRESENTATION 27

3.2 KNOWLEDGE REPRESENTATION FORMALISM

Despite their computational power, many researchers believed computers cannot learn from scratch. In order to proceed a job that requires intelligence, a computer should given some information prior to that task. In addition, information should be stored in the computers so that they become available in the future [23]. Imagine an intelligent system that is used to diagnose a disease. The agent cannot diagnose the disease if it has no prior knowledge about characteristics of the diseases being diagnosed.[73]. The need for representing and storing information in such form lead researches study Knowledge Representation (KR) Formalisms.

3.2.1 Roles Of Knowledge Representation

But what is knowledge representation(KR)? Why does it play vital role when complex systems are built? R. Davis, H. Shrobe, and P. Szolovits describes knowledge representation in five distinct roles of it [33]:

1. KR is a surrogate.

“A knowledge representation (KR) is most fundamentally a surrogate, a substitute for the thing itself, used to enable an entity to determine consequences by thinking rather than acting, i.e., by reasoning about the world rather than taking action in it.” CHAPTER 3. KNOWLEDGE REPRESENTATION 28

KR serves equally well for both tangible and intangible objects. In other words everything can be represented. However, we have limitations while representing the real world. A perfect fidelity is nearly impossible because nothing is the same thing except the thing itself. Therefore, we cannot represent a thing completely accurate.

While representing the real world, either we omit some of its complex features or we may add new artifacts that does not exist in the real world. Having such an imperfect surrogate may cause having incorrect inferences about the world.

2. A KR is a set of ontological commitments.

“It is a set of ontological commitments, i.e., an answer to the ques- tion: In what terms should I think about the world?”

All representations are imperfect approximation of the real world. We represent only the part of the world that we are particularly interested in and we omit the other parts of it. Deciding on what part of the world we want to represent and how detailed it will be requires having ontological commitments. Complexity of real world is tremendous. KRs provide guidance to what and how to see the real world. CHAPTER 3. KNOWLEDGE REPRESENTATION 29

3. KR is a fragmentary theory of intelligent reasoning.

“It is a fragmentary theory of intelligent reasoning, expressed in terms of three components: (i) the representation’s fundamental concep- tion of intelligent reasoning; (ii) the set of inferences the representation sanctions; and (iii) the set of inferences it recommends.”

(i) Intelligent reasoning is defined in many fields. According to , intelligent reasoning is formal mathematical cal- culations such as deduction. Psychology defines intelligent reasoning as a characteristic human behaviour. Biology sees reasoning as the architecture of the machinery that achieves the reasoning. theory describes intelligent reasoning by adding of uncertainty to logic in terms of obeying the of probability theory. Eco- nomics adds values and preferences by defining intelligent reasoning by adherence to the tenets of utility theory. When we apply one of these point of views for intelligent reasoning, we not only chose the representation but also select a conception of the fundamental nature of intelligent reasoning.

(ii) Which inferences are sanctioned? Sanctioned inferences indicates which conclusions are allowed be constructed. Each representations defines sanctioned inferences in a different way in terms of their contents and forms. In formal logic, sound inferences, in which every model for the set is also model for the conclusion, are sanctioned. Both CHAPTER 3. KNOWLEDGE REPRESENTATION 30

rule based systems and frame-based representations defines sanctioned inferences based on behaviour of human expert instead of an abstract formal model. In these representations, conclusions may not always be sound or true.

iii) Which inferences are recommended? The set of sanctioned inferences is too large. Hence we should intelligently eliminate those overwhelming options while reasoning. An automated system should not only consider sanctioned inferences but also it should consider recommended ones. For instance from A, we can infer (A∧A) or (A∧A∧A∧A), etc. All of them sanctioned or legal inferences, however, later ones are not very intelligent inferences. Representation and reasoning are strongly connected to each others. While choosing the representation we also point out how we should intelligently. However, formal logic does not eliminate any sanctioned inference in order to protect its generality and declarativity. Elimination of any subset of the sanctioned inferences might be suitable for one situation but not in any other situation that causes loss of generality. In addition, if language consists of such statements that declare facts, they cannot not contain any indication of how to reason with it because by embedding such information they lose their their declarative character. Instead of representation’s seeking for the recommended inferences, we let user to recommend set of axioms, and lemmas provided to the system. By doing so, we increase the efficiency of computation. CHAPTER 3. KNOWLEDGE REPRESENTATION 31

4. KR is a medium for pragmatically efficient computation.

“It is a medium for pragmatically efficient computation, i.e., the computational environment in which thinking is accomplished. One contribution to this pragmatic efficiency is supplied by the guidance a representation provides for organizing information so as to facilitate making the recommended inferences.”

Reasoning is a computational process and representations are used to demonstrate how to organize information in a way that inferences can be made. In order to use a representation, it should be suitable for making computations with it. One of the goals of representation designers is finding a way to organize information so that inferences can be made efficiently.

5. KR is a medium of human expression.

“It is a medium of human expression, i.e., a language in which we say things about the world.”

We do create representation so that we can describe the world to the machine or to other people. Hence KR is a means of expression and communication. KR should be expressive, general and precise so that communication becomes “easier”. CHAPTER 3. KNOWLEDGE REPRESENTATION 32

All of the five roles of KR listed above are crucially important while designing representation. Ignoring one of them may cause important design issues. For instance ontological commitment is important when we need to define how detailed the world be represented. Similarly, the theory of intelligent reasoning is also important while making inferences. Representa- tion can guide reasoning once it knows the theory of what reasoning to do. Pragmatically efficient computation plays an important role too. Most of the representations are used considering the average case. Creating a weaker representation in order to improve the worst case performance can misguide us. The use of a representation as a medium of expression and communication is also important we should be able to know how to say what we are thinking. Hence we should be able to know how to use representation, in order to communicate. CHAPTER 3. KNOWLEDGE REPRESENTATION 33

3.3 KNOWLEDGE REPRESENTATION METHODS

3.3.1 NETWORKED REPRESENTATION

3.3.1.1 SEMANTIC NETWORKS

Semantic Networks(or semantic nets) were first used to define concept types and patterns of relations for systems[100]. It is then developed by Ross Quillian in 1966 [26, 87]. Using a model to represent a context that is expressed in natural language in written format, helps to identify relationships between instances of the concepts described in the text. Using such model makes relationships explicit where it is implicit in the text.

Semantic network is a structured knowledge representation method that consists of interconnected nodes and arcs between these nodes. It was invented and used in philosophy, psychology, and before it became a research field in Artificial Intelligence [98, 99, 13].

Syntax, semantics, and inference rules are three main components of semantic networks. Syntax consists of specifications about node and arc types. Semantic is the meaning that is represented by nodes and arcs. Inference rules are the rules that are used for reasoning [13].

Nodes are used to represent concepts of entities, attributes, events or states that are objects, abstract form of ideas, knowledge or thoughts. Arcs() are used to represent the relationship between the concept nodes. Links are directed and labelled. Hence, semantic networks are directed graphs and CHAPTER 3. KNOWLEDGE REPRESENTATION 34 labels indicate the relation types. [98, 61].

Figure 3.1: A Semantic Network[6]

There two types of edges: property edges and is-a edges. Property edges specify properties of objects or concepts and is-a edges indicates hierarchical relationships. Properties are inherited through is-a edges. For instance, Kermit inherits its green color from Frog class[6].

Definitional networks, assertional networks, implicational networks, exe- cutable networks, learning networks, and hybrid networks are the major types of semantic networks[100].

Definitional networks are the oldest network type among others. It was first introduced by the Greek philosopher Porphyry in the 3rd century AD. It indicates is-a relation between a concept and sub-concept. Definitions are accepted as true by definition. Thus, the information in definitional networks CHAPTER 3. KNOWLEDGE REPRESENTATION 35 is assumed to be necessarily true.

Figure 3.2: Tree of Porphyry, as it was drawn by the logician Peter of Spain(1329) [100]

Figure-3.2 is a version of a the graph drawn by Greek Philosopher Porphyry as an illustration of Aristotle’s method of defining categories by specifying the general type and the sub-types of the same super-type. This graph is an example of definitional networks.

Assertional Networks are used to assert propositions. The information in an assertional network is assumed to be contingently true. There is various syntactic versions of assertional networks. Figure-3.3 is a by Sowa that represents “Sue thinks that Bob believes that a dog is eating a bone”.

Primary relations in Implicational Networks are implications. Each CHAPTER 3. KNOWLEDGE REPRESENTATION 36

Figure 3.3: An assertional network-Propositions represented in SNePS [100]

Figure 3.4: An implicational network [100] node is a proposition. Directed arcs are implications from one proposition to another. Figure-3.4 shows possible reasons of slippery grass. The arc labelled with “T” implies that it recently rained if it is rainy season, otherwise; arc labelled with “F” implies that sprinklers are in use. Either case implies that grass is wet, and this implies that grass is slippery. CHAPTER 3. KNOWLEDGE REPRESENTATION 37

Executable Networks has three mechanisms: message passing, attached procedures, graph transformation that can change the network itself. Message passing mechanism passes a message or token from one node to another, attached procedures are programs in nodes that executes the data at that node or nearby nodes, graph transformation breaks graph into smaller graphs, modifies the graph, or merges graphs. Figure-3.5 has active(diamond) and passive(rectangular) nodes. Passive nodes can be input and output nodes. Input nodes takes the input, and active node does calculation on the data that is sent by passive nodes, and passes it to the output nodes. X = (A+B)∗S2N(C) can be represented by Figure-3.5, where A,B,C are numbers and S2N is a procedure that takes a string and converts it into a numerical value.

Figure 3.5: Dataflow Graphs - An executable network [100]

Learning Networks are constructed from nodes and arcs to represent knowledge that is retrieved from examples. When new information is intro- duced, network responds to it and modifies itself so that it represents the new environment modified by the new information. Network modification can be CHAPTER 3. KNOWLEDGE REPRESENTATION 38

Figure 3.6: Learning Networks - Neural Network [100] done by adding nodes, deleting nodes, or changing the weights on the arcs. Figure-3.6 shows an example to learning networks. Neural nets are one of the examples of learning networks. Node addition and deletion is not common in neural networks. The only network modification can be seen in the weights of the arcs.

Hybrid Networks are combination of the previously introduced networks. Most of the complex systems are hybrids. For instance, C++ has an executable to provide procedural structure and a definitional component to define types or classes[100]. CHAPTER 3. KNOWLEDGE REPRESENTATION 39

3.3.1.2 CONCEPTUAL GRAPHS

Although most semantic networks can be used for question answering and machine translation, they cannot represent all features of logic. Conceptual Graph(CG) [96] is knowledge representation formalism that is graphical repre- sentation of logic based on combination of semantic networks and existential graphs by . It was first introduced by John F. Sowa to represent the conceptual schemas used in database systems in 1976. Different expressive power can be obtained by using different subsets of conceptual graphs. ISO standard conceptual graphs(Conceptual Graph Interchange For- mat(CGIF)) express the full semantics of (CL) and it consists of subset used for Semantic Web languages[97]. Besides CGIF, there are two more dialects that are expressing the full CL semantics : the Common Logic Interchange Format (CLIF), and the XML-based notation for CL (XCL).

Figure 3.7: A Conceptual Graph [97]

Figure-3.7 is a Conceptual Graph represents “On Fridays, Bob drives his CHAPTER 3. KNOWLEDGE REPRESENTATION 40

Chevy to St. Louis.” In the graph, rectangles are conceptual nodes, circles are conceptual relation nodes, the arcs pointing in a circle and pointing out from a circle are the arguments of that conceptual relation node. Labels in concept nodes indicates type of the entities for that concept. ∀ in Friday : ∀, and names such as Bob in Person:Bob, and “St. Louis” in City:“St. Louis” are the restrictions on the concepts Friday, Person, City respectively. Concepts without or universal quantifier are implicitly quantized with existential quantifier.

Labels on conceptual relation nodes indicates the type of the relation. Those are agent (Agnt), point-in-time (PTim), destination (Dest), possession (Poss), theme (Thme), and attribute (Attr).

Graph can be translated in to typed version of predicate calculus as follows:

(∀x1:Friday)(∃x2:Drive)(∃x3:Chevy)(∃x4:Old) (Person(Bob) ∧ City("St. Louis") ∧ PTim(x2,X1) ∧ Agnt(x2,Bob) ∧ Poss(Bob,x3) ∧ Thme(x2,x3) ∧ Attr(x3,x4) ∧ Dest(x2,"St. Louis"))

CGIF representation of “On Fridays, Bob drives his Chevy to St. Louis.” has different syntax than predicate calculus. Square brackets are used to represent the conceptual nodes, parenthesis is used to represent relation nodes. Names(e.g. Bob and “St.Louis”, and coreferences(e.g. defining label(*x), bound label(?x)) are used to create connections between concept nodes and relation nodes. Univeral quantifier is represented by ASCII string “@every”. Since graph implies conjunction, ∧ symbol is omitted. CHAPTER 3. KNOWLEDGE REPRESENTATION 41

[P erson Bob][Chevy ∗ x1] [Old ∗ x2] (P oss Bob ?x1) (Attr ?x1 ?x2) [[F riday @every ∗ x3] [Drive ∗ x4] [City ”St.Louis”] (P T im ?x4 ?x3) (Agnt ?x4 Bob)(T hme ?x4 ?x1) (Dest ?x2 ”St.Louis”)]

Figure 3.8: A Conceptual Graph Representing CL Functions [97]

Figure-3.8 is representation of algebraic formula y = (x + 7)/sqrt(7). In the figure, conceptual relations(functions) are represented by diamond-shaped nodes, that are called actors. Empty nodes represents result of actors Add and Sqrt. Arcs labelled with numbers 1 and 2 are used to indicate the order in which the arcs are written in CGIF. CGIF representation of y = (x+7)/sqrt(7) is as follows:

[Number : ∗x][Number : ∗y][Number : 7] (Add ?x 7 | [∗u]) (Sqrt 7 | [∗v]) (Divide ?u ?v | ?y)

In the CGIF statement above, input nodes are separated from output nodes by a bar (|). CHAPTER 3. KNOWLEDGE REPRESENTATION 42

3.3.2 STRUCTURAL REPRESENTATION

3.3.2.1 FRAMES

Frames were proposed by Marvin Minsky in 1974[76]. A frame is a data structure used to create structured knowledge representation for stereotyped knowledge such as a visual scene like being in a certain type of a living- room, or an event like going to a child’s birthday, or a complex structure like automobile parts. Frames are inspired from human understanding. They are model of human memory and . When someone encounters a new information about previously known problem, our brain brings a particular memory frame from our memory and it gets updated with the new information. A frame can contain information about how to use the frame itself, what to expect , or what to do when expectations are not met. Collection of similar frames, that are linked together generates frame-systems.[76]

A frame provides a structured representation of an object or a cate- gory(class). An object such as Paris is represented by individual frames. A category such as European Capitals is represented by generic frames. Class are achieved by using constructors. Constructors enables to draw sub/super-class relation between classes. A frame can contain attributes of an object or a category, and their relations to other objects or categories.[39, 76]

Frames resembles records in terms of structural knowledge. Unlike records frames have slots and fillers instead of field names and values in records. In CHAPTER 3. KNOWLEDGE REPRESENTATION 43

Figure 3.9: Comparison of OOP, Frames, DLs and RDF[65] addition, frames are related to semantic networks, which is also predecessor of early description logics language KL-ONE. Frames and object oriented languages(OOP) are also similar except the terminology used in both. Figure- 3.9 shows the comparison of OOP, Frames, Description Logics and RDF[65].

(frame-name

... )

The template above is the general form for a frame. Each frame has a name representing an object or a class of objects. Slots are attribute descrip- tions for a class or an object. Environment(KEE) system[65] provides two different types of slots: ownslots and memberslots. Ownslots consist attributes of the object or the class that is represented by the frame itself. Memberslots resembles database schema. They draw a general description for each member of the class rather than having attribute description for the class that is represented by the frame itself. CHAPTER 3. KNOWLEDGE REPRESENTATION 44

Figure-3.10 presents class for the transportation in . Solid lines indicate class-subclass relations and dashed lines indicate class-membership relations. For instance, MEN is subclass of PEOPLE and PAUL, and FRED are members of class MEN. Both solid and dashed lines indicates “IS-A” relation either between an instance and a class, or a class and its super class.

Figure-3.11 is a frame for generalized class AUTOMOBILES and Figure- 3.12 is a frame for CAR2, which is a specific instance of AUTOMOBILES class. Cardinality.Min and Cardinality.Max facets are the constraints for the fillers of the slots. ValueClass facet describes which class the slot belongs to. Sub-classes inherit properties from their super-classes.

Figure 3.10: The Transportation Knowledge Base[39] CHAPTER 3. KNOWLEDGE REPRESENTATION 45

Figure 3.11: The Transportation Knowledge Base[39] CHAPTER 3. KNOWLEDGE REPRESENTATION 46

Figure 3.12: The Transportation Knowledge Base[39] CHAPTER 3. KNOWLEDGE REPRESENTATION 47

Historically, there are two aspects for frame semantics. The first one is AI aspect introduced by Minsky, which is described above and are considered as cognitive frames. That is the general form of the frames. Cognitive frames, slot-filler representations,a data-structure representing a stereotyped situation, play an important role in how people perceive, remember, and reason about their experiences. Minsky’s frames are highly structured knowledge representation approach, which collects information about particular objects and events and arranges them into a taxonomic hierarchy. On the other hand, the second approach has linguistic aspect introduced by Fillmore. Fillmore’s frames characterizes an abstract scene which identifies the participants of the scene and sentences describing the scene. According to Fillmore, one cannot understand the meaning of a single without access to all the essential knowledge that relates to that word. Understanding a sentence of the language requires having mental access to such schematized scenes.[42, 48]

We would like to clarify, FrameNet Project[12] explained in Chapter-4 refers Fillmore’s definition of frames, mostly referred as semantic frames. From this point on, the word “frame” will refer semantic frame.

According to Fillmore, one word evokes or activates the whole scene (a frame) related to that word. The examples below shows how the wording changes our perception about the same event.

(1) I spent three hours on land this afternoon. (2) I spent three hours on the ground this afternoon.

Two of the scenes above invokes different scenes[41]. The first one invokes CHAPTER 3. KNOWLEDGE REPRESENTATION 48 a scene about a sea voyage, and the second scene invokes an interruption of an air travel each of which are different frames.

Another famous example of frame semantic is Commercial Transaction Frame that consists frame elements(FE) such as buyer, a seller, goods, and money. Each of these words, focuses on different aspects of the frame but still related to each others. For instance, “buy” focuses on the “buyer” and “goods”; “sell” focuses on the “seller” and “goods”, etc. The idea is one would not be able to understand the word “sell” without knowing anything about the situation of Commercial Transaction.[83, 48] CHAPTER 3. KNOWLEDGE REPRESENTATION 49

3.3.2.2 KL-ONE KNOWLEDGE REPRESENTATION SYSTEMS

KL-ONE (also known as KLONE) is a well-known knowledge representation formalism in Artificial Intelligence that is introduced by Brachman in his Ph.D thesis [111, 22]. KL-ONE is descendent of semantic nets and frames. It is introduced to overcome ambiguity and inconsistency of semantic nets and frames. Brachman wanted to create a knowledge representation struc- ture that is strictly dependent on logic, that is more knowledge structuring level, in his words “epistemological”, than application-based or real world representation-based representations[7]. Development of KL-ONE later leads to development of description logics(DLs). KL-ONE systems has been used in many applications in Artificial Intelligence such as understanding and gen- erating natural language, information retrieval, natural language command execution, and many others [25].

KL-ONE consists of two parts that are descriptions and assertions. De- scription part allows us to describe simple and terms. For instance, “a man from Betelgeuse” is a compound term that uses the description of man and Betelgeuse. Description part consists of two sub-parts: primitive and defined. Primitives are not fully described with all properties. They are considered as incomplete definitions. On the other hand, defined descriptions are characterized by all the necessary and sufficient conditions. For instance, a polygon can be defined as a primitive with the property of having three or more line segments. We do not attempt to list all properties of primitives. A defined concept triangle can be derived from the polygon’s description. A triangle is a polygon, that has three sides that are line segments. This definition gives all necessary and sufficient conditions for being a triangle. CHAPTER 3. KNOWLEDGE REPRESENTATION 50

Thus, triangle is a defined concept. However, based on the given definition of a polygon, it does not guarantee a geometric shape, that has three or more line segments to be a polygon if there are edges, that are not closed. Assertion part allows us to do reasoning on descriptions. Just like DLs, KL-ONE consists of notion of concepts, roles, and their relations, number restrictions, class hierarchies, and classifications.[25]

Figure 3.13: Truck and TrailerTruck concepts defined in KL-ONE [101]

The figure-3.13 is a simple KL-one graph. Ellipses are defined concepts, ellipses with shades are individual concepts, ellipses with asterisk are primitive concepts. Roles are denoted with circles in the middle of arrows. The v/r notation indicates value restrictions or type constraints for those roles. Large arrows indicate class subsumption relation.

Graph can be written as frame-like syntax as follows[101]: CHAPTER 3. KNOWLEDGE REPRESENTATION 51

“Every truck is a vehicle. Every trailer truck is a truck that has as part a trailer, an unloaded weight, which is a weight measure, a maximum gross weight, which is a weight measure, a cargo capacity, which is a volume measure, and a number of wheels, which is the integer 18.”

Syntax(α) Semantics(〚α〛)

c 〚c〛= µ(c) ⊆ δ

r 〚r〛= µ(r) ⊆ δ × δ

(and c1...cn) 〚(and c1...cn)〛= 〚c1 〛∩...∩ 〚cn 〛

(exists r) 〚(exists r) 〛= {x ∈ δ | ∃y ∈ δ such that ∈ 〚r〛}

(all r c) 〚(all r c) 〛= {x ∈ δ | ∀y ∈ δ, if ∈ 〚r〛then y ∈ 〚c 〛}

(= r1 r2) 〚(= r1 r2)〛= {x ∈ δ | ∀y ∈ δ, ∈ 〚r1〛just in case ∈ 〚r2〛}

(vrdiff r c) 〚(vrdiff r c)〛= { ∈ 〚r〛 | y ∈ 〚c〛}

〚(chain r1...rn)〛= { ∈ δ × δ | ∃z1...zn−1 such that (chain r1...rn) ∈ 〚r1〛... ∈ 〚rn〛}

Figure 3.14: Common type-forming operators[109]

The principle component of KL-ONE systems is the concept and main relation between concepts are the subsumption[90]. Concept A subsumes concept B if every instance of B is also an instance of A. In that case, concept B inherits all attributes from concept A. KL-ONE uses structured inheritance networks to draw such relations between concepts[111]. CHAPTER 3. KNOWLEDGE REPRESENTATION 52

Figure-3.14 summarizes syntax and semantics of concept- and role forming expressions with respect to a domain δ and a modeling function µ. µ assigns interpretations in δ to atomic concepts and roles. µ(c) ⊆ δ and µ(r) ⊆ δ × δ holds for every atomic concept and role respectively. Atomic concepts are denoted by c, and atomic roles are denoted by r in the first two lines of the table. Concepts and roles after the first two lines can be atomic or complex[109].

Although, KL-ONE is used in wide range of fields, many studies showed that even for simple languages, subsumption is intractable or undecidable[109]. Schmidt-Schauß[91] proved that subsumption relation is undecidable even when language only consists of =, and, all, and chain. CHAPTER 3. KNOWLEDGE REPRESENTATION 53

3.3.3 LOGIC-BASED REPRESENTATION

There are various types of logic such as propositional logic, predicate logic(or first order logic), , , , F-logic etc. Here we will be focusing on propositional logic, first order logic, F-logic, and description logic. We will go into more detail in description logic part since it is standardized layer in semantic web.

Language Ontological Commitment Epistemological Commitment Propositional Logic facts true/false/unknown Description Logic facts, objects, relations true/false/unknown First-Order Logic facts, objects, relations true/false/unknown Temporal Logic facts, objects, relations, time true/false/unknown Probability theory facts degree of belief ∈ [0,1] Fuzzy Logic facts with degree of known interval value

Figure 3.15: Formal Languages Ontological And Epistemological Commit- ments[89]

Figure-3.15 shows ontological and epistemological commitments of different logical languages. Propositional logic consist of facts, which can be true, false or unknown. First-order logic(FOL) consists of facts, objects, and relations which can be true, false, or unknown. Since description logic is a decidable fragment of FOL, it has the same ontological and epistemological commitments as FOL. Ontological commitment of temporal logic consists of time values in addition to facts, objects and relations that can be true, false, or unknown. Probability theory consists of facts, that has degree of belief in [0,1] interval. Fuzzy logic is set of facts with for some known interval value. CHAPTER 3. KNOWLEDGE REPRESENTATION 54

3.3.3.1 PROPOSITIONAL LOGIC(PL)

A proposition is a statement, that can be evaluated as true or false. Proposi- tional logic(sentential logic,sentential calculus, statement logic) is a branch of logic, that studies means of combining propositions to create more complex propositions or means of altering the propositions[60].

The simplest preposition is an atom denoted by capital letters such as P, R, Q. “Today is Monday.” can be an example to an atom. An atom can be either true or false. More complex prepositions can be created from atom by using AND(∧), OR(∨), NOT(¬), implication(→), and iff(↔) connectives[82].

A logical formula can be define recursively as follows:

• Every atom is a formula.

• If φ, ψ are formulae, then ¬φ, φ ∧ ψ, φ ∨ ψ, φ → ψ, and φ ↔ ψ are formulae.

A formula is called a well-formed formula(wff) if is syntactically correct. A well-formed formula can be described as follows[81]:

wff ::= atomic proposition | (wff)| true | false | ¬ wff | wff ∧ wff | wff ∨ wff | wff → wff | wff ↔ wff

Figure-3.16 shows formal definitions of the connectives. NOT(¬) flips the truth value of a statement. AND(∧) outputs true if both prepositions are true. OR(∨) outputs true iff at least one of the propositions are true. Implication(→) yields false only when φ is true and ψ is false. Equality(↔) outputs true if both sides of the arrow carry the same truth value. CHAPTER 3. KNOWLEDGE REPRESENTATION 55

φ ψ ¬φ φ ∧ ψ φ ∨ ψ φ → ψ φ ↔ ψ T T F T T T T T F F F T F F F T T F T T F F F T F F T T

Figure 3.16: Truth table of connectives in propositional logic

Truthness of a proposition is determined by interpretation I. Truth table of a formula φ is mapping from interpretation I to truth value of φ.[82]

• Truth value of an atomic proposition φ is φI in the interpretation I.

• If φ = ¬ψ, then φI = ¬ψI .

• If φ is a complex proposition such as φ = p∧q, then φI = pI ∧qI . Same rule holds for OR, implication, and iff as well.

Formulae φ and ψ are equivalent, if they have the same truth table. In other words, φ ≡ ψ if they yield the same truth value for all interpretations I.

• A wwf φ is satisfiable if there exists a truth assignment I that is φI = T . We say interpretation I entails φ and we denote it as I |= φ.

• A wwf φ is tautology(or valid), if for all interpretations I, I |= φ.

• A wwf φ is (or invalid), if for all interpretations I, I 6|= φ.

• A wwf is contingency if it is neither a tautology nor a contradiction. CHAPTER 3. KNOWLEDGE REPRESENTATION 56

Logical Inferences in PL:

If every interpretation that entails set of the formulae {φ1, φ2, ..., φn} also entails φ, then we say φ is a of φ. In other words, every truth assignment I that satisfies {φ1, φ2, ..., φn} also satisfies φ, and denoted by φ1, φ2, ..., φn |= φ. Entailment holds if and only if (φ1, φ2, ..., φn) → φ is tautology.[81]

A logical consequence is formally drawn by two different ways: model- theoretic/semantic consequence(|=) or proof-theoretic/syntactic consequence (`). Checking of an argument with n propositional variable requires having 2n lines in the truth table when model-theoretic approach is used. As a result, when the number of the variables increases in a proposition, the time required for checking the validity increases exponentially and becomes cumbersome. In that case, using proof-theoretic approach with inference rules to check the validity of an argument becomes more effective. Inference rules allow us to infer new formulas by using the given ones. Figure-3.17 summarizes some of the inference rules used in PL.[88, 81]

For instance by knowing ¬C and ¬C → (A → C) are valid, we can derive that ¬A is also valid[81]:

1) ¬C (an axiom) 2) ¬C → (A → C) (an axiom) 3) A → C (Modus Ponens, from line 1 and 2) 4) ¬A (Modus Tollens, from line 3 and 1) CHAPTER 3. KNOWLEDGE REPRESENTATION 57

Figure 3.17: Inference Rules in PL[88] CHAPTER 3. KNOWLEDGE REPRESENTATION 58

3.3.3.2 FIRST-ORDER LOGIC(FOL)

First-order logic, also known as first-order predicate calculus or predicate logic, extends propositional logic by including quantification over the individuals of the domain of discourse[14]. Basic building blocks of FOL syntax are symbols for constants to represent objects, predicate symbols to represent predicates(or relations), and function symbols to represent functions.

Constants in FOL are represented with lower-case letters a, b, c etc. A predicate has an arity of n, where n ∈ N. Predicates are denoted by capital letters such as P, Q, R etc. A function has an arity of m, where m ∈ N+. Functions are denoted by lower-case letters f, g, etc. [89, 103]. Terms refers to an object and defined by the grammar :

t := c | x | f(t1, t2, ..., tn)

where c ranges over constants, x ranges over variables, f ranges over n-ary function symbols, and t1, t2, ... , tn over terms, for each integer n ≥ 1.

A well-formed formula can be define as follows:

wff := P (t1, ..., tn) | t1 = t2 | (wff) | True | False | ¬ wff | wff ∧ wff | wff ∨ wff | wff → wff | ∀x wff | ∃x wff

where P ranges over n-ary relation symbols, t1, t2, ..., tn ranges over term symbols for n ∈ N, and x ranges over variable symbols. CHAPTER 3. KNOWLEDGE REPRESENTATION 59

P (t1, ..., tn), t1 = t2, True, False are atomic formulae (a.k.a atomic sentences or atoms).

Mother(julia) , MotherOf(Doctor(julia),Student(john))

Two of the sentences above are examples for atomic sentences. First example indicates “Julia is a mother”. Second example has complex terms as an argument to represent relation that “Doctor Julia is mother of student John”.

Complex sentences(complex formulae) are created by using logical connectors. Logical connectors negation(¬) , conjunction(∧), disjunction(∨), implication(→) behave same as in PL. Order of logical connectors also repre- sents their precedence from the highest to the lowest.[89, 103]

Country(france) ∧ Capital(paris) ∧ In(paris, france) → CapitalOf(paris, france)

The example above is a complex formula representing “Paris is capital of France.” Terms without variable are called ground term. A variable in a formula can be bound or free. A free variable is the one that is not quantified in the formula.

∀xP (x, y)

In the formula above x is a bound variable and P is its scope; variable y in the same formula is a free variable if x 6= y. A variable is defined free:

• if φ is an atomic formula and if x occurs in φ, then x is free.

• if x is free in φ, then it is free in ¬φ CHAPTER 3. KNOWLEDGE REPRESENTATION 60

• if x is free in φ or ψ, then it is free in ψ ∧ φ, ψ ∨ φ, ψ → φ.

• if x is free in φ and x 6= y, then x is free in ∀yφ and ∃yφ.

The De Morgan Law

∀x ¬P ≡ ¬∃x P ¬(P ∨ Q) ≡ ¬P ∧ ¬Q ¬∀x P ≡ ∃x ¬P ¬(P ∧ Q) ≡ ¬P ∨ ¬Q ∀x P ≡ ¬∃x ¬PP ∧ Q ≡ ¬(¬P ∨ ¬Q) ∃x P ≡ ¬∀x ¬PP ∨ Q ≡ ¬(¬P ∧ ¬Q)

Unquantized De Morgan’s Law applies to PL predicates as well, where x is a variable, and P and Q are predicates.

Syntax is only set of symbols for the grammar of the language. Meaning of the symbols are given by the semantic. Semantics deals with the inter- pretation of language including meaning, logical implication, and truth[108]. Semantics can be achieved either by proof-theoretic semantics or by Model- Theoretic semantics. Both are useful methods, however, we will introduce model-theoretic semantic here since description logic adapts model-theoretic semantic.

An interpretation or model (I) of a logical formula contains semantics for constants, predicate symbols, and function symbols. Models in proposi- tional logic links propositional symbols to truth values. Models in FOL are different than PL. Domain of the models in FOL are nonempty and consists of set of objects or domain elements[89]. In PL an interpretation fixes the truth- ness of a given proposition. For instance, truth value of (P ∨ ¬Q) → (Q → P ) can be evaluated by constructing a truth table for the formula in PL. In CHAPTER 3. KNOWLEDGE REPRESENTATION 61 contrast, it is not that simple to follow the same approach for the formula ∀x∃y((P (x) ∨ ¬Q(y)) → (Q(x) → P (y))) in FOL. Meaning of the quantifiers and their dependence, and the actual parameters of P and Q should be reflected as well. In addition to formulas, predicates such as P (t1, t2, ..., tn) cannot be evaluated by truth assignment without knowing the meaning of the terms. For example, P could denote “less than or equal to” relation on terms that are real numbers. Thus, a model is needed to evaluate constant symbols, predicate symbols and function symbols [53].

In FOL, a model evaluates whether constant, predicate, and function symbols reflects the objects, relations and functions in the domain of discourse. Model of a set of function symbols F and a set of predicate symbols P can be defined as follows:

• A non-empty set 4I ; the universe of concrete values

• for each null-ary function symbol(constant) f ∈ F, a concrete element f I ∈ 4I .

• for each f ∈ F with arity n > 0, a concrete function f I :(4I )n → 4I

• for each P ∈ P with arity n > 0, a subset P I ⊆ (4I )n of an n-place relation on 4I .

Let I be a model for a variable-free term t, c be a constant symbol and f be a n-ary function symbol:

• if t = c , then tI = cI

I I I I I • if t = f (t1, t2, ..., tn), then t = f(t1 , t2 , ..., tn ) CHAPTER 3. KNOWLEDGE REPRESENTATION 62

Let I be a model for a predicate symbol P, and t1, t2, ..., tn be variable free terms:

I I I I I • if t = P (t1, t2, ..., tn), then t = P (t1 , t2 , ..., tn )

Truth value of 4I |= (x = 2) depends on the value x holds. We need a look-up table environment that assigns values to x. An environment α is used to assign values to the variable. Let α be the value binding function from set of variables var to domain. α : var → 4I denoted by α[x 7→ a], which maps x to a, where a ∈ 4I .

We replace every variable in α : var → 4I with a term and we define α0 : term → 4I as follows :

• α(x) is identical to α0(x) except that α0(x) = c, where c ∈ 4I ,

I 0 0 • α(f(t1, ..., tn)) = f (α (t1), ..., α (tn)), where n is the arity of f, and

t1, ..., tn are terms,

• if f is null-ary function, then α0(f) = f I .

If I |=α φ holds, then we say that formula φ computes to true in the model I with respect to the environment α.[53]

• if φ is P (t1, ..., tn), where terms consist variables, then each variable I is replaced by α with their values a1, a2, ..., an ∈ 4 . We say I |=α I P (t1, ..., tn) holds if a1, a2, ..., an ∈ P .

I • The relation I |=α ∀xφ holds iff I |=α[x7→a] φ holds for all a ∈ 4 .

I • The relation I |=α ∃xφ holds iff I |=α[x7→a] φ holds for some a ∈ 4 . CHAPTER 3. KNOWLEDGE REPRESENTATION 63

• The relation I |=α ¬φ holds iff it is not the case that I |=α φ holds.

• The relation I |=α φ ∨ ψ holds iff I |=α φ or I |=α ψ holds.

• The relation I |=α φ ∧ ψ holds iff I |=α φ and I |=α ψ holds.

• The relation I |=α φ → ψ holds iff I |=α ψ holds whenever I |=α φ holds.

Although FOL is a very expressive language that can express majority of the natural language, it has been heavily criticized for complexity of its reasoning algorithms[46]. In the following section, we will introduce a decidable fragment of first order logic, that is one of the fundamental layers of semantic web architecture. CHAPTER 3. KNOWLEDGE REPRESENTATION 64

3.3.3.3 DESCRIPTION LOGICS

Description Logics(DLs)1 are a family of the knowledge representation for- malism. DLs are descendent of KL-ONE systems[25] that is used to represent the knowledge of the domain of the application formally. After early im- plementation KL-ONE systems, worst case complexity of KL-ONE-like KR languages became major problem in the field. Complexity of the language has direct relationship with expressive power of the language. Inference problems such as subsumptin relation between concepts is intractable, although the language is not very expressive. Unlike FOL researchers who are mainly focusing on -proving, DLs researchers focus on query answering in reasonable time. However, having intractable inferences does not make DLs a bad candidate as an ontology building language since optimization techniques and restrictions are used when implementing a system. [7] A logic based ontology language enables reasoning about the the relationships between concepts and objects[51].

Basic building blocks of DLs are atomic concepts, atomic roles, and individuals. Concepts represent sets of individuals in the domain, roles are binary relations between individuals in the domain, and individuals are single individuals in the domain. Concepts are like unary predicates, roles are like binary predicates, and individuals are like constants in FOL[62, 106]. In addition to atomic concepts and roles, more complex concepts and roles can be constructed by using constructors that are provided by different languages. Description languages are identified by the constructors they provide. The most basic description language is Attributive Language(AL). Concept and

1Majority of this section summarizes content and examples from[7, 9, 62, 8, 10]. CHAPTER 3. KNOWLEDGE REPRESENTATION 65 role descriptions supported by (AL) as follows[7]:

C:= A | > | ⊥ | ¬A | C u D R:= ∃R.> | ∀R.C

where A is atomic concept, > is universal(top) concept, ⊥ is bottom(empty) concept, C and D are concept descriptions,and R is an atomic role. Negation can only be applied on atomic concept, and existential quantifier is restricted by only top concept.

More expressive description languages can be obtained by different con- structors. Each constructor is represented by a letter. Language gets its name from the constructor it supports such as ALC,SHOIN,SHOIN(D),SROIQ, etc.

There are two kind of semantics for OWL2 : direct semantics, which is compatible with the description logic SROIQ or RDF-Based semantics[77, 44]. We will introduce SROIQ(D) and its properties in the following parts of this section. CHAPTER 3. KNOWLEDGE REPRESENTATION 66

C U + E S AL+C + Transitivity of Roles U Concept Disjunction E Full Existential Quantification(∃R.C) H Role Hierarchies O Nominals I Inverse Roles N Number Restrictions (≤ nR) Q Qualified number restrictions (≤ nR.C) (D) Data types F Functional Roles R Complex Role Inclusion

Table 3.1: Constructors in Family of AL-Languages CHAPTER 3. KNOWLEDGE REPRESENTATION 67

SROIQ(D)

DL does not contain entire state of the world. It consists of partial statements about the world. Those statements are called axioms. Axioms are logical statements that are evaluated to either true or false. There are three types of axioms in DLs: assertional axioms(ABox), terminological axioms(TBox), and relational axioms (RBox)[62].

ABox axioms are statements about named individuals. ABox axioms rep- resent knowledge about how individuals related to each other(role assertion), or which concept they belong to(concept assertion). ABox is also refereed as the world description[7].

Capital(paris), Country(france), CapitalOf(paris,france)

First two ABox axioms above are example for concept assertion indicating that individual paris belongs to set Capital, and individual france belongs to set Country. Last axiom is concept assertion indicates the type of binary relation between individuals paris and france.

tom ≈ thomas , tom 6≈ john

DLs do not support unique name assumption, different individual names might represent same individual. The example above indicates individual equality and inequality respectively. CHAPTER 3. KNOWLEDGE REPRESENTATION 68

TBox axioms , or the terminology represents the relationship between concepts. TBox axioms consist concept equality and concept inclusion.

Parent v Ancestor

Parent concept above is subsumed by Ancestor concept. In other words, every member of Parent concept is also member of Ancestor concept[62]. Subsumption and instance relationship provides implicit semantics of “IS- A” relation in semantic networks. In semantic networks user explicitly has to set IS-A relationship, however, in DLs it can be implicitly inferred by subsumption and instance relationships[7].

Concept1 ≡ Concept2

Class equality is represented by ≡ symbol and it holds when every member of Concept1 is member of Concept2 and every member of Concept2 in also member of Concept1 ((Concept1 v Concept2) ∧ (Concept2 v Concept1)).

RBox axioms are used to represent properties of roles such as role inclu- sion, role equivalence, role composition, and disjoint roles. An example to role inclusion :

role1 v role2

indicates that every pair of individuals related by Role1 is also related by role2. parentOf v ancestorOf indicates that if person x is parent of person y, then person x is also ancestor of person y. CHAPTER 3. KNOWLEDGE REPRESENTATION 69

brotherOf ◦ parentOf v uncleOf [62]

Role composition can only appear on the left hand side of complex role inclusions as seen above. If person x is brother of person y, and person y is father of person z, then person x is uncle of person z.

Disjoint(motherOf, fatherOf)

There are cases that pair of individuals that appear on a relation, strictly cannot appear on other relations such as nobody can be both mother and father of the same individual. Disjoint roles are used to represent such cases.

More complex concepts and roles can be defined by using basic ABox, TBox, RBox axioms and the constructors. Figure-3.18 has set of axioms that define family relationships.

Figure 3.18: A terminology(TBox) concepts about family relationships[7]

Top(>) concept is used to represent all individuals in the domain and bottom(⊥) concept is used to represent an empty concept. > ≡ C t ¬C and CHAPTER 3. KNOWLEDGE REPRESENTATION 70

⊥ ≡ C u ¬C where C is an arbitrary concept[62].

DLs allow to use concepts and roles linked together to create restriction on roles. (∃parentOf.>) u (∀parentOf.Female) axiom represents all individuals who are parents of at least one child and all of their children are females. parentOf role is restricted with existential quantifier and top concept.

Person v (≥2childOf.Parent u ≤2childOf.Parent)

The axiom above is an example to number restriction of roles. It represents set of individuals who have at least and at most two parents (individuals who have exactly two parents).

Enumerations are not allowed in DLs, however, they can be simulated by nominals. A is a set that has only one named individual as its instance.

Weekdays ≡ {monday} t {tuesday} t {wednesday} t {thursday} t {friday}

Sets can be defined without disjunctions by using set(or one-of constructor) as well. A set constructor defines a set {a1, ..., an} where ai’s are individual names(i ∈ {1, 2, , ..., N}).

Another constructor is fills constructor(R:a) that defines set of individuals that are fillers of role R.

hasChild: john CHAPTER 3. KNOWLEDGE REPRESENTATION 71

John is role filler of hasChild role. In other words it defines set of individuals who has a child named John.

Complex roles can be created by using role constructors. Universal role U is a role that relates every pairs in the domain. An empty role can be represented as > v ¬∃R.> Every individual is not related through role R.

ancestorOf ◦ ancestorOf v ancestorOf

The axiom above represents that ancestorOf role is transitive. If inverse of a role equals to role itself, then the role is symmetric. If inverse of a role is disjoint from itself, then the role is asymmetric. marriedTo ≡ marriedTo−(symmetric), Disjoint(sonOf,sonOf−)(asymmetric)

Global reflexivity can be represented by combining top concept with local reflexivity. A role is irreflexive if it is not locally reflexive.

> v ∃knows.Self(reflexive) , > v ¬∃marriedT o.Self(irreflexive)

We can summarize SROIQ(D) description language by giving its formal syntax[62]. A SROIQ(D) concept C is defined by the grammar below, where n ∈ Z+, NC is a set of concept names, and NI is a set of individual names:

C := NC | (C u C) | (C t C) | ¬C | > | ⊥ | ∃R.C | ∀R.C | ≥ nR.C | ≤ nR.C | ∃R.Self | {NI } CHAPTER 3. KNOWLEDGE REPRESENTATION 72

SROIQ role expressions R is defined by the following grammar where U is universal role and NR is a set of role names:

− R := U | NR | NR

Table-3.2 is summary for the formal syntax of SROIQ axioms.

ABox : C(NI ) ,R(NI ,NI ) ,NI ≈ NI ,NI 6≈ NI

TBox : C v C,C ≡ C

RBox : R v R,R ≡ R,R ◦ R v R , Disjoint(R,R)

Table 3.2: Formal Syntax of Axioms in SROIQ[62]

An ontology consists of set of these axioms listed above. Structural restrictive rules are applied to the ontology in order to have a terminating and correct reasoning algorithms[62]. In SROIQ following roles are restricted with simple roles, where a simple role is a role that does not contain role composition (e.g. if S ◦ T v R , then R is not simple):

Disjoint(R,R) , ∃R.Self , ≤ nR.C , ≥ nR.C

Besides simplicity restriction, there is regularity restriction. Regularity restriction limits cyclic dependencies between complex role inclusion axioms. CHAPTER 3. KNOWLEDGE REPRESENTATION 73

Figure 3.19: Formal Syntax and Semantics of SROIQ[62]

Description logics are designed to represent domain of interest. Unlike , DLs are not describe complete state of the world. DLs follows Open World Assumption where unspecified axioms are not strictly false as oppose to database’s Close World Assumption.

There is no formal relation between syntax and the axioms defining the domain. Formal semantic of the language is given by model-theoretic semantic. Formal semantic of DLS depends on interpretation of axioms I. An interpretation is a pair of interpretation domain 4I and an interpretation function .I , that assigns to every atomic concept A a set where AI ⊆ 4I and CHAPTER 3. KNOWLEDGE REPRESENTATION 74 to every atomic role R a binary relation RI ⊆ 4I × 4I :

I = (4I ,.I ) .

Figure 3.20: Formal Syntax and Semantics of SROIQ Axioms[62]

Figure-3.19 and Figure-3.20 summarizes formal syntax and semantics of individuals, concept and role constructors and ABox, TBox, RBox axioms. For instance, interpretation of C uD in Figure-3.19 is intersection of interpretation of concept C and interpretation of concept D.

(C u D)I = CI ∩ DI

If an ABox, TBox, or Rbox axiom α satisfies the conditions in Figure- 3.20, then we say interpretation I satisfies the axiom α, or α holds in I (I |= α). I is a model of ontology O, if all axioms in the ontology hold in I. If an ontology does not have a model then it is called inconsistent, and it entails every axiom α in it[62, 51]. An inconsistent ontology, cannot provide CHAPTER 3. KNOWLEDGE REPRESENTATION 75 meaningful conclusions. Inconsistency might happen during the construction of the ontology. There are techniques such as “repair and publish” to deal with such inconsistencies[51]. One of the technique is identifying the smallest subsets called justification of the ontology that creates the inconsistency and fixing them.

DLs do not have Unique Name Assumption. Different individuals may be interpreted as the same individual. In addition, interpretation domain might consist individuals other than named individuals. Example below looks like an inconsistent justification[62]:

parentOf(julia, john) manyChildren(julia) manyChildren v 3 parentOf.>

Example above describes “having many children” as being parent of at least 3 individuals. Since Julia has many children and only John is given, a misinterpretation might argue that this ontology is inconsistent, however; these type of wrong assumptions can be eliminated by knowing that DLs are following open world assumption. CHAPTER 3. KNOWLEDGE REPRESENTATION 76

3.3.3.4 FRAME LOGIC(F-LOGIC)

F-Logic[71] or Frame logic is a knowledge representation language that com- bines advantage of object-oriented , frame-based languages and logic-based languages. Declarative languages do not support abstraction and object identity, and object oriented languages suffer from lack of formal seman- tics. F-Logic combines features of both languages. It includes classes, complex objects, methods, inheritance, queries, encapsulations, defining, querying and manipulating database schema. Development of Semantic Web increased the need for logic-based languages for processing distributed knowledge on the Web [58, 3, 57].

Figure 3.21: Part of an IS A Hierarchy [58] CHAPTER 3. KNOWLEDGE REPRESENTATION 77

Figure-3.21 indicates is-a hierarchy of classes and objects. In F-Logic since classes and individuals are defined in the same domain, they can be manipulated with the same language. Solid arcs indicates class/subclass hierarchy and dotted arcs indicates class membership. For instance student and empl classes are subclass of person. And phil is member of empl class. In F-Logic subclass relationship is denoted by (::) and class membership is denoted by (:). Some of the relationships can be listed as follows:

empl :: person student :: person child(person) :: person sally : student integer : datatype ...

Figure-3.22 is a simple ontology-based application[3]. Ontology consists of class hierarchy, rules, facts and queries. Figure-3.22 states that every individual in man and woman objects are person. In the figure person object has four attributes: father, mother, daughter, and son. A person has 0 or 1 father who is a man. Similarly a person has 0 or 1 mother who is a woman. Attributes may have range. For instance, person[daughter∗=>woman] limits the range of daughter by woman.

Object names and variable names(id-terms), are the basic syntactic el- ements of F-Logic. Variables such as ?X, ?Y, ?Z in F-Logic are indicated with prefix “?” in order to be able separate them from object names. Second CHAPTER 3. KNOWLEDGE REPRESENTATION 78

Figure 3.22: A simple ontology [3] part of Figure-3.22 shows set of rules defined for the ontology. Rules consist two part head and body demonstrated as head:-body. The head of the rule is an F-molecule and the body is a Boolean combination of F-molecules or negated F-molecules.

?X[ancestor -> ?Y] :- ?X[parent -> ?Y]. ?X[ancestor -> ?Y] :- ?X[ancestor -> ?Z], ?Z[parent -> ?Y].

F-Logic allows having recursive rules as given the example above to define ancestor relationship. If someone has a parent, then that person has an CHAPTER 3. KNOWLEDGE REPRESENTATION 79 ancestor. In addition, if person X has an ancestor Z and person Z ancestor has a parent Y, then person Y is also ancestor of person X.

Variables in rules are by default universally quantified and ∀ symbol is dropped for that reason. For instance, the first rule says that if ?Y is a man and ?X is his father, then ?X has a son who is ?Y for all ?X and ?Y. Similarly third rule says that if ?Y is a woman and ?X is her mother, then ?Y is ?X’s daughter.

Once ontology is ready, we can list all the facts as seen in the third part of Figure-3.22. In the first two facts we learn that Abraham is a man and Sarah is a woman. In the third fact, we see that Isaac is a man and Abraham and Sarah are his parents. Beside having explicit facts, we can infer implicit ones by using deductive inference rules or by inheritance. For instance, since Jacob is a man and Isaac is his father, we can infer that Jacob is son of Isaac.

Last part of Figure-3.22 is a query. It aims to find all women that Abraham has sons with.

Some attributes may hold multiple values Abraham[son –>{Isaac,Ishmael}]. From the facts we can infer that Abraham has two sons. In this case, attribute “son” holds two values: Isaac and Ishmael.

In this simple ontology cardinality of attributes father and mother is defined as {0:1}. One person can only have one biologic parents and if mother or father is unknown then it is indicated with 0. Adam and Eve would be denoted by 0 since they are believed that they do not have any parents.

person[name{1:∗} ∗=>_string] [3] CHAPTER 3. KNOWLEDGE REPRESENTATION 80

Example above indicates that name attribute is mandatory for person object.We can specify cardinality of the attributes as seen above. {1:∗} indicates that a person at least has one name. ∗=> limits the type for name attribute with only strings. F-Logic supports XML Schema data types and the corresponding built-ins such as _string, _integer, _decimal, _iri, _time, _dateTime, and _duration. The type _iri is for representing International Resource Identifiers, that are used to denote objects on the Web.

In F-Logic methods are represented and handled as objects without any distinction. In Figure-3.22 father and jacob are both object names.

?- Abraham[?X ->?].

is a query where we search for all method names for Abraham. The answer for this query is

?X = son

It does not return mother, daughter, or father because “son” is the only one attribute has values for the object Abraham. It would return son,mother, daughter, or father if we used => instead of −>. The last question mark in the query is “don’t-care” variable.

In F-Logic methods can take parameters and method overloading is legal.

Jacob[son(Leah) ->{Reuben, Simeon, Levi, Judah, Issachar, Zebulun}, son(Rachel) ->{Joseph, Benjamin}, son(Zilpah) ->{Gad, Asher}, son(Bilhah) ->{Dan, Naphtali}]. CHAPTER 3. KNOWLEDGE REPRESENTATION 81

In the above example, method son is overloaded. We overloaded the method by using a parameter that indicates mother of the son. This example shows that Jacob has different sons who are born by different women. When we query sons of Jacob by:

?- Jacob[son ->?X].

the answer returns all twelve sons: Reuben, Simeon, Levi, Judah, Issachar, Zebulun, Joseph, Benjamin, Gad, Asher, Dan, Naphtali. It is important to point out that variables never take a set as a value. Thus, it returns twelve separate results ?X = Reuben, ?X= Simeon, ?X=Levi, etc. Similarly,

?- Jacob[son(Rachel) ->?X].

yields ?X = Joseph and ?X = Benjamin. ?X is only bounded by a single individual.

F-Logic allows constructing hierarchical structures by using is-a relation. Single colon(:) indicates class membership of individuals. For instance: Abraham:man.

indicates that object Abraham belongs to class man. We can also show class-subclass relationship by using double colon(::) .

man::person.

Example above states that class man is subclass of class person. Every member of subclass man is also member of class person.

F-molecules can be used in order to simplify multiple assertions about CHAPTER 3. KNOWLEDGE REPRESENTATION 82 the same object.

Isaac:man. Isaac[father ->Abraham]. Isaac[son ->Jacob]. Isaac[son ->Esau].

All the assertions above can be replaced by a single F-molecule:

Isaac:man[father ->Abraham, son ->{Jacob,Esau}].

Signature-F-atoms are used to indicate schema for classes. The only syntactic difference of data-F-atoms and signature-F-atoms is that we use => symbol instead of ->in signature-F-atoms.

man[son(woman) ∗=> man].

The signature-F-atom above defines the multi-valued method son, that takes single argument “woman”. This method applies to objects of the class man. The result of the method must be an object of class man.

Intersection in F-Logic is simply defined by “and” keyword (comma can be used as shorthand for and). We define a college assistant as both a student and an employee by using intersection operator as follows:

course[teachingAssistant ∗=>(student and employee)].

Intersection of ranges can also be specified without the intersection opera- CHAPTER 3. KNOWLEDGE REPRESENTATION 83 tor:

course[teachingAssistant ∗=> student]. course[teachingAssistant ∗=> employee].

Union in F-Logic is simply defined by “or” keyword (semi-colon can be used as shorthand for or). For instance an instructor can be a professor or a lecturer. In order to define such structure we need to use intersection operator as follows:

course[instructor ∗=>(professor or lecturer)].

We distinguish inheritable methods from non-inheritable ones by adding ∗ to =>. If a method is defined as inheritable (∗=>), then that method can be applied to sub-classes and instances. On the other hand, if a method is defined as non-inheritable(=>) then it is only applicable to class it is defined for.

In Figure-3.22, we see that man is sub-class of person. Thus, man can inherit all inheritable methods from its super class. For instance: man[father{0:1}∗=>man, mother{0:1}∗=>woman, daughter ∗=>woman, son ∗=>man].

Inheritable methods can be inherited to the instances of the classes, however; then they become non-inheritable as follows:

Isaac[father{0:1} => man, mother{0:1} => woman, daughter =>woman, CHAPTER 3. KNOWLEDGE REPRESENTATION 84

son => man].

F-Logic supports predicate symbols called P-atoms. The first predicate below is 0-ary(nullary) P-atom and the second one is a binary P-atom.

Thing. married(Isaac,Rebekah).

Predicates expressed by P-atoms can be represented by F-atoms, as shown below:

Thing[]. Isaac[marriedto -> Rebekah].

Dot notation( expressions) in object oriented languages are seen in F-Logic as well.

Abraham.son.son

Abraham.son yields a set and the second son is applied to every object in the set, that is returned by Abraham.son. In short, Abraham.son.son yields all grandsons of Abraham. Path expressions can also be used in queries as follows:

?- Abraham.son.son=?X . ?- Abraham.son[son ->?X]. ?- Abraham[son ->?Y] and ?Y[son ->?X].

All three queries above yields answer for Abraham’s grandsons. CHAPTER 3. KNOWLEDGE REPRESENTATION 85

A programming language Flora-2, a developed version of Flora-1[110], is developed by using F-logic[57], HiLog[29], and transaction logic [21], that is used in Ontology management, Knowledge-based networking , Information integration , Software engineering and Semantic Web. In addition to Flora-2, Semantic web services language (SWSL)[15] syntax and semantic is also inspired from F-logic. Thus, F-Logic is a strong candidate for building ontologies for Semantic Web. Study of Bruijn and Heymans in 2007[27] shows that RDF, RDFS, and eRDFS can be embedded in F-Logic. Chapter 4

APPLICATIONS

4.1 The Open Mind Common Sense Project(OMCS)

Although computers are capable of calculating complex operations that an ordinary adult cannot answer easily such as finding the winning strategy for a given position in a chess game, or finding shortest travel between departure and destination, or translating into text; they are not able to perform some easier tasks that requires recognizing objects within an image, drawing simple conclusions about life, or understanding natural language that a small child could accomplish [93].

The real struggle for machines for not being able to accomplish such easy tasks is, they are lack of common sense. They do not know or understand anything about human beings, their lives, their thoughts, their emotions, their reactions to certain things, and so on. People learn about facts or relationships by experiencing them and we store this knowledge in our brains. There are millions of facts that we learn and we do not even put effort in

86 CHAPTER 4. APPLICATIONS 87 order to learn them. For instance, we know that everybody’s parents are older than themselves, or we know that a giraffe is taller than a cat, or we know that if we stand under the sun at noon in summer, we will get tanned or even we may get sunburned. These and many other knowledge most of the time comes with experience and human brain is able to make inferences by using millions of these complex knowledge within a short time.

There have been many researches attempting to construct a database for common knowledge. [67] project has coded 106 commonsense axioms and entered into CYC’s knowledge base. Some of the common sense axioms taken from CYC’s database are:

“- You have to be awake to eat. - You can usually see people’s noses, but not their hearts. - Given two professions, either one is a specialization of the other or else they are likely to be independent of one another. - You cannot remember events that have not happened yet. - If you cut a lump of peanut butter in half, each half is also a lump of peanut butter; but if you cut a table in half, neither half is a table.”

Although Lenat succeeded to create such a large database for commonsense knowledge, they are still far away from listing all hundreds of millions of commonsense axioms. Handcrafting all axioms is a hassle for a researcher.

On the contrary of CYC Project that uses single team to build up such large databases. The OMCS Project takes the advantage of distributed human projects. Project is built on volunteering. Over eight thousand people volunteered to built database of common sense. Starting from 2000, The CHAPTER 4. APPLICATIONS 88

OMCS Project was able to collect only one fourth of the data that CYC had in two years. However, project is a lot more efficient than CYC in terms of time and cost.

In 2002 [94], OMCS is evaluated by human judges on approximately 1% of the corpus. Data is tested for its generality, neutrality, and sense. Results show that:

- The average rating for generality is 3.26 (1=specific fact, 5=general truth). - The average rating for truth is 4.28 (1=false, 5=true), and 67% of items were rated 5. - The average rating for neutrality is 4.42 (1=biased, 5=neutral). Based on this score, can conclude that database is relatively unbiased. - The average rating for sense is 4.55 (1=makes no sense, 5=makes complete sense). - Judges also conclude that 84% of the statements are known by at least high school level.

By 2007, over 150,000 nodes was automatically created to built the semantic network called ConceptNet. Although The Open Mind Common Sense Project takes advantage of using crowd sourcing and being able to build database for common sense knowledge, it does not guarantee completeness or soundness. Project concludes having some incorrect and incomplete inferences. CHAPTER 4. APPLICATIONS 89

4.2 ConceptNet 3: a Flexible, Multilingual Semantic Network for Common Sense Knowledge

Much of the researches, that requires understanding natural language depends on understanding the relationship between concepts, that are used to describe facts about the world of our interest. While conveying thoughts in natural language, we make some assumptions and we do not state every fact about the world based on those assumptions. For instance, when we say " I go to school by using a train.", that consists of many assumptions. In daily speech we do not need to specify that in order to take the train, first we swipe our metro cards. In order to be able to swipe metro cards, we have to fill them with certain amount that is at least as much as subway fare. Instead of listing all the requirements to take the train, many people would assume that I was able to satisfy all conditions that are necessary for going from one location to the school. Since we do not specify all facts but we assume them, using an automated way to find all relationships between concepts might not be complete since automation is not capable of understanding the underlying assumptions. Many of the lexical resources we currently use such as WordNet, PropBank, FrameNet, CYC, etc. are constructed without using automated tools [50].

ConceptNet 3 is developed version of ConceptNet, that is constructed from the data in free-form or semi-structured frames, where volunteers fill in the blanks of given sentences.

In this semantic network, nodes represent concepts, and edges between nodes represent predicates that indicate relationship between concepts. Some CHAPTER 4. APPLICATIONS 90 of the relations described in ConceptNet3 are IsA, PartOf, CapableOf, De- sireOf, CreatedBy, InstanceOf, EffectOf, PropertyOf, MadeOf, LocationOf, UsedFor, and ConceptuallyRelatedTo for the relationship that are vague.

Figure 4.1: Some of the predicates and sample sentences that generates those predicates in ConceptNet 3.1

ConceptNet uses pattern matching algorithm to generate predicates. Each sentences are compared with predetermined patterns. These patterns indicate structure of the sentences. Some of the patterns are listed in Figure-4.1. Those patterns are either captured from predetermined frames which are filled by users or from a free form of the text.

Open Mind Commons(OMC) is a developed version of OMCS Project and it is built on top of ConceptNet3. Inference used in OMC returns feedback to user. User can see what is known by the system so that user can see the gaps in the knowledge base. If two of the concepts such as X and Y appear in the same position in equivalent predicates, OCM hypothesizes that these two

1Catherine Havasi, Robert Speer, and Jason Alonso. “ConceptNet 3: a flexible, multi- lingual semantic network for common sense knowledge”. In: Recent advances in natural language processing. John Benjamins Philadelphia, PA. 2007, pp. 27–29. CHAPTER 4. APPLICATIONS 91 concepts are similar. Thus, system draw a hypothesis such that any predicate that is true for concept X, will be true for concept Y as well. OCM turns this hypothesis into a natural language question form and asks user for the verification with Yes/No questions.

In addition to Yes/No questions, if OCM has lack of knowledge on certain concept compared to what it already knows about similar concepts, it can ask user fill in the blank type of questions to learn more about that concept.

Figure 4.2: Knowledge about ocean.2

Each predicate has a score of validity. This score is calculate user feedback or user entrance. If multiple user enters the same predicate that increases

2See footnote 1. CHAPTER 4. APPLICATIONS 92 the validity score of the predicate. Or user manually can evaluate truthness of a statement and it alters the validity score of a predicate. Based on [50], the highest-scored predicate in the English is “Dogs are a kind of animal”, asserted by 101 different users.

In addition to reliability score, ConceptNet 3 has a polarity degree that ranges between -1 and 1. Polarity degree is used to detect negation in statements such as “People don’t want to be hurt” [50].

Unlike OMCS evalutated by human judge, ConceptNet 3 is evaluated by comparing its IsA, PartOf, and UsedFor relations with similar lexical resources such as WordNet and BSO. IsA, PartOf, and UsedFor tested on predicates, whose both concepts consist a single non- in ConceptNet 3. If similar relation is seen in WordNet or The Brandeis Semantic Ontology(BSO), that predicate is marked as “hit”; otherwise it is marked as “miss”. If tested predicate does not exist in other databases then that predicate marked as “no comparison”.

Figure 4.3

Figure 4.3 shows comparisons of ConceptNet with WordNet and BSO. Test predicate is marked as “hit” if both concepts exists and the relationship holds in WordNet or BSO. Test predicate marked as “miss” when both concepts exists but relationship does not hold. And test predicate marked as “no CHAPTER 4. APPLICATIONS 93 comparison” when either one or both concept does not exist in the target database.

Figure 4.4

Figure 4.4 indicates percentage of overlapping ConceptNet predicates with WordNet and BSO. In addition to IsA, PartOf, UsedFor relations, ConceptNet can also express other relations such as “fire can burn you” (CapableOf), “you would find books at a library” (LocationOf), and “an effect of opening a gift is surprise” (EffectOf) [50]. CHAPTER 4. APPLICATIONS 94

4.3 WordNet

Dictionaries and thesauruses are very early linguistic tools used for linguistics and natural language processing. A contains alphabetically ordered list of words, their meanings, example sentences about the meaning of the words, their phonetic information in any languages. A thesaurus is book that contains list of words in groups of and related concepts. Thesauri are the least formal form of an ontology[35] and WordNet is the most well-known example for the thesauri.

WordNet is a manually constructed online hierarchical lexical database for English nouns, verbs, adjectives and adverbs[75, 37]. This database consists of sets(synsets), where each synset contains lexically and semantically close words or phrases of a concept. WordNet can be considered as a combination of a dictionary and a thesaurus since it provides short definitions and usage of words and groups words based on their meanings, however; and thesauruses are not in a machine processable format. If a word is polysemous(has more than one sense), it appears in different synsets. Table-4.1 shows number of unique strings, synsets and word-sense pairs for nouns, verbs, adjectives, and adverbs.

POS Unique Strings Synsets Word-Sense Pair Noun 117798 82115 146312 Verb 11529 13767 25047 Adjective 21479 18156 30002 Adverb 4481 3621 5580 Totals 155287 117659 206941

Table 4.1: Statistics of WordNet3.0[107] CHAPTER 4. APPLICATIONS 95

Figure 4.5: Semantic Relations in WordNet[75]

Figure-4.5 shows semantic relations in WordNet. The main lexical relation in WordNet is synonymy. Word sharing the same or similar meaning are considered as synonyms such as a pipe and a tube. Another relation is antonym. Words sharing the meanings are antonyms such as wet and dry. Hyponymy is a relation between a generic term and a specific term. Other terms for hyponymy are ISA, or hypernomy or subsumption. For instance, sugar maple is a maple. Hyponymy in WordNet builds a hierarchical tree between synsets. Meronymy indicates part-of relation. For instance, a wheel is meronymy of a car. Synonym and antonymy relations can be seen CHAPTER 4. APPLICATIONS 96 in all form of the word(noun, verb, adjective, and adverb). Hyponymy and meronymy are seen between nouns. And troponomy and entailment are only applicable to verbs.

Figure 4.6: A noun tree for deceiver in WordNet[38] CHAPTER 4. APPLICATIONS 97

Figure 4.7: A verb tree for deceive in WordNet[38] CHAPTER 4. APPLICATIONS 98

Figure 4.8: An adjective cluster for words wet and dry in WordNet[38] CHAPTER 4. APPLICATIONS 99

4.4 FrameNet

FrameNet[12] is a human- and machine-readable lexical database for English, based on annotating examples of how words are used in actual texts[11]. Although FrameNet started as a toy project, having more than 200,000 manually annotated sentences linked to more than 1,200 semantic frames makes FrameNet intensively used in , machine transla- tion, event recognition, and applications. However, these numbers are still less than annotations in WordNet and any other lexical databases.

Frames are generalizations of group of words that are syntactically and semantically related[11]. A frame consists of frame elements(FEs), that are basically roles and lexical units(LUs), that are words evoke that frame. Lexical units are senses of the head word[5]. LUs include informal definitions and POS tags. FrameNet is developed based on frame semantics[40]. Frame semantic based on the idea that one cannot understand an event without knowing relation, or entity and the participants in it. For instance, in order to understand the action “Cooking”, a person needs to understand FEs “Food” being cooked, the “Cook” who will do the cooking action, the “Container” where the food will be cooked in, source of heat “Heating_instrument” needs to be understood. All other words that invoke this frame such as fry, bake, boil, and broil, are lexical units. CHAPTER 4. APPLICATIONS 100

Figure 4.9: Commerce_buy Frame

Fig-4.9 is a popular example used to demonstrate a schematic represen- tation of buying action involving various participants, and other conceptual roles.

Figure 4.10: Frame elements of Commerce_buy Frame

Fig-4.10 contains FEs with an example that explains in what context CHAPTER 4. APPLICATIONS 101 those FEs are used, and Fig-4.11 contains FUs of Commerce_buy Frame.

Figure 4.11: Frame units of Commerce_buy Frame

FrameNet is applied to other languages to create FrameNet-style for other languages such as French, Chinese, German, Brazilian, Spanish, Japanese, Korean, and Swedish. Besides creating FrameNet-style lexicons for other languages, it inspired several other projects in specialized domains such as Soccer FrameNet, Suggested Upper-Merged Ontology (SUMO), and BioOntoFN at Linköpings Universitet. CHAPTER 4. APPLICATIONS 102

4.5 VerbNet

Researches attempted to create verb for verbs in English such as Levin’s in 1993 classified verbs based on their syntactical alternation[68, 102, 59, 92]. Levin’s verb classification falls short of assigning semantic components to each class. VerbNet is extension of Levin’s verb classes. It is a class-based approach to create a verb lexicon that makes explicit the close association between syntax and semantics. Preserving both syntactic and the semantic relation is important for creating natural language processing applications such as machine translation and information extraction.

In VerbNet classes are organized in a way that every verb in each classes shares a common semantic, a common syntactic frames and common thematic roles[59]. Table-4.2 shows the syntactic frames allowed for the hit class that consists of verbs like hit, kick, slap, tap, etc.

Events are tripartite structures consists of three time function during(E), end(E) and result(E) for each event E. It is important to distinguish the state of an object during an event, culmination of the event and after the action. This tripartite structure allows to express the semantics of change of state verbs such as verb break.

Table-4.2 is an example entry in VerbNet. V in the table indicates the verb. Besides verbs, hit class shown in Table-4.2 allows three thematic roles. Agent(A) is animate, Patient(P) is concrete(can be animate or inanimate), and Instrument(I) is concrete or inanimate [59]. Thematic roles are used to describe lexical and semantic relationship between a predicate and its CHAPTER 4. APPLICATIONS 103 arguments. There are eleven theme roles defined in [92]: agent, patient, theme, experiencer, stimulus, instrument, location, source, goal, recipient, and benefactive. CHAPTER 4. APPLICATIONS 104

Type Frame Predicates Basic Transitive AVP manner(during(E),directedmotion,A) ∧ manner(end(E), forceful,A) ∧ contact(end(E),A,P) Transitive with A V P with I manner(during(E),directedmotion,I) Instrument ∧ manner(end(E),forceful,I) ∧ contact(end(E),I,P) Together A V P[+plural] to- manner(during(E),directedmotion,Pi ) reciprocal gether ∧ manner(during(E),directedmotion,Pj ) ∧ manner(end(E),forceful,Pi ) ∧ manner(end(E),forceful,Pj ) ∧ contact(end(E),Pi,Pj) Resultative A V P Adj manner(during(E),directedmotion,A) ∧ manner(end(E),forceful,A) ∧ contact(end(E),A,P) ∧ Pred(result(E),P) Resultative A V P Adj with I manner(during(E),directedmotion,I) ∧ manner(end(E),forceful,I) ∧ contact(end(E),I,P) ∧ Pred(result(E),P) Resultative A V P PP manner(during(E),directedmotion,A) ∧ manner(end(E),forceful,A) ∧ contact(end(E),A,P) ∧ Pred(result(E),P) Resultative A V P PP with I manner(during(E),directedmotion,I) ∧ manner(end(E),forceful,I) ∧ contact(end(E),I,P) ∧ Pred(result(E),P) Conative A V at P manner(during(E),directedmotion,A) Conative A V at P with I manner(during(E),directedmotion,I) With/against A V I against/on manner(during(E),directedmotion,I) alternation P ∧ manner(end(E),forceful,I) ∧ contact(end(E),I,P) Body-part object A V I[+body- manner(during(E),directedmotion,I) or reflexive object part/+refl] ∧ manner(end(E),forceful,I) ∧ contact(end(E),I,?) Body-part object A V I[+body- manner(during(E),directedmotion,I) or reflexive object part/+refl] ∧ manner(end(E),forceful,I) against/on P ∧ contact(end(E),I,P) Transitive IVP manner(during(E),directedmotion,I) ∧ manner(end(E),forceful,I) ∧ contact(end(E),I,P) Resultative I V P Adj manner(during(E),directedmotion,I) ∧ manner(end(E),forceful,I) ∧ contact(end(E),I,P) ∧ Pred(result(E),P) Resultative I V P PP manner(during(E),directedmotion,I) ∧ manner(end(E),forceful,I) ∧ contact(end(E),I,P) ∧ Pred(result(E),P)

Table 4.2: Example entry for the Hit class[59] CHAPTER 4. APPLICATIONS 105

The example “John hit the sticks together.” requires a plural direct object and the “together”. Or the example “John kicked the door into an open position.” requires the resultative constructions incorporate a prepositional phrase(PP). In “John hit the stick(I) against the fence(P)” requires a prepositional phrase “against/on Patient”.

Semantics of frames are shown by conjunctions of each predicate. For instance, manner(during(E),directedmotion,X) indicates that during event E, the agent(or the instrument) is in a motion. Similarly manner(end(E),forceful,X) ∧ contact(end(E),X,P) indicates that the agent (or the instrument) establishes contact with the patient in a forceful way at the end of event E. Predicate Pred(result(E),P) indicates that resulting state is achieved by Patient P [59].

VerbNet has hierarchical structure. For instance, The Transfer of a Message verb class has three layers. Class members in the first layer are verbs such as ask, cite, demonstrate, dictate, etc. Agent(A), Recipient(R), and Theme(T) are the thematic roles defined in this layer. Both the agent and the recipients are animate, and theme is the message. There are two transitive frames. Frames and predicates are shown for the level-1 below:

Frame Predicates Transitive with AVT transfer_info(during(E),A,?,T) Theme Theme and Recipient A V T to R transfer_info(during(E),A,R,T)

Table 4.3: An example entry for Transfer of a Message - level 1 class [59]

“John explained trigonometry” can be an example to the first frame and “John taught math to Mary” can be example to the second frame in Table-4.3. CHAPTER 4. APPLICATIONS 106

Level-1 class is the parent of Level-2 class. Verbs in the second level of Transfer of a Message such as ask, dictate, quote, read, show, teach, tell, write, etc. inherits frames and predicates from its parent class. In addition to those frames and predicates they can take ditransitive frames as listed below:

Frame Predicates Ditransitive AVRT transfer_info(during(E),A,R,T)

Table 4.4: An example entry for Transfer of a Message - level 2 class [59]

The third level class can be defined by taking the subset of member verbs ask, tell, show, etc. with another transitive frame with Recipient as direct object. CHAPTER 4. APPLICATIONS 107

4.6 The Brandeis Semantic Ontology (BSO)

Brandeis Semantic Ontology (BSO) is a large lexicon ontology and lexical database depends on Generative Lexicon (GL)[85], which is a theory of linguistic semantics which focuses on the distributed nature of compositionality in natural language [86, 50].

The ontology has three major types: entity, event, and property, each of which has sub-types: natural, artifactual, and complex. Natural type has concepts consist of only to Formal and Constitutive qualia roles. Artifactual consists concepts makes reference to purpose, function, or origin. Complex type consists concepts integrating reference to a relation between types.

A qualia is a structure that expresses the componential aspect of a word’s meaning. They represent the connections and relations between words[49]. There are four qualia relations : formal, constitutive, telic, agentive. Qualia roles are relations, that characterize the relationships between words in the lexicon. Formal qualia is the basic type distinguishing the meaning of a word. Constitutive qualia is the relation between an object and its parts. Telic qualia is the purpose or function of the object. Agentive qualia is the factors involved in the object’s origins.

Qualia information is retrieved from the British National Corpus (BNC) and ConceptNet[69]. BSO and ConceptNet are quite similar in terms of qualia relations. IsA relation in ConceptNet is similar to formal qualia in BSO, PartOf relation in ConceptNet is similar to the constitutive in BSO, CHAPTER 4. APPLICATIONS 108

UsedFor relation is similar to the telic in BSO. CapableOfReceivingAction relation in ConceptNet is more general than the agentive relation in BSO, but still includes agentive relations[50].     artifact obj(x) physobj(x)      FORMAL = physform(x)  FORMAL = physform(x)   TELIC = Pred(E,y,x)

Object x in the example above, is a simple natural physical object on the left hand side. And it is formed into an artifactual type on the right hand side by giving it a function(telic role). Artifactual types carry more information such as their use and purpose than natural types. For instance, Pred(E,y,x) above is a constraint on its telic value. Pred(E,y,x) denotes a process E, between an individual y and the physical object x[86].

The following examples, we see how some entries in the BSO look[86]:

1) 4) [[drink activity]] [[Writer]] supertype = [[Take Nourishment Activity]] #telic = [[Write Activity]] #subject = [[Animate Living Entity]] #object = [[Beverage]] 5)

2) [[Write Activity]] #object = [[Book]] ’drink’ type = [[Drink Activity]]

3) 6) ’chug’ ’novelist’ type = [[Drink Activity]] type = [[Writer]] #object = [[Alcoholic Beverage]] (#telic -> #object) = [[Novel]] Chapter 5

CONCLUSION

In this survey, we briefly summarize evolution of world wide web ever since its invention by Berners Lee, we discuss the architecture of semantic web. We introduce semantic web layers and World Wide Web Consortium (W3C) standardization for semantic web architecture. Further, we discuss knowledge in point of view. This paper mainly presents different kind of knowledge representation methodologies, but mostly focuses on Description Logics(DLs), since DLs is one of the W3C standards for representing the knowledge to construct ontologies for semantic web. Finally, we introduce some ontology applications in different formalities.

109 Bibliography

[1] About The World Wide Web. 1992. url: https://www.w3.org/WWW.

[2] Dean Allemang and . Semantic web for the working ontologist: effective modeling in RDFS and OWL. Elsevier, 2011.

[3] Jürgen Angele, Michael Kifer, and Georg Lausen. “Ontologies in F- logic”. In: Handbook on Ontologies. Springer, 2009, pp. 45–70.

[4] Grigoris Antoniou and Frank Van Harmelen. A semantic web primer. MIT press, 2004.

[5] Sue Atkins. “Using the FrameNet approach in a professional lexicogra- phy project (the DANTE database)”. In: ().

[6] Franz Baader. “Logic-based knowledge representation”. In: Artificial intelligence today. Springer, 1999, pp. 13–41.

[7] Franz Baader. The description logic handbook: Theory, implementation and applications. Cambridge university press, 2003.

[8] Franz Baader, Ian Horrocks, and Ulrike Sattler. “Description logics”. In: Foundations of Artificial Intelligence 3 (2008), pp. 135–179.

[9] Franz Baader, Ian Horrocks, and Ulrike Sattler. “Description logics as ontology languages for the semantic web”. In: Mechanizing Mathemati- cal Reasoning. Springer, 2005, pp. 228–248.

110 BIBLIOGRAPHY 111

[10] Franz Baader et al. “A Basic Description Logic”. In: An Introduction to Description Logic. Cambridge University Press, 2017, pp. 10–49. doi: 10.1017/9781139025355.002.

[11] Collin F Baker. “FrameNet: a knowledge base for natural language processing”. In: proceedings of frame semantics in NLP: a workshop in honor of Chuck Fillmore. Vol. 1929. 2014, pp. 1–5.

[12] Collin F Baker, Charles J Fillmore, and John B Lowe. “The berkeley project”. In: Proceedings of the 36th Annual Meeting of the Association for Computational Linguistics and 17th International Conference on Computational Linguistics-Volume 1. Association for Computational Linguistics. 1998, pp. 86–90.

[13] George A Barnett. Encyclopedia of social networks. Vol. 1. Sage, 2011, pp. 595–598.

[14] Jon Barwise. “An introduction to first-order logic”. In: Studies in Logic and the Foundations of 90 (1977), pp. 5–46.

[15] Steve Battle et al. “Semantic web services language (SWSL)”. In: W3C Member Submission 9 (2005), pp. 1–61.

[16] Tim Berners-Lee. “The World Wide Web: A very short personal history”. In: Tim Berners-Lee 7 (1998).

[17] Tim Berners-Lee. “WWW: Past, present, and future”. In: Computer 29.10 (1996), pp. 69–77.

[18] Tim Berners-Lee, Mark Fischetti, and Michael L Foreword By-Dertouzos. Weaving the Web: The original design and ultimate destiny of the World Wide Web by its inventor. HarperInformation, 2000. BIBLIOGRAPHY 112

[19] Tim Berners-Lee, James Hendler, , et al. “The semantic web”. In: Scientific american 284.5 (2001), pp. 28–37.

[20] H Besser, M Castells, and M Castells. CERN (2016)‘The birth of the web’. 2016.

[21] Anthony J Bonner and Michael Kifer. “Transaction Logic Program- ming.” In: ICLP. Vol. 93. 1993, pp. 257–279.

[22] Ronald J. Brachman. “A Structural Paradigm for Representing Knowl- edge”. PhD thesis. Harvard University, 1977.

[23] Ronald J Brachman. A Structural Paradigm for Representing Knowl- edge. Tech. rep. DTIC Document, 1978.

[24] Ronald J. Brachman and Hector J. Levesque. Knowledge Representa- tion and Reasoning. Elsevier, 2004.

[25] Ronald J Brachman and James G Schmolze. “An overview of the KL-ONE knowledge representation system”. In: 9.2 (1985), pp. 171–216.

[26] Ronald Jay Brachman. “On the epistemological status of semantic net- works”. In: Associative networks: Representation and use of knowledge by computers (1979), pp. 3–50.

[27] Jos de Bruijn and Stijn Heymans. “RDF and logic: Reasoning and exten- sion”. In: Database and Expert Systems Applications, 2007. DEXA’07. 18th International Workshop on. IEEE. 2007, pp. 460–464.

[28] . A Little History of the World Wide Web. url: https: //www.w3.org/History.html. BIBLIOGRAPHY 113

[29] Weidong Chen, Michael Kifer, and David S Warren. “HiLog: A foun- dation for higher-order ”. In: The Journal of Logic Programming 15.3 (1993), pp. 187–230.

[30] Nupur Choudhury. “World Wide Web and its journey from web 1.0 to web 4.0”. In: International Journal of Computer Science and Informa- tion Technologies 5.6 (2014), pp. 8096–8100.

[31] World Wide Web Consortium et al. “RDF 1.1 concepts and abstract syntax”. In: (2014).

[32] Graham Cormode and Balachander Krishnamurthy. “Key differences between Web 1.0 and Web 2.0”. In: First Monday 13.6 (2008).

[33] Randall Davis, Howard Shrobe, and Peter Szolovits. “What is a knowl- edge representation?” In: AI magazine 14.1 (1993), p. 17.

[34] Stefan Decker et al. “The semantic web: The roles of XML and RDF”. In: IEEE Internet computing 4.5 (2000), pp. 63–73.

[35] John Domingue, Dieter Fensel, and James A Hendler. Handbook of semantic web technologies. Springer Science & Business Media, 2011.

[36] Edward A Feigenbaum. The art of artificial intelligence. 1. Themes and case studies of knowledge engineering. Tech. rep. DTIC Document, 1977.

[37] Christiane Fellbaum. WordNet. Wiley Online Library, 1998.

[38] Christiane Fellbaum. “WordNet and ”. In: Encyclopedia of Language and Linguistics. Ed. by Keith Brown and Anne H. Anderson. 2nd ed. Oxford: Elsevier, 2005, pp. 665–670. BIBLIOGRAPHY 114

[39] Richard Fikes and Tom Kehler. “The role of frame-based representation in reasoning”. In: Communications of the ACM 28.9 (1985), pp. 904– 920.

[40] Charles Fillmore. “Frame semantics”. In: Linguistics in the morning calm (1982), pp. 111–137.

[41] Charles J Fillmore. “Topics in ”. In: Current issues in linguistic theory 76 (1977), p. 138.

[42] Charles J Fillmore and Collin Baker. “A frames approach to semantic analysis”. In: The Oxford handbook of linguistic analysis. 2010.

[43] Adam Maria Gadomski. Meta-Knowledge Unified Framework: a TOGA (Top-down Object-based Goal-oriented Approach) perspective. url: http://erg4146.casaccia.enea.it/Meta-know-1.htm.

[44] W3C Owl Working Group et al. “{OWL} 2 Web Ontology Language Document Overview”. In: (2009).

[45] Thomas R Gruber. “Toward principles for the design of ontologies used for knowledge sharing?” In: International journal of human-computer studies 43.5-6 (1995), pp. 907–928.

[46] Michael Gruninger, Richard Hull, and Sheila McIlraith. “A first-order ontology for semantic Web services”. In: W3C Workshop on Frameworks for Semantics in Web Services. 2005.

[47] Bergur Páll Gylfason. “The Future of the Web”. In: Reykjavic University paper, online http://www. olafurandri. com/nyti/papers2010/Semantic% 20Web. pdf (accessed 15-11-2011) (2010). BIBLIOGRAPHY 115

[48] Fritz Hamm. “Frame Semantics”. In: The Cambridge Encyclopedia of the Language Sciences. Cambridge University Press, 2009. url: /bib/hamm/Hamm2009frame/QL-6Cuyz3Hk.pdf.

[49] Catherine Havasi. “An evaluation of the brandeis semantic ontology”. In:

[50] Catherine Havasi, Robert Speer, and Jason Alonso. “ConceptNet 3: a flexible, multilingual semantic network for common sense knowledge”. In: Recent advances in natural language processing. John Benjamins Philadelphia, PA. 2007, pp. 27–29.

[51] Matthew Horridge, Bijan Parsia, and Ulrike Sattler. “Explaining In- consistencies in OWL Ontologies.” In: SUM 5785 (2009), pp. 124– 137.

[52] Ian Horrocks et al. “Semantic web architecture: Stack or two towers?” In: PPSWR. Vol. 3703. Springer. 2005, pp. 37–41.

[53] Michael Huth and Mark Ryan. Logic in Computer Science: Modelling and reasoning about systems. Cambridge university press, 2004.

[54] Ernest Sosa John Greco. The Blackwell Guide to Epistemology. Black- well Publishing Ltd., 1999. isbn: 978-0631202912.

[55] Gary D Keller and James R Deneen. Assessment and access: Hispanics in higher education. SUNY Press, 1991.

[56] Diane Jass Ketelhut et al. “A multi-user virtual environment for build- ing and assessing higher order inquiry skills in science”. In: British Journal of 41.1 (2010), pp. 56–68. BIBLIOGRAPHY 116

[57] Michael Kifer and Georg Lausen. “F-logic: a higher-order language for reasoning about objects, inheritance, and scheme”. In: ACM SIGMOD Record. Vol. 18. 2. ACM. 1989, pp. 134–146.

[58] Michael Kifer, Georg Lausen, and James Wu. “Logical foundations of object-oriented and frame-based languages”. In: JOURNAL OF THE ACM 42 (1995), pp. 741–843.

[59] Karin Kipper, Hoa Trang Dang, Martha Palmer, et al. “Class-based construction of a verb lexicon”. In: AAAI/IAAI 691 (2000), p. 696.

[60] Kevin C. Klement. Propositional Logic. http://www.iep.utm.edu/prop- log/.

[61] Donald Knuth. Generation Marketing Insights:Semantic Networks. url: http://people.duke.edu/~mccann/mwb/15semnet.htm.

[62] Markus Krötzsch, Frantisek Simancik, and Ian Horrocks. “A description logic primer”. In: arXiv preprint arXiv:1201.4089 (2012).

[63] Ela Kumar. Artificial Intelligence. I. K. International Pvt Ltd, 2008.

[64] Maurice de Kunder. The size of the World Wide Web (The Internet). url: http://www.worldwidewebsize.com (visited on 06/27/2017).

[65] Ora Lassila and Deborah McGuinness. “The role of frame-based repre- sentation on the semantic web”. In: Linköping Electronic Articles in Computer and 6.5 (2001), p. 2001.

[66] Cheng Lee. A survey of the World Wide Web evolution with respect to security issues. Tech. rep. PeerJ Preprints, 2017.

[67] Douglas B Lenat. “CYC: A large-scale investment in knowledge in- frastructure”. In: Communications of the ACM 38.11 (1995), pp. 33– 38. BIBLIOGRAPHY 117

[68] Beth Levin. English verb classes and alternations: A preliminary in- vestigation. University of Chicago press, 1993.

[69] Hugo Liu and Push Singh. “ConceptNet—a practical tool-kit”. In: BT technology journal 22.4 (2004), pp. 211–226.

[70] Larry Masinter, Tim Berners-Lee, and Roy T Fielding. “Uniform resource identifier (URI): Generic syntax”. In: (2005).

[71] Wolfgang May. Information extraction and integration with Florid: The Mondial case study. Tech. rep. Technical Report 131, Universität Freiburg, Institut für Informatik, 1999.

[72] Brian McBride. “The Resource Description Framework (RDF) and its Vocabulary Description Language RDFS”. In: Handbook on Ontologies. Ed. by Steffen Staab and Rudi Studer. Berlin, Heidelberg: Springer Berlin Heidelberg, 2004, pp. 51–65. isbn: 978-3-540-24750-0. doi: 10.1007/978-3-540-24750-0_3. url: https://doi.org/10.1007/ 978-3-540-24750-0_3.

[73] Gordon McCalla and Nick Cercone. “Approaches to knowledge repre- sentation”. In: (1983).

[74] Deborah L McGuinness, Frank Van Harmelen, et al. “OWL web on- tology language overview”. In: W3C recommendation 10.10 (2004), p. 2004.

[75] George A Miller. “WordNet: a lexical database for English”. In: Com- munications of the ACM 38.11 (1995), pp. 39–41.

[76] Marvin Minsky. “A framework for representing knowledge”. In: (1975).

[77] Boris Motik et al. “OWL 2 web ontology language profiles”. In: W3C recommendation 27 (2009), p. 61. BIBLIOGRAPHY 118

[78] Alireza Noruzi. “Introduction to webology”. In: Webology 1.1 (2004), pp. 33–52.

[79] Tim O’reilly. What is web 2.0. 2005.

[80] Jacco van Ossenbruggen, Lynda Hardman, and Lloyd Rutledge. “Hy- permedia and the Semantic Web: A Research Agenda”. In: Journal of Digital Information 3.1 (2006). issn: 1368-7506. url: https : //journals.tdl.org/jodi/index.php/jodi/article/view/78.

[81] Gordon J Pace. Mathematics of discrete structures for computer science. Springer Science & Business Media, 2012.

[82] Rafael Pass and Wei-Lung Dustin Tseng. “A Course in Discrete Struc- tures”. In: ().

[83] Miriam RL Petruck. “Frame semantics”. In: ().

[84] Eric Prud, Andy Seaborne, et al. “SPARQL query language for RDF”. In: (2006).

[85] James Pustejovsky. “The generative lexicon”. In: Computational lin- guistics 17.4 (1991), pp. 409–441.

[86] James Pustejovsky et al. “Towards a generative : The brandeis semantic ontology”. In: Proceedings of LREC. 2006, pp. 1702– 1705.

[87] M Ross Quillan. . Tech. rep. BOLT BERANEK and NEWMAN INC CAMBRIDGE MA, 1966.

[88] Kenneth H Rosen. “Discrete mathematics and its applications”. In: AMC 10 (2007), p. 12. BIBLIOGRAPHY 119

[89] Stuart Russell, Peter Norvig, and Artificial Intelligence. “A modern approach”. In: Artificial Intelligence. Prentice-Hall, Egnlewood Cliffs 25 (1995), p. 27.

[90] Nestor Rychtyckyj. “DLMS: An Evaluation of KL-ONE in the Auto- mobile Industry.” In: Description Logics 96 (1996), p. 05.

[91] Manfred Schmidt-Schauß. “Subsumption in KL-ONE is Undecidable”. In: ().

[92] Karin Kipper Schuler. “VerbNet: A broad-coverage, comprehensive verb lexicon”. In: (2005).

[93] Push Singh. “The open mind common sense project”. In: (2002).

[94] Push Singh et al. “Open Mind Common Sense: Knowledge acquisition from the general public”. In: OTM Confederated International Confer- ences" On the Move to Meaningful Internet Systems". Springer. 2002, pp. 1223–1237.

[95] Manishkumar R Solanki and Abhijit Dongaonkar. “A Journey of Hu- man Comfort: Web 1.0 to Web 4.0”. In: International Journal of Research and Scientific Innovation (IJRSI) (2016).

[96] John F Sowa. “Conceptual graphs for a data base interface”. In: IBM Journal of Research and Development 20.4 (1976), pp. 336–357.

[97] John F Sowa. “Conceptual graphs summary”. In: Conceptual Structures: current research and practice 3 (1992), p. 66.

[98] John F Sowa. Principles of semantic networks: Explorations in the representation of knowledge. Morgan Kaufmann, 2014.

[99] John F Sowa. “Semantic networks”. In: Encyclopedia of artificial intel- ligence 2 (1992), pp. 1493–1511. BIBLIOGRAPHY 120

[100] John F Sowa. “Semantic networks”. In: Encyclopedia of Cognitive Science (2006).

[101] John F Sowa. “Semantic networks”. In: John_Florian_Sowa isi [2012- 04-20 16: 51]> Author [2012-04-20 16: 51] (2012).

[102] Mary Swift. “Towards automatic verb acquisition from VerbNet for spoken dialog processing”. In: Proceedings of Interdisciplinary Work- shop on the Identification and Representation of Verb Features and Verb Classes. 2005, pp. 115–120.

[103] Val Tannen. “First-Order Logic: Syntax”. In: Encyclopedia of Database Systems. Ed. by LING LIU and M. TAMER ÖZSU. Boston, MA: Springer US, 2009, pp. 1139–1141. isbn: 978-0-387-39940-9. doi: 10.1007/978-0-387-39940-9_999. url: https://doi.org/10. 1007/978-0-387-39940-9_999.

[104] Timon Ten Berge and René Van Hezewijk. “Procedural and declarative knowledge an evolutionary perspective”. In: Theory & Psychology 9.5 (1999), pp. 605–624.

[105] Efraim Turban, Jay E. Aronson, and Ting-Peng Liang. Decision Sup- port Systems and Intelligent Systems (7th Edition). Prentice-Hall, Inc., 2004.

[106] Anni-Yasmin Turhan. “Description logic reasoning for semantic web ontologies”. In: Proceedings of the International Conference on Web Intelligence, Mining and Semantics. ACM. 2011, p. 6.

[107] Princeton University. WordNet 3.0 database statistics. 2010. url: http : / / . princeton . edu / wordnet / man / wnstats . 7WN . . BIBLIOGRAPHY 121

[108] Maarten H Van Emden and Robert A Kowalski. “The semantics of predicate logic as a programming language”. In: Journal of the ACM (JACM) 23.4 (1976), pp. 733–742.

[109] Marc B Vilain. “Deduction as : Tractable Classification in the KL-ONE Framework.” In: AAAI. 1991, pp. 464–470.

[110] Gerhard Widmer and Miroslav Kubat. “Learning flexible concepts from streams of examples: FLORA2”. In: (1992).

[111] William A Woods and James G Schmolze. “The kl-one family”. In: Computers & Mathematics with Applications 23.2-5 (1992), pp. 133– 177.

[112] Liyang Yu. “RDFS and Ontology”. In: A Developer’s Guide to the Semantic Web. Springer, 2011, pp. 109–153.