Doktorandenkolloquium Universität Passau

Slides:



Advertisements
Ähnliche Präsentationen
Architektur eines Human-Task-Service
Advertisements

interaktiver Web Service Workflows
Web-Content-Management-Systeme
Stefan Lohrum Konrad-Zuse-Zentrum für Informationstechnik Berlin (ZIB)
Stefan Kurz und Marius Podwyszynski
ServiceGlobe: Flexible and Reliable Web Service Execution Markus Keidl, Stefan Seltzsam und Alfons Kemper Universität Passau Fakultät für Mathematik und.
JDataSet & Persistenz Layer
Universität Rostock Fakultät für Informatik und Elektrotechnik Institut für Informatik, Lehrstuhl DBIS Albert-Einstein-Straße 21, D Rostock Putbus,
Zum Stand und den Perspektiven des Kompetenznetzwerks Neue Dienste, Standardisierung, Metadaten (bmb+f) Rudi Schmiede Infrastrukturen für innovative Digital.
Aktuelle Java-Trends, Norbert Schuler1 Jini Java im Netz.
Kontext-basierte Personalisierung von Web Services
1 Allgemeine Fragestellung Suche nach wissenschaftlicher Information im Internet Quelle wird gefunden, aber… …Zugang nur gegen Passwort oder Zahlung Wiss.
Bernd Oberknapp, UB Freiburg
Authentifizierung, Autorisierung und Rechteverwaltung Einsatz und Funktion des Rechteservers 2. Shibboleth-Workshop Freiburg, 23. März 2006 Gerald Schupfner,
der Universität Oldenburg
Pascal Busch, WWI00B – Vergleich CORBA vs. Web Services hinsichtlich der Applikationsintegration Web Services vs CORBA Web Services vs CORBA Ein Vergleich.
Java: Dynamische Datentypen
DOM (Document Object Model)
Einsatz von XML zur Kontextspeicherung in einem agentenbasierten ubiquitären System Faruk Bagci, Jan Petzold, Wolfgang Trumler und Theo Ungerer Lehrstuhl.
Universeller Zugriff auf multimediale Dokumentstrukturen auf der Basis von RDF und MPEG-7 Stefan Audersch BerlinXSW Juni.
Komplexpraktikum Laufzeitumgebung für Komponenten mit QoS - Anforderungen Brit Engel.
Hauptseminar XML-Technologie: Resource Description Framework (RDF) Michael Kranz Betreuer: Roland Haratsch.
Technik Gestaltung Navigation Daten. Übersicht Client Webbrowser InternetServer.
XML in Client-Server und GRID Architektur
Introducing the .NET Framework
Strukturänderungen Verteilte Anwendungen Wintersemester 06/07 © Wolfgang Schönfeld.
Access 2000 Datenbanken.
Seminar: Verteilte Datenbanken
-LABORPRAKTIKUM- SOMMERSEMESTER 2005
DVG Klassen und Objekte
Seite Common Gateway Interface. Konzepte. Übersicht 1Einleitung 2Was ist CGI? 3Wozu wird CGI verwendet? 4Geschichtlicher Überblick 5Grundvoraussetzungen.
1 Grundlagen und Anwendung der Extensible Markup Language (XML ) Peter Buxmann Institut für Wirtschaftsinformatik Johann Wolfgang Goethe-Universität Frankfurt.
RDF-S3 und eRQL: RDF-Technologien für Informationsportale Karsten Tolle und Fabian Wleklinski.
1 Dienstbeschreibung mit DAML Ein graphischer Editor für DAML - Ting Zheng Betreuer: Michael Klein, Philipp Obreiter.
Diplomarbeit Thema: Untersuchungen zur Spezifikation und Realisierung von Interoperabilitätskonzepten (hauptsächlich) CORBA-basierter Multiagentensysteme.
SEP Halgurt Mustafa Ali Can Önder Marius Morawski Matthias Seidl Themen: Integration von RDQL und OWQL innerhalb des Apache Cocoon Frameworks Semantische.
Spezifikation von Anforderungen
Entwurf und Realisierung einer digitalen Bibliothek zur Verwaltung von Notenhandschriften Dipl.-Ing. Temenushka Ignatova Datenbank- und Informationssysteme,
Rainer Spittel Technologie-Zentrum Informatik, Universität Bremen
1 / 9 EPArescue - Das System und die Infrastruktur.
1 Alexander Arimond, University of Kaiserslautern, Germany Entwicklung und Evaluation eines Raytracing-Dienstes für das Venice Service Grid Alexander Arimond.
Webservice Grundlagen
Dienstattribute für service-orientierte Workflows
Grundlagen vernetzt-kooperativer Planungsprozesse für Komplettbau mit Stahlbau, Holzbau, Metallbau und Glasbau Projekt im DFG-SPP 1103 Bergische Universität.
Einsatzgebiete und Anwendungen
App-Entwicklung mit HTML5, CSS und JavaScript
Einführung in die Programmierung Wintersemester 2009/10 Prof. Dr. Günter Rudolph Lehrstuhl für Algorithm Engineering Fakultät für Informatik TU Dortmund.
Sesame Florian Mayrhuber
CGI (Common Gateway Interface)
Die Architektur von Jini Präsentation von Thomas Heinis & Michea Wankerl Seminar Information & Kommunikation WS 2000/01.
Archival and Discovery
Vom Kontext zum Projekt V Carina Berning Sabrina Gursch Pierre Streicher Intelligente Dateisysteme.
Management- und Web Services- Architekturen
Oliver Spritzendorfer Thomas Fekete
XML (Extensible Markup Language)
Trust and context using the RDF- Source related Storage System (RDF‑S3) and easy RQL (eRQL) Karsten Tolle und Fabian Wleklinski.
Quellen: Internet INTRANET Ausarbeitung von Sven Strasser und Sascha Aufderheide im Modul Netzwerktechnik, Klasse INBS Mai 2003.
Eike Schallehn, Martin Endig
Eike Schallehn, Martin Endig
© 2001 Sven Dammann1 Aufbau Integrierter Informationssysteme XML Bearbeitung und relationale Abbildung Sven Dammann Martin-Luther-Universität Halle-Wittenberg.
„Wenn du den Fluss Halys überschreitest, wirst du
Semantic Web.
Datenbanken im Web 1.
1 Wolfgang Wiese, Regionales RechenZentrum Erlangen WCMS 3. August 2000 Wolfgang Wiese RRZE / Lehrstuhl für Informatik VII
Middleware in Java vieweg 2005 © Steffen Heinzl, Markus Mathes Kapitel 1: Architektur verteilter Systeme.
Web Services Spezielle Methoden der SWT Liste V – WS 2008/2009 Christian Boryczewski.
Interoperabilität in Digitalen
Comprehensive Information Base (CIB) – ein Prototyp zur semantischen Datenintegration Stefan Arts
1. Betreuer: Prof. Dr. Jörg Striegnitz 2. Betreuer: Dr. Martin Schindler Kontextsensitive Autocompletion für Klassendiagramme in der UML/P Florian Leppers.
1 Lutz Ullrich SOA – serviceorientierte Architektur SOA – Was ist das?
 Präsentation transkript:

Metadatenverwaltung und kontextbasierte Personalisierung in verteilten Systemen Doktorandenkolloquium Universität Passau Fakultät für Informatik und Mathematik Lehrstuhl für Dialogorientierte Systeme Markus Keidl

Gliederung Motivation und Einleitung Die Metadatenverwaltung MDV Die Web-Service-Plattform ServiceGlobe Dynamische Dienstauswahl Kontextbasierte Personalisierung von Web-Services Zusammenfassung Metadatenverwaltung und kontextbasierte Personalisierung in verteilten Systemen

Motivation Neuartige Herausforderungen durch weltweite Netzwerke für Informationssysteme Große, heterogene Menge von Ressourcen (Daten, Funktionen, Rechenleistung), Benutzern, Gerätetypen Pervasive Computing: Trend zu mobilen und ständig vernetzten Geräten Projekte: AutO, ObjectGlobe und ServiceGlobe Metadatenverwaltung und kontextbasierte Personalisierung in verteilten Systemen

Einleitung AutO ObjectGlobe ServiceGlobe Verteiltes System autonomer Objekte Selbstoptimierendes System durch Datenmigration ObjectGlobe Verteiltes Anfragesystem mit mobilen Operatoren MDV: Verteilte Verwaltung von Metadaten über verfügbare Ressourcen ServiceGlobe Web-Service-Plattform für mobile Web-Services Dynamische Dienstauswahl Kontextbasierte Personalisierung von Web-Services Metadatenverwaltung und kontextbasierte Personalisierung in verteilten Systemen

Die Metadatenverwaltung MDV Verteiltes System zur Verwaltung von beliebigen Metadaten Metadatenformat: RDF und RDF-Schema Eigenschaften: 3-Schichten-Architektur: Ö-MDVs, L-MDVs und MDV-Klienten Caching auf mittlerer Schicht (durch L-MDVs) Aktualität durch Publish&Subscribe-Mechanismus Deklarative Anfragesprache Metadatenverwaltung und kontextbasierte Personalisierung in verteilten Systemen

RDF und RDF-Schema RDF = Resource Description Framework RDF-Schema W3C Recommendation Definiert Ressourcen, Eigenschaften und Werte RDF-Schema W3C Working Draft Definiert das Schema von Metadaten, ähnlich einer Klassenhierarchie Metadatenverwaltung und kontextbasierte Personalisierung in verteilten Systemen

Beispiel für RDF-Metadaten <CycleProvider rdf:ID="host1"> <serverHost>pirates.uni-passau.de</> <serverPort>5874</serverPort> <serverInformation> <ServerInformation rdf:ID="info1" memory="92" cpu="600" /> </serverInformation> </CycleProvider> Metadatenverwaltung und kontextbasierte Personalisierung in verteilten Systemen

ObjectGlobe- Optimierer Architektur der MDV Ö-MDV Ö-MDV Ö-MDV Backbone Publish & Subscribe L-MDV L-MDV ObjectGlobe- Optimierer Metadatenverwaltung und kontextbasierte Personalisierung in verteilten Systemen

Architektur - Ö-MDVs Ö-MDV: Öffentliche Metadatenverwaltung Öffentliche Metadaten: global und frei verfügbar Backbone aus Ö-MDVs Vollständige Replikation der öffentlichen Metadaten im Backbone Registrieren, Ändern und Löschen von Metadaten (Dokumenten-basiert) Metadatenverwaltung und kontextbasierte Personalisierung in verteilten Systemen

Architektur - L-MDVs L-MDV: Lokale Metadatenverwaltung Caching von öffentlichen Metadaten Speichern von lokalen Metadaten  Nur lokal verfügbar, für sensitive Daten Liegen nahe bei den Klienten Anfrageauswertung findet bei L-MDVs statt: Anfrage von gepufferten und lokalen Metadaten Metadatenverwaltung und kontextbasierte Personalisierung in verteilten Systemen

Das Publish & Subscribe-System Basiert auf Abonnement-Regeln: L-MDVs abonnieren Metadaten (von Ö-MDVs) Ö-MDVs bestimmen anhand der Regeln, welche Metadaten zu L-MDVs gesendet werden müssen Registrieren, Ändern oder Löschen von Metadaten erfordert Auswertung der Regeln Ö-MDV L-MDV Metadaten Abonnement-Regeln Metadatenverwaltung und kontextbasierte Personalisierung in verteilten Systemen

Abonnement-Regel-Sprache Gezieltes Abonnement von bestimmten Ressourcen Beispiel: search CycleProvider c register c where c.serverHost contains 'uni-passau.de' and c.serverInformation.memory > 64 Auswertungsgrundlage sind alle öffentlichen Metadaten Joins/Verbunde werden unterstützt Metadatenverwaltung und kontextbasierte Personalisierung in verteilten Systemen

Der Publish & Subscribe - Algorithmus Problem: Riesige Menge von Abonnement-Regeln Lösung: Index auf die Regelmenge Auswertung einer Teilmenge der Regeln Algorithmus basiert auf bekannten, bewährten RDBMS-Technologien Robustheit, Skalierbarkeit, Anfragefähigkeiten Verwendung von Tabellen, Indexen, der SQL-Anfragesprache, dem Optimierer, … Metadatenverwaltung und kontextbasierte Personalisierung in verteilten Systemen

Der Algorithmus im Detail Zerlegung: RDF-Dokument Regeln: Zerlegung in Trigger- und Join-Regeln Auswertung: Ermittlung der betroffenen Trigger-Regeln Iterative Auswertung der Join-Regeln Metadatenverwaltung und kontextbasierte Personalisierung in verteilten Systemen

Zerlegung: RDF-Dokument <CycleProvider rdf:ID="host1"> <serverHost>pirates.uni-passau.de</> <serverPort>5874</serverPort> <serverInformation> <ServerInformation rdf:ID="info1" memory="92" cpu="600" /> </serverInformation> </CycleProvider> Metadatenverwaltung und kontextbasierte Personalisierung in verteilten Systemen

Zerlegung: Tabelle rid class property value doc.rdf#host1 CycleProvider rdf#subject serverHost pirates.uni-passau.de serverPort 5874 serverInformation doc.rdf#info1 ServerInformation memory 92 cpu 600 Metadatenverwaltung und kontextbasierte Personalisierung in verteilten Systemen

Der Algorithmus im Detail Zerlegung: RDF-Dokument Regeln: Zerlegung in Trigger- und Join-Regeln Auswertung: Ermittlung der betroffenen Trigger-Regeln Iterative Auswertung der Join-Regeln Metadatenverwaltung und kontextbasierte Personalisierung in verteilten Systemen

Zerlegung: Regeln Normalisierung der Regel Beispiel: search CycleProvider c, ServerInformation s register c where c.serverHost contains 'uni-passau.de' and c.serverInformation = s and s.memory > 64 and s.cpu > 500 Zerlegung in Teilregeln: Trigger-Regeln und Join-Regeln Metadatenverwaltung und kontextbasierte Personalisierung in verteilten Systemen

Zerlegung: Regel - Abhängigkeitsbaum Regel F c.serverInformation = a Regel E a = b ServerInformation Regel A s.memory > 64 ServerInformation Regel B s.cpu > 500 CycleProvider Regel C c.serverHost contains 'uni-passau.de' Metadatenverwaltung und kontextbasierte Personalisierung in verteilten Systemen

Der Algorithmus im Detail Zerlegung: RDF-Dokument Regeln: Zerlegung in Trigger- und Join-Regeln Auswertung: Ermittlung der betroffenen Trigger-Regeln Iterative Auswertung der Join-Regeln Metadatenverwaltung und kontextbasierte Personalisierung in verteilten Systemen

Auswertung: Trigger-Regeln bestimmen rid class property value doc.rdf#host1 CycleProvider rdf#subject serverHost pirates.uni-passau.de serverPort 5874 serverInformation doc.rdf#info1 ServerInformation memory 92 cpu 600 Neue Metadaten rule_id class property value Regel A ServerInformation memory 64 Regel B cpu 500 rule_id rid Regel A doc.rdf#info1 Regel B Trigger-Regeln mit Operator > Metadatenverwaltung und kontextbasierte Personalisierung in verteilten Systemen Ergebnis

Auswertung: Iterative Auswertung der Join-Regeln Regel F Regel F c.serverInformation = a Regel E Regel E a = b Regel A Regel A Regel B Regel C Regel B Regel C c.serverHost contains ‘uni-passau.de’ s.memory > 64 s.cpu > 500 ServerInformation ServerInformation CycleProvider Metadatenverwaltung und kontextbasierte Personalisierung in verteilten Systemen

Funktionsweise des Algorithmus Zerlegung der Abonnement-Regeln Einfügen von neuen Metadaten: Zerlegung des RDF-Dokuments Ausführung des Algorithmus liefert: Regeln, deren Ergebnis sich ändert Neue Metadaten im Ergebnis Regeln bestimmen zu benachrichtigende L-MDVs Benachrichtigung dieser L-MDVs Metadatenverwaltung und kontextbasierte Personalisierung in verteilten Systemen

Löschen bzw. Ändern von Metadaten Mehrmaliges Ausführen des Algorithmus Jeweils mit unterschiedlichen Eingabedaten Metadatenverwaltung und kontextbasierte Personalisierung in verteilten Systemen

Gliederung Motivation und Einleitung Die Metadatenverwaltung MDV Die Web-Service-Plattform ServiceGlobe Dynamische Dienstauswahl Kontextbasierte Personalisierung von Web Services Zusammenfassung Metadatenverwaltung und kontextbasierte Personalisierung in verteilten Systemen

Die Web-Service-Plattform ServiceGlobe Forschungsplattform für mobile Web-Services Web-Services sind mobiler Code, d.h. sie können nahe bei Daten bzw. anderen Web-Services ausgeführt werden Vollständig in Java implementiert Basiert auf Standards wie XML, SOAP, UDDI, WSDL, … Standardfunktionalität für eine Dienstplattform: Transaktionssystem Sicherheitssystem ausgelegt auf mobilen Code Unterstützt die Entwicklung von personalisierbaren, flexiblen und zuverlässigen Web-Services Metadatenverwaltung und kontextbasierte Personalisierung in verteilten Systemen

Dynamische Dienstauswahl Aufgabe Dynamische Fusion von Web-Services Robuste Ausführung von Web-Services Verwendung von UDDI: Verzeichnis für Web-Services UDDI: Zuordnung von Diensten zu tModels tModel: Semantische Klassifikation der Funktionalität und formale Beschreibung der Schnittstelle Metadatenverwaltung und kontextbasierte Personalisierung in verteilten Systemen

Dynamische Dienstauswahl – Motivation UDDI-Verzeichnis Web-Service C tModel: T A B C Web-Service B Ausführen Implementieren Web-Service N Web-Service A Aufruf Web-Services A B Metadatenverwaltung und kontextbasierte Personalisierung in verteilten Systemen

Dynamische Dienstauswahl – Beispiel UDDI-Verzeichnis Web-Service C tModel: T A B C Web-Service B Implementieren Ausführen Web-Service N Web-Service A Aufruf tModel T Metadatenverwaltung und kontextbasierte Personalisierung in verteilten Systemen

Dynamische Dienstauswahl Aufgabe Dynamische Fusion von Web-Services Verlässliche Ausführung von Web-Services Ergebnis „Aufruf eines tModels“ anstatt des traditionellen „Aufruf eines Web-Services“ Abstraktion von tatsächlichen Web-Services in der Implementierung Web-Services werden zur Laufzeit ausgewählt, nicht bereits während der Entwicklung Vorgaben können verwendet werden, um Dienstauswahl und –aufruf zu beeinflussen Metadatenverwaltung und kontextbasierte Personalisierung in verteilten Systemen

Kontextbasierte Personalisierung von Web-Services Kontext: Informationen über Benutzer und ihre (aktuelle) Umgebung, die von Web-Services eingesetzt werden, um ein personalisiertes Verhalten zu erzielen Beispiele: Informationen über Aufenthaltsort des Benutzers, Art des Klienten, usw. Metadatenverwaltung und kontextbasierte Personalisierung in verteilten Systemen

Beispiel-Szenario Klient Ort Attraktionen- suche Attraktionen- suche Verarbeite Kontext: Ort Routenplaner Benutzer Kontext: Ort Hard- und Software des Klienten Anforderungen: Transparenz Automatische Verarbeitung Generische Lösung GPS-Koordinaten, Adresse, Währung, usw. Kontext: Klient Hotelsuche Verarbeite Kontext: Ort Hotelsuche Metadatenverwaltung und kontextbasierte Personalisierung in verteilten Systemen

Das Kontext-Framework in ServiceGlobe Ziele und Eigenschaften: Flexibel und zur Laufzeit erweiterbar Automatische Auswertung von Kontext-Informationen, ohne Beteiligung des Web-Services selbst Trennung der Kontext-Verarbeitung von den eigentlichen Web-Services Wesentliche Teile: Kontext-Infrastruktur und Kontext-Typen Metadatenverwaltung und kontextbasierte Personalisierung in verteilten Systemen

Die Kontext-Infrastruktur Kontext-Modell Übertragung von Kontext zu den Web-Services Automatische Verarbeitung von Kontext Arbeitsweise Komponenten Verarbeitungsinstruktionen Metadatenverwaltung und kontextbasierte Personalisierung in verteilten Systemen

Das Kontext-Modell Kontext besteht aus mehreren Kontext-Blöcken Ein Kontext-Block ist einem Kontext-Typ zugeordnet Ein Kontext-Typ definiert die Art der Kontextinformation, z.B. Aufenthaltsort, Klient Kontext darf max. einen Kontext-Block pro Kontext-Typ enthalten Kontext Kontext-Block Kontext-Typ: Ort Kontext-Block Kontext-Typ: Klient Metadatenverwaltung und kontextbasierte Personalisierung in verteilten Systemen

Kontext in einer SOAP-Nachricht <env:Envelope xmlns:env="http://schemas.xmlsoap.org/soap/.../"> <env:Header> <Context xmlns="http://sg.fmi.uni-passau.de/context"> <Client> <Hardware> <Defaults> http://example.com/PDA </Defaults> <ScreenSize>320x200</ScreenSize> <IsColorCapable>Yes</IsColorCapable> </Hardware> </Client> </Context> </env:Header> <env:Body> <!-- serialized object data --> </env:Body> </env:Envelope> Übertragung als Header-Block SOAP-Envelope SOAP-Header Header-Block: Context Kontext-Block Header-Block SOAP-Body Metadatenverwaltung und kontextbasierte Personalisierung in verteilten Systemen

Übertragung von Kontext Service-Plattform SOAP-Anfrage Web-Service Kontext Kontext Klient SOAP-Antwort Metadatenverwaltung und kontextbasierte Personalisierung in verteilten Systemen

Automatische Verarbeitung von Kontext Kontext-Operationen: Vorverarbeitung einer Web-Service-Anfrage Nachbearbeitung einer Web-Service-Antwort Nachbearbeitung von ausgehenden Nachrichten (Anfragen an andere Web-Services) Vorverarbeitung von eingehenden Nachrichten (Antworten von anderen Web-Services) Komponenten: Kontext-Plugins und Kontext-Services Metadatenverwaltung und kontextbasierte Personalisierung in verteilten Systemen

Arbeitsweise: Automatische Kontext-Verarbeitung Arbeitsweise der Kontext-Operationen: Verarbeitung von Kontext-Blöcken in der SOAP-Nachricht in beliebiger Reihenfolge Auswahl eines Kontext-Blocks Aufruf von geeigneten Kontext-Plugins und Kontext-Diensten Kontext-Plugins und Kontext-Services: Zuordnung zu genau einem Kontext-Typ Eingabe: Kontext-Block und Nachricht Ausgabe: Ggf. modifizierte Nachricht Nachricht variiert je nach Kontext-Operation Metadatenverwaltung und kontextbasierte Personalisierung in verteilten Systemen

Komponenten zur Kontext-Verarbeitung Kontext-Plugins Java-Objekte, die ein bestimmtes Interface implementieren Installation auf lokalem Rechner Verarbeitung von Kontext-Blöcken eines Kontext-Typs Vorteile: Generische Lösung für alle Web-Services Transparente Verarbeitung von Kontext Zugriff auf interne Datenstrukturen der Dienstplattform Nachteil: Lokale Installation notwendig Metadatenverwaltung und kontextbasierte Personalisierung in verteilten Systemen

Komponenten zur Kontext-Verarbeitung Kontext-Dienste Web-Services, die ein spezielles Interface implementieren Verarbeitung von Kontext-Blöcken eines Kontext-Typs Vorteile: Irgendwo im Netz verfügbar Ansonsten wie Kontext-Plugins Nachteile: Nur Zugriff auf Kontext und Web-Service-Nachricht Metadatenverwaltung und kontextbasierte Personalisierung in verteilten Systemen

Komponenten zur Kontext-Verarbeitung Web-Service Zugriff auf alle Kontext-Informationen Modifikation des Kontextes Vorteil: Beeinflussung des internen Kontrollflusses Nachteil: Aufwändige Implementierung Metadatenverwaltung und kontextbasierte Personalisierung in verteilten Systemen

Komponenten zur Kontext-Verarbeitung Klient Verarbeitung von Kontext auf dem Endgerät, z.B. Formatierung XML nach HTML Speichern von Kontext-Informationen Metadatenverwaltung und kontextbasierte Personalisierung in verteilten Systemen

Verarbeitungsinstruktionen Herausforderungen: Welche Komponenten sollen zur Verarbeitung der Kontext-Blöcke eingesetzt werden? Auf welchen Rechnern sollen die Kontext-Blöcke Kontext verarbeitet werden? Lösung: Angabe von Instruktionen für Kontext-Dienste und Kontext-Plugins Verarbeitungsrichtlinien für jeden Kontext-Typ einzeln Metadatenverwaltung und kontextbasierte Personalisierung in verteilten Systemen

Verarbeitungsinstruktionen: Beispiel <ContextProcessingInstructions> <ContextType ID="http://sg.fmi.uni-passau.de/context:Location"> <ContextService> <AccessPoint useType="http"> http://example.com/services/CurrencyConverter </AccessPoint> <ContextOperations>post</ContextOperations> </ContextService> <ProcessingGuideline> <ServiceHost>Next</ServiceHost> <Components>ContextPlugin+ContextService</Components> </ProcessingGuideline> </ContextType> </ContextProcessingInstructions> Metadatenverwaltung und kontextbasierte Personalisierung in verteilten Systemen

Verwendung der Instruktionen Im Kontext selbst: Einfügen der Verarbeitungsinstruktionen als eigenen Kontext-Block In den UDDI-Metadaten eines Web-Services In UDDI allgemein: Zuordnung von Kontext-Diensten zum tModel ihres Kontext-Typs Web-Service-Plattform sucht nach passenden Kontext-Diensten Metadatenverwaltung und kontextbasierte Personalisierung in verteilten Systemen

Kontext-Typen Klient: Hard- und Software des Klienten Ort: Kontext-Plugin: Auswahl eines XSL-Stylesheets, passend zum Klient-Typ In UDDI: Web-Service legt XSL-Stylesheets für verschiedene Klient-Typen fest Ort: GPS-Koordinaten, Adresse, Zeit, Währung; aber auch: semantische Informationen, z.B. „in der Arbeit“ Kontext-Dienst: Konvertierung von Geldbeträgen in die Währung des aktuellen Aufenthaltsorts Kontakt-Daten, DSS-Vorgaben, … Metadatenverwaltung und kontextbasierte Personalisierung in verteilten Systemen

Und damit … Klient Ort Attraktionen- suche Benutzer Routenplaner Kontext-Dienst Routenplaner Währungsumrechner Kontext-Dienst Währungs- umrechner StylesheetFinder Kontext-Plugin UDDI- Verzeichnis Metadatenverwaltung und kontextbasierte Personalisierung in verteilten Systemen

Zusammenfassung AutO: Verteiltes System autonomer Objekte [BTW‘99] Das verteilte Anfragebearbeitungssystem ObjectGlobe Die Metadatenverwaltung MDV [IEEE Data Engineering Bulletin 24(1), VLDBJ 10(3), BTW'01, ICDE'02, Informatik Forschung & Entwicklung 17(3)] Authentifizierung und rollenbasierte Autorisierung Verteilung der Autorisierungsinformationen mit Hilfe der MDV Die Web-Service-Plattform ServiceGlobe Offene, verteilte Dienstplattform für mobile Web-Services Dynamische Dienstauswahl [GI-Workshop'02, Demo VLDB'02, BTW'03, Poster WWW'03, TES'03] Kontextbasierte Personalisierung von Web Services [BTW'03, Demo EDBT‘04] Metadatenverwaltung und kontextbasierte Personalisierung in verteilten Systemen

Ausblick Weitere Untersuchung von Verarbeitungsinstruktionen Kontext-Sicherheit: Zugriffskontrolle Datenschutz Weitere Kontext-Typen und entsprechende Einsatzszenarien Metadatenverwaltung und kontextbasierte Personalisierung in verteilten Systemen

Vielen Dank für Ihre Aufmerksamkeit! Metadatenverwaltung und kontextbasierte Personalisierung in verteilten Systemen