TU/e
technische universiteit eindhoven
Assignment 1
• If e-mail failed try:
– Electronically: BSCW
– Physically: MailBox outside HG7.75
– More info:
http://wwwis.win.tue.nl/~houben/wis/
• Deadline extended to today until 23:59
TU/e
technische universiteit eindhoven
Semantic Web Applications
Kees van der Sluijs
TU/e
technische universiteit eindhoven
Contents
•
•
•
•
•
Introduction
Utilization of the Semantic Web
Selection of Developer Tools
Selection of End-User Applications
Examples of Techniques
TU/e
technische universiteit eindhoven
Introduction
TU/e
technische universiteit eindhoven
Why Semantic Web?
•
You have seen some Whats and Hows
–
But what can you do with it?
TU/e
technische universiteit eindhoven
Proposed Benefits
•
•
•
•
•
•
Information Standardization
Flexibility
Semantic Interoperability
More Collaboration
Backward and Forward compatibility
Greater (re-)use of off-the-shelf software
TU/e
technische universiteit eindhoven
Utilization of the Semantic Web
TU/e
Semantic Web ‘History’
technische universiteit eindhoven
•
•
•
•
•
XML (1996-2004)
RDF (1997-2004)
RDFS (1998-2004)
OWL (2002-2004)
SPARQL (2004- ?)
• However Description Logics since 1985
TU/e
technische universiteit eindhoven
Sorts of Applications
• Developer Tools
– In order to create, query, visualize and validate
Semantic Web Data
– Semantic Web tools are critically important for its
success
• End-user applications
– Should give instance benefit to providing semantically
enriched data
– Should be natural; hiding SW techniques and data
structures
TU/e
technische universiteit eindhoven
Semantic Web Tools
• Creation Tools
– E.g. Editors, Webforms, etc
– Wrapping of existing data formats
– Natural language extraction, Machine learning, etc
• APIs
– For seamless integration of Semantic Web data
structures in different programming languages
• Transformation tools
– For exchange of data between applications and users
– E.g. CSS for HTML and XSL(T) for XML
TU/e
Semantic Web Tools (2)
technische universiteit eindhoven
• Visualization tools
– Visualization of complex graph-structure
– Displaying / hiding details
• Reasoning
– Combining information on the Semantic Web can
provide new information
– OWL provides Description Logic
• Enables First-Order-Logic reasoning with languages like
Prolog
TU/e
End-user Functionality
technische universiteit eindhoven
• Information Sharing
– Information need not be communicated to
every application that uses the same info
– Communication, syntactic and semantic
interoperability
• Collaborative filtering,
– Recommendation systems, pattern
discovery, self-information
TU/e
End-user Functionality(2)
technische universiteit eindhoven
• Data integration
– Create consistent view (e.g. a homogenous
presentation) over heterogeneous data-sources
– Adapt data to context
• Personalization
– Propagation of personalization to different
applications
– Social Networking
TU/e
End-user Functionality (3)
technische universiteit eindhoven
• Searching and Retrieval of Data
– Not just keywords, query properties and
relationships between concepts
– SQL power for the Web!
• Reasoning
– Infer new information
– Take natural language into account (e.g.
synonyms, homonyms, antonyms, etc)
– Decision Support
TU/e
technische universiteit eindhoven
Selection of Developer Tools
TU/e
technische universiteit eindhoven
APIs
•
HP Jena
–
•
Sesame
–
•
http://www.openrdf.org/
SWeDE (Eclipse plug-in)
–
•
(http://jena.sourceforge.net/index.html)
http://owl-eclipse.projects.semwebcentral.org/
Stanford API (Melnik)
–
http://www-db.stanford.edu/~melnik/rdf/api.html
TU/e
technische universiteit eindhoven
Reasoners
•
Racer
–
•
FaCT++
–
•
http://owl.man.ac.uk/factplusplus/
Pellet
–
•
http://www.racer-systems.com/index.phtml
http://www.mindswap.org/2003/pellet/index.shtml
Cwm
–
http://www.w3.org/2000/10/swap/doc/cwm.html
TU/e
technische universiteit eindhoven
Semantic Web Query
•
HP Jena
–
–
•
Sesame
–
–
•
http://jena.sourceforge.net/index.html
RDQL
http://www.openrdf.org/
SeRQL, RQL, RDQL, (SPARQL plug-in)
Kowari
–
–
http://www.kowari.org/
iTQL
TU/e
technische universiteit eindhoven
Sesame
“Sesame is an open source RDF database with support for RDF Schema inferencing and querying.”
TU/e
technische universiteit eindhoven
Kowari
“An massively scalable, transaction-safe, purpose-built database or the storage and retrieval of metadata.”
TU/e
Editors and Visualizers
technische universiteit eindhoven
•
Protégé
–
•
SWOOP
–
•
http://www.mindswap.org/2004/SWOOP/
KAON
–
•
http://protege.stanford.edu/
http://kaon.semanticweb.org/
EROS
–
wwwis.win.tue.nl/~hera/
TU/e
technische universiteit eindhoven
TU/e
technische universiteit eindhoven
TU/e
technische universiteit eindhoven
TU/e
technische universiteit eindhoven
TU/e
technische universiteit eindhoven
TU/e
technische universiteit eindhoven
TU/e
technische universiteit eindhoven
TU/e
technische universiteit eindhoven
TU/e
technische universiteit eindhoven
Selection of End-User Applications
TU/e
RDF Site Summary (RSS)
technische universiteit eindhoven
• News publishing mechanism
• RSS-aggregators
– Collect different RSS (and XML) ‘feeds’
– Enables uniform, personalized view on
heterogeneous data-sources
• Different incompatible versions exist
– (Rich Site Summary, Really Simple
Syndication, Atom, etc)
TU/e
technische universiteit eindhoven
RDF in Mozilla
• Smart Browsing and Related Links
– Displaying data from RDF-database by using Stylesheets (XUL)
• Aurora
– Integrate all your stuff in a Web browser
• Flash Panel
– Collect important information from various sources (e.g. mail, IM,
RSS-feeds, etc)
• Enabling Inference
– Using Prolog. Applications: Inter-schema mappings, Reasoning about
user preferences and profiles, Advanced mail-filtering
Ref: http://www.mozilla.org/rdf/doc/
TU/e
End-User Applications (1)
technische universiteit eindhoven
• RDF Calender
– http://www.ilrt.bris.ac.uk/discovery/2001/02/calendar/
• Adobe XMP
– http://www.adobe.com/products/xmp/main.html
• Photostuff
– http://www.mindswap.org/2003/PhotoStuff/
• SMORE
– http://www.mindswap.org/2005/SMORE/
• Piggy Bank
– http://simile.mit.edu/piggy-bank/
TU/e
End-User Applications (2)
technische universiteit eindhoven
• Haystack
– http://simile.mit.edu/hayloft/index.html
• FOAF
– http://www.foaf-project.org/
• MusicBrainz / AudioScrobbler
– http://musicbrainz.org/, http://www.last.fm/
• Hera
– http://wwwis.win.tue.nl/~hera
TU/e
technische universiteit eindhoven
Rdf-Calendar
• EventDiscovery
– How do I find and share RDF calendar documents?
• CalendarScraping
– Importing data from other formats
• TravelTools, PathCross
– Automatically plan routes based on appointments
• Planning and negotiation
– Automatically search for possibilities for appointments and
meetings
• AnnounceOMatic
– Subscribe to particular kind of events, e.g. conferences
TU/e
technische universiteit eindhoven
Adobe XMP
TU/e
Adobe Photoshop - XMP
technische universiteit eindhoven
TU/e
technische universiteit eindhoven
Photostuff
TU/e
technische universiteit eindhoven
TU/e
technische universiteit eindhoven
Piggy bank (1)
• FireFox plugin
• Brings Semantic Web in Web-browsering
• Consists of different steps
–
–
–
–
–
–
Collect Data
Search and Browse
Pinpoint locations on a map
Tag Information
Combined data
Share Data
TU/e
technische universiteit eindhoven
TU/e
technische universiteit eindhoven
TU/e
technische universiteit eindhoven
Haystack (1)
• Semantic Web browser
– “Present Semantic Web data in a integrated
and human presentable way”
TU/e
technische universiteit eindhoven
TU/e
technische universiteit eindhoven
Friend Of A Friend
TU/e
technische universiteit eindhoven
<Person rdf:nodeID="danbri">
<foaf:name>Dan Brickley</foaf:name>
<foaf:nick>danbri</foaf:nick>
<foaf:jabberID>[email protected]</foaf:jabberID>
<foaf:aimChatID>danbri_2002</foaf:aimChatID>
<mbox rdf:resource="mailto:[email protected]"/>
<uranai:bloodtype xmlns:uranai="http://kota.s12.xrea.com/vocab/uranai" >
A+</uranai:bloodtype>
<srw:srw>en</srw:srw>
<homepage rdf:resource="http://rdfweb.org/people/danbri/"/>
<foaf:dateOfBirth>1972-01-09</foaf:dateOfBirth>
<foaf:img rdf:resource="http://rdfweb.org/people/danbri/2000/01/01/Image1.gif"/>
<plan>Save the world and home in time for tea.</plan>
<knows>
<Person> <name>Dean Jackson</name>
<rdfs:seeAlso rdf:resource="http://www.grorg.org/dean/foaf.rdf"/>
</Person>
</knows>
</Person>
TU/e
technische universiteit eindhoven
TU/e
technische universiteit eindhoven
TU/e
technische universiteit eindhoven
Hera Presentation Generator (HPG)
CM
(Domain model)
AM
(Navigation structure)
Profile
(User and platform
characteristics)
CMI
(Input data)
PM
(Layout and style)
Presentation
(Web pages)
TU/e
technische universiteit eindhoven
HPG - Presentation in Browsers
HTML for PC
SMIL
TU/e
technische universiteit eindhoven
HPG - Presentation on different devices
HTML for PDA
WML
TU/e
technische universiteit eindhoven
Examples of Techniques
TU/e
technische universiteit eindhoven
Semantic Search
Paper
Houben
am
e
Type
N
• ‘All papers written by
prof. Houben between
2000 and 2004’
WrittenBy
Pu
bli
ca
Fu
n
tio
n
Ye
ar
cti
on
Prof.
2002
TU/e
Current Search Engines
technische universiteit eindhoven
• Query expression power
– Only match words
– No relations between query elements
• Not all data is in the document (metadata)
• Only searches flat text (HTML,pdf,txt, etc)
– Multimedia files only if imbedded in document with
surrounding text (works poorly)
– Structure cannot be exploited to increase expression
power
TU/e
technische universiteit eindhoven
Exploiting Semantics
• Not only exact structure queries
– You do not know the structure you search on
– Relevant source structures are heterogeneous
• Use semantics to get more relevant results
– Include similar Classes
• E.g. subClassOf, EquivalentClass, etc
– Search Equivalent constructs
– Process Language variations
• E.g. Synonyms, Homonyms, Polysemy
TU/e
technische universiteit eindhoven
Reasoning
• Reasoning support is important for
– checking the consistency of the ontology and the
knowledge
– checking for unintended relationships between classes
– automatically classifying instances in classes
• Checks like the preceding ones are valuable for
– designing large ontologies, where multiple authors are
involved
– integrating and sharing ontologies from various
sources
TU/e
technische universiteit eindhoven
Reasoning Example
• Terminology (or T-Box)
– Murder  Crime  : Fraud
– Murderer  commit.Murder
– Accountantcommit.Crimecommit.Fraud
• Assertions (or A-Box)
– Oswald: Criminal
– KennedyAssassination: Murder
– (Oswald, KennedyAssassination): commited
TU/e
technische universiteit eindhoven
Expansion Rules
Ref: Baader, Sattler 2000
TU/e
Reasoning Example (2)
technische universiteit eindhoven
{Murder  Crime   Fraud , Murderer  commit.Murder ,
Accountant  commit.Crime commit.Fraud}
• Satisfiability (or consistency)
– Recursively apply expansion rules
– Stop when no more rules applicable or clash occurs
• Clash is an obvious contradiction, e.g., A(x)  : A(x)
• Concept unsatisfialibity: Murder  Fraud = .
• Subsumption
– Represents the is-a relation
– Check if for all instances i holds that A.i  B.i
• Subsumption: Murderer  Accountant
TU/e
Reasoning Example (3)
technische universiteit eindhoven
{Oswald: Criminal, KennedyAssassination: Murder,
(Oswald, KennedyAssassination): commited}
• Consistency
– Check instances against model
– E.g. additional assertion {Oswald:Accountant} would
result in contradiction.
• Instance Checking
– Check if for all occurences instances i holds that i  A
– E.g. Oswald  Murderer
TU/e
Information Sharing
technische universiteit eindhoven
TU/e
technische universiteit eindhoven
Application
Dependent
A
Mapping Module
generates
r
t-f
o
Instance a
User Dependent
Schema B
generates
Instance Mapping
maps-from
r
isin
o
t-f
pu
pu
is-instance-of
A+B
in
is-
Schema A
Schema Mapping
B
is-instance-of
maps-to
Instance b
TU/e
technische universiteit eindhoven
Descargar

Semantic Web Tools