1 Making the Web Safe for Agents Tim Finin University of Maryland, Baltimore County Presented at the...
-
Upload
randolf-evelyn-warner -
Category
Documents
-
view
217 -
download
0
Transcript of 1 Making the Web Safe for Agents Tim Finin University of Maryland, Baltimore County Presented at the...
11
Making the Web Making the Web Safe for AgentsSafe for Agents
Tim FininTim FininUniversity of Maryland,University of Maryland,
Baltimore CountyBaltimore County
Presented at the NSF/NSDL workshop on Presented at the NSF/NSDL workshop on scientific markup languages, 14 June 2004scientific markup languages, 14 June 2004
http://ebiquity.umbc.edu/v2.1/resource/html/idhttp://ebiquity.umbc.edu/v2.1/resource/html/id
/32//32/
UMBCUMBCan Honors University in an Honors University in
MarylandMaryland 22
OverviewOverview
The web has made us all smarterThe web has made us all smarterWe need to help software agents benefit We need to help software agents benefit as wellas well
The semantic web has a coherent The semantic web has a coherent approach to knowledge sharingapproach to knowledge sharing
Ontologies are a key enablerOntologies are a key enablerKnowledge sharing isn’t the only Knowledge sharing isn’t the only requirement for better systemsrequirement for better systems
There’s a lot to be explored and triedThere’s a lot to be explored and tried
UMBCUMBCan Honors University in an Honors University in
MarylandMaryland 33
““XML is Lisp's bastard nephew, with XML is Lisp's bastard nephew, with uglier syntax and no semantics. Yet uglier syntax and no semantics. Yet XML is poised to enable the creation XML is poised to enable the creation of a Web of data that dwarfs anything of a Web of data that dwarfs anything since the Library at Alexandria.”since the Library at Alexandria.”
-- Philip Wadler, Et tu XML? The fall of the relational empire, VLDB, Rome, September 2001.
UMBCUMBCan Honors University in an Honors University in
MarylandMaryland 44
““The web has made people smarter. We The web has made people smarter. We need to understand how to use it to make need to understand how to use it to make machines smarter, too.”machines smarter, too.”
-- Michael I. Jordan, paraphrased from a talk at AAAI, July 2002 by Michael Jordan (UC Berkeley)
UMBCUMBCan Honors University in an Honors University in
MarylandMaryland 55
““The Semantic Web will The Semantic Web will globalize globalize KRKR, just as the , just as the WWW globalize hypertextWWW globalize hypertext””
-- Tim Berners-Lee, M.I.T.
UMBCUMBCan Honors University in an Honors University in
MarylandMaryland 66
““The multi-agent systems The multi-agent systems paradigm and the web both paradigm and the web both emerged around 1990. One emerged around 1990. One has succeeded beyond has succeeded beyond imagination and the other imagination and the other has not yet made it out of has not yet made it out of the lab.”the lab.”
-- Anonymous, 2001
UMBCUMBCan Honors University in an Honors University in
MarylandMaryland 77
OntologieOntologiess
UMBCUMBCan Honors University in an Honors University in
MarylandMaryland 99
What’s an ontology?What’s an ontology?-- In Philosophy ---- In Philosophy --
Branch of metaphysics dealing with the nature of Branch of metaphysics dealing with the nature of beingbeing
““Ontology” is from the Greek Ontology” is from the Greek ontosontos for being and for being and logoslogos for word for word
An ontology is a theory ofAn ontology is a theory ofwhat existswhat exists
It lets us experience, operateIt lets us experience, operatein, and talk about the worldin, and talk about the world
As Plato put it, we need toAs Plato put it, we need to“carve nature at its joints”“carve nature at its joints”
Successful communicationSuccessful communicationrequires a shared ontologyrequires a shared ontology
Aristotle described an ontology Aristotle described an ontology of basic categories of predicates of basic categories of predicates to des-cribe the world (Sowa, to des-cribe the world (Sowa, after Bren-tano)after Bren-tano)
UMBCUMBCan Honors University in an Honors University in
MarylandMaryland 1010
What’s an ontology?What’s an ontology?-- in Information Systems ---- in Information Systems --
An explicit formal specification of how to An explicit formal specification of how to represent the objects, concepts and other domain represent the objects, concepts and other domain entities and relationships among them.entities and relationships among them.
Common examples: UML diagrams, Data Common examples: UML diagrams, Data dictionaries, DB schema, Conceptual Schemas, dictionaries, DB schema, Conceptual Schemas, API descriptions, Knowledge Bases, etc. API descriptions, Knowledge Bases, etc.
Ontologies provide an abstract conceptualization Ontologies provide an abstract conceptualization of information to be represented and a of information to be represented and a vocabulary of terms to use in the representation. vocabulary of terms to use in the representation.
Interoperability between two systems requires Interoperability between two systems requires them to share a common ontology.them to share a common ontology.
UMBCUMBCan Honors University in an Honors University in
MarylandMaryland 1111
Conceptual schemas as Conceptual schemas as ontologiesontologies
Databases are Databases are opaqueopaque
Typical DB schemas Typical DB schemas don’t help muchdon’t help much
Conceptual schemas Conceptual schemas gives intended gives intended meaning of concepts meaning of concepts used in a DBused in a DB
We assume they We assume they “bottom out” on “bottom out” on common ontologies common ontologies “understood” by the “understood” by the programs involvedprograms involved
If not, we fail to If not, we fail to capture the meaningcapture the meaning
139 74.50140 77.60… …
Table: price *stockNo: integer; cost: float
AutoProduct
Ontology
ProductOntology
Units &MeasuresOntology
price(x, y) => (x’, y’) [auto_part(x’) & part_no(x’) = x & retail_price(x’, y’, Value-Inc) & magnitude(y’, US_dollars) = y]
UMBCUMBCan Honors University in an Honors University in
MarylandMaryland 1212
Implicit vs. Explicit OntologiesImplicit vs. Explicit Ontologies
Systems which communicate or cooperate Systems which communicate or cooperate must share an ontologymust share an ontology
The shared ontology can be The shared ontology can be implicitimplicit or or explicitexplicit
Implicit ontology are common and typically Implicit ontology are common and typically rep-resented only by procedures and data rep-resented only by procedures and data structures structures
Explicit ontologies are (ideally) given a Explicit ontologies are (ideally) given a declarative representation in a well defined declarative representation in a well defined knowledge representation (KR) languageknowledge representation (KR) language
Explicit ontologies enable tools and programs Explicit ontologies enable tools and programs to (partially) understand descriptions in to (partially) understand descriptions in ontologies if they understand the KR language.ontologies if they understand the KR language.
UMBCUMBCan Honors University in an Honors University in
MarylandMaryland 1313
Conceptualizations, VocabulariesConceptualizations, Vocabulariesand Axiomitizationand Axiomitization
Three important aspects to explicit ontologiesThree important aspects to explicit ontologies Conceptualization: Conceptualization: modeling domain in terms modeling domain in terms
of objects, attributes and relations.of objects, attributes and relations. Vocabulary:Vocabulary: assigning symbols or terms to assigning symbols or terms to
refer to those objects, attributes and relations.refer to those objects, attributes and relations. Axiomitization:Axiomitization: encoding rules and constraints encoding rules and constraints
to capture significant aspects of the domain to capture significant aspects of the domain model.model.
Ontologies for the same domain may differ in Ontologies for the same domain may differ in any or all of these three levels.any or all of these three levels.
UMBCUMBCan Honors University in an Honors University in
MarylandMaryland 1616
Little and Big OntologiesLittle and Big Ontologies
Ontologies come in all sizes but there does seem Ontologies come in all sizes but there does seem to be a split between those that like them huge to be a split between those that like them huge and those that prefer small composable ones.and those that prefer small composable ones.
Small ontologies include: Dublin Core, FOAF, etc.Small ontologies include: Dublin Core, FOAF, etc. Some large, general ontologies are freely Some large, general ontologies are freely
available:available: Cyc - Cyc - Original general purpose ontology Original general purpose ontology OntoSem OntoSem – UMBC’s lexical KR system and ontology– UMBC’s lexical KR system and ontology WordNetWordNet - a large, on-line lexical reference system - a large, on-line lexical reference system World Fact Book -- World Fact Book -- 5Meg of KIF sentences of geo-political facts5Meg of KIF sentences of geo-political facts UMLSUMLS - NLM’s Unified Medical Language System - NLM’s Unified Medical Language System SUMOSUMO – Standard Upper Merged Ontology – Standard Upper Merged Ontology
2020
The The Semantic Semantic
WebWeb
UMBCUMBCan Honors University in an Honors University in
MarylandMaryland 2323
Semantic web languages Semantic web languages todaytoday
Today there are a few languages for the Today there are a few languages for the semantic web, with more to come semantic web, with more to come (probably)(probably)
The RDF family:The RDF family: RDF RDF – Resource Description Framework– Resource Description Framework
http://www.w3.org/RDF/http://www.w3.org/RDF/ DAML+OILDAML+OIL – Darpa Agent Markup – Darpa Agent Markup
Language http://www.daml.org/Language http://www.daml.org/ 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 species, not based on RDFanother species, not based on RDF
Deprecated Deprecated
UMBCUMBCan Honors University in an Honors University in
MarylandMaryland 2424
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
RDF is a simple language for building graph based representations
UMBCUMBCan Honors University in an Honors University in
MarylandMaryland 2525
The RDF Data ModelThe RDF Data Model An RDF document is an unordered collection of An RDF document is an unordered collection of
statements, each with a statements, each with a subjectsubject, , predicatepredicate and and objectobject (aka (aka triplestriples))
A triple can be thought of as a labelled arc in a A triple can be thought of as a labelled arc in a graphgraph
Statements describe properties of web resources A resource is any object that can be pointed to by
a URI: a document, a picture, a paragraph on the Web, … E.g., http://umbc.edu/~finin/cv.html a book in the library, a real person (?) isbn://5031-4444-3333 …
Properties themselves are also resources (URIs)
UMBCUMBCan Honors University in an Honors University in
MarylandMaryland 2626
URIs are a foundationURIs are a foundation URI = URI = Uniform Resource IdentifierUniform Resource Identifier
"The generic set of all names/addresses that are short strings "The generic set of all names/addresses that are short strings that refer to resources"that refer to resources"
URLs (Uniform Resource Locators) are a subset of URIs, used URLs (Uniform Resource Locators) are a subset of URIs, used for resources that can be for resources that can be accessedaccessed on the web on the web
URIs look like “normal” URLs, often with fragment URIs look like “normal” URLs, often with fragment identifiers to point to a document part:identifiers to point to a document part: http://foo.com/bar/mumble.html#pitchhttp://foo.com/bar/mumble.html#pitch
URIs are unambiguous, unlike natural language termsURIs are unambiguous, unlike natural language terms the web provides a global the web provides a global namespacenamespace Assumption: references to the same URI are to the Assumption: references to the same URI are to the
same thingsame thing
UMBCUMBCan Honors University in an Honors University in
MarylandMaryland 2727
The RDF GraphThe RDF Graph
An RDF document is an unordered An RDF document is an unordered collection of triplescollection of triples
The subject of one triple can be the The subject of one triple can be the object of anotherobject of another
So the result is aSo the result is adirected, labelleddirected, labelledgraphgraph
A triple’s object canA triple’s object canalso be a literal,also be a literal,e.g., a string.e.g., a string.
UMBCUMBCan Honors University in an Honors University in
MarylandMaryland 2828
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 2929
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 3030
N triple representationN triple representationRDF can be encoded as a set of RDF can be encoded as a set of triplestriples. .
<<subjectsubject> <> <predicatepredicate> <> <objectobject> .> .So we get these seven triples:So we get these seven triples:
<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 “blank node” _:j10949Note the gensym for the “blank node” _:j10949
UMBCUMBCan Honors University in an Honors University in
MarylandMaryland 3131
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> becoming:<subject> <predicate> <object> becoming:
<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 queried in a Triples are easily stored and queried in a DBMSDBMS Flat nature of a triple a good match for relational DBsFlat nature of a triple a good match for relational DBs
; Note: we’re not ; showing the actual ; URIs for clarity
UMBCUMBCan Honors University in an Honors University in
MarylandMaryland 3232
A usecase: FOAFA usecase: FOAF
FOAF (Friend of a Friend) is a simple ontology to describe FOAF (Friend of a Friend) is a simple ontology to describe people and their social networks.people and their social networks. See the foaf project page: http://www.foaf-project.org/See the foaf project page: http://www.foaf-project.org/
We recently crawled the web and discovered over We recently crawled the web and discovered over 1,000,000 valid RDF FOAF files.1,000,000 valid RDF FOAF files. Most of these are from the http://liveJournal.com/ blogging Most of these are from the http://liveJournal.com/ blogging
system which encodes basic user info in foafsystem which encodes basic user info in foaf See http://apple.cs.umbc.edu/semdis/wob/foaf/See http://apple.cs.umbc.edu/semdis/wob/foaf/
<foaf:Person><foaf:name>Tim Finin</foaf:name><foaf:mbox_sha1sum>2410…37262c252e</foaf:mbox_sha1sum><foaf:homepage rdf:resource="http://umbc.edu/~finin/" /><foaf:img rdf:resource="http://umbc.edu/~finin/images/passport.gif" />
</foaf:Person>
UMBCUMBCan Honors University in an Honors University in
MarylandMaryland 3333
FOAF: why RDF? FOAF: why RDF? Extensibility!Extensibility!
FOAF vocabulary provides 50+ basic terms for FOAF vocabulary provides 50+ basic terms for making simple claims about people making simple claims about people
FOAF files can use other RDF terms too: RSS, FOAF files can use other RDF terms too: RSS, MusicBrainz, Dublin Core, Wordnet, Creative MusicBrainz, Dublin Core, Wordnet, Creative Commons, blood types, starsigns, … Commons, blood types, starsigns, …
RDF guarantees freedom of independent extensionRDF guarantees freedom of independent extension OWL provides fancier data-merging facilities OWL provides fancier data-merging facilities
Result:Result: Freedom to say what you like, using any Freedom to say what you like, using any RDF markup you want, and have RDF crawlers RDF markup you want, and have RDF crawlers merge your FOAF documents with other’s and merge your FOAF documents with other’s and know when you’re talking about the same entities. know when you’re talking about the same entities.
After Dan Brickley, [email protected]
UMBCUMBCan Honors University in an Honors University in
MarylandMaryland 3434
No free lunch!No free lunch!
Consequence:Consequence: We must plan for lies, mischief, mistakes, We must plan for lies, mischief, mistakes,
stale data, slanderstale data, slander Dataset is out of control, distributed, Dataset is out of control, distributed,
dynamicdynamic Importance of knowing who-said-what Importance of knowing who-said-what
Anyone can describe anyoneAnyone can describe anyone We must record data provenanceWe must record data provenance Modeling and reasoning about trust is criticalModeling and reasoning about trust is critical
Legal, privacy and etiquette issues emergeLegal, privacy and etiquette issues emerge Welcome to the real worldWelcome to the real world
After Dan Brickley, [email protected]
UMBCUMBCan Honors University in an Honors University in
MarylandMaryland 3535
RDF is being used!RDF is being used! RDF has a solid specificationRDF has a solid specification RDF is being used in a number of web standardsRDF is being used in a number of web standards
CC/PPCC/PP (Composite Capabilities/Preference Profiles) (Composite Capabilities/Preference Profiles) P3PP3P (Platform for Privacy Preferences Project) (Platform for Privacy Preferences Project) RSSRSS (RDF Site Summary) (RDF Site Summary) RDF CalendarRDF Calendar (~ iCalendar in RDF) (~ iCalendar in RDF)
And in other systemsAnd in other systems Netscape’s Mozilla web browserNetscape’s Mozilla web browser Open directory (http://dmoz.org/)Open directory (http://dmoz.org/) Adobe products via XMP (eXtensible Metadata Platform)Adobe products via XMP (eXtensible Metadata Platform) Web communities: Web communities: LiveJournalLiveJournal, , EcademyEcademy, and , and CocologCocolog.. We’ve found over 1.6M RDF documents on the web.We’ve found over 1.6M RDF documents on the web.
UMBCUMBCan Honors University in an Honors University in
MarylandMaryland 3636
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 rangeconstraints on propertiesconstraints on properties
Several widely usedSeveral widely usedKB 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• Imports and exports RDF and OWL• See http://protege.stanford.edu/
UMBCUMBCan Honors University in an Honors University in
MarylandMaryland 3838
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 RDFS supports simple inferencesinferences
An RDF ontology plus some RDFAn RDF ontology plus some RDFstatements may imply additional RDFstatements may imply additional RDFstatements.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
Is RDF(S) better than XML?Is RDF(S) better than XML?
Q: For a specific application, should I use XML or Q: For a specific application, should I use XML or RDF? RDF?
A: It depends… A: It depends… XML's model is XML's model is
a tree, i.e., a strong hierarchy a tree, i.e., a strong hierarchy applications may rely on hierarchy positionapplications may rely on hierarchy position relatively simple syntax and structure relatively simple syntax and structure not easy to not easy to combinecombine trees trees
RDF's model is RDF's model is a a looseloose collections of relations collections of relations applications may do “database”-like search applications may do “database”-like search not easy to recover hierarchy not easy to recover hierarchy easy to combine relations in one big collection easy to combine relations in one big collection great for the integration of heterogeneous information great for the integration of heterogeneous information
UMBCUMBCan Honors University in an Honors University in
MarylandMaryland 4343
Problems with RDFSProblems with RDFS RDFS RDFS too weaktoo weak to describe resources in to describe resources in
sufficient detail, e.g.: sufficient detail, e.g.: No No localised range and domainlocalised range and domain constraints constraints
Can’t say that the range of hasChild is person when applied Can’t say that the range of hasChild is person when applied to persons and elephant when applied to elephantsto persons and elephant when applied to elephants
No No existence/cardinalityexistence/cardinality constraints constraints Can’t say that all Can’t say that all instancesinstances of person have a mother that is of person have a mother that is
also a person, or that people have exactly 2 parentsalso a person, or that people have exactly 2 parents No No transitive, inverse or symmetricaltransitive, inverse or symmetrical properties properties
Can’t say that isPartOf is a transitive property, that hasPart Can’t say that isPartOf is a transitive property, that hasPart is the inverse of isPartOf or that touches is symmetricalis the inverse of isPartOf or that touches is symmetrical
OWL is layered atop RDFS to provide these OWL is layered atop RDFS to provide these and other features.and other features.
UMBCUMBCan Honors University in an Honors University in
MarylandMaryland 4545
W3C’s Web Ontology Language W3C’s Web Ontology Language (OWL)(OWL)
DAML+OIL begat OWL.DAML+OIL begat OWL. OWL released as W3C recommendation 2/10/04OWL released as W3C recommendation 2/10/04 See http://www.w3.org/2001/sw/WebOnt/ for See http://www.w3.org/2001/sw/WebOnt/ for
OWL overview, guide, specification, test cases, OWL overview, guide, specification, test cases, etc. etc.
Three layers of OWL are defined of decreasing Three layers of OWL are defined of decreasing levels of complexity and expressiveness levels of complexity and expressiveness OWL FullOWL Full is the whole thing is the whole thing OWL DLOWL DL (Description Logic) introduces (Description Logic) introduces
restrictionsrestrictions OWL LiteOWL Lite is an entry level language is an entry level language
intended to be easy to understandintended to be easy to understandand implementand implement
OWL
UMBCUMBCan Honors University in an Honors University in
MarylandMaryland 4646
OWL OWL RDF RDF An OWL ontology is a set of RDF statementsAn OWL ontology is a set of RDF statements
OWL defines semantics for certain statementsOWL defines semantics for certain statements Does Does NOTNOT restrict what can be said -- documents can include restrict what can be said -- documents can include
arbitrary RDFarbitrary RDF But no OWL semantics for non-OWL statementsBut no OWL semantics for non-OWL 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 ontology, versioning, …Ontology imports ontology, versioning, …
But not (yet) variables, quantification, & rulesBut not (yet) variables, quantification, & rules A complete OWL reasoning is significantly more A complete OWL reasoning is significantly more
complex than a complete RDFS reasoner.complex than a complete RDFS reasoner.
UMBCUMBCan Honors University in an Honors University in
MarylandMaryland 4848
Tools for RDF(S) and OWLTools for RDF(S) and OWL ValidatorsValidators to check syntax, identify language & to check syntax, identify language &
level, ...level, ... VisualizerVisualizer to draw graphs, UML diagrams, etc. to draw graphs, UML diagrams, etc. APIsAPIs to parse XML or N3, import ontologies, draw to parse XML or N3, import ontologies, draw
inferences, materialize model as set of triples, …inferences, materialize model as set of triples, … Editors Editors that create, modify, browse ontologies & KBsthat create, modify, browse ontologies & KBs ReasonersReasoners for heavy duty reasoners for OWL for heavy duty reasoners for OWL Markup toolsMarkup tools help authors add SW annotations to help authors add SW annotations to
other documentsother documents Query languages Query languages designed for SW languagesdesigned for SW languages Database systemsDatabase systems for storing SW content and for storing SW content and
answering queries about itanswering queries about it
UMBCUMBCan Honors University in an Honors University in
MarylandMaryland 4949
ApplicatioApplicationsns
UMBCUMBCan Honors University in an Honors University in
MarylandMaryland 5050
Two kinds of systemsTwo kinds of systems
RDF is being used to support many RDF is being used to support many practical, useful applicationspractical, useful applications E.g., RSS, CCPP, P3P, FOAF toolsE.g., RSS, CCPP, P3P, FOAF tools
RDF, and OWL are being RDF, and OWL are being experimented with in many research experimented with in many research prototypesprototypes We’ll describe some research at UMBCWe’ll describe some research at UMBC
SWAD-Europe survey: SWAD-Europe survey: http://www.w3.org/2003/11/SWApplSurveyhttp://www.w3.org/2003/11/SWApplSurvey lists more than 50 applications in 12 categories… lists more than 50 applications in 12 categories…
UMBCUMBCan Honors University in an Honors University in
MarylandMaryland 5151
RSSRSSRich Site Summary Rich Site Summary or RDF Site or RDF Site SummarySummary
A lightweight A lightweight multipurpose multipurpose extensible metadata extensible metadata description & description & syndication format syndication format for the webfor the webnews & other news & other headline syndicationheadline syndication
weblog syndicationweblog syndicationpropagation of propagation of software update lists. software update lists.
<channelrdf:about="http://agents.umbc.edu/awchannel.rdf">
<title>UMBC AgentWeb</title> <link>http://agents.umbc.edu/</link> <description>UMBC
AgentWeb...</description> <language>en-us</language> <copyright>copyright...</copyright> <managingEditor>Tim...</managingEditor> <pubDate> Mon ... </pubDate> <lastBuildDate> Mon ... </lastBuildDate> <webMaster>[email protected]</webmaster> <rating>(PICS-1.1 ... </rating> <image rdf:resource="http:..." /><items><rdf:Seq>...</rdf:Seq></items></channel><image> <title>UMBC AgentWeb</title> <url>http://agents...</url> <link>http://agents.umbc.edu/</link> <width>46</width> <height>66</height></image><item rdf:about="http:..."> <title>UDDIe</title> <link>http://...</link> <description>the ...</item></rdf:RDF>
UMBCUMBCan Honors University in an Honors University in
MarylandMaryland 5252
ITTALKSITTALKS• ITTALKS ITTALKS is a database driven webis a database driven web
site of IT related talks at UMBC andsite of IT related talks at UMBC andother institutions. The database other institutions. The database contains information oncontains information on– Seminar eventsSeminar events– People (speakers, hosts, users, …)People (speakers, hosts, users, …)– Places (rooms, institutions, …)Places (rooms, institutions, …)
• Web pages with DAML markup are generatedWeb pages with DAML markup are generated• The DAML markup supports agent-based The DAML markup supports agent-based
services relating to these talks.services relating to these talks. Users get talk announcements based on the Users get talk announcements based on the
interests, locations and schedules.interests, locations and schedules.
http://ittalks.org/
UMBCUMBCan Honors University in an Honors University in
MarylandMaryland 5353
humanview
UMBCUMBCan Honors University in an Honors University in
MarylandMaryland 5454
machineview
UMBCUMBCan Honors University in an Honors University in
MarylandMaryland 5555
http://ebiquity.umbc.edu/http://ebiquity.umbc.edu/
Our research group’s Our research group’s web site generate web site generate both HTML and OWL.both HTML and OWL.
HOW?HOW? This is This is relatively easy since relatively easy since the content is in a the content is in a database.database.
PHP is sufficient for PHP is sufficient for the job.the job.
HTML pages have HTML pages have links to corresponding links to corresponding OWLOWL
WHY?WHY? This exposes This exposes the information to the information to programs and agents programs and agents – no more web – no more web scraping.scraping.
56UMBCUMBCan Honors University in an Honors University in
MarylandMaryland
Travel Agent Game in Agentcities
http://taga.umbc.edu/
TechnologiesFIPA (JADE, April Agent Platform)
Semantic Web (RDF, OWL)
Web (SOAP,WSDL,DAML-S)
Internet (Java Web Start )
FeaturesOpen Market FrameworkAuction ServicesOWL message contentOWL OntologiesGlobal Agent Community
Acknowledgements: DARPA contract F30602-00-2-0591 and Fujitsu Laboratories of America.Students: Y. Zou, L. Ding, H. Chen, R. Pan. Faculty: T. Finin, Y. Peng, A. Joshi, R. Cost. 4/03
MotivationMarket dynamicsAuction theory (TAC)Semantic webAgent collaboration (FIPA & Agentcities)
Travel Agents
Auction Service Agent
Customer Agent
Bulletin BoardAgent
Market Oversight Agent
Request
Direct Buy
Report Direct Buy Transactions
BidBid
CFP
Report Auction Transactions
Report Travel Package
Report Contract
Proposal
Web Service Agents
Ontologieshttp://taga.umbc.edu/ontologies/
travel.owl – travel concepts
fipaowl.owl – FIPA content lang.
auction.owl – auction services
tagaql.owl – query language
FIPA platform infrastructure services, including directory facilitators enhanced to use DAML-S for service discovery
UMBCUMBCan Honors University in an Honors University in
MarylandMaryland 5757
What What comes comes next?next?
UMBCUMBCan Honors University in an Honors University in
MarylandMaryland 5858
On the Research FrontierOn the Research Frontier Developing useful upper ontologiesDeveloping useful upper ontologies
For time, space, web services, …For time, space, web services, … Some standard problemsSome standard problems
Ontology alignment and mapping, learning ontologies, Ontology alignment and mapping, learning ontologies, automating markup, …automating markup, …
Extending OWLExtending OWL Adding rules, uncertainty, query languages, …Adding rules, uncertainty, query languages, …
Integrating informationIntegrating information Representing and using provenance, trust, …Representing and using provenance, trust, …
Integrations withIntegrations with Agents, web services,Agents, web services, information retrieval, …information retrieval, …
Efficient toolsEfficient tools Good applicationsGood applications
59UMBCUMBCan Honors University in an Honors University in
MarylandMaryland
Swoogle is a crawler based search & retrieval system for semantic web documents (SWDs) in RDF, Owl and DAML. It discovers SWDs and computes their metadata and relations, and stores them in an IR system.
Contributors include Tim Finin, Anupam Joshi, Yun Peng, R. Scott Cost, Jim Mayfield, Joel Sachs, Pavan Reddivari, Vishal Doshi, Rong Pan, Li Ding, and Drew Ogle. Partial research support was provided by DARPA contract F30602-00-0591 and by NSF by awards NSF-ITR-IIS-0326460 and NSF-ITR-IDM-0219649. 20 May 2004.
http://swoogle.umbc.edu/
Ontologydiscovery
Ontologydiscovery
Webinterface
Webinterface
DB SWDcrawler
SWDcrawler WeWe
bb
WeWebb
OntologyAnalyzer
OntologyAnalyzer
OntologyAgentsOntologyAgentsOntologyAgentsOntology
AgentsOntologydiscovery
Ontologydiscovery Google
Apache/Tomcat
php, myAdmin
Apache/Tomcat
php, myAdmin
mySQL
Jena Jena
IRengine
IRengine
SIRE
Webservices
Agentservices
cachedfiles
FocusedCrawler
FocusedCrawler
APIs
Swoogle uses two kinds of crawlers to discover semantic web documents and several analysis agents to compute metadata and relations among documents and ontologies. Metadata is stored in a relational DBMS.
SWD RankA SWD’s rank is a function of its type (SWO/SWI) and the rank and types of the documents to which it’s related.
SWD Properties
SWOs
SWIs
HTMLdocuments
Images
CGI scripts
Audiofiles
Videofiles
The web, like Gaul, is divided into three parts: the regular web (e.g. HTML), Seman- tic Web Ontologies (SWOs), and Semantic Web Instance files (SWIs)
SWD = SWO + SWI
Binary: R(D1,D2)• IM: D1 owl:imports D2• IMstar: transitive closure of IM• EX: D1 extends D2 by defining classes or properties subsumed by D2’s
• PV: owl:priorVersion & subproperties• TM: D1 uses terms from D2• IN: D1 uses individual defined in D2• MAP: D1 maps some of its terms to D2’s• SIM: D1 & D2 are similar• EQ: D1 & D2 are identical• EQV: D1 & D2 have the same triplesTernary: R(D1,D2,D3) • MP3: D1 maps a term from D2 to D3 using owl:sameClass, etc.
SWD Relations
Language and level; encoding, number of triples, defined classes, defined properties, & defined individuals; type (SWO, SWI); form (RSS, FOAF, P3P, …); rank; weight; annotations; …
Swoogle puts documents into a character n-gram based IR engine to compute document similarity and do retrieval from queries
Swoogle v1 has ~12K SWDs & 100K relations. v2 will also catalog classes and properties and their metadata and have >1.6M SWDs.
SWD IR Engine
60UMBCUMBCan Honors University in an Honors University in
MarylandMaryland
Knowledge Discovery in the Semantic WebSEMDIS
NSF award ITR-IIS-0325464 U. Georgia, Sheth (PI), Arpinar (CO-PI), Kochut, Miller NSF award ITR-IIS-0325172 UMBC, Joshi (PI), Yesha (CO-PI), Finin
June 2004
ObjectiveDesign, prototype and evaluate a system supporting the discovery, indexing and querying of complex semantic relationships in the Semantic Web. The system maintains and utilizes trust and provenance
information to enhance the relationship discovery.
ApproachKnowledge representation systems reason over sem-antic web content discovered on the web which is re-duced to triples that can be efficiently stored and pro-cessed in relational databases. Trust models and heuristics guide the formation of conclusions
Broader impactsTechniques and prototypes developed can be applied to a range of problems, including discovering new connections and relations in scientific information and homeland security.
SWETO is large ontology covering several test-bed domains. It is pop-ulated with 800K instances and 1.M relations extracted from heterogeneous Web sources. SWETO was developed using Semagix Freedom system.
An experimental algorithm has been developed to integrate and rank discovered relationships.
Reference foaf:Agent
rdf:Statementselects
Justification TrustBelief
Association
contains
foaf:Document
rdf:Resourcefoaf:page
DocumentRelation
xsd:real [0,1]AssociationConnectiveconfidence
connective
source
A “web of belief” model and associated ontology is used to represent, integrate, and evaluate conclusions drawn from the large volume of heterogeneous assertions found in the data.
http://lsdis.cs.uga.edu/Projects/SemDis http://semdis.umbc.edu/
A. Joshi
L. Ding
H. Chen
P. Kolari
F. Perich
Y. Yesha
J. Golbeck
J. Hendler
Kagal
sink
hub
source
island
Finin A. Joshi
Ding
Chen
Kagal
Perich
Golbeck’s Trust Network
DBLP Network
FOAF Network
A. Sheth
M. P. Singh
Y. Peng
6
15
1
28
T. Finin
mapTo
knows
knows
knows
6161
Research support was provided by NSF, award NSF-ITR-IIS-0326460, PI Tim Finin, UMBC.
SPIRESPIRE Semantic Prototypes in Research EcoinfomaticsSemantic Prototypes in Research Ecoinfomatics
ApproachWe are building prototype tools and applications that demonstrate how semantic web technology supports infor-mation discovery, integration and sharing in scientific com-munities. The National Biological Information Infrastructure (NBII) and Invasive Species Forecasting System (ISFS) pro-vide requirements and serve as testbeds for our prototypes.
Significant Results• SWOOGLE - a search engine for the semantic web.• MoaM (Meal of a Meal) - Given a species list, infer a food web.• Photostuff - annotate regions of a picture with OWL.• SWOOP - the first ontology editor written specifically for OWL.• Ontologies for ecological interaction, and observation data.• Food web visualization and analysis tools that are driven by OWL
ontologies and instance data. • CRISIS CAT - an RDF based catalog of Invasive Species
resources in California. • Coordination with USGS, NASA, EPA, GBIF, and the
Intergovernmental, Interagency Cooperation on Ecoinformatics.
Broader Impacts• Enable knowledge from one community to be effectively
used by another.• Harness the power of the citizen scientist. (The majority of
invasives are discovered by amateurs.)• Integrate research and education in the classroom.
Research TeamUMBC ebiquity (Finin) UC Davis ICE (Quinn)UMBC GEST Center (Sachs) RMBL PEaCE (Martinez)UMD MINDSWAP (Hendler) NASA GSFC (Schnase)
The RMBL team expresses food webs in OWL using an ontology for eco-logical interaction they have constructed in coordination with other ecolo-gists. The OWL model drives the simulation and visualization.
Spatial distribution of exotic plants at the Cerro Grande fire site. The statistical techniques used to generate these maps do not take trophic data as input. Yet.
Swoogle is a crawler based search and retrieval system for semantic web doc-uments (SWDs) in RDF and OWL. It discovers SWDs and computes their metadata and relations, and stores them in an IR system. Users can search for ontologies or instance data, and hits are ranked according to our Ontology Rank algorithm.
Invasive species do more economic damage to the U.S. every year that all other natural disasters combined. Above: plants, animals, and a virus.
An ontology (found via Swoogle) is loaded into Photostuff to mark up regions of a field photograph.
The NBII California Information Node (CAIN), maintained by UC Davis, is a jumping off point to broader NBII deployment.
Coming Soon• ELVIS – an end to end application that starts with a location
and produces a model of its food web.
• The Pond Project - a junior high school classroom activity to monitor the health of local ecosystems.
• Enhanced tools.
Spire is a distributed, interdisciplinary research project exploring how semantic web technology supports information discov-ery, integration, and sharing in scientific communities. We are building prototype tools and applications for inclusion in the
National Biological Information Infrastructure (NBII), with a focus on the early detection and warning of invasive species.
Meal of a Meal (after Friend of a Friend). We know Fish 1 eats Plant 1. We then infer that Fish 1 may also eat the taxonomic siblings of Plant 1: Plants 2 and 3. Similarly, we infer that the taxonomic siblings of Fish 1 - Fishes 2 and 3 - may eat Plant 1.
UMBCUMBCAN HONORS UNIVERSITY IN MARYLAND
UMBCUMBCan Honors University in an Honors University in
MarylandMaryland 6262
ClosinClosingg
UMBCUMBCan Honors University in an Honors University in
MarylandMaryland 6464
Agents do not live by logic aloneAgents do not live by logic alone
RDF and OWL are based in a RDF and OWL are based in a knowledge/logic modelknowledge/logic model
As a computer scientist, I have to admit As a computer scientist, I have to admit that this is only appropriate for that this is only appropriate for representing and reasoning about *some* representing and reasoning about *some* informationinformation
So, agents should probably live in a world So, agents should probably live in a world populated with objects, procedures, DBs, populated with objects, procedures, DBs, XML, topic maps, RDF, etc.XML, topic maps, RDF, etc.
UMBCUMBCan Honors University in an Honors University in
MarylandMaryland 6565
IS RDF the right foundation?IS RDF the right foundation?
Not everyone likes using RDF as the Not everyone likes using RDF as the foundation for a KB compatible markup foundation for a KB compatible markup languagelanguage Graph-based representations have well known Graph-based representations have well known
problemsproblems The semantics of RDF also constrains higher layers The semantics of RDF also constrains higher layers
like OWLlike OWL Basing a language like OWL or a rule language Basing a language like OWL or a rule language
like RuleML directly on XML is an alternativelike RuleML directly on XML is an alternative IMHO, the train has left the station, it’s a IMHO, the train has left the station, it’s a
pretty good train, and it’s got momentum. We pretty good train, and it’s got momentum. We should see if it makes it up the hill before should see if it makes it up the hill before starting on a new onestarting on a new one
UMBCUMBCan Honors University in an Honors University in
MarylandMaryland 6767
Solving the symbol grounding Solving the symbol grounding problemproblem
The web may become a common world The web may become a common world that both humans and agents can that both humans and agents can understand.understand.
Confession: the web is more familiar and Confession: the web is more familiar and real to me than much of the real world.real to me than much of the real world.
Physical objects can be tagged with low Physical objects can be tagged with low cost (e.g., $0.05) transponders or RFIDs cost (e.g., $0.05) transponders or RFIDs encoding their URIsencoding their URIs
See HP’s Cooltown projectSee HP’s Cooltown projecthttp://cooltown.com/http://cooltown.com/
UMBCUMBCan Honors University in an Honors University in
MarylandMaryland 6969
Rethinking the agent communicationRethinking the agent communication
A possible new paradigm?A possible new paradigm? Agents “publish” beliefs, requests, and other Agents “publish” beliefs, requests, and other
“speech acts” on web pages.“speech acts” on web pages. Brokers “search” for and “index” published Brokers “search” for and “index” published
contentcontent Agents “discover” what peers have Agents “discover” what peers have
published on the web and browse for more published on the web and browse for more detailsdetails
Agents “speak for” content on web pages byAgents “speak for” content on web pages by Answering queries about themAnswering queries about them Accepting comments and assertions about themAccepting comments and assertions about them
UMBCUMBCan Honors University in an Honors University in
MarylandMaryland 7070
How do we get there from How do we get there from here?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 time to deliver on the intelligent It will take time to deliver on the intelligent agent paradigm, either on the Internet or in agent paradigm, either on the Internet or in a pervasive computing environment.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.
As long as some incremental benefits As long as some incremental benefits accrue, the process is worth it accrue, the process is worth it
UMBCUMBCan Honors University in an Honors University in
MarylandMaryland 7373
So, we should …So, we should …
Start with the simple and move toward the Start with the simple and move toward the complexcomplex E.g., from vocabularies to FOL theoriesE.g., from vocabularies to FOL theories
Allow many ontologies to bloomAllow many ontologies to bloom Let natural evolutionary processes select the most Let natural evolutionary processes select the most
useful as common consensus ontologies.useful as common consensus ontologies. Support diversity in ontologiesSupport diversity in ontologies
Monocultures are unstableMonocultures are unstable There should be no THE ONTOLOGY FOR X.There should be no THE 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 generationsgenerations Incremental benefits will more than pay for effortIncremental benefits will more than pay for effort