Title: Semantic Context Specification
1Semantic Context Specification
- April 28, 2004
- Amit Nanda, Reiman Rabbani, Maciej Janik
2Introduction
- Context What is it?
- Semantic context.
- Benefits from having a context ?
3Example Hotel check-in
- David
- business trip
- has to get up at 7am
- does not like AC
- has to watch CNN finance news
- teetotaller
- Robert
- leisure trip
- can sleep till 9am
- likes to have cool room
- watches Sports
- likes to drink champaign
4Example Hotel check-in
David
default room settings
alarm set at 7am AC turned off TV starts with
CNN non-alcoholic drinks in fridge
default room settings
alarm set at 9am AC turned to 70 F TV starts with
Sport channel champaign in fridge
default room settings
Robert
5Context f( task, ontology, data )
Our Proposed Model
6Context TASK
- Operation that has to be performed.
- Goal to accomplish.
- Assumption Task has to be application specific
for best results. - Example Task travel. On expedia.com and on
amazon.com, results differ.
7Context DATA
- Vast store of information, covering different
domains, a part of which constitutes the end
result for user task. - In semantic web, all data corresponds to real
world objects and objects have different types of
relations between each other - Denoted in the form of triples, encoded as graphs
in RDF files.
8Context ONTOLOGY
- Specification of a conceptualization.
- Can be visualized as skeleton or framework for
the data. - Specified by OWL or DAML-OIL.
- Assumption a task that needs to be executed,
should have a well defined ontology.
Gruber, T.R. A Translation Approach to Portable
Ontology Specifications. 1993.
9Profile Ontology Dynamic Profile Update
- Profile as an ontology
- Assumption Everything in the ontology is a
universally defined object - When new object are required the ontology and
relationships of that object can be downloaded - User profile may or may not be updated.
- If task is executed using the users context,
profile is updated based on rules settings. - If users profile has no information regarding
task and if its still executed, profile is
updated using current results. - Profile is not updated if task is not executed
10Profile Ontology
11Profile Ontology
lt?xml version"1.0"?gt ltrdfRDF
xmlns"http//a.com/ontology"
xmlnsrdf"http//www.w3.org/1999/02/22-rdf-syntax
-ns" xmlnsrdfs"http//www.w3.org/2000/01/rd
f-schema" xmlnsowl"http//www.w3.org/2002/0
7/owl" xmlbase"http//a.com/ontology"gt
ltowlOntology rdfabout""/gt ltowlClass
rdfID"Historical_data"gt ltrdfssubClassOfgt
ltowlClass rdfabout"Temporal_data"/gt
lt/rdfssubClassOfgt lt/owlClassgt ltowlClass
rdfID"Address"gt ltrdfssubClassOfgt
ltowlClass rdfabout"Spatial_Enviroment"/gt
lt/rdfssubClassOfgt lt/owlClassgt ltowlClass
rdfID"Private_address"gt ltrdfssubClassOf
rdfresource"Address"/gt lt/owlClassgt
ltowlClass rdfID"Interests"gt
ltrdfssubClassOfgt ltowlClass
rdfabout"Preferences"/gt lt/rdfssubClassOfgt
lt/owlClassgt ltowlClass rdfID"Business_addre
ss"gt ltrdfssubClassOf rdfresource"Address"/
gt lt/owlClassgt ltowlClass rdfID"Privacy_rule
s"gt ltrdfssubClassOfgt ltowlClass
rdfabout"Rules"/gt lt/rdfssubClassOfgt
12 Context
Context sensitive results
Questions .
Task Application
User Application
Task
Answers .
Profile Data
13Camera Ontology
14Camera Ontology - sample
- ltrdfRDFgt
- ltowlOntologygt
- ....
- ltMoney rdfID"Eos_body_price"gt
- ltcurrencygt550lt/currencygt
- lt/Moneygt
- ltBody rdfID"Canon_Eos"gt
- ltcost rdfresource"Eos_body_price"/gt
- lt/Bodygt
- ltDigital rdfID"Olympus_Camedia_C2040"gt
- ltcostgt
- ltMoney rdfID"Olympus_price"gt
- ltcurrencygt500lt/currencygt
- lt/Moneygt
- lt/costgt
- lt/Digitalgt
- ltMoney rdfID"Zeiss_price"gt
- ltcurrencygt450lt/currencygt
- lt/Moneygt
15Example of camera context ...
buy camera
my cameras ...
User App
Merchant App
cameras to offer personalized view
profile query what cameras do you have ?
ltMoney rdfID"Eos_body_price"gt
ltcurrencygt550lt/currencygt lt/Moneygt ltBody
rdfID"Canon_Eos"gt ltcost rdfresource"Eos_b
ody_price"/gt lt/Bodygt ltDigital
rdfID"Olympus_Camedia_C2040"gt ltcostgt
ltMoney rdfID"Olympus_price"gt
ltcurrencygt500lt/currencygt lt/Moneygt
lt/costgt lt/Digitalgt ltMoney rdfID"Zeiss_price"
gt ltcurrencygt450lt/currencygt lt/Moneygt ltSLR
rdfID"Canon_Eos_10"gt ltbody
rdfresource"Canon_Eos"/gt lt/SLRgt ltLens
rdfID"Zeiss"gt ltcompatibleWith
rdfresource"Canon_Eos"/gt ltcost
rdfresource"Zeiss_price"/gt lt/Lensgt
ltMoney rdfID"Eos_body_price"gt
ltcurrencygt550lt/currencygt lt/Moneygt ltBody
rdfID"Canon_Eos"gt ltcost rdfresource"Eos_b
ody_price"/gt lt/Bodygt ltDigital
rdfID"Olympus_Camedia_C2040"gt ltcostgt
ltMoney rdfID"Olympus_price"gt
ltcurrencygt500lt/currencygt lt/Moneygt
lt/costgt lt/Digitalgt ltMoney rdfID"Zeiss_price"
gt ltcurrencygt450lt/currencygt lt/Moneygt ltSLR
rdfID"Canon_Eos_10"gt ltbody
rdfresource"Canon_Eos"/gt lt/SLRgt ltLens
rdfID"Zeiss"gt ltcompatibleWith
rdfresource"Canon_Eos"/gt ltcost
rdfresource"Zeiss_price"/gt lt/Lensgt
what is a camera ?
P R O F I L E
Context
KnowledgeBase
InventoryDB
Camera Ontology
16Security Issues
- Greater the details provided by user application
from users profile, better the result. - But the user application is required not to
provide user details regarding salary, SSN, bank
account etc - This is a constraint or drawback.
17Conclusions
- In our model, context is created on application
side, using information provided by user or
profile. - Specialized application is able to create a
better context, than general user application.
18Conclusions
- Because of the vastness of application areas,
difficult to categorize them into definite
types. - Generalization of context is difficult and not
always feasible. - It is not possible to create a unified context
that suits every need.
19Conclusions
- Profile may grow to enormous proportions
(including vast amount of information) and become
hard to manage. - Security issues may arise, because of complexity
of data. - Excessive transparency of profile will lead to
abuse by malicious applications - Sensitive information can be inferred and rules
can be bypassed by use of circular logic by
dishonest programmers - Future work apply this model of context to
different applications.
20Questions?