TU/e technische universiteit eindhoven Assignment 1 If failed try: –Electronically: BSCW –Physically: MailBox outside HG7.75 –More info: 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 technische universiteit eindhoven Semantic Web ‘History’ XML ( ) RDF ( ) RDFS ( ) OWL ( ) 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 technische universiteit eindhoven Semantic Web Tools (2) 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 technische universiteit eindhoven End-user Functionality 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 technische universiteit eindhoven End-user Functionality(2) 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 technische universiteit eindhoven End-user Functionality (3) 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 – SWeDE (Eclipse plug-in) – Stanford API (Melnik) –
TU/e technische universiteit eindhoven Reasoners Racer – FaCT++ – Pellet – Cwm –
TU/e technische universiteit eindhoven Semantic Web Query HP Jena – –RDQL Sesame – –SeRQL, RQL, RDQL, (SPARQL plug-in) Kowari – –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 “An massively scalable, transaction-safe, purpose-built database or the storage and retrieval of metadata.” Kowari
TU/e technische universiteit eindhoven Editors and Visualizers Protégé – SWOOP – KAON – 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 technische universiteit eindhoven RDF Site Summary (RSS) 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:
TU/e technische universiteit eindhoven End-User Applications (1) RDF Calender – Adobe XMP – Photostuff – SMORE – Piggy Bank –
TU/e technische universiteit eindhoven End-User Applications (2) Haystack – FOAF – MusicBrainz / AudioScrobbler – 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 technische universiteit eindhoven Adobe Photoshop - XMP
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 Dan Brickley danbri danbri_2002 A+ en Save the world and home in time for tea. Dean Jackson
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 PCSMIL
TU/e technische universiteit eindhoven HPG - Presentation on different devices HTML for PDAWML
TU/e technische universiteit eindhoven Examples of Techniques
TU/e technische universiteit eindhoven Semantic Search ‘All papers written by prof. Houben between 2000 and 2004’
TU/e technische universiteit eindhoven Current Search Engines 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 technische universiteit eindhoven Reasoning Example (2) {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 technische universiteit eindhoven Reasoning Example (3) {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 technische universiteit eindhoven Information Sharing
TU/e technische universiteit eindhoven
TU/e technische universiteit eindhoven