Extensible Markup Language

Slides:



Advertisements
Ähnliche Präsentationen
Entwicklung UnivIS-Anbindung auf Basis von PHP und DOM-XML
Advertisements

Worzyk FH Anhalt Datenbanksysteme für FÜ WS 2004/2005 XML - 1 XML Extensible Markup Language.
HyperText Markup Language
DTD XML-Technik Dino Azzano. Definition Document Type Definition Beschreibung der Regeln zum Aufbau aller XML-Dokumente, die zu einer Dokumentklasse.
Anmerkungen zu XML Im September 2000 Entwicklung/Anspruch von XML
SVG und X3D Referentin: Gergana Ivanova
Datenbanken 2 - WML - Prof. Dr. Stefan Böttcher - WS 2000/01 Wireless Markup Language (WML) Quelle: Ziel: Daten aus dem Internet an.
Dipl.- Dok. Rusalka Offer
XML Einführungskurs Referentin: Dipl.-Dok. Rusalka Offer
XML - Aufbau und Struktur - mit Einsatz im B2B
Hands On – Einführung in XML
IMS Universität Stuttgart 1 Einführung in XML Hannah Kermes HS: Elektronische Wörterbücher Do,
HTML - Einführung Richard Göbel.
FH-Hof Extensible Markup Language Richard Göbel. FH-Hof Extensible Markup Language XML XML ist universeller Ansatz für die Strukturierung von Zeichenketten.
DOM (Document Object Model)
Seminar XML und Datenbanken Sven Wiegelmann SS 2002.
XML-Schema HKI Proseminar Wintersemester 2010/11 Dozentin: Frau Kurz von Jan Kohl und Christian Lütticke.
Eine Biografie aus ADB/NDB als XML Datenbanken vs. Markup Prof Dr. Manfred Thaller WS 2009 / 2010 Referent: Bilal Erkin.
HTML - Eine erste Annäherung
Welcome DTD. Document Type Definition Graphic Services/Everything you already know about presentations Was ist eine DTD? DTD ist eine Schemasprache.
Prof. Dr. rer.nat. Ralph Großmann Fakultät Informatik / Mathematik Sommersemester 2012 Internet-Technologien XML-basierte Techniken Teil Metasprache der.
XML-basierte Techniken
© 2002 Prof. Dr. G. Hellberg 1 XML-Seminar XML-Technologie: XML in Theorie und Praxis Prof. Dr. G. Hellberg XML-Technologie: XML in Theorie und Praxis.
XHTML 1.1 C. Nimz Abstrakte Module XHTML 1.1 C. Nimz Was ist ein abstraktes Modul? Definition eines XHTML-Moduls in spezieller leichter.
Modularization of XHTML™
Überblick XML: Extensible Markup Language Entwickelt, um Informationen bereitzustellen, zu speichern und zu übertragen Im Gegensatz zu HTML keine vordefinierten.
Grundlagen von XML. © Prof. T. Kudraß, HTWK Leipzig Geschichte Grundidee generic coding - Trennung Information/Form formal definierter Dokumenttyp verschachtelte.
XML Standardisierungen und Abfragesprachen
Grundlagen von XML. © Prof. T. Kudraß, HTWK Leipzig Geschichte Grundidee generic coding - Trennung Information/Form formal definierter Dokumenttyp verschachtelte.
Einführung XML XML Einführung Andreas Leicht.
Vorlesung: 1 Betriebliche Informationssysteme XML © 2002 Prof. Dr. G. Hellberg Studiengang Informatik FHDW Vorlesung: Betriebliche Informationssysteme.
Geoinformation III Vorlesung 13b XML-Schema.
Ein Vortrag von Stefan Winter & Marc Ruppert
EXtensible Server Pages von Belrhiti El mostafa. Inhalt Was ist XSP ? Wichtige XSP Tags Erstellungsmöglichkeiten Die Basis der XSP.
Datenintegrität Referentielle Integrität create table
Worzyk FH Anhalt Telemedizin WS 09/10 Exkursion - 1 Study Trip to Interdisciplinary Center of Sleep Medicine Charité Departure at December, 9 th at 6:50.
XML / RDF / OWL in Protégé Aufbau · OWL · Code · Demo · Ausblick
1 XML und Datenbanken Kapitel 7: Modellierung, Teil 1 Meike Klettke Universität Rostock Fakultät für Informatik und Elektrotechnik
XML Grundlagen But if I bought a radio and found that it accessed only certain stations and not others, I'd be upset. I suppose I could have a half dozen.
1 Grundlagen und Anwendung der Extensible Markup Language (XML ) Peter Buxmann Institut für Wirtschaftsinformatik Johann Wolfgang Goethe-Universität Frankfurt.
Austauschformate für Terminologie
Was versteht man unter XML Schema?
Der Supermarkt: Eine beispielhafte Erklärung für die fünf untersten Schichten des Semantic Web Protocol Stack Nicola Henze.
Formale Sprachen und Automaten
XML eXtensible Markup Language
DTD – Deklaration von Elementen Beschreibt die Einschränkungen des Inhalts eines Elements Syntax: Einziger atomarer Typ: #PCDATA (Parsed Character DATA)
Fortsetzung DTDs, UML  XML
Wird ganz am Anfang der HTML-Datei geschrieben Doctype html public bedeutet, dass man sich auf die Öffentlichkeit der html-dtd bezieht Html ist die meist.
Java für Fortgeschrittene
Windows Presentation Foundation, Vorlesung Wintersemester 2013/14 Prof. Dr. Herrad Schmidt WS 13/14 Kapitel 2 Folie 2 XAML (1) s.a.
Wohlgeformtheit und Gültigkeit Grundlagen der Datenmodellierung Anke Jackschina.
Ausgabe vom Seite 1, XML Eine Einführung XML - Eine Einführung.
XML (Extensible Markup Language)
ADAT©2004 Dipl. - Ing. Walter SabinSeite: 1 Version 1.0a XML EXTENSIBLE MARKUP LANGUAGE.
Kurzpräsentation von Herbert Schlechta
Automaten, formale Sprachen und Berechenbarkeit II SoSe 2004 Prof. W. Brauer Teil 1: Wiederholung (Vor allem Folien von Priv.-Doz. Dr. Kindler vom WS 2001/02.
Version X des Programms: Datenaustausch-Probleme % ( ) (WIRBEL-BASISTEIL GR. 52) N1G29X150Y85I150J25 N2G0X150Y25 Version Y des Programms:
Hauptseminar Web-Services und verteilte Datenbanken Thema XML, DTDs und XML-Schema XML, DTDs und XML-Schema - Stefan Kurz, 25. April 2003.
Einführung Dateisystem <-> Datenbanksystem
- Warum: Das HTML-Dilemma
IT-Zertifikat der Phil.Fak Kurs 4: Daten- und Metadatenstandards Patrick Sahle XML-BasicsWS 08/09.
Seminar zur Geoinformation Folie 1 Inhalt: –XML –XML- SCHEMA –XSL –Syntax –GML Seminar zur Geoinformation Datenaustausch mit XML / GML im InternetDatenaustausch.
Peter Brezany Institut für Softwarewissenschaften Universität Wien
Geoinformation3 Geoinformation III XML Grundlagen und Dokumentspezifikation Vorlesung 12b.
Institut für Kartographie und Geoinformation Prof. Dr. Lutz Plümer Dr. Thomas H. Kolbe Geoinformation III XML Grundlagen und Dokumentspezifikationen Vorlesung.
DTD und W3C XML Schema Seminar XML und Datenbanken Vortrag: Sven Blüge.
Document Type Definitions (DTDs) Marko Harasic Freie Universität Berlin Institut für Informatik Netzbasierte Informationssysteme
13.Dezember 2006–1Elektronisches Publizieren: Schemasprachen — Relax NG Schemasprachen für XML — Relax NG — Anne Brüggemann-Klein TU München.
Fortsetzung DTDs, UML  XML
 Präsentation transkript:

Extensible Markup Language XML Extensible Markup Language

XML Metasprache Sprache, die Sprachen beschreibt Sprachen beschreiben Formate zum Datenaustausch

Beispiel Hans Meyer Lohmannstrasse 23 06366 Köthen Dr. Else Müller Bernburger Strasse 56

Beispiel Hans Meyer Lohmannstrasse 23 06366 Köthen Dr. Else Müller Bernburger Strasse 56 <Patient> <Name> <Strasse> <Ort> </Patient> <Arzt> </Arzt> </Name> </Strasse> </Ort>

Aufbau von XML-Dokumenten Prolog Deklaration der Dokumenttypen DTD (Document Type Definition) Elemente

Document Type Definition DTD Beschreibt die Grammatik eines XML – Dokuments Erlaubte Elemente und Attribute Deren Datentyp und Wertebereich Deren Schachtelung Ein XML – Dokument, das den Regeln einer DTD entspricht heißt gültig

Beispiel DTD <?xml version="1.0" encoding="ISO-8859-1"?> <!DOCTYPE Personen [ <!ELEMENT Personen (Person)> <!ELEMENT Person (#PCDATA)> ]> <Personen> <Person> Hans Meyer Lohmannstrasse 23 06366 Köthen </Person> </Personen> http://www.inf.hs-anhalt.de/~Worzyk/Telemedizin/Beispiele/Patienten1.xml

Aufbau von XML-Dokumenten DTD beschreibt die Eigenschaften der Elemente Elemente werden durch ein Startzeichen <Elementname> eingeleitet und durch ein Endzeichen </Elementname> abgeschlossen. Elemente können Elemente enthalten. #PCDATA Parsed character data: Das Element besteht aus einer Kette der im definierten Zeichensatz erlaubten Zeichen.

Folge von Elementen Untergeordnete Elemente werden in der Deklaration durch Kommata voneinander getrennt und in Klammern eingeschlossen. Beispiel: <?xml version="1.0" encoding="ISO-8859-1"?> <!DOCTYPE Personen [ <!ELEMENT Personen (Patient,Arzt)> <!ELEMENT Patient (Name,Adresse)> <!ELEMENT Arzt (Name, Adresse)> <!ELEMENT Name (#PCDATA)> <!ELEMENT Adresse (#PCDATA)> ]> http://www.inf.hs-anhalt.de/~Worzyk/Telemedizin/Beispiele/Patienten2.xml http://www.inf.hs-anhalt.de/~Worzyk/Telemedizin/Beispiele/Patienten3.xml

Auswahlliste Auswahl genau eines Elementes: Die wahlweise zur Verfügung stehenden Elemente werden durch | getrennt Beispiel: <!DOCTYPE Personen [ <!ELEMENT Personen (Patient|Arzt)> <!ELEMENT Patient (Name,Adresse,Diagnose)> <!ELEMENT Arzt (Name, Adresse,Fachgebiet)> http://www.inf.hs-anhalt.de/~Worzyk/Telemedizin/Beispiele/Patienten4.xml

Mehrmaliges Auftreten * Das Element kann keinmal oder beliebig oft erscheinen + Das Element kann mindestens einmal oder beliebig oft erscheinen ? Das Element kann keinmal oder höchstens einmal erscheinen

Attribute <!ATTLIST element-name attribute-name attribute-type default-value> Attributtypen: CDATA, (en1|en2|..), ID, IDREF, IDREFS, NMTOKEN, NMTOKENS, ENTITY, ENTITIES, NOTATION, xml: Defaultwerte: value #REQUIRED, #IMPLIED, #FIXED value CDATA: The value is character data (en1|en2|..): The value must be one from an enumerated list ID: The value is a unique id IDREF: The value is the id of another element IDREFS: The value is a list of other ids NMTOKEN: The value is a valid XML name NMTOKENS: The value is a list of valid XML names ENTITY: The value is an entity ENTITIES: The value is a list of entities NOTATION: The value is a name of a notation xml: : The value is a predefined xml value Defaultwerte: Value: The default value of the attribute #REQUIRED: The attribute value must be included in the element #IMPLIED: The attribute does not have to be included #FIXED value: The attribute value is fixed http://www.inf.hs-anhalt.de/~Worzyk/Telemedizin/Beispiele/Patienten5.xml Worzyk FH Anhalt Datenbanksysteme 2 SS 2004 Seite 13 - 12

Kommentare Kommentare werden von <!– und --> eingeschlossen.

Wohlgeformte XML - Datei Am Beginn steht die XML-Deklaration, die den Bezug zu XML herstellt Es gibt mindestens ein Datenelement Es gibt ein äußerstes Datenelement, das alle anderen Datenelemente enthält Die erforderlichen Attribute sind angegeben Alle Werte haben den richtigen Datentyp und Wertebereich Die Elemente müssen korrekt verschachtelt sein

Gültige XML-Datei Die Datei ist wohlgeformt Der Datei ist eine DTD zugeordnet Der Inhalt der Datei entspricht den Regeln der zugeordneten DTD

Parser Prüfen, ob die XML-Datei gültig ist: <html> <body> <script type="text/javascript"> var xmlDoc = new ActiveXObject("Microsoft.XMLDOM") xmlDoc.async="false" xmlDoc.validateOnParse="true" xmlDoc.load("Patienten5.xml") document.write("<br />Error Code: ") document.write(xmlDoc.parseError.errorCode) document.write("<br />Error Reason: ") document.write(xmlDoc.parseError.reason) document.write("<br />Error Line: ") document.write(xmlDoc.parseError.line) </script> </body> </html> http://www.inf.hs-anhalt.de/~Worzyk/Telemedizin/Beispiele/Parser.htm

DTD - Nachteile Wenige Datentypen Beschreibung nicht in der XML - Syntax

XML - Schema Definiert: Elemente, die in einem Dokument erscheinen können Attribute, die ein Element haben kann die Kindelemente die Reihenfolge der Kindelemente die Anzahl der Kindelemente Pflichtfelder Datentypen von Elementen und Attributen Defaultwerte

XML Schema Vorteil gegenüber DTD Erweiterbar um zukünftige Anwendungen in XML geschrieben Unterstützen Namesspaces xmlns:xs="http://www.w3.org/2001/XMLSchema“ unterstützen Datentypen xs;date, xs;dateTime, xs:string

Anfragen an XML - Dateien XPath XQuery

XPath Die Sprache XPath dient zur Adressierung von Teilen eines XML-Dokuments. Sie wurde für die Verwendung sowohl in XSLT als auch in XPointer entworfen. XPath modelliert ein XML-Dokument als einen Baum, der aus Knoten besteht. http://www.informatik.hu-berlin.de/~obecker/obqo/w3c-trans/xpath-de-20010702/

Beispiel <spielfilme> <film regie="Tom Tykwer" titel="Lola rennt"> <beschreibung> <name typ="w">Lola</name> rennt für <name typ="m">Manni</name>, der 100000 Mark liegengelassen hat und noch 20 Minuten Zeit hat, das Geld auszuliefern. </beschreibung> </film> </spielfilme>

Als Baumstruktur http://de.selfhtml.org/xml/regeln/baumstruktur.htm

Anfrage mit XPath /spielfilme/film/beschreibung/name ////name [@Typ=“w“] /spielfilme/film[regie ="Tom Tykwer" ]* http://www.w3schools.com/xpath/xpath_examples.asp

XQuery Anfragesprache für XML Daten benutzt Xpath Audrücke Analogie zu SQL

Xquery Beispiel <?xml version="1.0" encoding="ISO-8859-1"?> <bib> <book year="1994"> <title>TCP/IP Illustrated</title> <author><last>Stevens</last><first>W.</first></author> <publisher>Addison-Wesley</publisher> <price>65.95</price> </book> <book year="1992"> <title>Advanced Programming in the Unix environment</title> <book year="2000"> <title>Data on the Web</title> <author><last>Abiteboul</last><first>Serge</first></author> <author><last>Buneman</last><first>Peter</first></author> <author><last>Suciu</last><first>Dan</first></author> <publisher>Morgan Kaufmann Publishers</publisher> <price>39.95</price> <book year="1999"> <title>The Technology and Content for Digital TV</title> <editor> <last>Gerbarg</last><first>Darcy</first> <affiliation>CITI</affiliation> </editor> <publisher>Kluwer Academic Publishers</publisher> <price>129.95</price> </bib>

Xquery Beispiel Anfrage;: doc("books.xml")/bib/book[price<50] ergibt: <book year="2000"> <title>Data on the Web</title> <author><last>Abiteboul</last><first>Serge</first></author> <author><last>Buneman</last><first>Peter</first></author> <author><last>Suciu</last><first>Dan</first></author> <publisher>Morgan Kaufmann Publishers</publisher> <price>39.95</price> </book>

FLWOR For, Let, Where, Order by, Return for $x in doc("books.xml")/bib/book where $x/price>50 order by $x/title return $x/title ergibt: <title>Advanced Programming in the Unix environment</title> <title>TCP/IP Illustrated</title> <title>The Technology and Content for Digital TV</title>

XML - Dokumente in Datenbanken datenzentriert dokumentzentriert semistrukturiert

Arten der Speicherung Speicherung als Ganzes Generische Speicherung der Dokumentenstruktur Abbildung auf Datenbankstrukturen

Speicherung von XML-Dokumenten als Ganzes Original in einem Dateien system oder als CLOB in der Datenbank Volltextindex Strukturindex

Beispiel <hotel url=“http://www.hotel-huebner.de“ id=“h0001“ erstellt-am=“03/02/2003“ Autor=“Hans Müller“> <hotelname>Hotel Hübner</hotelname> <kategorie>4</kategorie> <adresse> <plz>18199</plz> <ort>Warnemünde</ort> <strasse>Seestraße</strasse> </adresse> <telefon>0381 / 5434-0</telefon> <fax> 0381 / 5434-444</fax> <anreisebeschreibung>Aus Richtung Rostock kommend ... </anreisebeschreibung> </hotel>

Volltextindex <hotel url=“http://www.hotel-huebner.de“ id=“h0001“ erstellt-am=“03/02/2003“ Autor=“Hans Müller“> <hotelname>Hotel Hübner</hotelname> <kategorie>4</kategorie> <adresse> <plz>18199</plz> <ort>Warnemünde</ort> <strasse>Seestraße</strasse> </adresse> <telefon>0381 / 5434-0</telefon> <fax> 0381 / 5434-444</fax> <anreisebeschreibung>Aus Richtung Rostock kommend ... </anreisebeschreibung> </hotel>

Volltext- und Strukturindex <hotel url=“http://www.hotel-huebner.de“ id=“h0001“ erstellt-am=“03/02/2003“ Autor=“Hans Müller“> <hotelname>Hotel Hübner</hotelname> <kategorie>4</kategorie> <adresse> <plz>18199</plz> <ort>Warnemünde</ort> <strasse>Seestraße</strasse> </adresse> <telefon>0381 / 5434-0</telefon> <fax> 0381 / 5434-444</fax> <anreisebeschreibung>Aus Richtung Rostock kommend ... </anreisebeschreibung> </hotel>

Anfragen Volltextindex Volletxt- und Strukturindex hotel AND warnemünde (hotel OR pension) AND (rostock OR warnemünde) Volletxt- und Strukturindex hotel.adresse.ort CONTAINS (“warnemünde“) AND hotel.freizeitmoeglichkeit CONTAINS (“swimming pool“)

Eigenschaften Volltextindex

Generische Speicherung Alle Informationen aus einem XML-Dokument werden gespeichert einfache generische Speicherung Document Object Model generisch = dem Sachverhalt angepasst

Beispiel

Document Object Model Die Baumstruktur wird auf eine Klassenstruktur abgebildet Speicherung in objektrelationalen oder objektorientierten Datenbanken

Anfragen XPath QXuery XQL Abfragesprache der Software AG SQL

Eigenschaften Generische Speicherung

Abbildung auf Datenbankstrukturen DTD oder Schema müssen vorhanden sein automatische oder anwenderdefinierte Verfahren Abbildung auf relationale objektrelationale objektorientierte Datenbanken

Abbildung

Beispiel

Anfragen SQL mit Joins Aggregatfunktionen Anfrageopimierung Update

Eigenschaften Daenbankstrukturen