61
Cover Today We will be able to ▫ Write a Statement in N-Triple Format ▫ Learn Creation of Abox with TBox ▫ Use Eclipse ▫ Use Command Line ▫ Cover These Slides.

Cover Today We will be able to ▫Write a Statement in N-Triple Format ▫Learn Creation of Abox with TBox ▫Use Eclipse ▫Use Command Line ▫Cover These Slides

Embed Size (px)

Citation preview

Cover Today

•We will be able to▫Write a Statement in N-Triple Format▫Learn Creation of Abox with TBox▫Use Eclipse ▫Use Command Line▫Cover These Slides.

Assignment

•Take Intrusion Detection and make▫A short narrative, in English▫Email to [email protected]▫When I approve it.▫Use Protoge to make an ontology▫Monitor attacks on IP addresses.

2.2.1.3 Requirements Common to Both

•Solution must be▫Inexpensive▫Easy to implement▫Intuitive▫Evolutionary, not revolutionary▫Compatible with existing web standards

2.2.1.3 Requirements Common to Both

•Solution must be▫Inexpensive▫Easy to implement▫Intuitive▫Evolutionary, not revolutionary▫Compatible with existing web standards

2.2.1.3 Requirements Common to Both

•Solution must be▫Inexpensive▫Easy to implement▫Intuitive▫Evolutionary, not revolutionary▫Compatible with existing web standards

2.2.2 Satisfy Computer Requirements

•Structured distributed representations to enable applications

•Supporting language

2.2.2.1 Structured Representations

•Computers need▫Consistently structured information

collections▫Inference rules to conduct automated

reasoning▫Representations formal enough to detect

inconsistencies and errors▫Network-distributed information to support

scalability

2.2.2.2 Supporting Language

•Need a tagged markup language to provide▫Syntax

Language format rules; open & vendor-neutral

▫Semantics Meaning of concepts; formal, finite, &

extensible▫Expressiveness

Richness; able to express concepts & relationships

Completeness, correctness, & efficiency (hardest!)

▫Standards Common language for all

2.2.3 Compromise

•Must balance need for structure with need for human-friendly data representations▫True natural language processing not yet

ready▫Humans don’t like to process raw

structured data•Proposed solution

▫Humans must augment content with markup

▫Must show an ROI payoff for extra effort

2.3 Semantic Web to the Rescue•Next evolutionary generation of the web

▫Structured information representations provide explicit meaning

▫Information “marked up” according to language standards

▫Software provides new functionality by interpreting, exchanging, & processing meaning

•Technologies focus on information representations tied to explicit meaning

2.3.1 Semantic Web History•Term coined by Sir Tim Berners-Lee•US Dept of Defense/DARPA created

DAML▫DARPA Agent Markup Language▫Helped define critical concepts

•European Union created OIL▫Ontology Interface Layer▫Combined with DAML to create DAML+OIL

•W3C built on DAML+OIL to create OWL▫Web Ontology Language (yes, it’s out of

order)▫First draft approved February 2004

2.3.2 Semantic Web Vision

•Next generation of the web•Vast object-oriented integrated

knowledge base that can be accessed and inferenced via machine-understandable schemas

•Transparent to the end-user•Link documents and the information in

them•Leverage the current web infrastructure•Reduce the cost of performing tasks

2.3.3 Populating the Semantic Web•Developing representation standards

▫Scope the domain/analyze requirements▫Define terms and relationships▫Encode vocabulary & relationships

(ontology)▫Publish representation on servers

•Requires significant up-front effort, but•Yields greater returns than current

solutions•Cost reduces as reuse grows

2.3.4 Use Cases

•Tactical level functionality▫Lower-level functions & basic operations▫Behind the scenes

•Strategic applications▫Higher-level compositions of tactical

features▫Provide more complex functionality▫Customer-facing

2.3.4.1 Tactical Services

•Describe distributed information▫Harvest content, process, & exchange

results•Support queries

▫Answer questions & explain reasoning•Support searching

▫Find information based on meaning, not keywords

•Support inferring▫Drawing conclusions from explicit facts▫Reduces size & complexity of knowledge

bases

2.3.4.2 Strategic Applications•Vertical applications

▫Provide specialized services to a particular domain

▫E-commerce (B2B, B2C)•Agent software

▫Autonomous; mobile; architecture-independent

▫Find & interpret information, act, report results

•Information management▫Migrate intelligence from the software to

the data▫Provide new functionality without

modifying code▫Integrate repositories

2.3.5 Appropriate Applications

•Semantic web applications appropriate to:▫Publish content for both humans and

computers▫Share information without understanding

model▫Inferring new facts & joining information

sources•Characteristics of good candidate

domains:▫Well-understood but dynamic domain▫Heterogeneous information sources▫Existing information interchange

requirements•Not suited to binary data, e.g. image

processing

2.4 Semantic Web Intro Summary•Existing challenges

▫Humans want information in readable formats

▫Computers need structured formats▫Solution must minimize human investment,

but meet computer needs•Semantic web is the solution

▫Builds on the existing web▫Supplies new information representation

features▫Presents information understandable to

both

Chapter 3

3 Ontologies Enable the Semantic Web•Ontology definitions

•Development issues

•Description methods

•Ontology features

•Language issues

3.1 Ontology Definitions•Historical definition

▫Studies of the science of being, and the nature and organization of reality

▫Definitive classifications of objects & their relationships

•Other definitions▫Computer science definition SCOTT▫Types of ontologies▫Gruber definition▫OWL-specific ontology definitions

3.1.1 Computer Science Definition• Popularized by AI

community • Tbox

▫ Terminogical components▫ Equivalent to “schema”▫ Define concepts▫ Semantic Web equivalent

Ontology• Abox

▫ Assertional components▫ Equivalent to “records”▫ Assert facts▫ Semantic Web equivalent

Individuals

3.1.2 Types of Ontologies• Many types

▫Domain ontologies▫Metadata ontologies (Dublin Core)▫Method/task ontologies

• Many ways to classify ontologies▫Formality▫Regularity▫Expressiveness

• Taxonomy is not an Ontology▫Hierarchy of concepts related with IS-A

relationship▫Can’t express complex relationships, or same

level

3.1.3 Gruber Definition

• “Formal specification of a conceptualization” – T. Gruber

• An ontology is a▫ Formally-described▫ Machine-readable▫ Collection of terms &

their relationships▫ Expressed in a language▫ Stored in a file

3.1.4 OWL-Specific Ontology Def’n•Web Ontology Language (OWL) ontology

▫“An OWL-encoded, web-distributed vocabulary of declarative formalisms describing a model of a domain”

•Domain▫A specific subject area or area of

knowledge▫Typically the focus of a particular

community of interest•Encode a model of the domain, not all of it

3.2 Ontology Features

•Communicate a common understanding of a domain

•Declare explicit semantics

•Make expressive statements

•Support sharing of information

3.2.1 Domain Understanding

•Provided by communities of interest▫Example: restaurant association describes

relationships between food items•Ontology formally documents one

common understanding of a domain▫Reduces misunderstanding

•Shared and common understanding communicated between humans and software systems

3.2.2 Explicit Semantics

•Semantics▫Formal descriptions of terms and

relationships▫Traditionally coded into the software or

schema▫Document concepts using modeling

primitives and semantic relationships▫Make assumptions explicit▫Reduce ambiguity▫Enable interoperability

•Must be described formally to be processed

3.2.3 Expressiveness

•“Extensiveness” of the ontology•Must be expressive enough to

▫Represent formal semantics▫Have reasoning properties to support

inferencing•Support canonical granular

representations•Limited to keep reasoning

▫Decidable▫Scaleable

3.2.4 Sharing Information

•OWL-compliant software can▫Manipulate information internally▫Interoperate with other software▫Do semantic mapping between information

sources

•Need to have a shared language and access to information

3.3 Ontology Development Issues• Authoring ontologies

▫Can be developed by anyone, but▫Better if developed by consensus-based

standards development groups▫Vertical ontologies describe a domain▫Horizontal ontologies span domains and

describe basic concepts• Separating ontologies from individuals

▫Usually a good idea▫Sometimes not possible

• Committing to an ontology▫Makes applications easier to understand,

modify, reuse

3.4 Describing Semantics

•Defining information representation building blocks

•Describing relationships between building blocks

•Describing relationships within building blocks

3.4.1 Building Blocks• Three basic blocks

▫ Class constructs▫ Property constructs▫ Individual constructs

• Together, they describe a model of a domain

• Each type requires▫ A computer-

understandable representation

▫ Identifiers for referencing these representations

3.4.1.1 Class Construct• Similar to

▫“Class” in OO terminology▫“Table” in relational DB terminology

• Group or set of objects with similar properties or characteristics (explicit or implicit) in common

• General statements can be made that apply to all members of the class

• Examples▫Food▫Menu Item▫Person

3.4.1.2 Property Construct•Similar to

▫“Accessor method” in OO terminology▫“Columns” or “fields” in relational DB

terms•Binary association that relates an object

(instance) to a value•Examples

▫Price▫Size

•Unlike OO accessors, properties can be associated with multiple unrelated classes!

3.4.1.3 Individuals• Similar to

▫ “Objects” in OO terminology▫ “Rows” or “records” in relational DB terminology

• Represent class object instances in the domain▫ Physical things▫ Virtual concepts

• Unlike objects, Individuals have no functionality• Examples

▫ KnightOwlRestaurant▫ Order456

• Difference b/w individuals & classes not always clear

• Literal values (“1”, “A”) are special case of individuals

3.4.2 Relating Constructs• Need to describe

relationships between building blocks

• “is an instance of”▫ Individual to Class

• “has value for”▫ Individual to Property

• Restrictions▫ Between Class and

Property

3.4.2.1 Relate Individuals & Classes• Individuals are members

of classes

• “Membership” or “is an instance of” relationship

• Must be explicitly stated

• Examples▫ “KnightOwlRestaurant” is

an instance of “Restaurant” class

▫ “Mark” is an instance of “Person” class

3.4.2.2 Relate Individuals & Properties• Individuals have attributes

described by properties

• “has value for” relationship

• Example▫ “KeyLimePie” individual

has value “$2” for the property “price”

▫ “Mark” individual has value “34” for the property “age”

3.4.2.3 Relate Classes & Properties•Classes can restrict use of

Properties in individuals▫“IsBrotherOf” property range restricted to

“Male”s•Properties can be used to define Classes

by defining membership in the class▫Individual is member of class “Boy” iff

Individual is in “Male” class and “Age” property value <= 18.

•Restrictions can constrain Property values▫To be of a certain class (range)▫To only describe particular classes

(domain)

3.4.3 Semantic Relationships in Blocks •Must be able to describe semantic

relationships within classes, properties, and individuals

•Synonymy•Antonymy•Hyponymy•Meronymy

3.4.3.1 Synonymy Relation• Connects concepts with similar meaning

▫equals() in Java – same meaning, different instance

• Stricter form is equivalence (identical)▫== in Java – same instance

• Class to Class▫Noodles & Pasta; Soda & Pop

• Instance to Instance▫Knight Owl Restaurant & franchiseProperty123

• Property to Property▫Cost & Price

• Allows merging concepts & linking heterogeneous knowledge bases

=

3.4.3.2 Antonymy Relation

•Opposite meaning•Stricter form is disjointness•Establishes dichotomy of meaning b/w

terms•Class to Class

▫Regular Price Menu Item & Sale Price Menu Item

•Instance to Instance•Property to Property

3.4.3.3 Hyponymy Relation• Specialization & generalization• Creates taxonomic hierarchies• Also called

▫ “is-a”▫ “inheritance”▫ “subsumption”

• Transitive downward• Better for permanent relationships• Class to Class

▫ Spaghetti “is-a” Pasta▫ New York Style Pizzeria “is-a” Italian Restaurant “is-a”

Restaurant• Property to Property

▫ salePrice “is-a” price

Δ

Meronymy/Hyponymy Relation• Aggregation & composition• Also called

▫ “part-of”▫ “component of”

• Mereology (part-whole theory)• Holonymy (whole-part theory)• Closely related to “ownership”• Transitive downward• Class to Class

▫ Meatball “part-of” Spaghetti and Meatballs Dish▫ Fork “part-of” Place Setting

• Individual to individual▫ Drink Order 321 “part-of” Restaurant Bill 789

3.4.4 Semantics Summary• Building Blocks • Relationships

Construct Description

A group or set of individual objects with similar characteristics

Associates attrib/value pairs with individuals, restricts classes

Represents a specific instance object of a class

Functionality Relationship Summary

Relating blocks to each other

Individuals to Classes

Membership

Individuals to Properties

Attribute values

Classes to Properties

Restrictions

Describing relationships

Synonymy Similarities

Antonymy Differences

Hyponymy Specialization

Meronymy Part/whole

Holonymy Whole/Part

3.5 Ontology Languages

•Formal, parseable, & usable by software•Define semantics in context-independent

way•Support some level of logic expression•OWL based on:

▫Frame-based systems▫Description logics

3.5.1 Frame-based Systems

•Modeling primitives called “frames” (classes)

•Properties (attributes) are called “slots”•Property values are called “fillers”•Same slot name usable with different

classes▫Can specify different range & value

restrictions

3.5.2 Description Logics (DLs)•Modeling primitives called “concepts”

(classes)•Properties (attributes) are called “roles”•DLs also called “terminological logics” or

“concept languages”•Balance expressiveness with

“decidability”▫Whether software can reach a conclusion

or not•DL concepts defined by their objects’

membership constraints▫Used to automatically derive classification

taxonomies (hierarchies)

3.5.2 Descriptions Logics cont’d•DLs can specify

▫Class constructors▫Property constructors▫Axioms relating classes & properties

•Allow composite descriptions▫E.g. restrictions on relationships between

objects•Use first-order logic•Still decidable•Support efficient inferencing

3.6 Ontologies Summary

•Various definitions (AI, Gruber, OWL)•Purposes

▫Communicate specification of domain▫Declare explicit semantics▫Support information sharing

•Different types; taxonomies most common•Divided into Tbox & Abox

▫Tbox: schema, definitions of concepts▫Abox: records, defintions of

individuals/objects

3.6 Ontologies Summary cont’d•Building blocks

▫Class, Property, Individual•Relationships between different block

types▫Membership, Attribute Values, Restrictions

•Relationships between same block types▫Synonomy, Antonymy, Hyponymy,

Meronymy, Holonymy•Ontologies described using formal

languages

Chapter 4

4 OWL Introduction

•OWL Features

•Semantic Web’s Layered Architecture

4.1 OWL Features

•Primary goals▫Intuitive for humans, minimal investment▫Expressive, with explicit semantics for

software•Can define and/or extend ontologies•Supports scalability (needs some work)•XML-based annotations•Makes statements/assertions about

classes, properties, & individuals•Additional facts derived via inferencing

4.2 Layered Architecture

Applications }Implementation Layer

Ontology Languages (OWL Full,

OWL DL, and OWL Lite)}Logical Layer

RDF Schema Individuals }Ontological Primitive Layer

RDF and RDF/XML }Basic Relational Language Layer

XML and XMLS Datatypes }Transport/Syntax Layer

URIs and Namespaces }Symbol/Reference Layer

4.2 Layered Architecture cont’d• Layers illustrate rough

dependencies▫ Each layer uses features

of lower layers• Implementation Layer

▫ Provides specific applications

• Logical Layer▫ OWL supports formal

semantics and reasoning• Ontological Primitive

Layer▫ RDFS defines vocabulary▫ Individuals defined in

RDF

RDF Schema Individuals

XML and XMLS Datatypes

URIs and Namespaces

Applications

Ontology Languages (OWL Full, OWL DL, and OWL Lite)

RDF and RDF/ XML

4.2 Layered Architecture cont’d• Relational Language Layer

▫ RDF’s simple data model & syntax for making statements

▫ Serialized as RDF/XML or N-triples

• Transport/Syntax Layer▫ Define primitive

datatypes▫ Provide encoding format

• Symbolic/Reference Layer▫ Identify and reference

classes, properties, and individuals

RDF Schema Individuals

XML and XMLS Datatypes

URIs and Namespaces

Applications

Ontology Languages (OWL Full, OWL DL, and OWL Lite)

RDF and RDF/ XML

4.3 Technology Support for Layers•Symbol/Reference Layer

▫Provides identifiers & references to objects described in ontologies and instance files

•Transport/Syntax Layer▫XML used to serialize OWL syntax▫XMLS defines standard datatypes

•Basic Relational Layer▫RDF makes statements using

Attribute/Value pairs to describe objects

4.3 Tech Support for Layers, cont’d• Ontological Primitive Layer

▫RDFS provides basic vocabulary describing Classes and subclasses Properties and subproperties

▫Instances & property values specified by RDF & XMLS

• Logical Layer▫OWL dialects (Full, DL, Lite) enhance RDFS

• Implementation Layer▫Applications built using OWL

• Additional layers being considered for rules & trust

4.4 OWL Introduction Summary

•Web Ontology Language (OWL)▫Defined by the W3C▫Used to make statements about

Classes Properties Individuals

▫Designed as a layered architecture built on URIs & Namespaces XML & XMLS RDF & RDFS