Ontology Engineering for the Semantic Web COMP60421 Sean Bechhofer - - PowerPoint PPT Presentation

ontology engineering for the semantic web
SMART_READER_LITE
LIVE PREVIEW

Ontology Engineering for the Semantic Web COMP60421 Sean Bechhofer - - PowerPoint PPT Presentation

Ontology Engineering for the Semantic Web COMP60421 Sean Bechhofer and Bijan Parsia University of Manchester 1 Monday, 12 November 2012 1 Organisational COMP60421 is taught by: 1.Bijan Parsia and 2.Sean Bechhofer Prerequisites :


slide-1
SLIDE 1

1

Ontology Engineering for the Semantic Web

COMP60421 Sean Bechhofer and Bijan Parsia University of Manchester

1 Monday, 12 November 2012

slide-2
SLIDE 2

2

Organisational

  • COMP60421 is taught by:

1.Bijan Parsia and 2.Sean Bechhofer

  • Prerequisites: some familiarity with first order logic, programming,

Java

  • Teaching period: Fridays of the next 5 weeks

– with demonstrators present to ask during labs

  • We will use Blackboard for additional material and the coursework
  • Homepage: http://www.cs.manchester.ac.uk/pgt/COMP60421/
  • Please do not hesitate to ask if you have a question!

2 Monday, 12 November 2012

slide-3
SLIDE 3

Organisational

  • Lab Demonstrators:

– Patrick Koopmann – Nico Matentzoglu

  • You will also need to acquaint yourselves with the tools we will use during the

exercises, in particular Protégé 4:

  • http://www.co-ode.org/downloads/protege-x/

3

3 Monday, 12 November 2012

slide-4
SLIDE 4

Organisational

  • Assessment: 50% exam, 50% coursework
  • Coursework and Exercises:

– 1.5 days per week plus – reading

4

4 Monday, 12 November 2012

slide-5
SLIDE 5

Coursework and Exercises

  • All work is distributed and collected through Blackboard

– always retain a copy of your work elsewhere! – backup!

  • Marks & feedback are distributed through Blackboard
  • We encourage you to use Blackboard’s discussion system

– we might even help with questions

  • Up-to-date announcements on Twitter

– #uom #comp60421

  • Lateness

– work is generally due one week after assignment i.e., Fridays at 9am – work that is late: marked 0, no late submission – if your overall coursework mark < 50% due to missed deadlines, – you can submit some designated, additional coursework in reading week – to help bring your coursework mark up to max. 50%

5

5 Monday, 12 November 2012

slide-6
SLIDE 6

Coursework and Exercises

Each week, we give you several pieces of coursework:

  • a number of small, short questions, often multiple choice

– to ensure you grasp the basic concepts Along with other tasks that may be :

  • a small modelling task

– to appreciate the numerous ways in which things can be done – to get your hands dirty

  • a short essay of ~200 - 300 words

– about an average blog post – to make you think & practice writing (project!)

  • an assignment

– a programming task – in Java, OPPL, XSLT, etc. ➡ 40 marks per week

6

6 Monday, 12 November 2012

slide-7
SLIDE 7

Plagiarism & Academic Malpractice

  • We assume that you have successfully completed the

Plagiarism and Malpractice Test

  • n Blackboard
  • ...if you haven’t:

do so before you submit any coursework (assignment or assessment)

  • ...because we work under the assumption that you know what you do
  • ...and if you don’t, it costs you marks or more.

7

7 Monday, 12 November 2012

slide-8
SLIDE 8

8

Literature

  • To obtain more detailed information, please refer to the reading list identified on

the course web page

  • Follow the various available web resources linked from the course web page
  • We assume that you

– are enthusiastic about your subject – go and find out about stuff you don’t know yet

8 Monday, 12 November 2012

slide-9
SLIDE 9

Ontology Engineering for the Semantic Web

COMP60421 Sean Bechhofer University of Manchester sean.bechhofer@manchester.ac.uk

9

9 Monday, 12 November 2012

slide-10
SLIDE 10

2

Goals of the course

  • Understand the goals of ontologies and their role in the semantic web
  • Understand the foundations of ontologies
  • Understand the applications and uses of ontologies

10 Monday, 12 November 2012

slide-11
SLIDE 11

Who are we?

  • Sean Bechhofer:

– Participant in W3C WebOnt WG that defined the

  • riginal OWL language

– Developer of OilEd, the WonderWeb OWL API and other DL/OWL tools – Editor of W3C’s SKOS Recommendation – Somewhere between “neat” and “scruffy”

  • Bijan Parsia:

– Participant in W3C OWL WG, defined OWL 2. – Organiser of OWLEd series of workshops – Developer of SWOOP & Pellet – So neat he’s scruffy

11

11 Monday, 12 November 2012

slide-12
SLIDE 12

Semantic Web: What’s the Problem?

Typical web page markup consists of:

  • Rendering information

(e.g., font size and colour)

  • Hyper-links to related

content Semantic content is accessible to humans but not (easily) to computers…

12 Monday, 12 November 2012

slide-13
SLIDE 13

Information we can see…

WWW2006 Edinburgh, Scotland The eleventh international world wide web conference 23rd--26th May Edinburgh International Conference Centre Who should attend and who will you meet? No other event draws the breadth… Look Who’s Talking Richard Granger reviews the revamping of the NHS IT programme Look Who’s Talking VeriSign's pincipal scientist, Dr Phillip Hallam-Baker, goes phishing... Registration opens with special offer tickets Professor Wendy Hall has announced the opening of registration for the 15th annual World Wide Web Conference 2006…

13 Monday, 12 November 2012

slide-14
SLIDE 14

WWW2002 The eleventh internatio nal wo rld wide webco n Sherato n waikiki ho tel Ho no lulu, hawaii, USA 7-11 may 2002 1 lo catio n 5 days learn interact Registered participants co ming fro m australia, canada, chile denmark, franc e, germany, ghana, ho ng ko ng, india, i reland, italy, japan, malta, new zealand , the netherlands, no rway, singapo re, swit zerland, the united kingdo m, the united s tates, vietnam, zaire Register no w On the 7th May Ho no lulu will pro vide the b ackdro p o f the eleventh internatio nal wo rl d wide web co nference. This prestigio us ev ent … Speakers co nfirmed Tim berners-lee Tim is the well kno wn invento r o f the Web,…

Information a machine can see…

14 Monday, 12 November 2012

slide-15
SLIDE 15

Solution: XML markup with “meaningful” tags?

<name>WWW2002 The eleventh internatio nal wo rld wide webco n</ name> <date>7-11 may 2002</date> <location>Sherato n waikiki ho tel Ho no lulu, hawaii, USA</location> <introduction>Register no w On the 7th May Ho no lulu will pro vide the bac kdro p o f the eleventh internatio nal wo rld wi de web co nference. This prestigio us event … Speakers co nfirmed</introduction> <speaker>Tim berners-lee <bio>Tim is the well kno wn invento r o f the Web, </bio>… </speaker> <speaker>Tim berners-lee <bio>Tim is the well kno wn invento r o f the Web, </bio>… </speaker> <registration>Registered participants co ming fro m australia, canada, chile denmark, france, germany, ghana, ho ng ko ng, india, irelan d, italy, japan, malta, new zealand, the netherlands, no rway, singapo re, switzerland, the united kingdo m, the united states, vietn am, zaire<registration>

15 Monday, 12 November 2012

slide-16
SLIDE 16

But What About…?

<conf>WWW2002 The eleventh internatio nal wo rld wide webco n<c

  • nf>

<date>7-11 may 2002</date> <place>Sherato n waikiki ho tel Ho no lulu, hawaii, USA<place> <introduction>Register no w On the 7th May Ho no lulu will pro vide the bac kdro p o f the eleventh internatio nal wo rld wi de web co nference. This prestigio us event … Speakers co nfirmed</introduction> <speaker>Tim berners-lee <bio>Tim is the well kno wn invento r o f the Web, </bio>… </speaker> <speaker>Tim berners-lee <bio>Tim is the well kno wn invento r o f the Web, </bio>… </speaker> <registration>Registered participants co ming fro m australia, canada, chile denmark, france, germany, ghana, ho ng ko ng, india, irelan d, italy, japan, malta, new zealand, the netherlands, no rway, singapo re, switzerland, the united kingdo m, the united states, vietn am, zaire<registration>

16 Monday, 12 November 2012

slide-17
SLIDE 17

Still the Machine only sees…

<co nf>WWW2002 The eleventh internatio nal wo rld wide webco n< co nf> <date>7-11 may 2002</date> <place>Sherato n waikiki ho tel Ho no lulu, hawaii, USA<place> <intro ductio n>Register no w On the 7th May Ho no lulu will pro vide the bac kdro p o f the eleventh internatio nal wo rld wi de web co nference. This prestigio us event … Speakers co nfirmed</intro ductio n> <speaker>Tim berners-lee <bio >Tim is the well kno wn invento r o f the Web ,</bio >… </speaker> <speaker>Tim berners-lee <bio >Tim is the well kno wn invento r o f the Web ,</bio >… </speaker> <registratio n>Registered participants co ming f ro m australia, canada, chile denmark, france, germany, ghana, ho ng ko ng, india, irelan d, italy, japan, malta, new zealand, the netherlands, no rway, singapo re, switzerland, the united kingdo m, the united states, vietn am, zaire<registratio n>

17 Monday, 12 November 2012

slide-18
SLIDE 18

Need to Add “Semantics”

  • External agreement on meaning of annotations

– E.g., Dublin Core for annotation of library/bibliographic information

  • Agree on the meaning of a set of annotation tags

– Problems with this approach

  • Inflexible
  • Limited number of things can be expressed
  • Use Vocabularies or Ontologies to specify meaning of annotations

– Ontologies provide a vocabulary of terms – New terms can be formed by combining existing ones

  • “Conceptual Lego”

– Meaning (semantics) of such terms is formally specified

Machine Processable not Machine Understandable

18 Monday, 12 November 2012

slide-19
SLIDE 19

KR: Cloth Weaves [Maier & Warren, Computing with Logic, 1988]

  • An example showing how we can represent the qualities and characteristics of

cloth types using a simple propositional logic knowledge base.

19

19 Monday, 12 November 2012

slide-20
SLIDE 20

Cloth

  • Woven fabrics consist of two sets of threads interlaced at right angles.
  • The warp threads run the length of the fabric
  • The weft (fill, pick or woof) threads are passed back and forth between the warp

threads.

  • When weaving, the warp threads are raised or lowered in patterns, leading to

different weaves.

  • Factors include:

– The pattern in which warps and wefts cross – Relative sizes of threads – Relative spacing of threads – Colours of threads

20

20 Monday, 12 November 2012

slide-21
SLIDE 21

Plain Weave

  • Over and under in a

regular fashion

21

21 Monday, 12 November 2012

slide-22
SLIDE 22

Twill Weave

  • Warp end passes over

more than one weft – Known as “floats”

  • Successive threads
  • ffset by 1

22

22 Monday, 12 November 2012

slide-23
SLIDE 23

Satin Weave

  • Longer “floats”
  • Offsets larger than 1

23

23 Monday, 12 November 2012

slide-24
SLIDE 24

Classifying Cloth

  • The example provides a number of rules that describe how particular kinds of cloth

are described.

  • alternatingWarp ! plainWeave

– If a piece of cloth has alternating warp, then it’s a plain weave.

  • hasFloats, warpOffsetEq1 ! twillWeave

– If a piece of cloth has floats and a warp offset of 1, then it’s a twill weave.

  • There are many other properties concerning the colour of threads, spacings etc.

24 Monday, 12 November 2012

slide-25
SLIDE 25

Using the Rules

  • We could use these rules to build a system that would be able to recognise

different kinds of cloth through recognising the individual characteristics.

  • The example given shows that once we have recognised the following

characteristics – diagonalTexture – floatGTSink – colouredWarp – whiteFill

  • Then we can determine that this cloth is denim.

25

25 Monday, 12 November 2012

slide-26
SLIDE 26

Knowledge Representation

  • Although this is relatively simple (in terms of both the expressivity of the language

used and the number of facts), this really is an example of Knowledge Representation. – The rules represent some knowledge about cloth -- objects in the real world – Together they form a knowledge base – The knowledge base along with some deductive framework allow us to make inferences (which we hope reflect the characteristics/behaviour of the real world

  • bjects)

26

26 Monday, 12 November 2012

slide-27
SLIDE 27

What is a Knowledge Representation?

  • Davis, Shrobe & Szolovits

– http://groups.csail.mit.edu/medg/ftp/psz/k-rep.html

  • Surrogate

– That is, a representation

  • Expression of ontological commitment

– of the world

  • Theory of intelligent reasoning

– and our knowledge of it

  • Medium of efficient computation

– that is accessible to programs

  • Medium of human expression

– and usable

27

27 Monday, 12 November 2012

slide-28
SLIDE 28

KR as Surrogate

  • Reasoning is an internal process, while the things that we wish to reason about

are (usually) external

  • A representation acts as a surrogate, standing in for things that exist in the world.

– Reasoning operates on the surrogate rather than the things

  • Surrogates can serve for tangible and intangible objects

– Bicycles, cats, dogs, proteins – Actions, processes, beliefs

28

28 Monday, 12 November 2012

slide-29
SLIDE 29

KR as Surrogate

  • What is the correspondence between the representation and the things it is

intended to represent? – Semantics

  • How close is the representation?

– What’s there? – What’s missing?

  • Representations are not completely accurate

– Necessarily abstractions – Simplifying assumptions will be present

  • Imperfect representation means that incorrect conclusions are inevitable.
  • We can ensure that our reasoning processes are sound

– Only guarantees that the reasoning is not the source of the error.

29

29 Monday, 12 November 2012

slide-30
SLIDE 30

KR as Set of Ontological Commitments

  • A representation encapsulates a collection of decisions about what to see in the

world and how to see it.

  • Determine the parts in focus and out of focus

– Necessarily so because of the imperfection of representation

  • Choice of representation
  • Commitments as layers
  • KR != Data Structure

– Representational languages carry meaning – Data structures may be used to implement representations – Semantic Nets vs. graphs

30

30 Monday, 12 November 2012

slide-31
SLIDE 31

KR as Fragmentary Theory of Intelligent Reasoning

  • Incorporates only part of the insight or belief
  • Insight or belief is only part of the phenomenon of intelligent reasoning
  • Intelligent inference

– Deduction

  • Sanctioned inferences

– What can be inferred

  • Recommended inferences

– What should be inferred

31

31 Monday, 12 November 2012

slide-32
SLIDE 32

KR as Medium for Efficient Computation

  • To use a representation, we must compute with it.
  • Programs have to work with representations

– The representation management system is a component in a larger system – If the representation management system is inefficient, programmers will compensate

  • Representations get complex quickly

– People need prosthetics to work well with them

32

32 Monday, 12 November 2012

slide-33
SLIDE 33

KR as Medium of Human Expression

  • Representations as the means by which we

– express things about the world; – tell the machine about the world; – tell one another about the world

  • Representations as a medium for communication and expression by us.

– How general is it? – How precise is it? – Is the expressiveness adequate?

  • How easy is it for us to talk or think in the representation language?

– How easy is it? vs. can we?

33

33 Monday, 12 November 2012

slide-34
SLIDE 34

Ontologies

  • Metadata

– Resources marked-up with descriptions of their content. No good unless everyone speaks the same language;

  • Terminologies

– Provide shared and common vocabularies of a domain, so search engines, agents, authors and users can communicate. No good unless everyone means the same thing;

  • Ontologies

– Provide a shared and common understanding of a domain that can be communicated across people and applications, and will play a major role in supporting information exchange and discovery.

34

34 Monday, 12 November 2012

slide-35
SLIDE 35

Ontology

  • A representation of the shared background knowledge for a community
  • Providing the intended meaning of a formal vocabulary used to describe a certain

conceptualisation of objects in a domain of interest

  • In CS, ontology taken to mean an engineering artefact
  • A vocabulary of terms plus explicit characterisations of the assumptions made

in interpreting those terms

  • Nearly always includes some notion of hierarchical classification (is-a)
  • Richer languages allow the definition of classes through description of their

characteristics – Introduce the possibility of using inference to help in management and deployment of the knowledge.

35

35 Monday, 12 November 2012

slide-36
SLIDE 36

36

Ontologies and Ontology Representations

  • “Ontology” – a word borrowed from philosophy

– But we are necessarily building logical systems

  • “Concepts” and “Ontologies”/ “conceptualisations” in their
  • riginal sense are psychosocial phenomena

– We don’t really understand them

  • “Concept representations” and “Ontology representations” are

engineering artefacts – At best approximations of our real concepts and conceptualisations (ontologies)

  • And we don’t even quite understand what we are approximating

36 Monday, 12 November 2012

slide-37
SLIDE 37

37

Ontologies and Ontology Representations (cont)

  • Most of the time we will just say “concept” and “ontology” but whenever anybody

starts getting religious, remember… – It is only a representation!

  • We are doing engineering, not philosophy – although philosophy is an

important guide

  • There is no one way!

– But there are consequences to different ways

  • and there are wrong ways

– and better or worse ways for a given purposes – The test of an engineering artefact is whether it is fit for purpose

  • Ontology representations are engineering artefacts

37 Monday, 12 November 2012

slide-38
SLIDE 38

A Spectrum of Representation

38 Catalogue Terms/ glossary Thesauri Informal is-a Formal is-a Frames Value Restrictions Expressive Logics

38 Monday, 12 November 2012

slide-39
SLIDE 39

Building a Semantic Web

  • Annotation

– Associating metadata with resources

  • Integration

– Integrating information sources

  • Inference

– Reasoning over the information we have. – Could be light-weight (taxonomy) – Could be heavy-weight (logic-style)

  • Interoperation and Sharing are key goals

39

39 Monday, 12 November 2012

slide-40
SLIDE 40

A Semantic Web — First Steps

  • Extend existing rendering markup with semantic markup

– Metadata annotations that describe content/function of web accessible resources

  • Publish information semantically
  • Use Ontologies to provide vocabulary for annotations

– “Formal specification” is accessible to machines

  • A prerequisite is a standard web ontology language

– Need to agree common syntax before we can share semantics – Syntactic web based on standards such as HTTP and HTML Make web resources more accessible to automated processes

40

40 Monday, 12 November 2012

slide-41
SLIDE 41

Languages

  • Work on Semantic Web has concentrated on the definition of a collection or “stack”
  • f languages.

– These languages are then used to support the representation and use of metadata.

  • The languages provide basic machinery that we can use to represent the extra

semantic information needed for the Semantic Web – XML – RDF – RDF(S) – OWL – …

41

OWL Integration RDF(S) RDF XML Annotation Integration Inference

41 Monday, 12 November 2012

slide-42
SLIDE 42

So why is it hard?

  • Ontologies are tricky

– People do it too easily; People are not logicians

  • Intuitions hard to formalise
  • Ontology languages are tricky

– “All tractable languages are useless; all useful languages are intractable”

  • The evidence

– The problem has been about for 3000 years

  • But now it matters!
  • The semantic web means knowledge representation matters

42

42 Monday, 12 November 2012

slide-43
SLIDE 43

Ontology Engineering

  • How do we build ontologies that are

– Fit for purpose? (and what does that mean?) – Extensible? – Flexible? – Maintainable?

  • Methodologies and guidelines

– Knowledge acquisition – Ontology patterns – Normalisation – Upper level ontologies

43

43 Monday, 12 November 2012

slide-44
SLIDE 44

Applications of Ontologies

  • How do we use ontologies in applications?
  • What are the services that we require?
  • How do we make use of the knowledge
  • What added value do they bring?

44

44 Monday, 12 November 2012

slide-45
SLIDE 45

Tools and Services

  • Given key role of ontologies in the Semantic Web, it will be essential to provide

tools and services to help users: – Design and maintain high quality ontologies, e.g.: § Meaningful — all named classes can have instances § Correct — captured intuitions of domain experts § Minimally redundant — no unintended synonyms § Richly axiomatised — (sufficiently) detailed descriptions – Store (large numbers) of instances of ontology classes, e.g.: § Annotations from web pages – Answer queries over ontology classes and instances, e.g.: § Find more general/specific classes § Retrieve annotations/pages matching a given description – Integrate and align multiple ontologies

45 Monday, 12 November 2012

slide-46
SLIDE 46

Description Logics

  • A family of Knowledge Representation Languages that allow us to represent

domains in terms of classes, properties and individuals

  • DLs have been used as the theoretical underpinnings of OWL: a standardised

Ontology Language for the Web.

  • DLs have a well-defined semantics, allowing us to perform reasoning and

inference over DL Knowledge bases. – Tableaux based reasoning techniques – Highly optimised implementations

  • DL Reasoning can help in supplying (some of) the services required to support

knowledge engineering.

46 Monday, 12 November 2012

slide-47
SLIDE 47

Extra Logical Services

  • Reasoning isn’t everything
  • Additional Extra-logical Services services are required in order to support our tasks
  • Lexical

– Labels, annotations

  • Explanation and Debugging

– Why did a particular consequence or inference occur?

  • Supporting engineering

– OntoClean

47

47 Monday, 12 November 2012

slide-48
SLIDE 48

The Semantic Web

  • Knowledge Representation has been studied for many years

– What’s different about the Semantic Web?

  • Scale

– Billions of pages/resources out there – Acquiring knowledge is hard – Dealing with knowledge is hard (complexity)

  • Open-ness

– No centralised control – Many different users with different perspectives – Conflicting viewpoints

  • Heterogeneity

– Different representations, formats, viewpoints.

48

48 Monday, 12 November 2012

slide-49
SLIDE 49

Semantic Web

  • Change and Evolution

– Views of the world change – Again multiple viewpoints impact here

  • Trust, Authority and Security

– Who do I believe? – Who should I believe? – What mechanisms are there to restrict the use of knowledge?

  • Privacy

– Am I allowing others to make inferences about me or my data?

  • Identity and Reference

– How do I manage reference to non-information resources?

49

49 Monday, 12 November 2012

slide-50
SLIDE 50

50

Beware

  • DLs/OWL are not all of Knowledge Representation
  • Knowledge Representation is not all of the Semantic Web
  • The Semantic Web is not all of Knowledge Management
  • The field is still full of controversies
  • This course unit is to teach you about implementation in OWL

50 Monday, 12 November 2012

slide-51
SLIDE 51

An Introduction to OWL

51 Monday, 12 November 2012

slide-52
SLIDE 52

Web Ontology Language

  • OWL is a logic based language

– Core is the description logic SROIQ – A decidable fragment of first order logic (FOL)

  • A superset of propositional logic

– Sort of

  • OWL is more than (standard) logic

– Annotations – Datatypes (SROIQ(D) – An “interesting” non-fragment (OWL Full) – Funky (non-variable) syntax

  • And syntaxes

– Counting quantifiers – Ontology management – Metamodelling – And more!

52 Monday, 12 November 2012

slide-53
SLIDE 53

OWL

  • A “class-object” oriented language

– But not a programming language! – OWL classes are not much like Java classes

  • Learn the differences!
  • Model the world

– Not (primarily) model of data

  • Inference is a key notion

– Descriptive not prescriptive – Not all implicit information is obvious – Inference/reasoning/entailment supports modelling – Standard inference services

  • Consistency checking
  • Class satisfiability
  • Classification/Subumption
  • Realization/Instantiation

53 Monday, 12 November 2012

slide-54
SLIDE 54

Standardised Language

  • OWL is defined by a set of W3C recommendations

– Working group page:

  • http://www.w3.org/2007/OWL/wiki/OWL_Working_Group

– Document Overview:

  • http://www.w3.org/TR/2009/REC-owl2-overview-20091027/

– Structural Specification and Functional-Style Syntax (SFS):

  • http://www.w3.org/TR/2009/REC-owl2-syntax-20091027/
  • Your key text
  • 5 core syntaxes

– Functional syntax (“hub” syntax) – Manchester syntax (in Protege) – RDF/XML (canonical “exchange” syntax)

  • And variants such as Turtle

– XML Serialization (for you 60411ers) – “German”/DL Syntax (aka, logic syntax)

54 Monday, 12 November 2012

slide-55
SLIDE 55

http://www.w3.org/TR/2009/REC-owl2-overview-20091027/

55 Monday, 12 November 2012

slide-56
SLIDE 56

More specification

  • OWL Semantics

– http://www.w3.org/TR/2009/REC-owl2-direct-semantics-20091027/ – Given in terms of model theory

  • Alternative semantic presentations
  • OWL Primer

– http://www.w3.org/TR/2009/REC-owl2-primer-20091027/ – A gentle, if flawed, introduction

  • Working through the primer is a good idea!
  • By week 2

– You should be fluent with the SFS – You should be dipping a toe into the Semantics

56 Monday, 12 November 2012

slide-57
SLIDE 57

Come back to these slides

  • You should not fully understand most points

– Yet – You should by the end of the course – Come back to check your understanding

57 Monday, 12 November 2012

slide-58
SLIDE 58

A Learning Theory Aside

  • Clickers

– Learning works best when you are active

  • “Oh! I anticipate the next point”
  • “Hmm. Isn’t it the other way around? Oh, wait, I see.”
  • “I could use that to do x”

– Clicker questions provide mode switches

  • And some guidance to what to think about

– So please answer!

  • But also other discussion would be terrific!
  • Pedagogic content knowledge

– “How to learn ontology engineering/OWL” – The Language (and the Specification) – The Design (and Design Space) – Modelling – Application

58 Monday, 12 November 2012

slide-59
SLIDE 59

Core Notions

Building blocks and lego pieces

59 Monday, 12 November 2012

slide-60
SLIDE 60

An OWL ontology

  • Fundamentally, a set of axioms

– It can have a name – It can have annotations

  • Metadata about the ontology

– Author, date last modified, rights, etc. – Other versions

  • Structurally

– An ontology (O)

  • has a (possibly empty) set of axioms
  • has a (possibly empty) set of imported ontologies
  • the logical content of O is the union of the axiom sets of each of the
  • ntologies in the imports closure plus that of O
  • Physically

– Ontologies are represented as documents in a particular syntax

60 Monday, 12 November 2012

slide-61
SLIDE 61
  • ntologyDocument := { prefixDeclaration } Ontology

prefixDeclaration := 'Prefix' '(' prefixName '=' fullIRI ')' Ontology := 'Ontology' '(' [ ontologyIRI [ versionIRI ] ] directlyImportsDocuments

  • ntologyAnnotations

axioms ')'

  • ntologyIRI := IRI

versionIRI := IRI directlyImportsDocuments := { 'Import' '(' IRI ')' } axioms := { Axiom }

61 Monday, 12 November 2012

slide-62
SLIDE 62

Ontology 1 (FS & MS)

Ontology(<http://www.example.com/ontology1> Import(<http://www.example.com/ontology2> ) Annotation( <http://www.w3.org/2000/01/rdf-schema#label> "An example" ) SubClassOf( <http://www.example.com/ontology1#Child> <http://www.w3.org/2002/07/owl#Thing> ) ) Ontology: <http://www.example.com/ontology1> Import: <http://www.example.com/ontology2> Annotations: <http://www.w3.org/2000/01/rdf-schema#label> "An example" AnnotationProperty: <http://www.w3.org/2000/01/rdf-schema#label> Class: owl:Thing Class: <http://www.example.com/ontology1#Child> SubClassOf: <http://www.w3.org/2002/07/owl#Thing>

62 Monday, 12 November 2012

slide-63
SLIDE 63

Ontology 2 (FS & MS)

Ontology(<http://www.example.com/ontology2> SubClassOf( <http://www.example.com/ontology1#Adult> <http://www.w3.org/2002/07/owl#Thing> ) ) Ontology: <http://www.example.com/ontology2> Class: owl:Thing Class: <http://www.example.com/ontology1#Adult> SubClassOf: <http://www.w3.org/2002/07/owl#Thing>

63 Monday, 12 November 2012

slide-64
SLIDE 64

Ontology 2 with short names (FS & MS)

Prefix(owl:=<http://www.w3.org/2002/07/owl#>) Prefix(:=<http://www.example.com/ontology2#>) Ontology(<http://www.example.com/ontology2> SubClassOf(:Adult owl:Thing) ) Prefix: owl: <http://www.w3.org/2002/07/owl#> Ontology: <http://www.example.com/ontology2> Class: owl:Thing Class: <http://www.example.com/ontology2#Adult> SubClassOf:

  • wl:Thing

64 Monday, 12 November 2012

slide-65
SLIDE 65

Logical Content of Ontology 1

  • No real logical content!

– Everything is a SubClassOf Thing – But you get the idea

  • We could say something substantive

– DisjointClasses(:Child :Adult)

  • We could say something substantive and wrong

– DisjointClasses(:Adult :Adult)

  • A reasoner would barf!

– If :Adult is disjoint from itself, then nothing can be an :Adult

SubClassOf( :Child owl:Thing) SubClassOf( :Adult owl:Thing )

65 Monday, 12 November 2012

slide-66
SLIDE 66

3 basic categories

  • Entities

– Things with a name

  • (Ontologies are a special case)
  • By abuse (both ways) of notation...terms

– Names are IRIs (URIs/URLs)

  • Which may be abbreviated in different ways in different syntaxes

– The set of entities/names in an ontology form its signature

  • (For logical purposes, we ignore annotation entities!)
  • Expressions (or descriptions)

– Complex (or compound) descriptions of entities – Entities can be thought of as degenerate expressions

  • Axioms

– Declarative statements (presumed true)

66 Monday, 12 November 2012

slide-67
SLIDE 67

Entity types

  • Individuals (instances, logical constants)

– We can have “anonymous” individuals

  • Classes (concepts, unary/monadic predicates)

– “Sets”, or rather “kinds” or “categories” of individuals

  • Literals (data values, values, concrete individuals)

– 1, 2, 3, “hi there!”, etc.

  • Datatypes (unary data predicates)

– Integers greater than 5, strings beginning with “a”

  • Properties (roles, relations, binary predicates)

– Object properties (individual to individual)

  • loves, eats, knows

– Data properties (individual to data value)

  • age, weight, price

– Annotation properties

67 Monday, 12 November 2012

slide-68
SLIDE 68

The World of OWL

Individuals (particulars)

68 Monday, 12 November 2012

slide-69
SLIDE 69

The World of OWL

People Computers Sinks Musical Instruments Non living Classes (categories of individuals)

69 Monday, 12 November 2012

slide-70
SLIDE 70

The World of OWL

People Computers Sinks Musical Instruments Non living Data Values 1 “one” 2 2000 “hi there” 5.6

70 Monday, 12 November 2012

slide-71
SLIDE 71

The World of OWL

People Computers Sinks Musical Instruments Non living Data Types (categories of values) 1 “one” 2 2000 “hi there” 5.6 Integers Strings Decimals

71 Monday, 12 November 2012

slide-72
SLIDE 72

The World of OWL

Properties (relations) 1 “one” 2 2000 “hi there” 5.6

  • wns

plays

  • bsoletes

costs

72 Monday, 12 November 2012

slide-73
SLIDE 73

Expressions

  • For each entity type,

– we have a corresponding expression language – with different expressivity – the concept language is (arguably) the richest

  • reflects history
  • We can describe a class (child)

– as anything which is not an adult – as a sort of person – as anthing with an age 14 (or 21) – as anything having a parent – as anything attending school

  • And elaborate

– we can describe “only child” as child (as above) with 0 siblings

73 Monday, 12 November 2012

slide-74
SLIDE 74

Axioms

  • For each entity/expression type

– we have characteristic axioms – can relate same entity/expressions or different

  • class to class (SubClassOf)
  • individual to class (ClassAssertion)
  • property to property (SubPropertyOf)
  • features of properties (Functional, Transitive)
  • etc.
  • An ontology is consistent ifff

– every axiom in the axiom closure can be simultaneously true – i.e., there are no axiom “conflicts” – it has a “model”

  • The more we say in our ontology

– the closer we get to inconsistency – inconsistency is “saying too much”

74 Monday, 12 November 2012

slide-75
SLIDE 75

Basic Axioms

All things atomic

75 Monday, 12 November 2012

slide-76
SLIDE 76

Let’s pretend

  • That the only sort of expression we have are atomic

– I.e., entities

  • We assume the owl: and default prefixes

– And any other convenient prefixes

  • We presume two built in entities

– owl:Thing – owl:Nothing

  • All axioms occur in the some ontology
  • I won’t cover everything

– We don’t need to pretend this! – See the SFS document for everything! – More next time as well

  • But read up!

76 Monday, 12 November 2012

slide-77
SLIDE 77

Class Axioms

  • Class axioms express “relations between” descriptions

– Remember, right now our only descriptions are atomic/names

  • We have three primary sorts of class axiom

– Subsumption – Equivalence – Disjointness

  • The set of class axioms form the TBox

– “Terminological Box” – Set of “term relations” or “definitions” – The “intentional part” – Roughly, the “schema”

  • But it’s not a schema like WXS or a relational schema!
  • Historically the most used and developed part

77 Monday, 12 November 2012

slide-78
SLIDE 78

(Class) Subsumption

(Class) Subsumption FS SubClassOf(:Automobile :Vehicle) MS Class: Automobile SubClassOf: Vehicle NL All Automobiles are Vehicles. Every Automobile is a Vehicle. If something is an Automobile then it is a Vehicle. A necessary condition of being an Automobile is being a Vehicle. FOL ∀x(Automobile(x) Vehicle(x)) DL Automobile ⊑ Vehicle

78 Monday, 12 November 2012

slide-79
SLIDE 79

Anatomy of an Axiom

(Class) Subsumption FS SubClassOf(:Automobile :Vehicle) MS Class: Automobile SubClassOf: Vehicle DL Automobile ⊑ Vehicle Arguments Arguments Arguments Connective (Functor) Connective Connective

If all the arguments are names then the axiom is atomic

79 Monday, 12 November 2012

slide-80
SLIDE 80

(Class) Equivalence

(Class) Equivalence FS EquivalentClasses(:Automobile :Car) MS Class: Automobile EquivalentTo: Car NL All Automobiles are cars and vice versa. Automobiles is another name for car. Something is an Automobile if and only iff it is a Car. A necessary and sufficient condition of being an Automobile is being a Car. FOL ∀x(Automobile(x) ↔ Car(x)) DL Automobile ≡ Car (varies)

  • N-ary!

– EquivalentClasses(:Automobile :Car :Autocar)

  • Transitive
  • Expressible as subsumptions

80 Monday, 12 November 2012

slide-81
SLIDE 81

(Class) Disjointness

(Class) Disjointness FS DisjointClasses(:Automobile :Bicycle) MS Class: Automobile DisjointWith: Bicycle NL All Automobiles are not bicycles. Every Automobile is not a bicycle. If something is an Automobile then it is not a bicycle. A necessary condition of being an Automobile is not being a bicycle. FOL ∀x(Automobile(x) ¬Bicycle(x)) DL Automobile ⊑ ¬Bicycle Disj(Automobile, Bicycle)(varies)

  • N-ary!

– Pairwise disjointness

  • Not expressible as atomic subsumptions!

– New expressivity

81 Monday, 12 November 2012

slide-82
SLIDE 82

Class/Subsumption Graph

  • The set of subclass and equivalence axioms

– Induce a class hierarchy

  • Also known as the subsumption hierarchy, class graph, etc.
  • The “taxonomic structure” of the ontology

– The hierarchy can have many different shapes

  • With a directed acyclic graph as the most general shape
  • Why no cycles?!

82 Monday, 12 November 2012

slide-83
SLIDE 83

Two Class Graphs

83 Monday, 12 November 2012

slide-84
SLIDE 84

Entailment!

  • Even with this little bit:

– Class names only – Subsumption, Equivalence, and Disjointness axioms

  • We can derive from explicit axioms

– implicit subsumptions – implict equivalences – implicit disjointness – class unsatisfiability

  • With the built in classes (owl:Thing and owl:Nothing)

– We can make our ontology inconsistent!

  • If our ontology O ⊨ SubClassOf(owl:Nothing, owl:Thing)

– We can state unsatisfiability

  • SubClassOf(C, owl:Nothing)
  • But we can do it all by chasing links in the graph

84 Monday, 12 November 2012

slide-85
SLIDE 85

Object Property Axioms

  • Property axioms express “relations between” descriptions

– Remember, right now our only descriptions are atomic, i.e., names

  • We have three primary sorts of (object) property axiom

– Subsumption – Equivalence – Disjointness

  • And loads more!

– Inverse, transitivity, domain, and range – EVEN MORE! (but later)

  • The set of object property axioms form the RBox
  • Historically rather neglected

– OWL 2 significantly beefs these up

85 Monday, 12 November 2012

slide-86
SLIDE 86

(Object Property) Subsumption

(Object Property) Subsumption FS SubObjectPropertyOf(:hasDirectPart :hasPart) MS ObjectProperty: hasDirectPart SubClassOf: hasPart NL Everything that has a direct part has it as a part. If something has a direct part then it has it as part. A necessary condition of having an direct part is having it as a part FOL ∀x∀y(hasDirectPart(x,y) hasPart(x,y)) DL hasDirectPart ⊑ hasPart

  • English is a bit stilted here!
  • I leave object property equivalence and disjointness to

your good efforts

86 Monday, 12 November 2012

slide-87
SLIDE 87

Inverse Properties

Inverse Object Properties FS InverseObjectProperties(:hasPart :isPartOf) MS ObjectProperty: hasPart InverseOf: isPartOf NL FOL ∀x∀y(hasPart(x,y) ↔ isPartOf(y,x)) DL hasPart ≡ isPartOf- hasPart ≡ inv(isPartOf)

  • Note that in DL syntax:

– We have only an operator, not an axiom type – OWL 2 has an inverse operator as well...

87 Monday, 12 November 2012

slide-88
SLIDE 88

Transitive Properties

Transitive Object Properties FS TransitiveObjectProperty(:hasPart) MS ObjectProperty: hasPart Characteristics: Transitive NL FOL ∀x∀y∀z(hasPart(x,y) ∧ hasPart(y,z) hasPart(x,z)) DL Trans(hasPart)(varies)

  • Very powerful feature

– “Danger, danger!”

  • Note the additional variable

88 Monday, 12 November 2012

slide-89
SLIDE 89

Domain and Range axioms

Domain FS ObjectPropertyDomain(:drives :Person) MS ObjectProperty: drives Domain: Person NL FOL ∀x∀y(drives(x,y) Person(x)) DL ∃drives.⊤ ⊑ Person Range FS ObjectPropertyRange(:drives :Car) MS ObjectProperty: drives Range: Car NL FOL ∀x∀y(drives(x,y) Car(y)) DL ∃drives-.⊤ ⊑ Car

89 Monday, 12 November 2012

slide-90
SLIDE 90

“Global restrictions”

  • Domain and Range

– Relate properties and classes – “Type the link”

  • Uses up the property

– The “globalness” – Anything that drives is a Person. – Anything that is driven is a Car.

  • No trucks or trains!
  • Multiple statements interpreted conjunctively

– P Domain: C – P Domain: D – Anything that Ps is both a C and a D

90 Monday, 12 November 2012

slide-91
SLIDE 91

Assertions

  • Assertions express “facts”

– About individuals, their membership in classes, and their relations – We have individual names

  • And “anonymous” individuals (WEIRDNESS!)
  • We have three primary forms of assertion

– Class Assertions – Property Assertions (positive and negative) – (In)equalities

  • The set of Assertions are called the ABox

– The “extensional” part – The “database”

91 Monday, 12 November 2012

slide-92
SLIDE 92

Class Assertions

Class Assertion FS ClassAssertion(:Automobile :RogerTheCar) MS Individual: RogerTheCar Types: Automobile NL Roger is a Car. My car’s name is Roger. FOL Automobile(RogerTheCar) DL RogerTheCar:Automobile

92 Monday, 12 November 2012

slide-93
SLIDE 93

Object Property Assertions

Positive & Negative Object Assertions FS ObjectPropertyAssertion( :drives :Uli :RogerTheCar ) NegativeObjectPropertyAssertion( :drives :Bijan :RogerTheCar) MS Individual: Uli Facts: drives RogerTheCar Individual: Bijan Facts: not drives RogerTheCar NL Uli drives her car, Roger. Bijan doesn’t FOL drives(Uli, RogerTheCar) ¬drives(Bijan, RogerTheCar) DL <Uli,RogerTheCar>:drives (no standard way)

93 Monday, 12 November 2012

slide-94
SLIDE 94

(In)Equality

(In)Equality FS SameIndividual(RogerTheCar Roggie) DifferentIndividuals(RogerTheCar MaudeTheBicycle) MS Individual: RogerTheCar SameAs: Roggie DifferentFrom: MaudeTheBicycle NL Roger is the same car as Roggie. But Maude is not Roger FOL RogerTheCar = Roggie RogerTheCar ≠ MaudeTheBicycle DL RogerTheCar = Roggie RogerTheCar ≠ MaudeTheBicycle

94 Monday, 12 November 2012

slide-95
SLIDE 95

ABox Shape

  • ABoxes form a “relational structure”

– Arbitrary finite graph – Love triangle!

  • Joseph Facts: loves Inès.
  • Inès Facts: loves Estelle
  • Estelle Facts: loves Joseph

95 Monday, 12 November 2012

slide-96
SLIDE 96

ENTAILMENT!!!!

  • We can get even more!

– Interactions between

  • the class graph (TBox)
  • the property graph (RBox)
  • the individual graph (ABox)
  • plus Domain and Range axioms
  • Still “chasable”

– Though extra care needed

96 Monday, 12 November 2012

slide-97
SLIDE 97

Data Everything

  • Lots of built in types

– I.e., predefined names – Real Numbers (owl:real, owl:rational, xsd:decimals, et al) – Floats – Strings, Booleans, Time instants, binary, XML...

  • Data Properties

– Subsumption, Equivalence, Disjointness, Domain, & Range – No inverse or transitive!

  • Data Assertions

– Extra ABox joy – Data values (literals, data “individuals”) have predefined names

  • 1, 2, 3, 4,...
  • Datatypes and values have predefined meaning!

97 Monday, 12 November 2012

slide-98
SLIDE 98

Property Assertions

Positive & Negative Data Assertions FS DataPropertyAssertion( :age :RogerTheCar "5"^^xsd:integer ) NegativeDataPropertyAssertion( :age :RogerTheCar "10"^^xsd:integer) MS Individual: RogerTheCar Facts: age 5, not age 10 NL My car Roger’s age is 5 and not 10. FOL age(RogerTheCar, 5) ¬age(RogerTheCar, 10) DL <RogerTheCar, 5>:age (no standard way)

98 Monday, 12 November 2012

slide-99
SLIDE 99

Atomic Summary

  • Class Axioms

– SubClassOf, EquivalentTo, DisjointWith – DAG of terms – Can express unsatisfiability and inconsistency

  • Property Axioms

– SubPropertyOf EquivalentTo, DisjointWith – Transitive, Inverse – Domain and Range

  • Assertions

– ClassAssertions, PropertyAssertions, Inequality – Can express inconsistency

  • Data variants

– But only predefined names

99 Monday, 12 November 2012

slide-100
SLIDE 100

Less Basic Notions

Express yourself!

100 Monday, 12 November 2012

slide-101
SLIDE 101

Atomic Xs Are Restrictive

  • SubClassOf(Car Vehicle)

– Pretty much the best we can do – SubClassOf(Car CarriesItsOwnEngine)

  • Names

– automobile, autocar, motor car or car

  • Descriptions

– wheeled motor vehicle – transporting passengers – carries its own engine

  • Using names for descriptions avoids representation

An automobile, autocar, motor car or car is a wheeled motor vehicle used for transporting passengers, which also carries its own engine or motor.*

*http://en.wikipedia.org/wiki/Automobile

101 Monday, 12 November 2012

slide-102
SLIDE 102

Expressions (or Descriptions)

  • For each entity type,

– we have a corresponding expression language

  • In an Axiom, everywhere we used an entity

– we can use a corresponding expression

  • (Entities are degenerate expressions)
  • Usually; with some exceptions
  • For example

– SubClassOf(Name1 Name2) – SubClassOf(Description1 Description2) – ClassAssertion(Name Description) – DisjointClasses(Description1 Description2)

  • Descriptions break graph traversal inference

102 Monday, 12 November 2012

slide-103
SLIDE 103

Class Expressions

  • Class Expressions

– Describe the members of a class – A commonality (or set of commonalities) of a gorup

  • We have three primary sorts of class expression

– Propositional Connectives – Standard Quantifiers (or Restrictions)

  • Categories of individuals described in terms of relational structure
  • With data property variants

– Counting Quantifiers

  • Historically the most used and developed part

103 Monday, 12 November 2012

slide-104
SLIDE 104

Propositional Connectives

Propositional Connectives FS ObjectIntersectionOf(:Car :American) ObjectUnionOf(:Car :Motorcycle) ObjectComplementOf(:Car) MS Car and American Car or Motorcycle not Car NL Do you need it? FOL Car(x) ∧ American(x) Car(x) ∨ Motorcycle(x) ¬Car(x) DL Car ⊓ American Car ⊔ Motorcycle ¬Car

104 Monday, 12 November 2012

slide-105
SLIDE 105

Consider the axioms!

(Class) Equivalence FS EquivalentClasses(:AmericanCar ObjectIntersectionOf(:Car :American)) MS Class: AmericanCar EquivalentTo: Car and American NL An American car is anything both a car and American. FOL ∀x(AmericanCar(x) ↔ Car(x) ∧ American(x)) DL AmericanCar ≡ Car ⊓ American

  • Note the difference between the LHS and RHS!
  • “AmericanCar” is one word
  • “Car ⊓ American” is two (or three :))
  • The axiom defines “AmericanCar”

105 Monday, 12 November 2012

slide-106
SLIDE 106

Object Quantifiers/Restrictions

Object Quantifiers/Restrictions FS ObjectSomeValuesFrom(:hasPart :Motor) ObjectAllValuesFrom(:hasPart :Motor) MS hasPart some Motor hasPart only Motor FOL ∃y(hasPart(x, y) ∧ Motor(y)) ∀y(hasPart(x, y) Motor(y)) DL ∃hasPart.Motor ∀hasPart.Motor

  • Some and All often go together

– All without Some can be vacuous!

  • Note the relation to Domain and Range

– Which have become syntactic sugar

106 Monday, 12 November 2012

slide-107
SLIDE 107

Counting Quantifiers/Restrictions

Counting Quantifiers/Restrictions FS ObjectMinCardinality(3 :hasPart :Wheel) ObjectMaxCardinality(4 :hasPart :Wheel) MS hasPart min 3 Wheel hasPart max 4 Wheel FOL Complicated without counting quantifiers DL ≥3hasPart.Wheel <4hasPart.Wheel

  • Also “exact” which is sugar
  • Suppose RogerTheCar lost 2 wheels

– ClassAssertion( – ObjectExactCardinality(2 :hasPart :Wheel), RogerTheCar)

107 Monday, 12 November 2012

slide-108
SLIDE 108

Reality check

An automobile, autocar, motor car or car is a wheeled motor vehicle used for transporting passengers, which also carries its own engine or motor.*

Class: Wheel Class: Vehicle Class: Engine Class: Person Class: MotorVehicle EquivalentTo: Vehicle and (hasPart some Engine) ObjectProperty: hasPart Characteristics: Transitive ObjectProperty: transports Class: Car EquivalentTo: Automobile, Autocar, Car EquivalentTo: Vehicle that (hasPart some Wheel) and (hasPart some Engine) and (transports some Person)

⊨ Car ⊑ MotorVehicle

108 Monday, 12 November 2012

slide-109
SLIDE 109

A Note on Annotations

  • Two sorts

– On Entities

  • Most common sort

– On Axioms (new feature in OWL 2)

  • Meaningless to the reasoner

– No defined semantices

  • May be quite meaningful

– To people – To other tools – To applications

109 Monday, 12 November 2012

slide-110
SLIDE 110

Entity Annotations

Via Annotation Assertions FS AnnotationAssertion( rdfs:label :Car "motor car" ) MS Class: Car Annotations: rdfs:label "motor car" NL “Motor car” is a (useful) label for Car. FOL DL

  • Consider such annotation properties as

– definition (human readable text) – source (what you formalized) – preferred label – common usage

110 Monday, 12 November 2012

slide-111
SLIDE 111

Knowledge Acquisition

111 Monday, 12 November 2012

slide-112
SLIDE 112

Knowledge Acquisition (KA)

  • Operational definition

– Given

  • a source of (declarative) knowledge
  • a sink

– KA is the transfer of declarative statements from source to sink

  • we can generalise this to other sources, e.g., sensors
  • We distinguish between KA and K refinement

– i.e., modification of the statements in our sink – But this distinction is merely conceptual

  • Actual processes are messy
  • Range of automation

– Fully manual (what we’re going to do!) – Fully automated

  • pace refinement
  • e.g., machine learning, text extraction

112

112 Monday, 12 November 2012

slide-113
SLIDE 113

From Knowing to Representation

  • Source

– A person, typically called the domain expert (DE, or “expert”)

  • domain, subject matter, universe of discourse, area,...

– Key features

  • They know a lot about the domain (coverage)
  • They are highly reliable about the domain (accuracy)
  • They know how to articulate domain knowledge

– Though not always in the way we want!

  • They have good metaknowledge
  • Immediate Sink

– A document encoded in natural language or semi-NL

  • Ultimate Sink

– A document encoded in a formal/actionable KR language

  • I.e., an OWL Ontology!
  • This KA is often called Knowledge Elicitation

113

113 Monday, 12 November 2012

slide-114
SLIDE 114

114

114 Monday, 12 November 2012

slide-115
SLIDE 115

Eliciting Knowledge

  • Proposal 1: Ask the expert nicely to write it all down
  • Problems:
  • 1. They know too much
  • 2. Much of what they know is tacit
  • Perhaps can give it on demand, but not spontaneously

– I.e., it’s there by hard to access

  • They can’t describe it (well)
  • 3. They know too little
  • E.g., application goals
  • Target representation constraints

– E.g., the language

  • Their knowledge is incomplete

– Though they maybe able to acquire or generate it

  • 4. Expense
  • Busy and valuable people
  • They get bored

115

115 Monday, 12 November 2012

slide-116
SLIDE 116

The Knowledge Engineer (KE)

  • Key Role

– Expertise in KA

  • E.g., elicitation

– Knows the target formalism – Knows knowledge (and software) development

  • Tools, methodologies, requirements management, etc.
  • Does not necessarily know the domain!

– Though the KE may also be a DE

  • Most DEs are not KEs

– Though they may be convertible

– May be able to “become (enough of an) expert”

  • E.g., if autodidact or good learner with access to classes
  • Investment in the representation itself

116

116 Monday, 12 November 2012

slide-117
SLIDE 117

Elicitation Technique Requirements

  • Minimise DE’s time

– Assume DE scarcity – Capture essential knowledge

  • Including metaknowledge!
  • Minimise DE’s KE training and effort

– Assume loads of tacit knowledge

  • Thus techniques must be able to capture it
  • Support multiple sources

– Multiple experts (get consensus?) – Experts might point to other sources (e.g., standard text)

  • KEs must understand enough

– So, the techniques have to allow for KE domain learning – KRs reasonably accessible to non-experts

  • Always assume DE not invested

– I.e., that you care more about the KR, much more

117

117 Monday, 12 November 2012

slide-118
SLIDE 118

Note on generalizability

  • Many KA techniques are very specific

– Specific to source (e.g., learning from relational databases) – Specific to targets (e.g., learning a schema)

  • Elicitation techniques are generally flexible

– Arbitrary sources and sinks

  • In both domain and form

– NL intermediaries help – “Parameterisable” is perhaps more accurate

118

118 Monday, 12 November 2012

slide-119
SLIDE 119

Elicitation Techniques

  • Two major families

– Pre-representation – Post-(initial)representation

  • Pre-representation

– Starting point! Experts interact with a KE – Focused on “protocols”

  • A record of behavior

– Protocol-generation – Protocol-analysis

  • Post-representation (modelling)

– Experts interact with a (proto)representation (& KE) – Testing and generating

119

119 Monday, 12 November 2012

slide-120
SLIDE 120

Pre-representation Techniques

  • Protocol-generation

– Often involves video or other recording – Interviews

  • Structured or unstructured (e.g., brainstorming)

– Observational

  • Reporting

– Self or shadowing

  • Any non-interview observation
  • Protocol-analysis

– Typically done with transcripts or notes

  • But direct video is fine

– Convert protocols into protorepresentations

  • So, some modelling already!
  • We can treat many things as protocols

– E.g., Wikipedia articles, textbooks, papers, etc.

120

120 Monday, 12 November 2012

slide-121
SLIDE 121

Modelling Techniques

  • (Often characterized by aspects of the target (OWL in our case))
  • Being picky

– Pedantic refinement

  • Sorting techniques

– are used for capturing the way people compare and order concepts, and can lead to the revelation of knowledge about classes, properties and priorities

  • Hierarchy-generation techniques

– such as laddering are used to build taxonomies or other hierarchical structures such as goal trees and decision networks.

  • Matrix-based techniques

– involve the construction of grids indicating such things as problems encountered against possible solutions.

  • Limited-information and constrained-processing tasks

– are techniques that either limit the time and/or information available to the expert when performing tasks. For instance, the twenty-questions technique provides an efficient way of accessing the key information in a domain in a prioritised order.

121

121 Monday, 12 November 2012

slide-122
SLIDE 122

Other Modelling Techniques

  • Scenario descriptions
  • Diagrams
  • Problem solving
  • Teaching
  • Role Play
  • Joint Observation
  • Etc.

122

122 Monday, 12 November 2012

slide-123
SLIDE 123

Example: An Animals Taxonomy

  • Task:

– generate a controlled vocab for an index of a children’s book

  • Domain:

– Animals including

  • Where they live
  • What they eat

– Carnivores, herbivores and omnivores

  • How dangerous they are
  • How big they are

– A bit of basic anatomy » legs, wings, fins? skin, feathers, fur?

  • ...

– (read the book!)

  • Representation aspects

– Hierarchical list with priorities

123

123 Monday, 12 November 2012

slide-124
SLIDE 124

Protocol Analysis

  • From interviews/behaviour to analysable items

– Text! Text is good!

  • From a text,

– find key terms – normalize them

  • capitalisation, pluralization (or not), orthography, etc.
  • Keep track of

– Significance

  • Core or peripheral terms
  • Illustrative? Defining?

– Situation

  • Sentences or sections
  • Output: List of Terms

124

124 Monday, 12 November 2012

slide-125
SLIDE 125

Term Generation!

  • screenshot_03

125

125 Monday, 12 November 2012

slide-126
SLIDE 126

Sort of Knowledge

  • “Declarative” Knowledge about Terms (or Concepts)

– Aka Conceptual Knowledge

  • Initial steps

– Identify the domain and requirements – Collect the terms

  • Gather together the terms that describe the objects in the domain.
  • Analyse relevant sources

– Documents – Manuals – Web resources – Interviews with Expert

  • We’ve done that!
  • Now some modelling

– Two techniques today!

  • Card sorting
  • 3 card trick

126

126 Monday, 12 November 2012

slide-127
SLIDE 127

Card Sorting!

  • Card Sorting identifies similarities

– A relatively informal procedure – Works best in small groups

  • Write down each concept/idea on a card
  • 1. Organise them into piles
  • 2. Identify what the pile represents

– New concepts! New card!

  • 3. Link the piles together
  • 4. Record the rationale and links
  • 5. Reflect
  • Repeat!

– Each time, note down the results of the sorting – Brainstorm different initial piles

127

127 Monday, 12 November 2012

slide-128
SLIDE 128

Example

128

128 Monday, 12 November 2012

slide-129
SLIDE 129

Try 2 Rounds

  • Initial ideas

– How we use them – Ecology – Anatomy – ...

129

129 Monday, 12 November 2012

slide-130
SLIDE 130

Generative

  • For elicitation, more is (generally) better

– Within limits – Brainstormy

  • Is critical knowledge tacit?

– We can’t easily know in advance

  • Winnowing is crucial

– Sometimes we elicit things which should be discarded

  • And trigger the discarding of other things!

– Better to know what we don’t care to know!

130

130 Monday, 12 November 2012

slide-131
SLIDE 131

Knowledge Acquisition (KA)

  • Operational definition

– Given

  • a source of (propositional) knowledge
  • a sink

– KA is the transfer of propositions from source to sink

  • Elicitation (for terminological knowledge)

– Initial Capture:

  • Source: People, “experts”, “domain experts” (DE)
  • Sink: “Protocol” (record of behavior)

– Term Extraction:

  • Source: Text (e.g., transcript, textbook, Wikipedia article)
  • Sink: List of terms (perhaps on cards)

– Initial Regimentation:

  • Source: List of terms (on cards!)
  • Sink: Proto-representation

– Hierarchy of categorized, normalized terms (with notes!)

131

131 Monday, 12 November 2012

slide-132
SLIDE 132

Reminder: An Animals Taxonomy

  • Task:

– generate a controlled vocab for an index of a children’s book

  • Domain:

– Animals including

  • Where they live
  • What they eat

– Carnivores, herbivores and omnivores

  • How dangerous they are
  • How big they are

– A bit of basic anatomy » legs, wings, fins? skin, feathers, fur?

  • ...

– (read the book!)

  • Representation aspects

– Hierarchical list with priorities

132

132 Monday, 12 November 2012

slide-133
SLIDE 133

We’ve sorted

133

133 Monday, 12 November 2012

slide-134
SLIDE 134

Triadic Elicitation: The 3 card trick

  • Select 3 cards at random

– Identify which 2 cards are the most similar?

  • Write down why (a similarity)

– As a new term!

  • Write down why not like 3rd (a difference)

– Another new term!

  • Helps to determine the characteristics of our classes

– Prompts us into identifying differences & similarities

  • There will always be two that are “closer” together
  • Although which two cards that is may differ

– From person to person – From perspective to perspective – From round to round

134

134 Monday, 12 November 2012

slide-135
SLIDE 135

Example

135

135 Monday, 12 November 2012

slide-136
SLIDE 136

Same(?) Example

136

136 Monday, 12 November 2012

slide-137
SLIDE 137

20 Questions

  • Like the game!

– The KE picks an object/concept in the domain – The DE tries to guess it

  • and asks a series of yes/no questions

– “Is it an animal?” “Is it a vegetable?” “Is it a mineral?”

  • KE notes the questions and their order

– Can help determine key concepts, properties, etc.

  • Animals, vegetables, and minerals!

– Can help structure the domain

  • “Is it a living thing?”

– Must be careful not to conflate epistemological and ontological!

  • Note that the technique is not the game!

– Goals are different! – We’re very interested in the questions, not the answers per se

137 Living Thing Animal Plant

“Is it an animal?” “Is it a plant?”

137 Monday, 12 November 2012

slide-138
SLIDE 138

Key Goal: Laddering

  • Terms vary in generality

– Tree vs. Plant – Dog vs. Rover

  • Each sort may be implicit!

– Goal: Flesh out the generality hierarchy

  • Get more specific (if too general)
  • Get more general (if mostly specific)
  • How?
  • 1. Take a group and ask what they have in common
  • During sorting or 3-card or directly
  • 2. Then investigate relations of new term
  • Siblings, missing children, and (eventually) parents (back to 1)

138

138 Monday, 12 November 2012

slide-139
SLIDE 139

A (Partial) Hierachy

  • Living Thing

– Animal

  • Mammal

– Cat – Dog – Cow – Person

  • Fish

– Trout – Goldfish – Shark

– Plant

  • Tree
  • Grass
  • Wheat

139

139 Monday, 12 November 2012

slide-140
SLIDE 140

Categorisation: “Grammatical”

  • Types\Classes\Categories

– Self standing entities

  • Things that can exist on their own
  • People, animals, houses,

– actions, processes, …

  • Roughly nouns
  • Modifiers

– Things that modify (“inhere”) in other things – Roughly adjectives and adverbs

  • Relations\Properties

– Things which relate two individuals – Roughly verbs, and (variable) attributes – (Perhaps defer to later)

140

140 Monday, 12 November 2012

slide-141
SLIDE 141

Categorisation: Modelling

  • In general, given a set of terms:

– We describe the world using them – We describe terms using other terms

  • Paradigmatically, we define terms
  • Assumable

– Terms which have no or minimal modelling

  • Too hard to model or not needed to model or don’t know

– For “Living thing” we might just have a list of subclasses

– Sometimes known as the “primitive vocabulary”

  • Definable

– Terms for which we can give a full definition

  • Or reasonably full definition

– “Carnivore is an animal that eats only meat.”

141

141 Monday, 12 November 2012

slide-142
SLIDE 142

Result!

142

142 Monday, 12 November 2012

slide-143
SLIDE 143

So! The Task

  • Capture

– See printouts

  • Extract

– List of terms; put them on cards!

  • Extend

– Esp. laddering

  • Categorise

– As modifier vs. self-standing – As definable

  • Sketch definition on (back of) card

143

143 Monday, 12 November 2012

slide-144
SLIDE 144

So! The Task

  • Capture

– See printouts

  • Extract

– List of terms; put them on cards!

  • Extend

– Esp. laddering

  • Categorise

– As modifier vs. self-standing – As definable

  • Sketch definition on (back of) card

144

Explicit stuff Implicit stuff

144 Monday, 12 November 2012

slide-145
SLIDE 145

So! The Task

  • Capture

– See printouts

  • Extract

– List of terms; put them on cards!

  • Extend

– Esp. laddering

  • Categorise

– As modifier vs. self-standing – As definable

  • Sketch definition on (back of) card
  • Encode!

Explicit stuff Implicit stuff

145

145 Monday, 12 November 2012

slide-146
SLIDE 146

Coursework

  • Take the KE done in class

– Feel free to refine it further

  • Encode it using Protege 4

– Each category term becomes a class

  • Capture your hierarchy using subsumption/subclassing

– Each relation becomes a property – For each class

  • Add a comment saying “Modifier” or “Self-Standing”

– Depending on which it is!

  • Add a comment saying “Definable”

– If it is so according to your elicitation – If so, add a comment given your (English) definition

  • Submit a zipped version of your RDF/XML file
  • Full description on Blackboard!

146

146 Monday, 12 November 2012

slide-147
SLIDE 147

OWL is our Target

  • Pre-representation

– E.g., Wikipedia article

  • Proto-representation

– Cards in Piles with Labels

  • Minimal-representation

– OWL file where

  • categories are classes
  • relations are properties
  • We use SubClassOf axioms

– (And disjointness or equivalences if you like) » (and even property subsumption, etc.) – But only atomic ones!

  • We use Entity Annotations

– Comments!

147

147 Monday, 12 November 2012