MOQL Multimedia Object Query Language Seminar Multimedia-Datenbanken WS 2001/2002 Volker Severt
MOQL - Volker SevertFolie Gliederung bisherige MM-Anfragesprachen Object Query Language Multimedia-Erweiterungen (MOQL) räumliche Beziehungen zeitliche Beziehungen Ergebnis-Präsentation VisualMOQL / DISIMA-Projekt Zusammenfassung
MOQL - Volker SevertFolie Bisherige MM-Anfragesprachen Unterteilung in 3 Kategorien: vollkommen neu und spezialisiert (PICQUERY+ 1993) logische oder funktionelle Programmierung (EVA 1992) Erweiterungen von SQL (PSQL, VideoSQL, ESQL …)
MOQL - Volker SevertFolie Eine allgemeine Anfragesprache ? Akzeptanz durch potentielle Nutzer wichtig SQL-Syntax sehr erfolgreich / allgemein bekannt Objektorientiertheit wünschenswert Idee: Erweiterung einer existierenden Anfragesprache, konkret: OQL (Object Query Language)
MOQL - Volker SevertFolie OQL basiert auf dem ODMG-Objektmodell angelehnt an SQL-92; objektorientierte Erweiterungen: komplexe Objekte, Objektidentität, Pfadausdrücke, Polymorphismus, Funktionsaufrufe, Late Binding Einbettung in Programmiersprachen Unterstützung durch Object-DBMS-Hersteller
MOQL - Volker SevertFolie OQL Grundkonstrukt zur Anfrage select [ distinct ] projection_attributes fromquery [ [ as ] identifier ] {,query [ [ as ] identifier ] } where query
MOQL - Volker SevertFolie Multimedia-Anfragen ? Folgende Eigenschaften muß eine Anfragesprache dafür erfüllen: universell inhaltsbasierte Anfragen räumliche und zeitliche Anfragen unscharfe (fuzzy) Anfragen Präsentationsfunktionen
MOQL - Volker SevertFolie MOQL Erweiterungen in der where-Klausel von OQL-Anfragen um die Angabe räumlicher Beziehungen (spatial_expression) zeitlicher Beziehungen (temporal_expression) ‚beinhaltet‘-Beziehung (contains_predicate) Präsentationsfunktionen mittels present-Klausel
MOQL - Volker SevertFolie Räumliche Prädikate pointlineregion (circle, rectangle) pointnearest, farthestwithin, midpointcentroid, inside linecrossintersectinside (contains), cross region (...) covercover (coveredBy), cross topological_predicate, directional_predicate Richtungen: left, right, above, below, front, back, north, south, west, east, northwest... sowie Kombinationen mit front/back (front_left, back_north...)
MOQL - Volker SevertFolie Räumliche Funktionen Rückgabewer t pointlineregionvalue pointnearest, farthestregion lineintersect regionlength, slope regioncentroidinterior, exterior, mbr area, perimeter selectlake, area(lake.region) fromLakes lake where lake.region coveredBy SachsenAnhalt and area(lake.region) > 10
MOQL - Volker SevertFolie Zeitliche Beziehungen bei Zeitintervallen: equal, before, after, meet, metBy, overlap, overlappedBy, during, include, start, startedBy, finish, finishedBy Zeitintervalle haben eine obere und untere Grenze Zeitpunkt ist Zeitintervall mit gleichen Grenzwerten Angabe von: year, month, day, hour, minute, second, ms
MOQL - Volker SevertFolie Zeitlich fortlaufende Medien Funktionen (nur Videodaten):(universell: timeStamp) Rückgabewer t frameclipvideo frameprior, nextclip firstFrame, lastFrame, nth prior, nextvideo firstClip, lastClip, nth Prädikate (Kamerabewegungen): zoomIn, zoomOut, panLeft, panRight, tiltUp, tiltdown, cut, fade, wipe, dissolve
MOQL - Volker SevertFolie Beispiel einer Video-Anfrage ‚Finde den ersten Filmausschnitt mit Person MrX aus dem Video JamesB ‘ selectfirstClip( select c from JamesB.clips c where c contains MrX order by lowerBound(c.timestamp) )
MOQL - Volker SevertFolie Präsentationsfunktionen neue present-Klausel select... from... where where layout { and layout } Das Layout setzt sich aus räumlichen und zeitlichen Angaben zusammen oder aus einem benutzerdefinierten ‚Szenario‘. Angaben/Funktionen: atWindow, play, parStart, display
MOQL - Volker SevertFolie VisualMOQL Implementierung des Bild-Teils von MOQL Teil des DISIMA-Projekts (Distributed Image Database Management System) inhaltsbasierte Anfragen (‚hervorstechende‘ Objekte) deklarative Anfragemöglichkeiten Single-Site-Implementierung / Prototyp:
MOQL - Volker SevertFolie VisualMOQL
MOQL - Volker SevertFolie VisualMOQL Bild-Eigenschaften Beziehungs- Definition
MOQL - Volker SevertFolie VisualMOQL Ergebnispräsentation: Datei-Liste mit Vorschaubildern
MOQL - Volker SevertFolie Fazit MOQL erweitert die bereits etablierte Object Query Language Anforderungen an eine allgemeine MM-Anfrage- sprache werden in der Theorie unterstützt u.a. (noch) keine Behandlung von Audiodaten bisher nur Prototyp auf ObjectStore implementiert
MOQL - Volker SevertFolie Quellenverzeichnis J.Z. Li, M. T. Özsu, D. Szafron and Vincent Oria MOQL: A Multimedia Object Query Language; Sept Vincent Oria, M. T. Özsu, Paul J. Iglinski, Bing Xu and L. Irene Cheng DISIMA: An Object-Oriented Approach to Developing an Image Database System; Feb Vincent Oria, Bing Xu and M. Tamer Özsu VisualMOQL: A Visual Query Language for Image Databases; Mai 1998 Vincent Oria, M. Tamer Özsu, Bing Xu, L. Irene Cheng and Paul J. Iglinski VisualMOQL: The DISIMA Visual Query Language