Upload
earl-hopkins
View
215
Download
1
Tags:
Embed Size (px)
Citation preview
11
An Overview and An Overview and Underview of the Underview of the
Semantic WebSemantic Web
Tim FininTim FininUniversity of Maryland University of Maryland
Baltimore CountyBaltimore County
Semantic Web for Science WorkshopNewark NJ, October 2002
http://umbc.edu/~finin/talks/swsw02/
recommend
tell
register
tell
register
UMBCUMBCan Honors University in an Honors University in
MarylandMaryland 22
OverviewOverview
The Problem: building The Problem: building intelligent information systemsintelligent information systems
The Semantic web as part of The Semantic web as part of the solutionthe solution
Background on the semantic Background on the semantic webweb
Comments and ConclusionsComments and Conclusions
UMBCUMBCan Honors University in an Honors University in
MarylandMaryland 33
The problemThe problem
I’ve been engaged in research aimed at I’ve been engaged in research aimed at developing intelligent information systems developing intelligent information systems for thirty years.for thirty years.
The problem is hard, progress is slow, but The problem is hard, progress is slow, but the incremental results are worth it.the incremental results are worth it.
It’s a task for many generations to come.It’s a task for many generations to come. Today’s environment is very different than Today’s environment is very different than
that in 1972.that in 1972.
UMBCUMBCan Honors University in an Honors University in
MarylandMaryland 44
They way we were…They way we were…
AN IBM 360 circa 1972AN IBM 360 circa 1972
UMBCUMBCan Honors University in an Honors University in
MarylandMaryland 55
They way we will be…They way we will be…
UMBCUMBCan Honors University in an Honors University in
MarylandMaryland 66
What’s new?What’s new?
Internet.Internet. Virtually of the computers in the Virtually of the computers in the world have been connected.world have been connected.
Scale.Scale. Every day many more computing and Every day many more computing and communication devices are joining.communication devices are joining.
Power.Power. Raw computing power continues to Raw computing power continues to climb.climb.
Wireless.Wireless. New technologies (GSM, 802.11, New technologies (GSM, 802.11, Bluetooth, UWB?, IR, etc) are creating a Bluetooth, UWB?, IR, etc) are creating a pervasive, ubiquitous computing environmentpervasive, ubiquitous computing environment
Web.Web. Anyone can publish content and provide Anyone can publish content and provide services, powerful search engines support services, powerful search engines support discovery, evolving standards enhance discovery, evolving standards enhance interoperabilityinteroperability
UMBCUMBCan Honors University in an Honors University in
MarylandMaryland 77
The way we will be…The way we will be…
People, agents, devices, & services need People, agents, devices, & services need toto
Find others in their environmentFind others in their environment Describe the services they offer and seekDescribe the services they offer and seek Exchange APIsExchange APIs Negotiate for services, permissions, privacy, payment, Negotiate for services, permissions, privacy, payment,
… … Reason about services to create composite servicesReason about services to create composite services Coordinate and cooperate as neededCoordinate and cooperate as needed Sense their context and the activities of humansSense their context and the activities of humans Deal with new entities never before encounteredDeal with new entities never before encountered
And to do this dynamicallyAnd to do this dynamically
UMBCUMBCan Honors University in an Honors University in
MarylandMaryland 1010
Semantic WebSemantic Web
I’ll argue that the semantic web provides a I’ll argue that the semantic web provides a good approach, language and tools to support good approach, language and tools to support the development of intelligent information the development of intelligent information systems in this environment.systems in this environment.
This isn’t obvious, since the SW seems This isn’t obvious, since the SW seems grounded in the “traditional” hypertext on the grounded in the “traditional” hypertext on the wired web.wired web.
But, the principles which drive it are the right But, the principles which drive it are the right ones for agents as well as pervasive ones for agents as well as pervasive computing.computing.
And, by grounding agents in web technology, And, by grounding agents in web technology, they may make it out of the lab.they may make it out of the lab.
Next: overview of Semantic WebNext: overview of Semantic Web
UMBCUMBCan Honors University in an Honors University in
MarylandMaryland 1111
W3C’s Semantic Web GoalsW3C’s Semantic Web Goals
Focus on machine consumption:Focus on machine consumption:"The Semantic Web is an extension of the current
web in which information is given well-defined meaning, better enabling computers and people to work in cooperation." -- Berners-Lee, Hendler -- Berners-Lee, Hendler and Lassila, The Semantic Web, Scientific and Lassila, The Semantic Web, Scientific American, 2001American, 2001
Whereas the Web has made people Whereas the Web has made people smarter, the SW will make machines smarter, the SW will make machines smarter.smarter.
The current Web The current Web storesstores things whereas things whereas the SW enables agents which the SW enables agents which dodo things.things.
UMBCUMBCan Honors University in an Honors University in
MarylandMaryland 1212
Origins of the Semantic WebOrigins of the Semantic Web
http://www.w3.org/History/1989/proposal.html
Capsule historyCapsule history Tim Berners-Lee proposed
WWW as a Web of relationships among named objects (89)
Guha designed MCF (~94) XML+MCF=>RDF (~96) RDF+OO=>RDFS (~99) RDFS+KR=>DAML+OIL
(00) W3C’s SW activity (01) W3C’s OWL (02?)
UMBCUMBCan Honors University in an Honors University in
MarylandMaryland 1414
Why is this hard?Why is this hard?
after Frank van Harmelen and Jim Hendler
UMBCUMBCan Honors University in an Honors University in
MarylandMaryland 1515
What a web page looks like to a machine…
And understanding natural language is easier than images!
“Webscraping” is mostly done by hand crafted rules or rules generated by supervised learning
Either way, the rules can break when the page structure changes.
after Frank van Harmelen and Jim Hendler
UMBCUMBCan Honors University in an Honors University in
MarylandMaryland 1616
OK, so HTML is not helpfulOK, so HTML is not helpfulCould we tell the machine what the different parts of the text represent?
after Frank van Harmelen and Jim Hendler
title
time
speaker
location
abstract
biosketch
host
UMBCUMBCan Honors University in an Honors University in
MarylandMaryland 1717
XML to the rescue?XML to the rescue?
XML fans propose creating a XML tag set to use for each application.
For talks, we can choose <title>, <speaker>, etc.
after Frank van Harmelen and Jim Hendler
<title>
<time><speaker>
<location>
<abstract>
<biosketch>
<host> </host></biosketch>
</abstract>
</location>
</time>
</speaker>
</title>
UMBCUMBCan Honors University in an Honors University in
MarylandMaryland 1818
XML XML machine accessible meaning machine accessible meaning
But, to your machine, the tags still look like this….
The tag names carry no meaning.
XML DTDs andSchemas have little or no semantics.
after Frank van Harmelen and Jim Hendler
UMBCUMBCan Honors University in an Honors University in
MarylandMaryland 1919
<?xml version="1.0" encoding="utf-8"?> <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"> <xs:element name="book"> <xs:complexType> <xs:sequence> <xs:element name="title" type="xs:string"/> <xs:element name="author" type="xs:string"/> <xs:element name="character" minOccurs="0" maxOccurs="unbounded"> <xs:complexType> <xs:sequence> <xs:element name="name" type="xs:string"/> <xs:element name="friend-of" type="xs:string" minOccurs="0" maxOccurs="unbounded"/> <xs:element name="since" type="xs:date"/> <xs:element name="qualification" type="xs:string"/> </xs:sequence> </xs:complexType> </xs:element> </xs:sequence> <xs:attribute name="isbn" type="xs:string"/> </xs:complexType> </xs:element></xs:schema>
XML Schema helpsXML Schema helpsXML Schemas provide a XML Schemas provide a simple mechanism to define simple mechanism to define shared vocabularies.shared vocabularies.
XML Schema file
after Frank van Harmelen and Jim Hendler
UMBCUMBCan Honors University in an Honors University in
MarylandMaryland 2020
But there are many schemasBut there are many schemas
<title>
<time><speaker>
<location><abstract>
<biosketch>
<host> </host></biosketch>
</abstract>
</location></time></speaker>
</title>
<?xml version="1.0" encoding="utf-8"?> <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"> <xs:element name="book"> <xs:complexType> <xs:sequence> <xs:element name="title" type="xs:string"/> <xs:element name="author" type="xs:string"/> <xs:element name="character" minOccurs="0" maxOccurs="unbounded"> <xs:complexType> <xs:sequence> <xs:element name="name" type="xs:string"/> <xs:element name="friend-of" type="xs:string" minOccurs="0" maxOccurs="unbounded"/> <xs:element name="since" type="xs:date"/> <xs:element name="qualification" type="xs:string"/> </xs:sequence> </xs:complexType> </xs:element> </xs:sequence> <xs:attribute name="isbn" type="xs:string"/> </xs:complexType> </xs:element></xs:schema>
XML Schema file 1
<?xml version="1.0" encoding="utf-8"?> <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"> <xs:element name="book"> <xs:complexType> <xs:sequence> <xs:element name="title" type="xs:string"/> <xs:element name="author" type="xs:string"/> <xs:element name="character" minOccurs="0" maxOccurs="unbounded"> <xs:complexType> <xs:sequence> <xs:element name="name" type="xs:string"/> <xs:element name="friend-of" type="xs:string" minOccurs="0" maxOccurs="unbounded"/> <xs:element name="since" type="xs:date"/> <xs:element name="qualification" type="xs:string"/> </xs:sequence> </xs:complexType> </xs:element> </xs:sequence> <xs:attribute name="isbn" type="xs:string"/> </xs:complexType> </xs:element></xs:schema>
XML Schema file 42
after Frank van Harmelen and Jim Hendler
UMBCUMBCan Honors University in an Honors University in
MarylandMaryland 2121
There’s no way to relate schemaThere’s no way to relate schema
<title>
<time><speaker>
<location><abstract>
<biosketch>
<host> </host></biosketch>
</abstract>
</location></time></speaker>
</title>
<?xml version="1.0" encoding="utf-8"?> <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"> <xs:element name="book"> <xs:complexType> <xs:sequence> <xs:element name="title" type="xs:string"/> <xs:element name="author" type="xs:string"/> <xs:element name="character" minOccurs="0" maxOccurs="unbounded"> <xs:complexType> <xs:sequence> <xs:element name="name" type="xs:string"/> <xs:element name="friend-of" type="xs:string" minOccurs="0" maxOccurs="unbounded"/> <xs:element name="since" type="xs:date"/> <xs:element name="qualification" type="xs:string"/> </xs:sequence> </xs:complexType> </xs:element> </xs:sequence> <xs:attribute name="isbn" type="xs:string"/> </xs:complexType> </xs:element></xs:schema>
XML Schema file 1
<?xml version="1.0" encoding="utf-8"?> <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"> <xs:element name="book"> <xs:complexType> <xs:sequence> <xs:element name="title" type="xs:string"/> <xs:element name="author" type="xs:string"/> <xs:element name="character" minOccurs="0" maxOccurs="unbounded"> <xs:complexType> <xs:sequence> <xs:element name="name" type="xs:string"/> <xs:element name="friend-of" type="xs:string" minOccurs="0" maxOccurs="unbounded"/> <xs:element name="since" type="xs:date"/> <xs:element name="qualification" type="xs:string"/> </xs:sequence> </xs:complexType> </xs:element> </xs:sequence> <xs:attribute name="isbn" type="xs:string"/> </xs:complexType> </xs:element></xs:schema>
XML Schema file 42
Either manually or automatically -- XML Either manually or automatically -- XML Schema is very weak on semanticsSchema is very weak on semantics
UMBCUMBCan Honors University in an Honors University in
MarylandMaryland 2222
Ontologies can help …Ontologies can help …
An ontology defines the terms used to An ontology defines the terms used to describe and represent an area of describe and represent an area of knowledge. knowledge. Ontologies are used by people, databases, and applications that need to share domain information (a domain is just a specific subject area or area of knowledge, like medicine, tool manufacturing, real estate, automobile repair, financial management, etc.). Ontologies include computer-usable definitions of basic concepts in the domain and the relationships among them ...
They encode knowledge in a domain and They encode knowledge in a domain and also knowledge that spans domains. also knowledge that spans domains. In this way, they make that knowledge reusable.
Working Draft, Web Ontology Working Group.
UMBCUMBCan Honors University in an Honors University in
MarylandMaryland 2323
Ontologies can help …Ontologies can help …
Catalog/ID
GeneralLogical
constraints
Terms/glossary
Thesauri“narrower
term”relation
Formalis-a
Frames(properties)
Informalis-a
Formalinstance
Value Restriction
Disjointness, Inverse,part of…
After Deborah L. McGuinness (Stanford)After Deborah L. McGuinness (Stanford)
SimpleTaxonomies
ExpressiveOntologies
Wordnet
CYCRDF DAML
OO
DB Schema RDFS
IEEE SUOOWL
UMLS
UMBCUMBCan Honors University in an Honors University in
MarylandMaryland 2424
An Ontology level is neededAn Ontology level is needed
<?xml version="1.0" encoding="utf-8"?> <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"> <xs:element name="book"> <xs:complexType> <xs:sequence> <xs:element name="title" type="xs:string"/> <xs:element name="author" type="xs:string"/> <xs:element name="character" minOccurs="0" maxOccurs="unbounded"> <xs:complexType> <xs:sequence> <xs:element name="name" type="xs:string"/> <xs:element name="friend-of" type="xs:string" minOccurs="0" maxOccurs="unbounded"/> <xs:element name="since" type="xs:date"/> <xs:element name="qualification" type="xs:string"/> </xs:sequence> </xs:complexType> </xs:element> </xs:sequence> <xs:attribute name="isbn" type="xs:string"/> </xs:complexType> </xs:element></xs:schema>
XML Ontology 1
<?xml version="1.0" encoding="utf-8"?> <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"> <xs:element name="book"> <xs:complexType> <xs:sequence> <xs:element name="title" type="xs:string"/> <xs:element name="author" type="xs:string"/> <xs:element name="character" minOccurs="0" maxOccurs="unbounded"> <xs:complexType> <xs:sequence> <xs:element name="name" type="xs:string"/> <xs:element name="friend-of" type="xs:string" minOccurs="0" maxOccurs="unbounded"/> <xs:element name="since" type="xs:date"/> <xs:element name="qualification" type="xs:string"/> </xs:sequence> </xs:complexType> </xs:element> </xs:sequence> <xs:attribute name="isbn" type="xs:string"/> </xs:complexType> </xs:element></xs:schema>
XML Ontology 42
We need a way to define ontologies in XMLWe need a way to define ontologies in XML So we can relate them So we can relate them So machines can understand (to some degree) their So machines can understand (to some degree) their meaningmeaning
<?xml version="1.0" encoding="utf-8"?> <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"> <xs:element name="book"> <xs:complexType> <xs:sequence> <xs:element name="title" type="xs:string"/> <xs:element name="author" type="xs:string"/> <xs:element name="character" minOccurs="0" maxOccurs="unbounded"> <xs:complexType> <xs:sequence> <xs:element name="name" type="xs:string"/> <xs:element name="friend-of" type="xs:string" minOccurs="0" maxOccurs="unbounded"/> <xs:element name="since" type="xs:date"/> <xs:element name="qualification" type="xs:string"/> </xs:sequence> </xs:complexType> </xs:element> </xs:sequence> <xs:attribute name="isbn" type="xs:string"/> </xs:complexType> </xs:element></xs:schema>
XML Ontology 256
imports imports
=
<>
Ontologies add • Structure• Constraints• Mappings• Sharing
<?xml version="1.0" encoding="utf-8"?> <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"> <xs:element name="book"> <xs:complexType> <xs:sequence> <xs:element name="title" type="xs:string"/> <xs:element name="author" type="xs:string"/> <xs:element name="character" minOccurs="0" maxOccurs="unbounded"> <xs:complexType> <xs:sequence> <xs:element name="name" type="xs:string"/> <xs:element name="friend-of"
XML Ontology512
references
UMBCUMBCan Honors University in an Honors University in
MarylandMaryland 2525
Ontologies vary…Ontologies vary…
Ontologies vary greatly in Ontologies vary greatly in their their ScopeScope ComplexityComplexity Level of detailLevel of detail Kind of knowledge encodedKind of knowledge encoded ……
Two examples…Two examples…
UMBCUMBCan Honors University in an Honors University in
MarylandMaryland 2626
Dublin Core -- A Simple OntologyDublin Core -- A Simple Ontology
Developed by an OCLC sponsored Developed by an OCLC sponsored workshop in Dublin ~95 as a workshop in Dublin ~95 as a standard for metadata for digital standard for metadata for digital library resources on weblibrary resources on web Consists of 15 core attributes Consists of 15 core attributes http://dublincore.org/http://dublincore.org/
Neutral on how DC should be Neutral on how DC should be representedrepresented
HTML found to be inadequate for HTML found to be inadequate for representing complexities of representing complexities of structured use of DCstructured use of DC
Available as an RDF schema.Available as an RDF schema.
15 15 DC elementsDC elementsContent elements
CoverageCoverage DescriptionDescription RelationRelation SourceSource SubjectSubject TitleTitle Type Type
Intellectual Property
ContributorContributor CreatorCreator PublisherPublisher RightRight
Instantiation DateDate FormatFormat IdentifierIdentifier LanguageLanguage
UMBCUMBCan Honors University in an Honors University in
MarylandMaryland 2727
Cyc – a complex ontologyCyc – a complex ontology
Cyc is a large, general purpose ontology with Cyc is a large, general purpose ontology with associated reasoning tools developed over the associated reasoning tools developed over the past ~20 years by MCC and now Cycorppast ~20 years by MCC and now Cycorp Cyc KB has > 100k terms.Cyc KB has > 100k terms. Terms are axiomatized by > 1M handcrafted Terms are axiomatized by > 1M handcrafted
assertionsassertions Cyc inference engine has > 500 heuristic level Cyc inference engine has > 500 heuristic level
modulesmodules Goal is to encode knowledge for “common sense Goal is to encode knowledge for “common sense
reasoning” needed by applications (e.g., NLP)reasoning” needed by applications (e.g., NLP) Available free in limited form from Available free in limited form from
http://opencyc.org/http://opencyc.org/
UMBCUMBCan Honors University in an Honors University in
MarylandMaryland 2828
Today and tomorrowToday and tomorrow
We are in a good position to use simple We are in a good position to use simple ontologies like DC todayontologies like DC today This is happening (e.g., Adobe’s XMP)This is happening (e.g., Adobe’s XMP)
We hope to be able to make effective use We hope to be able to make effective use ontologies like Cyc in the coming decadeontologies like Cyc in the coming decade There are skeptics…There are skeptics… It’s a great research topic…It’s a great research topic…
UMBCUMBCan Honors University in an Honors University in
MarylandMaryland 2929
TBL’s semantic web vision“The Semantic Web will globalize KR, just as the WWW globalize hypertext” -- Tim Berners-Lee
you arehere
UMBCUMBCan Honors University in an Honors University in
MarylandMaryland 3030
Semantic web languages todaySemantic web languages today Today there are, IMHO, two semantic web Today there are, IMHO, two semantic web
languageslanguages DAML+OILDAML+OIL – Darpa Agent Markup – Darpa Agent Markup
LanguageLanguagehttp://www.daml.org/http://www.daml.org/
RDF RDF – Resource Description Framework– Resource Description Frameworkhttp://www.w3.org/RDF/http://www.w3.org/RDF/
and one under development by the W3Cand one under development by the W3C OWLOWL – Ontology Web Language – Ontology Web Language
http://www.w3.org/2001/sw/http://www.w3.org/2001/sw/ Topic mapsTopic maps (http://topicmaps.org/) are (http://topicmaps.org/) are
another breedanother breed with more to come….with more to come….
UMBCUMBCan Honors University in an Honors University in
MarylandMaryland 3232
RDF is the first SW languageRDF is the first SW language
<rdf:RDF ……..> <….> <….></rdf:RDF>
XML Encoding Graph
stmt(docInst, rdf_type, Document)stmt(personInst, rdf_type, Person)stmt(inroomInst, rdf_type, InRoom)stmt(personInst, holding, docInst)stmt(inroomInst, person, personInst)
Triples
RDFData Model
Good for Machine
Processing
Good For HumanViewing
Good For Reasoning
UMBCUMBCan Honors University in an Honors University in
MarylandMaryland 3333
Simple RDF ExampleSimple RDF Example
http://umbc.edu/~finin/talks/idm02/“Intelligent Information Systemson the Web and in the Aether”
http://umbc.edu/
dc:Title
dc:Creator
bib:Aff
“Tim Finin” “[email protected]”
bib:namebib:email
UMBCUMBCan Honors University in an Honors University in
MarylandMaryland 3434
XML encoding for RDFXML encoding for RDF<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:bib="http://daml.umbc.edu/ontologies/bib/">
<description about="http://umbc.edu/~finin/talks/idm02/"> <dc:title>Intelligent Information Systems on the Web and in the
Aether</dc:Title> <dc:creator> <description> <bib:Name>Tim Finin</bib:Name> <bib:Email>[email protected]</bib:Email> <bib:Aff resource="http://umbc.edu/" /> </description> </dc:Creator></description></rdf:RDF>
UMBCUMBCan Honors University in an Honors University in
MarylandMaryland 3535
N triple representationN triple representation RDF can be encoded as a set of RDF can be encoded as a set of triplestriples. . <<subjectsubject> <> <predicatepredicate> <> <objectobject> .> . <http://umbc.edu/~finin/talks/idm02/>
<http://purl.org/dc/elements/1.1/Title> "Intelligent Information Systems on the Web and in the Aether" ._:j10949 <http://daml.umbc.edu/ontologies/bib/Name> "Tim Finin" ._:j10949 <http://daml.umbc.edu/ontologies/bib/Email> "[email protected]" ._:j10949 <http://daml.umbc.edu/ontologies/bib/Aff> <http://umbc.edu/> ._:j10949 <http://www.w3.org/1999/02/22-rdf-syntax-ns#type>
<Description> .<http://umbc.edu/~finin/talks/idm02/>
<http://purl.org/dc/elements/1.1/Creator> _:j10949 .<http://umbc.edu/~finin/talks/idm02/> <http://www.w3.org/1999/02/22-
rdf-syntax-ns#type> <Description> . Note the gensym for the anonymous node (Note the gensym for the anonymous node (_:j10949 ) )
UMBCUMBCan Honors University in an Honors University in
MarylandMaryland 3636
Triple NotesTriple Notes RDF triples have one of two forms:RDF triples have one of two forms:
<URI> <URI> <URI><URI> <URI> <URI> <URI> <URI> <quoted string><URI> <URI> <quoted string>
Triples are also easily mapped into logicTriples are also easily mapped into logic <subject> <predicate> <object><subject> <predicate> <object> <predicate>(<subject>,<object>)<predicate>(<subject>,<object>) With type(<S>,<O>) becoming <O>(<S>)With type(<S>,<O>) becoming <O>(<S>) Example:Example:
subclass(man,person)subclass(man,person) sex(man,male)sex(man,male) domain(sex,animal)domain(sex,animal) man(adam)man(adam) age(adam,100)age(adam,100)
Triples are easily stored and managed in a Triples are easily stored and managed in a DBMSDBMS
; Note: we’re not ; showing the actual ; URIs for clarity
UMBCUMBCan Honors University in an Honors University in
MarylandMaryland 3737
N3 notation for RDFN3 notation for RDF
N3 is a compact notation for triples which is N3 is a compact notation for triples which is easier for people to read and editeasier for people to read and edit
Example:Example:@prefix log: @prefix log: <http://www.w3.org/2000/10/swap/log#> .<http://www.w3.org/2000/10/swap/log#> .:Person a rdfs:Class.:Person a rdfs:Class.:Woman a rdfs:Class; :Woman a rdfs:Class; rdfs:subClassOf :Person .rdfs:subClassOf :Person .:Eve a :Woman; age “100”.:Eve a :Woman; age “100”.:sister a rdf:Property.:sister a rdf:Property.:sister rdfs:domain :Person; :sister rdfs:domain :Person; rdfs:range :Woman.rdfs:range :Woman.
UMBCUMBCan Honors University in an Honors University in
MarylandMaryland 3838
RDF Schema (RDFS)RDF Schema (RDFS)
RDF Schema adds RDF Schema adds taxonomies fortaxonomies forclasses & propertiesclasses & properties subClass and subPropertysubClass and subProperty
and some metadata.and some metadata. domain and rangedomain and range
constraints on propertiesconstraints on properties Several widely usedSeveral widely used
KB tools can importKB tools can importand export in RDFSand export in RDFS Stanford Protégé KB editorStanford Protégé KB editor
• Java, open sourced• extensible, lots of plug-ins• provides reasoning & server
capabilities
UMBCUMBCan Honors University in an Honors University in
MarylandMaryland 3939
New and New and Improved!Improved!100% Better100% Betterthan XML!!than XML!!
New and New and Improved!Improved!100% Better100% Betterthan XML!!than XML!!
RDFS supports simple inferencesRDFS supports simple inferences An RDF ontology plus some RDFAn RDF ontology plus some RDF
statements may imply additional RDF statements may imply additional RDF statements.statements.
This is not true of XML.This is not true of XML. Example:Example:
domain(parent,person)domain(parent,person)
range(parent,person)range(parent,person)
subproperty(mother,parent)subproperty(mother,parent)
range(mother,woman)range(mother,woman)
mother(eve,cain)mother(eve,cain) This is This is part of the data modelpart of the data model and not of and not of
the accessing/processing codethe accessing/processing code
Implies:Implies: subclass(woman,person) parent(eve,cain) person(eve) person(cain) woman(eve)
Implies:Implies: subclass(woman,person) parent(eve,cain) person(eve) person(cain) woman(eve)
onto
logy
inst
ance
UMBCUMBCan Honors University in an Honors University in
MarylandMaryland 4040
RDF is being already in useRDF is being already in use RDF has a solid specificationRDF has a solid specification
See the RDF model theory spec - http://www.w3.org/TR/rdf-mt/ RDF is being used in a number of W3C RDF is being used in a number of W3C
specificationsspecifications CC/PP (Composite Capabilities/Preference Profiles)
http://www.w3.org/Mobile/CCPP/ P3P (Platform for Privacy Preferences Project)
http://www.w3.org/P3P/ And in other web standardsAnd in other web standards
RSS 1.0 (RDF Site Summary) RDF calendar (~ iCalendar in RDF)
And in other systemsAnd in other systems Netscape’s Mozilla web browser Open directory (http://dmoz.org/) Adobe products via XMP (eXtensible Metadata Platform)
UMBCUMBCan Honors University in an Honors University in
MarylandMaryland 4141
RDF is not enough, but is a good RDF is not enough, but is a good foundationfoundation
RDF lacks expressive adequacy for many tasksRDF lacks expressive adequacy for many tasks Only range/domain constraints (on properties)Only range/domain constraints (on properties) No properties of properties (transitive, inverse etc.)No properties of properties (transitive, inverse etc.) No equivalence, disjointness, coverings, etc.No equivalence, disjointness, coverings, etc. No necessary and sufficient conditionsNo necessary and sufficient conditions No rules, axioms, logical constraintsNo rules, axioms, logical constraints
DAML+OIL extends RDFDAML+OIL extends RDF Layering makes partial knowledge available to Layering makes partial knowledge available to
applications which only understand RDFapplications which only understand RDF NB: Building on RDF has someNB: Building on RDF has some
disadvantagesdisadvantages
XML
RDF
DAML+OIL
UMBCUMBCan Honors University in an Honors University in
MarylandMaryland 4242
We’re going down a familiar roadWe’re going down a familiar road
KR trendsKR trends
55-65: arbitrary data 55-65: arbitrary data structuresstructures
65-75: semantic 65-75: semantic networksnetworks
75-85: simple frame 75-85: simple frame systemssystems
85-95: description logics85-95: description logics 95-??: logic?, rules?95-??: logic?, rules?
Web trendsWeb trends
95-97: 95-97: XML XML as arbitrary as arbitrary structuresstructures
97-98: 97-98: RDFRDF 98-99: 98-99: RDFSRDFS (schema) (schema)
as a frame-like systemas a frame-like system 00-01: 00-01: DAML+OILDAML+OIL 02-02-??: ??: OWL, OWL, …??...
Only much faster!
UMBCUMBCan Honors University in an Honors University in
MarylandMaryland 4343
DAML+OIL as a Semantic Web DAML+OIL as a Semantic Web LanguageLanguage
DAML = Darpa Agent Markup LanguageDAML = Darpa Agent Markup Language DARPA program with 17 projects & an integrator DARPA program with 17 projects & an integrator
developing language spec, tools, applications for developing language spec, tools, applications for SW.SW.
OIL = Ontology Inference LayerOIL = Ontology Inference Layer An EU effort aimed at developing a layered approach An EU effort aimed at developing a layered approach
to representing knowledge on the web.to representing knowledge on the web.ProcessProcess
Joint Committee: US DAML and EU Semantic Web Joint Committee: US DAML and EU Semantic Web Technologies participants Technologies participants
DAML+OIL specs released 01/01 & 03/01DAML+OIL specs released 01/01 & 03/01 See http://www.daml.org/See http://www.daml.org/ Includes model theoretic and axiomatic Includes model theoretic and axiomatic
semanticssemantics
DAML+OIL
UMBCUMBCan Honors University in an Honors University in
MarylandMaryland 4444
A Simple DAML ExampleA Simple DAML Example
<<rdfs:Class about="#Animal"/>rdfs:Class about="#Animal"/>
<rdfs:Class about="#Plant"><rdfs:Class about="#Plant">
<daml:disjointFrom<daml:disjointFrom resource="#Animal"/> resource="#Animal"/>
</rdfs:Class></rdfs:Class> Note the mixture of RDF (Note the mixture of RDF (plant & animal are classes) plant & animal are classes) and DAMLand DAML (plant (plant
& animal are disjoint)& animal are disjoint) If your cell phone only does RDF, it still understands some of this…If your cell phone only does RDF, it still understands some of this…
UMBCUMBCan Honors University in an Honors University in
MarylandMaryland 4545
DAML+OIL DAML+OIL RDF RDF
DAML+OIL ontology is a set of RDF statementsDAML+OIL ontology is a set of RDF statements DAML+OIL defines semantics for certain statementsDAML+OIL defines semantics for certain statements Does Does NOTNOT restrict what can be said restrict what can be said
Ontology can include arbitrary RDFOntology can include arbitrary RDF But no semantics for non-DAML+OIL statementsBut no semantics for non-DAML+OIL statements
Adds capabilities common to description logics:Adds capabilities common to description logics: cardinality constraints, defined classes (=> classification), cardinality constraints, defined classes (=> classification),
equivalence, local restrictions, disjoint classes, etc.equivalence, local restrictions, disjoint classes, etc.
More support for ontologiesMore support for ontologies Ontology imports ontologyOntology imports ontology
But not (yet) variables, quantification, and But not (yet) variables, quantification, and general rulesgeneral rules
UMBCUMBCan Honors University in an Honors University in
MarylandMaryland 4646
DAML in One SlideDAML in One Slide<<rdf:RDF xmlns:rdf ="http://w3.org/22-rdf-syntax-ns#"rdf:RDF xmlns:rdf ="http://w3.org/22-rdf-syntax-ns#" xmlns:rdfs="http://w3.org/rdf-schema#"xmlns:rdfs="http://w3.org/rdf-schema#" xmlns:daml="http://daml.org/daml+oil#“>xmlns:daml="http://daml.org/daml+oil#“><daml:Ontology rdf:about=""><daml:Ontology rdf:about=""> <daml:imports rdf:resource="http://daml.org/daml+oil"/><daml:imports rdf:resource="http://daml.org/daml+oil"/></daml:Ontology></daml:Ontology><rdfs:Class rdf:ID="Person"><rdfs:Class rdf:ID="Person"> <rdfs:subClassOf rdf:resource="#Animal"/><rdfs:subClassOf rdf:resource="#Animal"/> <rdfs:subClassOf><rdfs:subClassOf> <daml:Restriction><daml:Restriction> <daml:onProperty rdf:resource="#hasParent"/><daml:onProperty rdf:resource="#hasParent"/> <daml:toClass rdf:resource="#Person"/><daml:toClass rdf:resource="#Person"/> </daml:Restriction></daml:Restriction> </rdfs:subClassOf></rdfs:subClassOf> <rdfs:subClassOf><rdfs:subClassOf> <daml:Restriction daml:cardinality="1"><daml:Restriction daml:cardinality="1"> <daml:onProperty rdf:resource="#hasFather"/><daml:onProperty rdf:resource="#hasFather"/> </daml:Restriction> </rdfs:subClassOf> </rdfs:Class></daml:Restriction> </rdfs:subClassOf> </rdfs:Class><Person rdf:about=“http://umbc.edu/~finin/"><Person rdf:about=“http://umbc.edu/~finin/"><rdfs:comment>Finin is a person.</rdfs:comment><rdfs:comment>Finin is a person.</rdfs:comment></Person></Person>
DAML is built on top of XML and RDF
It can be used to add metadata about anything which has a URI.
everything has URI
DAML is ~= a frame based knowledge representation language
It allows the definition, sharing, composition and use of ontologies
URIs are a W3C standard generalizing URLs
UMBCUMBCan Honors University in an Honors University in
MarylandMaryland 4747
DAML-SDAML-S
DAML-S is an ontology for describing DAML-S is an ontology for describing properties and capabilities of web services properties and capabilities of web services
Desiderata:Desiderata: Ease of expressivenessEase of expressiveness Enables automation of service use by Enables automation of service use by
agentsagents Enables reasoning about service Enables reasoning about service
properties and capabilitiesproperties and capabilities Also appropriate for describing services in Also appropriate for describing services in
a mobile/pervasive computing environmenta mobile/pervasive computing environment See http://daml.org/services/See http://daml.org/services/
UMBCUMBCan Honors University in an Honors University in
MarylandMaryland 5050
W3C Web OntologyW3C Web OntologyWorking GroupWorking Group
The WOWG is working on a recommendationThe WOWG is working on a recommendationfor the "Web Ontology Language": for the "Web Ontology Language": OWL OWL
56 Members from 30 W3C Organizations 56 Members from 30 W3C Organizations Companies:Companies: Agfa, Daimler-Chrysler, EDS, Fujitsu, Hewlett- Agfa, Daimler-Chrysler, EDS, Fujitsu, Hewlett-
Packard, IBM, Intel, IVIS, Lucent, Network Inference, Nisus, Packard, IBM, Intel, IVIS, Lucent, Network Inference, Nisus, Nokia, Philips, Stilo, Sun, Unisys Nokia, Philips, Stilo, Sun, Unisys
Public Sector:Public Sector: DISA, Electricite de France, Intelink, INTAP, DISA, Electricite de France, Intelink, INTAP, MITRE, NIST MITRE, NIST
Research projects/Labs:Research projects/Labs: DFKI, FZI, Ibrow group, Stanford, DFKI, FZI, Ibrow group, Stanford, U. Bristol, U. Maryland, U. Southhampton U. Bristol, U. Maryland, U. Southhampton
Invited Experts:Invited Experts: Medical, Digital Library, Defense, Medical, Digital Library, Defense, Technical Technical
CoChairs: Jim Hendler, University of Maryland/MIND; CoChairs: Jim Hendler, University of Maryland/MIND; Guus Schreiber, Univ of Amsterdam/IbrowGuus Schreiber, Univ of Amsterdam/Ibrow
http://www.w3.org/2001/sw/WebOnt/http://www.w3.org/2001/sw/WebOnt/
UMBCUMBCan Honors University in an Honors University in
MarylandMaryland 5252
OWL status and publicationsOWL status and publications
OWL is roughly equivalent to DAML with OWL is roughly equivalent to DAML with some renaming of propertiessome renaming of properties
Current plan is to have three compliance Current plan is to have three compliance levels: OWL lite, OWL, OWL pluslevels: OWL lite, OWL, OWL plus
WebOnt has published WebOnt has published RequirementsRequirements for a Web Ontology Language for a Web Ontology Language Feature Synopsis Feature Synopsis for OWL Lite and OWL for OWL Lite and OWL OWL Web Ontology Language 1.0 OWL Web Ontology Language 1.0 ReferenceReference OWL Web Ontology Language 1.0 Abstract OWL Web Ontology Language 1.0 Abstract
Syntax Syntax (forthcoming) (forthcoming) OWL Guide OWL Guide
UMBCUMBCan Honors University in an Honors University in
MarylandMaryland 5454
KR meets the WebKR meets the Web
One way to think about the semanticOne way to think about the semanticweb is that we are creating a knowledge web is that we are creating a knowledge representation language for the Web.representation language for the Web.
This is more than just selecting an This is more than just selecting an appropriate KR language and selecting an appropriate KR language and selecting an XML encoding.XML encoding.
The Web as an information system has The Web as an information system has many significant properties.many significant properties. Highly distributed Subject to disconnections and other failures Many content providers Partial and inconsistent information Not all info and services can be trusted Dynamic Evolving
UMBCUMBCan Honors University in an Honors University in
MarylandMaryland 5656
SW is work in progressSW is work in progress
There are important language aspects There are important language aspects which need more work: rules, queries, etc.which need more work: rules, queries, etc.
Many tools need to be created, e.g., Many tools need to be created, e.g., Protégé plug-in for DAML+OILProtégé plug-in for DAML+OIL Annotation tools Annotation tools
Applications need to be exploredApplications need to be explored The W3C is developing a new SW languageThe W3C is developing a new SW language
OWL: Ontology Web LanguageOWL: Ontology Web Language SW ideas will migrate into other standards SW ideas will migrate into other standards
(e.g., basic XML, WSDL, .NET)(e.g., basic XML, WSDL, .NET)
UMBCUMBCan Honors University in an Honors University in
MarylandMaryland 5858
Lots of Open IssuesLots of Open Issues How expressive should the KR language be?How expressive should the KR language be? What kind of KR/reasoning system What kind of KR/reasoning system
F.O. logic, fuzzy, …F.O. logic, fuzzy, … On Web OntologiesOn Web Ontologies
One (e.g. CYC) or many (DAML)One (e.g. CYC) or many (DAML) If many, composable (IEEE IFF) or monolithic (IEEE SUMO)If many, composable (IEEE IFF) or monolithic (IEEE SUMO) Will general “upper ontologies” (e.g., IEEE SUO) be useful?Will general “upper ontologies” (e.g., IEEE SUO) be useful?
Will industry buy in?Will industry buy in? Or continue to explore ad hoc XML based solutionsOr continue to explore ad hoc XML based solutions
How will it be used?How will it be used? As markup? As alternative content? Just both machines and As markup? As alternative content? Just both machines and
people?people?
=> Only experimentation will yield answers.=> Only experimentation will yield answers.
?
UMBCUMBCan Honors University in an Honors University in
MarylandMaryland 5959
Conclusions and final thoughtsConclusions and final thoughts
SW might be a chance for us to get SW might be a chance for us to get some AI out of the labsome AI out of the lab Solving the symbol grounding Solving the symbol grounding
problemproblem Rethinking agent communicationRethinking agent communication
How do we get thereHow do we get there
UMBCUMBCan Honors University in an Honors University in
MarylandMaryland 6464
How do we get there from here?How do we get there from here?
This semantic web emphasizes ontologies – This semantic web emphasizes ontologies – their development, use, mediation, their development, use, mediation, evolution, etc.evolution, etc.
It will take some time to really deliver on It will take some time to really deliver on the agent paradigm, either on the Internet the agent paradigm, either on the Internet or in a pervasive computing environment.or in a pervasive computing environment.
The development of complex systems is The development of complex systems is basically an evolutionary process.basically an evolutionary process.
Random search carried out by tens of Random search carried out by tens of thousands of researchers, developers and thousands of researchers, developers and graduate students.graduate students.
UMBCUMBCan Honors University in an Honors University in
MarylandMaryland 6767
So, we should …So, we should …
Start with the simple and move toward the Start with the simple and move toward the complexcomplexE.g., from vocabularies to FOL theoriesE.g., from vocabularies to FOL theories
Develop new capabilitiesDevelop new capabilitiesE.g., rules, trust, negotiation, automatic markup, …E.g., rules, trust, negotiation, automatic markup, …
Allow many ontologies to bloomAllow many ontologies to bloom Let natural evolutionary processes select consensus Let natural evolutionary processes select consensus
ontologies.ontologies. Support diversity in ontologiesSupport diversity in ontologies
Monocultures are unstable, there should be no Monocultures are unstable, there should be no ““TheThe ontology for X”ontology for X” . .
The evolution of powerful, machine readable The evolution of powerful, machine readable ontologies will take many years, maybe ontologies will take many years, maybe generationsgenerationsBut incremental benefits will easily justify the effortBut incremental benefits will easily justify the effort
UMBCUMBCan Honors University in an Honors University in
MarylandMaryland 6868
For more informationFor more information RDFRDF
http://www.w3.org/RDF/http://www.w3.org/RDF/ DAML+OILDAML+OIL
http://www.daml.org/http://www.daml.org/ OWL & W3C’s semantic web activityOWL & W3C’s semantic web activity
http://www.w3.org/2001/sw/http://www.w3.org/2001/sw/ Semantic web linksSemantic web links
http://semanticweb.org/http://semanticweb.org/ Next Semantic Web ConferenceNext Semantic Web Conference
http://iswc.semanticweb.org/http://iswc.semanticweb.org/ October 2003, Sanibel Island, SC.October 2003, Sanibel Island, SC.