Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

2Harald Schöning 8.5.2003 Agenda Architekturüberblick Der XML-Datenbankserver Tamino X-Node Tamino X-Tension XML-Anbindung anderer Formate Schnittstellen.

Ähnliche Präsentationen


Präsentation zum Thema: "2Harald Schöning 8.5.2003 Agenda Architekturüberblick Der XML-Datenbankserver Tamino X-Node Tamino X-Tension XML-Anbindung anderer Formate Schnittstellen."—  Präsentation transkript:

1

2 2Harald Schöning Agenda Architekturüberblick Der XML-Datenbankserver Tamino X-Node Tamino X-Tension XML-Anbindung anderer Formate Schnittstellen WebDAV-Server Werkzeuge

3 3Harald Schöning Architekturüberblick

4 4Harald Schöning Der XML-Datenbankserver XML  Speichern  Abfragen  Ändern Text Retrieval XML Schema Security Indexierung Internationalisierung Datenbanksystem

5 5Harald Schöning Der XML-Datenbankserver: XML speichern Dokumente mit und ohne Schemaassoziation  ggf. Validierung einzeln oder als Menge von Dokumenten zu speichern eindeutige ID pro Dokument optional Dokumentname Collection Doctype Schema  Doctype  Collection  Datenbank

6 6Harald Schöning Der XML-Datenbankserver: XML abfragen X-Query (Tamino query language)  basiert auf XPath  erweitert auf Mengensemantik  erweitert um Text-Retrieval Beispiel: „Die Titel aller Bücher, die nicht mehr als 200 kosten“: /bib/book[price < 200]/title Beispiel: „Die Titel aller Bücher, die nicht mehr als 200 kosten“: /bib/book[price < 200]/title

7 7Harald Schöning Der XML-Datenbankserver: XML abfragen XQuery  W3C draft  Kernfunktionalität  plus Funktionsbibliothek Tamino-Namensraum Text-Retrieval Beispiel: „Autoren mit ihren Büchern“: {for $a in input()/alle/Autor return {$a} {for $b in input()//Buch[Autor=$a] return $b/Titel} } Beispiel: „Autoren mit ihren Büchern“: {for $a in input()/alle/Autor return {$a} {for $b in input()//Buch[Autor=$a] return $b/Titel} }

8 8Harald Schöning Der XML-Datenbankserver: XML ändern Es gibt keinen W3C Standard für Änderungsoperationen  Software AG hat XQuery entsprechend erweitert Funktionalität:  insert into  insert following  insert preceding  delete  replace  rename Relative Änderungen sind möglich  z.B. Erhöhung um 1% Mehrere Modifikationen in einer Anweisung sind möglich

9 9Harald Schöning Der XML-Datenbankserver: XML ändern - Beispiele  update insert into input()//A insert into input()//B  update insert attribute status {“married“} into input()/employee[name=“smith“]  update for $a in input()/employee[name=“smith“] do ( insert preceding $a/name insert following $a/name )  update delete  update delete input()/employee[name=“smith“]/..  update rename input()/employee[name=“smith“]/name as lastname

10 10Harald Schöning Der XML-Datenbankserver: XML ändern - Konzepte Schnappschuss-Semantik  logische Sicht des Änderungsvorgangs zunächst werden die zu ändernden Stellen und die einzusetzenden Daten berechnet dann wird die Änderung durchgeführt dann wird das Ergebnis auf Wohlgeformtheit geprüft und ggf. validiert Deklarativ  Reihenfolge von Modifikationsanweisungen in einer Änderungsoperation nicht relevant Konflikte  Änderungsoperationen dürfen sich nicht gegenseitig beeinflussen  Änderungsoperationen müssen eindeutig sein

11 11Harald Schöning Der XML-Datenbankserver: XML ändern - Beispiele  update for $a in input()/employee[name=“smith“]/salary do replace $a/text() with $a*1.029 Relative Änderung  update for $a in input()/employee[name=“smith“]/name do ( rename $a as lastname delete $a )  Konflikt  update for $a in input()/employee[name=“smith“] do ( insert 1 into $a insert 2 into $a )  Konflikt

12 12Harald Schöning Der XML-Datenbankserver: Text Retrieval In X-Query  Operator ~=  Suche nach Worten oder Wortfolgen, Wildcards In XQuery  eine Familie von Funktionen aus dem Tamino-Namensraum (tf) tf:containsText() tf:containsAdjacentText() tf:containsNearText()  beziehen sich auf einen Knoten und seine Nachkommen  Suche nach einzelnen Worten und Wortfolgen tf:containsText(Titel, "XML") tf:containsText(Titel,"XML Datenbanken")  mit Wildcards tf:containsText(Titel, "Tam* Data*")

13 13Harald Schöning Der XML-Datenbankserver: Text Retrieval Suche nach benachbarten Wörtern  tf:containsAdjacentText(Titel,3,"Tamino","Datenbanksystem") Tamino ist ein Datenbanksystem Suche nach Stammformengleichheit  tf:containsText(Titel,tf:stem("speichern")) Tamino speichert XML Suche nach gleichem Klang  tf:containsNearText(Titel,3,tf:phonetic("stark"), tf:stem("speichern") XML-Speicherung ist Taminos Stärke Thesaurus  broader term, narrower term, synonym Mit anderen Bedingungen kombinierbar  declare namespace tf="http://namespaces.softwareag.com/tamino/TaminoFunction" for $b in input()//Buch where tf:containsText($b/Titel,"XML") and $b/Preis<100 return $b

14 14Harald Schöning Der XML-Datenbankserver: Highlighting Welche Stelle im Dokument hat zum Treffer geführt? Erzeugung von Referenzen auf Stellen im XML-Dokument  tf:createTextReference()  tf:createAdjacentTextReference()  tf:createNearTextReference() Hervorhebung durch Processing Instructions  tf:highlight()

15 15Harald Schöning Der XML-Datenbankserver: Highlighting - Beispiele declare namespace tf="http://namespaces.softwareag.com/tamino/Tamino Function" for $x in input()//description let $hi:=tf:createTextReference($x, "*XML") where $hi return tf:highlight($x, $hi, "HI") Software AG's Tamino is an XML server. It can store XML documents and non- XML documents

16 16Harald Schöning Der XML-Datenbankserver: XML Schema Schemadefinition über W3C XML Schema  Das Tamino Schema ist ein gültiges XML Schema Annotationen, um Tamino-Spezifika anzugeben  Standard-Mechanismus von XML Schema  eigener Tamino-Namensraum wird benutzt  Benutzt für logische Angaben, die über XML Schema hinausgehen nationale Sortierordnungen Zugehörigkeit zu Collections usw.  Benutzt für physische Angaben Indexierung usw. Schemaänderungen möglich (mit Validierung) offene Schemata

17 17Harald Schöning XML Schema - Beispiel

18 18Harald Schöning Der XML-Datenbankserver: Security Autorisierung auf  Collection  Doctype  Knotenebene  Funktionen Über ACLs  Benutzer  Gruppen  Rechte Authentisierung  Web Server  Tamino  Betriebssystem

19 19Harald Schöning Der XML-Datenbankserver: Indexierung Indextypen  Standard Elemente Attribute  Text Elemente Attribute  Struktur doctype  compound  multipath  reference

20 20Harald Schöning Der XML-Datenbankserver: Internationalisierung mehr als 100 encodings für XML-Dokumente unterstützt   Konvertierung beim Speichern und Abfragen möglich IRI-Unterstützung Zeichenrepertoire von Unicode 3.2 nationale Sortierordnungen Text Retrieval für nicht auf Buchstaben beruhende Sprachen  Chinesisch  Japanisch  Koreanisch

21 21Harald Schöning Der XML-Datenbankserver: Internationalisierung Text Retrieval ist sprachspezifisch  tf:containsText(.,"Käse") Das ist Kaese  tf:containsText(.,"Cafe") Wir treffen uns im Café Regeln für die Behandlung von Unicode-Zeichen sind definierbar  Vergleich mit/ohne Groß-Klein-Schreibung  Basis-Zeichen é  e  Großschreibung ß  SS  Ersatzzeichen ä  ae  Zeichenklasse number, delimiter, character, single, punctuation

22 22Harald Schöning Der XML-Datenbankserver... ist ein Datenbanksystem Volle Unterstützung von ACID Transaktionen verschiedene Isolationsebenen können gewählt werden verteilte Transaktionen Cursoring Backup / Recovery  Einbindung der Backupkonzepte von EMC, Network Applicances usw. High Availability Replikation

23 23Harald Schöning Tamino X-Node: XML-Anbindung an RDBMS Abbildung relationaler Strukuren nach XML Teile von Dokumenten aus Tamino, andere aus dem RDBMS Abfragen Abspeichern Ändern Auch für Adabas

24 24Harald Schöning Tamino X-Node: XML-Anbindung an RDBMS Definition der externen Datenquelle: DB-Name und Tabelle

25 25Harald Schöning Tamino X-Node: XML-Anbindung an RDBMS Definition der externen Datenquelle: Spalte

26 26Harald Schöning Durch benutzerdefinierte Server-Extensions  Bibliotheken mit Callback-Möglichkeiten Mapping  von XML (Sub-) Dokumenten auf externe Datenquellen Trigger  Binden von Aktionen an Operationen auf Knoten Anfragefunktionen  Erweiterung von X-Query durch benutzerdefinierte Funktionen  Ergebnistransformation Reaktion auf Ereignisse  Beendigung einer Transaktion  usw. Tamino X-Tension: Erweiterung der Serverfunktionalität 

27 27Harald Schöning Tamino X-Tension: Mapping XML (sub-) documents können auf eine Datenquelle abgebildet werden  in Tamino  außerhalb ggf. auch dynamisch Die Server Extension bildet das ganze (Sub-) Dokument ab  Definition im Schema On Process(Map-In) On Compose(Map-Out) On Delete(onDelete) On Update(onUpdate) Round Trip in der Verantwortung der Server Extension

28 28Harald Schöning gebunden an Knoten im Schema bei entsprechenden Operationen auf entsprechenden Knoten (oder ihren Subknoten) im Dokument gefeuert  On Process  On Delete  On Update können Abbruch der Operation erzwingen laufen in derselben Transaktion ab Tamino X-Tension: Trigger

29 29Harald Schöning Tamino X-Tension: Anfragefunktionen Erweitern die X-Query-Funktionalität Explizit in einer Query aufzurufen Über Security kann die Aufrufberechtigung kontrolliert werden Laufen in derselben Transaktion ab

30 30Harald Schöning XML-Anbindung anderer Formate Tamino kann beliebige Dateien speichern .txt .gif .doc  usw. Bei Text erfolgt automatisch eine Textindizierung Weitergehende Indizierung möglich durch Server Extension  Erzeugung eines "Schattendokumentes"

31 31Harald Schöning XML-Anbindung anderer Formate: weitergehende Indizierung Original Nicht-XML Dokument XML Datenbank Metadaten + Inhalt

32 32Harald Schöning XML-Anbindung anderer Formate: weitergehende Indizierung MS-Word MS-Excel StarOffice Writer StarOffice Spreadsheet Multimedia (pic,mp3,video) PDF....some text.... john glen....some text.... john glen....some text.... john glen....some text.... john glen....some text.... john glen....some text.... john glen

33 33Harald Schöning XML-Anbindung anderer Formate: weitergehende Indizierung Dokumentinhalt und Metadaten werden in XML-Form zugänglich  beliebige Anfragen Extraktion / Konvertierung durch spezielle Server Extension Besonders in Kombination mit WebDAV mächtig  DASL kann für Anfragen genutzt werden  Dokumentzugriff über Dateisystem XML und Nicht-XML-Dokument bilden eine Einheit

34 34Harald Schöning Others Pictures PDF/Text MS Office XML-Anbindung anderer Formate: weitergehende Indizierung Nicht- XML Tamino Schema Server Extension StarOffice XML Tamino WebDAV Server StarOffice WebDAV Client Extraktor Non-XML XML Non- XML Beispielszenario

35 35Harald Schöning Schnittstellen Server Extension Server Extension X-Tension Server Extension Server Extension WebDAV client Tamino Store XML non-XML X-Node SQL Store ADABAS Store relational Adabas HTTP Client API JScript OCX Tamino Java API Java X-Application Framework SOAP API SOAP API SOAP client HTTP Browser.Net API WebDAV Server WebDAV Server

36 36Harald Schöning Gesamte Serverfunktionalität verfügbar via  Java / EJB / J2EE  JScript  C  ActiveX .NET Über den Web Server oder direkt Zusätzlich  SOAP  UDDI ... Schnittstellen

37 37Harald Schöning Tamino WebDAV Server - Architektur Tamino DB http xts ajp13 Web server Tomcat Slide Tamino WebDAV Store Web server Tamino WebDAV Server Clie nt

38 38Harald Schöning WebDAV - Extensions DeltaV VERSION-CONTROL, REPORT, CHECKIN, CHECKOUT, UNCHECKOUT, MKWORKSPACE, LABEL, UPDATE, MERGE, MKACTIVITY, BASELINE-CONTROL DASL (DAV Searching & Locating) SEARCH ACL (Access Control) ACL WebDAV (Distributed Authoring Protocol) PROPFIND, PROPPATCH, LOCK, UNLOCK, MKCOL, COPY, MOVE HTTP (HyperText Transfer Protocol) GET, HEAD, POST, OPTIONS, PUT, DELETE, TRACE

39 39Harald Schöning WebDAV - Clients WebDAV Server Microsoft IE 5.0 with Web Folders Microsoft Office 2000 Altova XML Spy Macromedia Dreamweaver RiverFront Software WebDrive Microsoft Office <2000 Your favorite editor... Microsoft Notepad Sun StarOffice

40 40Harald Schöning Browser durch die Datenbank Anfragen zur Einschränkung der sichtbaren Dokumente Tamino Werkzeuge: Tamino X-Plorer

41 41Harald Schöning Syntax highlighting für W3C XQuery Query history Tamino Werkzeuge: Query Tool

42 42Harald Schöning Tamino Werkzeuge: Schema Editor

43 43Harald Schöning Tamino Werkzeuge: Adminstration

44 44Harald Schöning Tamino XML Server: Zusammenfassung XML speichern  mit oder ohne Schema  oder offenes Schema XML-Security Datenbanksystem Werkzeuge WebDAV X-Tension zur Erweiterung der Server-Funktionalität X-Node zur Anbindung externer Datenbanken

45 45Harald Schöning


Herunterladen ppt "2Harald Schöning 8.5.2003 Agenda Architekturüberblick Der XML-Datenbankserver Tamino X-Node Tamino X-Tension XML-Anbindung anderer Formate Schnittstellen."

Ähnliche Präsentationen


Google-Anzeigen