Title: Semantic Web Research @ UMBC
1Semantic Web Research _at_ UMBC
Dr. Yelena Yesha
2About the Semantic Web
- An extension to the present World Wide Web.
- The focus is on enabling computing machines to be
able to reason about web information in addition
to display web information. - NOTE displaying information does not necessarily
require deep understanding of the information. - NOTE in order to reason about information often
requires deep understanding of the information.
3The Current Web
(adopted from Eric Millers presentation
http//www.w3.org/2004/Talks/0120-semweb-umich/)
- Resource
- Identified by URIs
- Untyped
- Links
- href, src
- non-descriptive
- Users
- Exciting world - semanticsof resource, however,
gleanedfrom content - Machine
- Very little information available - significance
of the links only evident fromthe context around
the anchor
4The Semantic Web
(adopted from Eric Millers presentation
http//www.w3.org/2004/Talks/0120-semweb-umich/)
- Resource
- Globally identified by URIsor locally scoped
(blank) - Extensible
- Relational
- Links
- Identified by URIs
- Extensible
- Relational
- Users
- Even more exciting world, richeruser experience
- Machine
- More processable informationis available (Data
Web)
5The Semantic Web Layer Cake
The Semantic Web will globalize KR, just as the
WWW globalize hypertext -- Tim Berners-Lee
we arehere
6Semantic Web Ontologies
- Formally, an ontology is an explicit
specification of a conceptualization. - For the developers, building ontologies is about
defining shared vocabularies and associated
semantic relations - SonyEricsson T68i is a type of cellphone
- All SonyEricsson T68i supports Bluetooth
- Harry has a SonyEricsson T68i device
- gt Harrys cellphone supports Bluetooth.
7Semantic Web Languages
- KR languages for defining ontologies
- W3C Recommendations
- RDF/RDFS -- represents information as N-Triples
(subject, predicate, object) supports basic
class-subclass properties. - OWL (Web Ontology Language) -- adds more vocab.
for describing classes and properties,
cardinality, equality, XML datatypes,
enumerations etc.
http//www.w3.org/2001/sw/
8Semantic Web Research - UMBC
- Team
- Tim Finin
- Anupam Joshi
- Yelena Yesha
- Yun Peng
- 12 Ph.D, 10 M.S students
- Selected Projects
- Swoogle
- Semantic Discovery
- Rei Policies for the Semantic Web
- CoBrA
9An indexing and retrieval engine for the Semantic
Web
10Concepts and Motivation
- Google has made us all smarter
- Software agents will need something similar
tomaximize the use of information on the
semantic web.
11Concepts and Motivation
- Semantic web researchers need to understandhow
people are using the concepts languagesand
might want to ask questions like - What graph properties does the semantic web
exhibit? - How many OWL files are there?
- Which are the most popular ontologies?
- What are all the ontologies that are about time?
- What documents use terms from the ontology
http//daml.umbc.edu/ontologies/cobra/0.4/agent ? - What ontologies map their vocabulary to
http//reliant.teknowledge.com/DAML/SUMO.owl ?
12Concepts and Motivation
- Semantic web tools may need to find ontologies on
a given topic or similar to another one.
- UMCPs SMORE annotation editor helps a user add
annotations to a text document, an image, or a
spreadsheet. - It suggests ontologies and terms that may be
relevant to express the users annotations. - How can it find relevant ontologies?
13Example Queries and Services
- What documents use/are used (directly/indirectly)
by ontology X? - Monitor any ontology used by document X (directly
or indirectly) for changes - Find ontologies that are similar to http//
- Let me browse ontologies w.r.t. the
scienceTopics topic hierarchy. - Find ontologies that include the strings time
day hour before during date after temporal event
interval - Show me all of the ontologies used by the
National Cancer Institute
14http//swoogle.umbc.edu/
15SWOOGLE2 Architecture
SWOOGLE 2
Human users
Web Server
SwoogleStatistics
OntologyDictionary
SwoogleSearch
service
Intelligent Agents
Web Service
IR analyzer
SWD analyzer
analysis
SWD Metadata
SWD Cache
digest
SWD Reader
The Web
Candidate URLs
discovery
Web Crawler
16Ontology Dictionary
17Swoogle Statistics
18Semantic Discovery
19Semantic Discovery(2)
20Rei Polices for Open, Distributed and Dynamic
Systems
21Its policies all the way down
1 A robot may not injure a human being, or,
through inaction, allow a human being to come to
harm. 2 A robot must obey the orders given it by
human beings except where such orders would
conflict with the First Law. 3 A robot must
protect its own existence as long as such
protection does not conflict with the First or
Second Law. - Handbook of Robotics, 56th Edition,
2058 A.D.
22Its policies all the way down
- In Asimovs world, the robots didnt always
strictly follow their policies - Unlike traditional hard coded rules like DB
access control OS file permissions - Autonomous agents need policies as norms of
behavior to be followed to be good citizens - So, its natural to worry about
- How agents governed by multiple policies can
resolve conflicts among them - How to deal with failure to follow policies
sanctions, reputation, etc. - Whether policy engineering will be any easier
than software engineering
1 A robot may not injure a human being, or,
through inaction, allow a human being to come to
harm. 2 A robot must obey the orders given it by
hu-man beings except where such orderswould
conflict with the First Law. 3 A robot must
protect its own existence as long as such
protection does not conflict with the First or
Second Law. - Handbook of Robotics, 56th Edition,
2058 A.D.
23Our Approach
- Policies are useful at virtually all levels
- OS, networking, data management, applications
- Declarative policies guide the behavior of
entities in open, distributed environments - Positive negative authorizations obligations
- Focused on domain actions
- Policies are based on attributes of the action
(and its actor and target) and the general
context not just on their identity of the actor
24Rei Policy Language
- Developed several versions of Rei, a policy
specification language, encoded in (1) Prolog,
(2) RDFS, (3) OWL - Used to model different kinds of policies
- Authorization for services
- Privacy in pervasive computing and the web
- Conversations between agents
- Team formation, collaboration maintenance
- The OWL grounding enables policies that reason
over SW descriptions of actions, agents, targets
and context
25Rei Policy Language
- Rei is a declarative policy language for
describing policies over actions - Reasons over domain dependent information
- Currently represented in OWL logical variables
- Based on deontic concepts
- Permission, Prohibition, Obligation, Dispensation
- Models speech acts
- Delegation, Revocation, Request, Cancel
- Meta policies
- Priority, modality preference
- Policy engineering tools
- Reasoner, IDE for Rei policies in Eclipse
26Rei Specifications (partial)
27Applications past, present future
- Coordinating access in supply chain management
system - Authorization policies in a pervasive computing
environment - Policies for team formation, collaboration,
information flow in multi-agent systems - Security in semantic web services
- Privacy and trust on the Internet
- Privacy in pervasive computing environments
1999
2002
2003
2004
28Example Security and Trust forSemantic Web
Services
- Semantic web services are web services described
using OWL-S - Policy-based security infrastructure
- Advantages of using policies
- Expressive -- can be over descriptionsof
requester, service context - Authorization Rules for access control
- Privacy Rules for protecting information
- Confidentiality Cryptographiccharacteristics of
informationexchanged
Policies Semantic Web Services
29Example policies
- Authorization
- Policy 1 Stock service not accessible after
market closes - Policy 2 Only LAIT lab members who are Ph.D.
students can use the LAIT lab laser printer - Privacy/Confidentiality
- Policy 3 Do not disclose my my SSN
- Policy 4 Do not disclose my home address or
facts from which it could be easily discovered - Policy 5 Do not use a service that doesnt
encrypt all input/output - Policy 6 Use only those services that required
an SSN if it is encrypted
30Example
- Mary is looking for a reservation service
- foaf description
- Confidentiality policy
- BravoAir is a reservation service
- OWL-S description
- Authorization policy
- Only users belonging to the same project as John
can access the service
31Mary
- lt!-- Mary's FOAF description --gt
- ltfoafPerson rdfID"mary"gt
- ltfoafnamegtMary Smithlt/foafnamegt
- ltfoaftitlegtMslt/foaftitlegt
- ltfoaffirstNamegtMarylt/foaffirstNamegt
- ltfoafsurnamegtSmithlt/foafsurnamegt
- ltfoafhomepage rdfresource"http//www.somewebsi
te.com/marysmith.html"/gt - ltfoafcurrentProject rdfresource"
http//www.somewebsite.com/SWS-Project.rdf "/gt - ltswspolicyEnforced rdfresource"maryConfident
alityPolicy"/gt - lt/foafPersongt
- lt/rdfRDFgt
32Bravo Policy
- ltentityVariable rdfabout"bravo-policyvar1"/gt
- ltentityVariable rdfabout"bravo-policyvar2"/gt
- ltconstraintSimpleConstraint
- rdfabout"bravo-policyGetJohnProject"
- constraintsubject"johnJohn"
- constraintpredicate"foafcurrentProject"
- constraintobject"bravo-policyvar2"/gt
- ltconstraintSimpleConstraint
- rdfabout"bravo-policySameProjectAsJohn"
- constraintsubject"bravo-policyvar1"
- constraintpredicate"foafcurrentProject"
- constraintobject"bravo-policyvar2"/gt
- lt!-- constraints combined --gt
- ltconstraintAnd rdfabout"bravo-policyAndCondit
ion1" - constraintfirst"bravo-policyGetJohnPro
ject" - constraintsecond"bravo-policySameProje
ctAsJohn"/gt
- ltdeonticRight rdfabout"bravo-policyAccessRigh
t"gt - ltdeonticactor rdfresource"bravo-policyvar1"/
gt - ltdeonticaction rdfresource"bravo-serviceBrav
oAir_ReservationAgent"/gt - ltdeonticconstraint rdfresource"bravo-policyA
ndCondition1"/gt - lt/deonticRightgt
-
- ltrdfDescription rdfabout"bravo-serviceBravoAi
r_ReservationAgent"gt - ltswspolicyEnforced rdfresource"bravo-policyA
uthPolicy"/gt - lt/rdfDescriptiongt
33How it works
BravoAirWeb service
Mary
URL to foaf desc query request
ltswspolicyEnforced rdfresource
"bravo-policyAuthPolicy"/gt
Matchmaker Reasoner
Bravo Service OWL-S Desc
34How it works
Marys query Bravo Service ? YES
Extract Bravos policy
Does Mary meets Bravos policy ?
- ltdeonticRight rdfabout"bravo-policyAccessRigh
t"gt - ltdeonticactor rdfresource"bravo-policyvar1"/
gt - ltdeonticaction rdfresource"bravo-serviceBrav
oAir_ReservationAgent"/gt - ltdeonticconstraint rdfresource"bravo-policyA
ndCondition1"/gt - lt/deonticRightgt
- ltpolicyGranting rdfabout"bravo-policyAuthGran
ting"gt - ltpolicyto rdfresource"bravo-policyvar1"/gt
- ltpolicydeontic rdfresource"bravo-policyAcces
sRight"/gt - lt/policyGrantinggt
- ltswsAuthorizationPolicy rdfabout"bravo-policy
AuthPolicy"gt - ltpolicygrants rdfresource"bravo-policyAuthGr
anting"/gt - lt/swsAuthorizationPolicygt
- ltrdfDescription rdfabout"bravo-serviceBravoAi
r_ReservationAgent"gt - ltswspolicyEnforced rdfresource"bravo-policyA
uthPolicy"/gt - lt/rdfDescriptiongt
Authorization enforcement complete
ltconstraintSimpleConstraint rdfabout
"bravo-policyGetJohnProject
constraintsubject"johnJohn"
constraintpredicate"foafcurrentProject"
constraintobject"bravo-policyvar2"/gt var2
http//www.somewebsite.com/SWS-Project.rdf
BravoAirWeb service
Mary
ltfoafcurrentProject rdfresource
"http//www.somewebsite.com/SWS-Project.rdf"/gt
ltconstraintSimpleConstraint
rdfabout"bravo-policySameProjectAsJohn"
constraintsubject"bravo-policyvar1"
constraintpredicate"foafcurrentProject"
constraintobject"bravo-policyvar2"/gt Is the
constraint true when var2 http//www.somewebsit
e.com/SWS-Project.rdfvar1 http//www.cs.umbc.ed
u/lkagal1/rei/examples/sws-sec/MaryProfile.rdf
35What we learned
- Declarative policies can be used to model
security, trust and privacy constraints - Reasonably expressive policy languages can be
encoded on OWL - This enables policies to depend on attributes and
context information available on the semantic web - Policies are applicable at almost every level of
the stack, from systems and networking to
multiagent applications.
36Context Broker Architecture(CoBrA)
37Context Broker Architecture
Pervasive Computing
Semantic Web
CoBrA
Software Agents
CoBrA not CORBA!
38A Birds Eye View of CoBrA
39Key Features of CoBrA
- Using OWL to define ontologies for context
modeling and reasoning - Taking a rule based approach to interpret and
reason about context - Using a policy language and engine to control the
sharing of user context
40An EasyMeeting Scenario
41An EasyMeeting Scenario
42Research Work in CoBrA
Context Reasoner
PrivacyProtection
CoBrA Ontologies
EasyMeeting Prototype
43The CoBrA Ontology (v0.4)
http//daml.umbc.edu/ontologies/cobra/0.4/
44Example Location Inference
- Goal reason about a persons location using the
available sensing information. - gt Step 1 define a domain spatial ontology
45A Simple UMBC Ontology
46Location Inference
Assume the broker is told that Harry is located
in RM-201A
47Location Inference
A the used spatial relations are
rdfssubProeprtyOf the inRegion property
B inRegion is of type Transitive Property
Based on A B gt
48Other Projects
49Credits - Current Students
- Harry Chen
- Li Ding
- Sasikanth Avancha
- Pranam Kolari
- Anand Patwardhan
- Rong Pan
- Zhongli Ding
- Olga Ratsimore
- Srikanth Kallurkar
- Sethuram Balaji Kodeswaran
- Jim Parker
- Joel Sachs
- Mathew Baker
- Mohinder Chopra
- Vishal C Doshi
- Shashidhara Ganjugunte
- Abhishek Gujar
- Viral Parekh
- Pavan Reddivari
- Anubhav Sonthalia
- Rong Yu