480 likes | 652 Views
The Semantic Web and Ontologies. OntoGrid Semantic Grid Tutorial, February, 2007, Manchester, UK Sean Bechhofer, School of Computer Science, University of Manchester, UK. The Semantic Web Vision. The Web was made possible through established standards
E N D
The Semantic Web and Ontologies OntoGrid Semantic Grid Tutorial, February, 2007, Manchester, UK Sean Bechhofer, School of Computer Science, University of Manchester, UK
The Semantic Web Vision • The Web was made possible through established standards • TCP/IP for transporting bits down a wire • HTTP & HTML for transporting and rendering hyperlinked text • Applications able to exploit this common infrastructure • Result is the WWW as we know it • 1st generation web mostly handwritten HTML pages • 2nd generation (current) web often machine generated/active • Both intended for direct human processing/interaction • In the next generation web, resources should be more accessible to automated processes • To be achieved via semantic markup • Metadata annotations that describe content/function • Coincides with vision of a Semantic Web OntoGrid: Semantic Grid Tutorial 2
History of the Semantic Web • Web was “invented” by Tim Berners-Lee (amongst others), while working at CERN • TBL’s original vision of the Web was much more ambitious than the reality of the existing (syntactic) Web: • A number of researchers have since been working towards realising this vision, which has become known as the Semantic Web • E.g., article in May 2001 issue of Scientific American… ... a goal of the Web was that, if the interaction between person and hypertext could be so intuitive that the machine-readable information space gave an accurate representation of the state of people's thoughts, interactions, and work patterns, then machine analysis could become a very powerful management tool, seeing patterns in our work and facilitating our working together through the typical problems which beset the management of large organizations. OntoGrid: Semantic Grid Tutorial 3
Scientific American, May 2001: • Realising the complete “vision” is too hard for now (probably) • But we can make a start by adding semantic annotation to web resources Chuck D sez: Don’t Believe the Hype! OntoGrid: Semantic Grid Tutorial 4
A place where computers do the presentation (easy) and people do the linking and interpreting (hard). Why not get computers to do more of the hard work? Resource href href href Resource Resource Resource Resource href href href Resource href href href href Resource Resource Resource href href Resource Where we are Today: the Syntactic Web OntoGrid: Semantic Grid Tutorial 5
Hard Work using the Syntactic Web… Find images of Steve Furber …Carole Goble … Alan Rector… Rev. Alan M. Gates, Associate Rector of the Church of the Holy Spirit, Lake Forest, Illinois OntoGrid: Semantic Grid Tutorial 6
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… OntoGrid: Semantic Grid Tutorial 7
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… OntoGrid: Semantic Grid Tutorial 8
Information a machine can see… WWW2002 The eleventh international world wide webcon Sheraton waikiki hotel Honolulu, hawaii, USA 7-11 may 2002 1 location 5 days learn interact Registered participants coming from australia, canada, chile denmark, france, germany, ghana, hong kong, india, ireland, italy, japan, malta, new zealand, the netherlands, norway, singapore, switzerland, the united kingdom, the united states, vietnam, zaire Register now On the 7th May Honolulu will provide the backdrop of the eleventh international world wide web conference. This prestigious event … Speakers confirmed Tim berners-lee Tim is the well known inventor of the Web,… OntoGrid: Semantic Grid Tutorial 9
Solution: XML markup with “meaningful” tags? <name>WWW2002 The eleventh international world wide webcon</name> <date>7-11 may 2002</date> <location>Sheraton waikiki hotel Honolulu, hawaii, USA</location> <introduction>Register now On the 7th May Honolulu will provide the backdrop of the eleventh international world wide web conference. This prestigious event … Speakers confirmed</introduction> <speaker>Tim berners-lee <bio>Tim is the well known inventor of the Web,</bio> </speaker> <speaker>Tim berners-lee <bio>Tim is the well known inventor of the Web,</bio> </speaker> <registration>Registered participants coming from australia, canada, chile denmark, france, germany, ghana, hong kong, india, ireland, italy, japan, malta, new zealand, the netherlands, norway, singapore, switzerland, the united kingdom, the united states, vietnam, zaire<registration> OntoGrid: Semantic Grid Tutorial 10
But What About…? <conf>WWW2002 The eleventh international world wide webcon<conf> <date>7-11 may 2002</date> <place>Sheraton waikiki hotel Honolulu, hawaii, USA<place> <introduction>Register now On the 7th May Honolulu will provide the backdrop of the eleventh international world wide web conference. This prestigious event … Speakers confirmed</introduction> <speaker>Tim berners-lee <bio>Tim is the well known inventor of the Web,</bio> </speaker> <speaker>Tim berners-lee <bio>Tim is the well known inventor of the Web,</bio> </speaker> <registration>Registered participants coming from australia, canada, chile denmark, france, germany, ghana, hong kong, india, ireland, italy, japan, malta, new zealand, the netherlands, norway, singapore, switzerland, the united kingdom, the united states, vietnam, zaire<registration> OntoGrid: Semantic Grid Tutorial 11
Still the Machine only sees… <>WWW2002 The eleventh international world wide webcon<> <>7-11 may 2002</> <>Sheraton waikiki hotel Honolulu, hawaii, USA<> <>Register now On the 7th May Honolulu will provide the backdrop of the eleventh international world wide web conference. This prestigious event … Speakers confirmed</> <>Tim berners-lee <>Tim is the well known inventor of the Web,</> </> <>Tim berners-lee <>Tim is the well known inventor of the Web,</> </> <>Registered participants coming from australia, canada, chile denmark, france, germany, ghana, hong kong, india, ireland, italy, japan, malta, new zealand, the netherlands, norway, singapore, switzerland, the united kingdom, the united states, vietnam, zaire<> OntoGrid: Semantic Grid Tutorial 12
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 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 • Can also specify relationships between terms in multiple ontologies Machine Processable not Machine Understandable OntoGrid: Semantic Grid Tutorial 13
Ontology in Computer Science • An ontology is an engineering artifact: • It is constituted by a specific vocabulary used to describe a certain reality, plus • a set of explicit assumptions regarding the intended meaning of the vocabulary. • Almost always including how concepts should be classified • Thus, an ontology describes a formal specification of a certain domain: • Shared understanding of a domain of interest • Formal and machine manipulable model of a domain of interest OntoGrid: Semantic Grid Tutorial 14
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 OntoGrid: Semantic Grid Tutorial 15
OWL Inference RDF(S) Integration Integration RDF Annotation XML Languages • Work on Semantic Web has concentrated on the definition of a collection or “stack” of 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 • … OntoGrid: Semantic Grid Tutorial 16
Ontology Languages • We need languages that allow us to represent this information • Ontology Languages! • There are a wide variety of languages for this “Explicit Specification” • Graphical • Semantic Networks, Topic Maps, UML, RDF • Logical • Description Logics, First Order Logic, Rules, Conceptual Graphs mother(X,M) :- parent(X,M), female(M). father(X,F) :- parent(X,F), male(F). sister(X,S) :- female(S), parent(S,P), parent(X,P), X \== S. male(james1). male(charles1). male(charles2). male(james2). male(george1). female(catherine). female(elizabeth). female(sophia). parent(charles1, james1). parent(elizabeth, james1). parent(charles2, charles1). parent(catherine, charles1). parent(james2, charles1). parent(sophia, elizabeth). parent(george1, sophia). Every gardener likes the sun 8x.gardener(x) ) likes(x, Sun) You can fool some of the people all of the time 9x.8t.(person(x) Æ time(t)) ) can-fool(x,t) You can fool all of the people some of the time 8x.9t.(person(x) Æ time(t)) ) can-fool(x,t) All purple mushrooms are poisonous 8x.(mushroom(x) Æ purple(x)) ) poisonous(x) No purple mushroom is poisonous :9x.(mushroom(x) Æ purple(x) Æ poisonous(x)) 8x.(mushroom(x) Æ purple(x)) ): poisonous(x) There are exactly two purple mushrooms 9x.9y.mushroom(x) Æ purple(x) Æ mushroom(y) Æ purple(y) Æ (:x=y) Æ (8x.mushroom(z) Æ purple(z) ) ((x=z) _ (y=z))) Clinton is not tall : tall(Clinton) OntoGrid: Semantic Grid Tutorial 17
Object Oriented Models • Many languages use an “object oriented model” with • Objects/Instances/Individuals • Elements of the domain of discourse • Equivalent to constants in FOL • Types/Classes/Concepts • Sets of objects sharing certain characteristics • Equivalent to unary predicates in FOL • Relations/Properties/Roles • Sets of pairs (tuples) of objects • Equivalent to binary predicates in FOL • Such languages are/can be: • Well understood • Formally specified • (Relatively) easy to use • Amenable to machine processing OntoGrid: Semantic Grid Tutorial 18
Why (Formal) Semantics? • Increased formality makes languages more amenable to machine processing (e.g. automated reasoning). • The formal semantics provides an unambiguous interpretation of the descriptions. • What does an expression in an ontology language mean? • The semantics of a language tell us precisely how to interpret a complex expression. • Well defined semantics are vital if we are to support machine interpretability • They remove ambiguities in the interpretation of the descriptions. Telephone Black ? OntoGrid: Semantic Grid Tutorial 19
RDF • RDF stands for Resource Description Framework • It is a W3C Recommendation • http://www.w3.org/RDF • RDF is a graphical formalism ( + XML syntax + semantics) • for representing metadata • for describing the semantics of information in a machine- accessible way • Provides a simple data model based on triples. OntoGrid: Semantic Grid Tutorial 20
The RDF Data Model • Statements are <subject, predicate, object> triples: • <Sean,hasColleague,Ian> • Can be represented as a graph: • Statements describe properties of resources • A resource is any object that can be pointed to by a URI: • The generic set of all names/addresses that are short strings that refer to resources • a document, a picture, a paragraph on the Web, http://www.cs.man.ac.uk/index.html, a book in the library, a real person (?), isbn://0141184280 • Properties themselves are also resources (URIs) hasColleague Sean Ian OntoGrid: Semantic Grid Tutorial 21
Linking Statements • The subject of one statement can be the object of another • Such collections of statements form a directed, labeled graph • The object of a triple can also be a “literal” (a string) “Sean K. Bechhofer” hasName hasColleague Sean Ian hasHomePage hasColleague http://www.cs.man.ac.uk/~horrocks Carole OntoGrid: Semantic Grid Tutorial 22
RDF Syntax • RDF has an XML syntax that has a specific meaning: • Every Description element describes a resource • Every attribute or nested element inside a Description is a property of that Resource • We can refer to resources by URIs <rdf:Description rdf:about="some.uri/person/sean_bechhofer"> <o:hasColleague resource="some.uri/person/ian_horrocks"/> <o:hasName rdf:datatype="&xsd;string">Sean K. Bechhofer</o:hasName> </rdf:Description> <rdf:Description rdf:about="some.uri/person/ian_horrocks"> <o:hasHomePage>http://www.cs.mam.ac.uk/~horrocks</o:hasHomePage> </rdf:Description> <rdf:Description rdf:about="some.uri/person/carole_goble"> <o:hasColleague resource="some.uri/person/ian_horrocks"/> </rdf:Description> OntoGrid: Semantic Grid Tutorial 23
What does RDF give us? • A mechanism for annotating data and resources. • Single (simple) data model. • Syntactic consistency between names (URIs). • Low level integration of data. OntoGrid: Semantic Grid Tutorial 24
RDF(S): RDF Schema • RDF gives a formalism for meta data annotation, and a way to write it down in XML, but it does not give any special meaning to vocabulary such as subClassOf or type (supporting OO-style modelling) • Interpretation is an arbitrary binary relation • RDF Schema extends RDF with a schema vocabulary that allows you to define basic vocabulary terms and the relations between those terms • Class, type, subClassOf, • Property, subPropertyOf, range, domain • it gives “extra meaning” to particular RDF predicates and resources • this “extra meaning”, or semantics, specifies how a term should be interpreted OntoGrid: Semantic Grid Tutorial 25
RDF(S) Inference rdfs:Class rdf:type Person rdf:type rdfs:subClassOf rdf:type Academic rdfs:subClassOf rdf:subClassOf Lecturer OntoGrid: Semantic Grid Tutorial 26
RDF(S) Inference rdfs:Class rdf:type Academic rdf:type rdfs:subClassOf Lecturer rdfs:type rdf:type Sean OntoGrid: Semantic Grid Tutorial 27
What does RDF(S) give us? • Ability to use simple schema/vocabularies when describing our resources. • Consistent vocabulary use and sharing. • Simple inference • CS AktiveSpace • Lightweight schema to integrate data from University sites • myGrid • Service descriptions for e-Science OntoGrid: Semantic Grid Tutorial 28
Problems with RDFS • RDFS is too weak to describe resources in sufficient detail • No localised range and domain constraints • Can’t say that the range of hasChild is person when applied to persons and elephant when applied to elephants • No existence/cardinality constraints • Can’t say that all instances of person have a mother that is also a person, or that persons have exactly 2 parents • No transitive, inverse or symmetrical properties • Can’t say that isPartOf is a transitive property, that hasPart is the inverse of isPartOf or that touches is symmetrical • It can be difficult to provide reasoning support • No “native” reasoners for non-standard semantics • May be possible to reason via FO axiomatisation OntoGrid: Semantic Grid Tutorial 29
Web Ontology Language Requirements Desirable features identified for Web Ontology Language: • Extends existing Web standards • Such as XML, RDF, RDFS • Easy to understand and use • Should be based on familiar KR idioms (e.g. OO-style, frames etc). • Formally specified • Of “adequate” expressive power • Possible to provide automated reasoning support OntoGrid: Semantic Grid Tutorial 30
The OWL Family Tree DAML RDF/RDF(S) DAML-ONT Joint EU/US Committee DAML+OIL OWL Frames OIL W3C OntoKnowledge+Others Description Logics OntoGrid: Semantic Grid Tutorial 31
OWL • W3C Recommendation (February 2004) • Well defined RDF/XML serializations • A family of Languages • OWL Full • OWL DL • OWL Lite • Formal semantics • First Order (DL/Lite) • Relationship with RDF • Comprehensive test cases for tools/implementations • Growing industrial takeup. OntoGrid: Semantic Grid Tutorial 32
OWL Basics • Set of constructors for concept expressions • Booleans: and/or/not • Quantification: some/all • Axioms for expressing constraints • Necessary and Sufficient conditions on classes • Disjointness • Property characteristics: transitivity, inverse • Facts • Assertions about individuals OntoGrid: Semantic Grid Tutorial 33
Reasoning with OWL • OWL (DL) has a well defined semantics that tells us how to interpret expressions in the language. • This semantics corresponds to “traditional” interpretations given to first order logic or subsets of FOL like Description Logics. • OWL DL based on a well understoodDescription Logic (SHOIN(Dn)) • Formal properties well understood (complexity, decidability) • Known reasoning algorithms • Implemented systems (highly optimised) • Because of this, we can reason about OWL ontologies, allowing us to draw inferences from the basic facts that we provide. OntoGrid: Semantic Grid Tutorial 34
Sean Bechhofer: Concrete Examples: Grid/VO? GONG? Reasoning Tasks • Subsumption reasoning • Allows us to infer when one class is a subclass of another • Can then build concept hierarchies representing the taxonomy. • This is classification of classes. • Satisfiability reasoning • Tells us when a concept is unsatisfiable • i.e. when it is impossible to have instances of the class. • Allows us to check whether our model is consistent. • Instance Retrieval/Instantiation • What are the instances of a particular class C? • What are the classes that x is an instance of? OntoGrid: Semantic Grid Tutorial 35
Classification OntoGrid: Semantic Grid Tutorial 36
Why Reasoning? • Reasoning can be used as a design support tool • Check logical consistency of classes • Compute implicit class hierarchy • May be less important in small local ontologies • Can still be useful tool for design and maintenance • Much more important with larger ontologies/multiple authors • Valuable tool for integrating and sharing ontologies • Use definitions/axioms to establish inter-ontology relationships • Check for consistency and (unexpected) implied relationships • Basis for answering queries. • Reasoning can help underpin the provision of the machine processing required of the Semantic Web. OntoGrid: Semantic Grid Tutorial 37
What does OWL give us? • Rich language for describing domain models. • Unambiguous interpretations of complex descriptions. • The ability to use inference to manage our vocabularies. • GONG • VO Formation • PhosphaBase OntoGrid: Semantic Grid Tutorial 38
More Languages • RDF, RDF(S) and OWL provide basic representational capabilities. • We also need mechanisms that allow us to access and query the information. • RDF has an underlying concrete syntax based on XML. Why not just use something like XPath to query the RDF? • RDQL, RQL, SeRQL, … • W3C Data Access Working Group attempting to standardise on SPARQL • Elements of the earlier languages with a well-defined semantic basis • OWL-QL Query language for OWL. • Allow specification of conjunctive queries using OWL concept expressions • Also investigations into extensions of the expressivity of OWL. • Rules OntoGrid: Semantic Grid Tutorial 39
Potential Pitfalls OntoGrid: Semantic Grid Tutorial 40
Conflicting Views • The Semantic Web community is diverse, with a rough division between the “neats” and the “scruffies”. • Neats • Logic and languages • Completeness/decidability • Top down, well-behaved • Heavyweight • Rich ontologies • OWL • Scruffies • Practice • Bottom up/real-world • Lightweight • Folksonomies • FOAF • RDF OntoGrid: Semantic Grid Tutorial 41
SemanticWeb vs SemanticWeb • Semantics/AI/KR community with little attention paid to Web aspects • “You’re not doing it properly” • Web community with little attention paid to Semantics. • “Just stick everything in a big RDF store and it’ll all be fine” • Diversity can be healthy, but can also lead to fragmentation and pointless arguments. Splitters! OntoGrid: Semantic Grid Tutorial 42
Tools and Services • We need to provide tools and services to help users to: • Design and maintain high quality ontologies, e.g.: • Meaningful— all named classes can have instances • Correct— captured intuitions of domain experts • Minimallyredundant— no unintended synonyms • Richlyaxiomatised— (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 OntoGrid: Semantic Grid Tutorial 43
How thick is your infrastructure? • Sharing is about interoperations. Ensuring that when you look at or process my data, you do it in a consistent way. • “Thick” infrastructure can help interoperability. Clients don’t have to guess how to interpret things. • But can be harder to build Thin Apps Thin Apps Thick Infrastructure OntoGrid: Semantic Grid Tutorial 44
How thick is your infrastructure? • A lightweight infrastructure (e.g. RDF) means that clients/apps have to do more. And may do it differently. • Metadata can end up being locked away within the applications where others can’t get at it. Is that sharing? Are you exposing the semantics? Thick Apps Thick Apps Thin Infrastructure OntoGrid: Semantic Grid Tutorial 45
Trust and Security • Publishing my information in machine-processable forms may allow you to: • Work out what I’m doing • Integrate across multiple sources to produce new conclusions • How do I control this? • We need mechanisms that will allow us to control access to knowledge • We need mechanisms that allow us to ascribe provenance and trust information to our knowledge. • The SW “stack” sees these at the top. Some of this has to come from the bottom though. OntoGrid: Semantic Grid Tutorial 46
Scalability • Will this stuff work on a web scale? • Millions of triples/fact • Thousands of ontologies • Are you ever going to get global agreements? OntoGrid: Semantic Grid Tutorial 47
OWL Inference RDF(S) Integration Integration RDF Annotation XML Language Summary • We’ve seen some of the technology being proposed as a basis for building the Semantic Web • These languages provide basic machinery that we can use to represent the extra semantic information needed for the Semantic Web • XML • RDF • RDF(S) • OWL OntoGrid: Semantic Grid Tutorial 48