XML-Erweiterungen in ORDBMS Seminar: DBMS für spezielle Anwendungen Florian Brieler Gliederung Der Standard – SQL/XML XML in Oracle XML DB XML in IBM UDB SQL/XML – Einleitung Standard um SQL zu erweitern Entwickelt durch die „SQLX Group“ Oracle, IBM, Microsoft, Sybase, etc. Bildet einen eigenen ISO/IEC International Standard Ist noch nicht abgeschlossen SQL/XML – Gründe Exakt definierte Beziehung zwischen SQL und XML – in beide Richtungen XML geeignet als „Datenaustauschformat“ SQL/XML – Was gehört dazu Mappings zwischen Bezeichnern, Werten, etc. Mappings zwischen Tabellen und Dokumenten Behandlung von NULL Spracherweiterungen von SQL XMLTYPE SQL/XML – Mappings I Character Sets (Plain Text Mapping) Datentypen und Wertebereiche SQL Bezeichner und XML Namen SQL/XML – Mappings II Tabellen und Dokumente <table> <row> <column1>...</column1> <column2>... </row> <row>... </table> SQL/XML – NULL Behandlung Wird durch XML Schema festgelegt absent: Wert wird komplett ausgelassen nil: Darstellung der Form <BIRTHDAY xsi:nil=“true“ /> SQL/XML – Spracherweiterungen I SELECT e.id, XMLELEMENT( NAME “employee“, XMLATTRIBUTES(e.id,e.nationality AS “nat“), e.fname||‘ ‘||e.lname ) AS “result“ FROM employees e WHERE ...; SQL/XML – Spracherweiterungen II Ergebnis der Abfrage: id result 1001 <employee id=“1001“ nat=“us“>John Smith </employee> 1206 <employee id=“1206“ nat=“eng“>Tom Martin</employee> SQL/XML – Was noch fehlt Operator, um ein XML Dokument zu erzeugen Operator, um CLOB mit XML Inhalt zu parsen Cast von und nach XMLTYPE Mappings von XML nach SQL Oracle – Überblick Unterstützt Teile vom Standard XMLType Repository XML Schema, Query-rewrite Oracle – XMLType Nativer Datentyp Unterstützung von XPath, XSLT Virtual DOM Zwei Speichermöglichkeiten: CLOB und objektrelational Oracle – XML Repository Zur Verwaltung beliebiger Dokumente, nicht nur XML Dokumente Unterstützt WebDAV, HTTP, FTP, JDBC Sicherheit durch Access Control Lists Erlaubt Anfragen an den Datenbestand IBM – Überblick Geringe Unterstützung von SQL/XML XML Extender Text Extender IBM – XML Extender Zwei Speichermöglichkeiten: XML column und XML collection Neue Datentypen: XMLCLOB, XMLVARCHAR, XMLFILE Stored Procedures Unterstützt XPath und XSLT