Kapitel 2. Markup. Language. XML-Dokumente. XML Document Type Definition XML Namespaces Schemadefinitionssprache für XML.

Größe: px
Ab Seite anzeigen:

Download "Kapitel 2. Markup. Language. XML-Dokumente. XML Document Type Definition XML Namespaces Schemadefinitionssprache für XML."

Transkript

1 Kapitel 2 XML - extensible Markup Language XML-Dokumente XML-DTD XMLns XMLschema XML Document Type Definition XML Namespaces Schemadefinitionssprache für XML

2 Geschichtliche Entwicklung von XML Aus Neil Bradley: The XML companion 1997 XML 1992 HTML WWW 1986 SGML 1960 Generalized Markup Internet 2-2

3 Was ist ein Markup? Markup = zusätzliche Information in einem Dokumenttext,, z.b. Formatierungshinweise oder Verweise Jedes Textverarbeitungssystem generiert Markup, z.b. \par (in RTF) identifiziert Anfang eines Absatzes oder \sb240 spezifiziert 12-pt Space Benutzer gibt Markup in seltenen Fällen selbst ein (Gegenbeispiel: LaTeX) HTML = Hypertext Markup Language Sprache zur Darstellung von Information im Web enthält kein Generalized Markup, sondern Layout-Direktiven, wie z.b. <h1>, <h2>, <h3>, <em>, <b>, <ul>, <ol> oder <li> Generalized Markup trennt zwischen logischer und Layout-Struktur ermöglicht Strukturierung (Typisierung) und Sichtenbildung 2-3

4 XML 1.0 Spezifikation Vorschlag vom World Wide Web Consortium (W3C) Seit Februar 1998 W3C Recommendation Spezifiziert das Datenformat XML Grundsätzlicher syntaktischer Aufbau Elemente, Attribute, Entities Zeichensatz und die logische und physische Struktur Dokumenttypdefinitionen (DTD) Zielsetzung: : Format für Austausch, Verarbeitung und Darstellung von Information im Web 2-4

5 XML-Dokument Übersicht XML-Dokument Kommentar, Zeichensatzreferenz Prolog mit Dokumenttypdeklaration Dokument-Typ Typ-Definition (DTD) Element, Attribut, Externe DTD Teilmenge Entität Konditionale Abschnitte Dokument-Element Dokument Start-Tag, Ende-Tag, leeres-element-tag, PCDATA, CDATA Abschnitte, Entitätsreferenzen 2-5

6 XML-Dokument (ohne Prolog) Beispiel <?xml version='1.0' encoding='utf-8'?> <!-- Dieses XML-Dokument enthält Daten über Bücher --> <!-- Ein Kommentar darf beliebige Zeichenfolgen wie <tagname< tagname> > oder &entity& entity; ; enthalten --> <bookstore> <book genre="autobiography"> <title>the Autobiography of Benjamin Franklin</title> <author> <first-name>benjamin</first-name> <last-name>franklin</last-name> </author> <price>8.99</price> </book> <book genre="novel"> </book> </bookstore> 2-6

7 Aufbau von XML Elemente und Attribute XML nennt seine Objekte Elemente Elemente sind begrenzt durch Tags: Tagnamen sind "case-sensitive" Jedes geöffnete Tag muss auch wieder geschlossen werden Tags dürfen einander nicht überlappen; nicht erlaubt z.b.: <A> <B> </A> </B> Tags leerer Elemente haben besondere Syntax: <A/> (Shortcut für <A> </A>) Tags können Attribute enthalten: <A Attributname="Wert"...> </A> <book genre="autobiography"> <title> Autobiography of Benjamin Franklin </title> <price> <CHF/> 8,99 </price> </book> <book> XML definiert Baumstruktur! Wurzel heisst Dokumentelement genre <title> <price> Blattelemente enthalten Werte Einziger Datentyp: Zeichenkette autobiography <CHF/> 8,99 Autobiography of Benjamin Franklin 2-7

8 Element oder Attribut? Unterscheidung zwischen Element und Attribut ist beim Entwurf nicht eindeutig zu treffen Beispiel: Inhaltlich gleiche, aber syntaktisch verschiedene Darstellungen <author> <id>170470</id> <first-name>herman</first-name> <last-name>melville</last-name> </author> <author id="170470"> <first-name>herman</first-name> <last-name>melville</last-name> </author> Kleiner Unterschied: Attribute können im Gegensatz zu Elementen nicht geschachtelt und damit näher beschrieben werden 2-8

9 Aufbau von XML Entities Wiederverwendung von Teilen eines XML-Dokuments <!ENTITY Entityname "Ersetzungstext"> <!ENTITY Entityname SYSTEM "URL"> Entitätsreferenz: Beispiel: & Entityname ; Internes Entity Externes Entity Sonderzeichen: < < > > & & &apos; ' " " ä ä ö Ö ü Ü ß ä Ä ö Ö ü Ü ß <!ENTITY dozenten "Schek, Türker, Grabs"> <!ENTITY semester "WS2002/2003"> <vorlesung> Die Vorlesung "XML und Datenbanken" findet erstmalig im &semester; statt. Sie wird von &dozenten; gehalten. Weitere Vorlesungen, die im &semester von mindestens einem der Dozenten &dozenten; gehalten werden, sind "Informationssysteme-Kernfach" und "Objektrelationale, erweiterbare Datenbanken". </vorlesung> 2-9

10 XML-Dokument "Ausschnitt" der Grammatik XML-Dokument Prolog ::= Prolog XML-Element Kommentar* ::= XML-Deklaration? Kommentar* (DTD-Deklaration Kommentar*)? XML-Deklaration ::= <?xml version='nummer' (encoding='code' )?> Kommentar ::= <!-- CharData --> XML-Element Elementinhalt Attribut ::= <Tagname Attribut*> Elementinhalt </Tagname> <LeererTagname Attribut*/> ::= CharData? ((XML-Element Referenz Kommentar) CharData?)* ::= Attributname="Attributwert" Referenz ::= & Entityname ; Anmerkung: Die vorliegende XML-Grammatik ist ein wenig abgespeckt. Sie berücksichtigt einige wenige, für unsere Vorlesung irrelevante Teile nicht. CharData steht für eine Zeichenkette. Bei Kommentaren darf die Zeichenkette das Symbol '-' nicht enthalten. 2-10

11 XML als Datenmodell Logische Dokumentstruktur ist ein gerichteter Baum <Wurzelelement> Typ: DOCUMENT Eigenschaften der Knoten: Typ: Dokument, Element, Attribut, Kommentar, etc. Name: Elementname, Attributname, etc. Inhalt/Wert: Elementinhalt, Attributwert Typ: ELEMENT <Element> <Element> Typ: ELEMENT <Leeres-Element/> Beziehungen zwischen Knoten: Hierarchie: Eltern/Kind, Vorfahr/Nachfahr Sequenz: unmittelbar vorher, mittelbar vorher Position: absolute, relative, range Elementwert Attribut Typ: TEXT Typ: ATTRIBUTE Attributwert Typ: TEXT 2-11

12 OEM versus XML OEM Objekt OID Label Atomare Werte (Strings) Komplexe Werte (Mengen von OIDs) XML Element ID-Attribut Elementname Textueller Inhalt von Elementen Unterelemente (mit ID-Attributen) 2-12

13 Flexibilität von XML (1) bookstore book booktitle book title review title title review review The Autobiography of Benjamin Franklin Good stuff reviewer The Confidence Man The Gorgias Gorgeous! I liked it Torsten Grabs reviewer reviewer Bücher können (beliebig viele) Reviews erhalten, müssen aber nicht notwendigerweise auch eins besitzen Hans-Jörg Schek Can Türker 2-13

14 Flexibilität von XML (2) bookstore book booktitle book title reviewer title reviews The Autobiography of Benjamin Franklin Torsten Grabs remark The Confidence Man The Gorgias reviewer review Good stuff Hans-Jörg Schek I liked it remark reviewer Informationsgehalt des XML-Dokuments ist äquivalent zu dem des vorherigen XML-Dokuments Gorgeous! Can Türker 2-14

15 Flexibilität von XML (3) Flexibilität von XML bietet viele Möglichkeiten für den Aufbau eines e XML- Dokumentes Dokumenttyp (Schema) ist nicht explizit festgelegt/bekannt Probleme: Anwendungen sind für bestimmte Dokumenttypen geschrieben Fehlende Kompatibilität bei Datenaustausch Fehleranfälligkeit (Datenformate, fehlende Datenfelder, etc.) Vorgehen: Einschränkung der Flexibilität Verabredung einheitlicher Formate Standardisierung von Klassen von XML-Dokumenten Möglichkeiten zur Beschreibung des Dokumenttyps bzw. -schemas XML-DTD und XML-Schema 2-15

16 Dokumenttypdefinition DTD Bisher nur allgemeine syntaktische Eigenschaften von XML betrachtet tet Es bleibt die Frage: Welche Tags dürfen in einem XML-Dokument vorkommen? DTD ist eine grammatische Beschreibung der logischen Elemente und d des strukturellen Aufbaus für eine Klasse von XML-Dokumenten DTD gibt vor, welche Tags/Markups (an welcher Stelle in einem Dokument des Typs) vorkommen dürfen DTD ermöglicht die Spezifikation und Wiederverwendung unterschiedlicher Dokumenttypen, mit jeweils unterschiedlichem Markup Standard-DTDs sichern Kompatibilität bei Datenaustausch Im folgenden: Wie sieht eine DTD aus? Was kann in einer DTD alles spezifiziert werden? Wie verbindet man eine DTD und ein XML-Dokument? 2-16

17 Beispiel: Bookstore XML-Dokumentkopf XML-Prolog: XML-DTD als interne Beschreibung "bookdtd"" ist hier der Name der DTD XML-Dokument (Dokumentinstanz) <?xml version='1.0' encoding='utf-8'?> <!DOCTYPE bookstore [ <!ELEMENT bookstore <!ELEMENT book <!ATTLIST book genre <!ELEMENT title <!ELEMENT author <!ELEMENT price <!ELEMENT name <!ELEMENT first-name <!ELEMENT last-name ]> (book)*> (title, author+, price?)> CDATA #REQUIRED> (#PCDATA)> ( name (first-name, last-name))> (#PCDATA)> (#PCDATA)> (#PCDATA)> (#PCDATA)> <bookstore> <book genre="autobiography"> <title>the Autobiography of Benjamin Franklin</title> <author> <first-name>benjamin</first-name> <last-name>franklin</last-name> </author> <price>8.99</price> </book> <book genre="novel"> </book> </bookstore> 2-17

18 DTD-Deklaration Deklaration - "Ausschnitt" der Grammatik DTD-Deklaration ::= <!DOCTYPE Dokumentelementname Externe-DTD-Deklaration? ([Markup-Deklaration*])? > Externe-DTD-Deklaration : Root Element Type][WFC: External Subset Markup-Deklaration ::= SYSTEM "Name" PUBLIC "PublicName""SystemName" ::= Elementdeklaration Attributdeklaration Entity-Deklaration Kommentar N Anmerkung: Die vorliegende XML-Grammatik ist ein wenig abgespeckt. Sie berücksichtigt einige wenige, für unsere Vorlesung irrelevante Teile nicht. 2-18

19 DTD-Elementdeklaration Elementdeklaration legt fest, wie der direkte Inhalt eines Elements aufgebaut ist Syntax <!ELEMENT Elementname Inhaltsmodell> Inhaltsmodell ist ein regulärer Ausdruck, der den Aufbau des direkten Inhalts spezifiziert Unterelement Elementwert leeres Element beliebiger Inhalt <!ELEMENT bsp (a)> <!ELEMENT bsp (#PCDATA)> <!ELEMENT bsp EMPTY> <!ELEMENT bsp ANY> Konstruktoren Sequenz Alternative <!ELEMENT bsp (a, b)> <!ELEMENT bsp (a b)> Kardinalität (Occurrence Indicators) optional (null oder einmal) optional & wiederholbar notwendig & wiederholbar <!ELEMENT bsp (a)?> <!ELEMENT bsp (a)*> <!ELEMENT bsp (a)+> Inhaltsmodelle können mit Klammern beliebig kombiniert werden 2-19

20 DTD-Elementdeklaration Grammatik Element-Dekl ::= Inhaltsmodell ::= Elementtyp ::= <!ELEMENT Elementname Inhaltsmodell> (Elementtyp) ANY EMPTY #PCDATA Elementname (Elementtyp) Elementtyp* Elementtyp+ Elementtyp? Elementtyp, Elementtyp Elementtyp Elementtyp "beliebiger" Typ "leerer" Typ String-Typ Sequenztyp "nicht-leerer" Sequenztyp "optionaler" Typ Tupeltyp Vereinigungstyp 2-20

21 Beispiele: DTD-Elementdeklaration <!ELEMENT leeres_element EMPTY> <!ELEMENT container ANY> <!ELEMENT (from, to, cc*, bcc*, subject?, body)> <!ELEMENT book (((toc, abstract?) (abstract?, toc)), chapter+, literature)> <!ELEMENT text (#PCDATA separator)*> 2-21

22 DTD-Attributdeklaration Jedes Element kann mit (beliebig vielen) Attributen versehen sein Syntax <!ATTLIST Elementname (Attributname Typ Vorgabe)*> Attributtypen Stringtyp Aufzählungstyp eindeutige Element-ID ID-Referenz Entity-Referenz CDATA (Wert_1... Wert_n) ID IDREF(S) ENTITY(S) Attributvorgaben notwendiges Attribut optionales Attribut fester Attributwert #REQUIRED #IMPLIED #FIXED "Wert" 2-22

23 DTD-Attributdeklaration Grammatik XML-Attributliste::= <!ATTLIST Elementname Attribut*> Attribut::= Attributtyp::= Vorgabe::= Attributname Attributtyp Vorgabe CDATA (Wert ( Wert)*) Attributname ID Attributname IDREFS #REQUIRED CharData? #IMPLIED CharData? #FIXED CharData String-Typ Aufzählungstyp ID-Typ Referenztyp "obligatorisch" "optional" "fest auf Default" 2-23

24 Beispiele: DTD-Attributdeklaration <!ELEMENT book (title, price)> <!ATTLIST book genre CDATA #REQUIRED authors IDREFS # IMPLIED> <!ELEMENT author (name)> <!ATTLIST author id ID #REQUIRED> <!ELEMENT price (#PCDATA)> <!ATTLIST price currency (CHF EUR USD) #IMPLIED> <!ELEMENT timestamp (id)> <!ATTLIST timestamp hour CDATA #IMPLIED minutes CDATA #IMPLIED seconds CDATA FIXED "0"> Attributbelegungen sind im Start-Tag enthalten Beispiel: <book genre="trivia"> <title>das ganze Leben ist ein Quiz</title> </book> 2-24

25 Beispiel: ID/IDREF-Attribute <?xml version='1.0'?> <!-- DTD declaration --> <bookstore>... <author id="hm"> <first-name>herman</first-name> <last-name>melville</last-name> </author> <book genre="novel" authors="hm"> <title>the Confidence Man</title> <price currency="usd">11.99</price> </book>... </bookstore> author id hm firstname lastname... bookstore authors title currency book genre USD novel price Herman Melville The ConfidenceMan

26 DTD-Deklarationsformen Deklarationsformen Externe DTD Deklaration <?xml version='1.0' encoding='iso '?> <!DOCTYPE test PUBLIC "-//DBRG//DTD MyDoc V1.0//DE" " <test> "test" ist das Dokumentelement </test> Wiederverwendung von Typdefinitionen Interne DTD Deklaration <?xml version='1.0' encoding='iso '?> <!DOCTYPE test [ <!ELEMENT test (#PCDATA)> ]> <test> "test" ist das Dokumentelement </test> Gemischte Nutzung <?xml version='1.0' encoding='iso '?> <!DOCTYPE test SYSTEM " [ <!ENTITY hallo "hallo welt"> ]> <test> &hallo; </test> 2-26

27 Beispiel: Externe DTD-Deklaration Deklaration <?xml version='1.0' encoding='iso '?> <!-- This file represents a fragment of a book store inventory database --> <!DOCTYPE bookstore SYSTEM " <bookstore> <book genre="autobiography"> <title>the Autobiography of Benjamin Franklin</title> <author> <first-name>benjamin</first-name> <last-name>franklin</last-name> </author> <price currency="usd">8.99</price> </book> <book genre="novel"> <!ELEMENT bookstore <title>the Confidence Man</title> <!ELEMENT book <author> <!ATTLIST book <first-name>herman</first-name> <!ELEMENT title <last-name>melville</last-name> <!ELEMENT author </author> <!ELEMENT price <price currency="usd">11.99</price> <!ATTLIST price </book> <!ELEMENT name <book genre="philosophy"> <!ELEMENT first-name <title>the Gorgias</title> <author> <name>plato</name> </author> <price currency="eur">9.99</price> </book> </bookstore> bookstore.xml bookstore.dtd (book)*> (title,author+,price?)> genre CDATA #REQUIRED> (#PCDATA)> (name (first-name, last-name))> (#PCDATA)> currency (CHF EUR USD)> (#PCDATA)> (#PCDATA)> <!ELEMENT last-name (#PCDATA)> 2-27

28 Beispiel: Vollständiger Elementbaum bookstore autobio. genre book novel genre book phil. genre book title The Autobiography of Benjamin Franklin author price title author price title author price currency currency USD USD EUR 8.99 The Gorgias 9.99 firstname lastname The Confidence Man name Benjamin Franklin Plato 2-28

29 XML-Konformität: Well-Formed versus Valid wohlgeformt (well-formed formed) Dokument besitzt geordnete syntaktische Eigenschaften (siehe Grammatik) gültig (valid( valid) Dokument ist wohlgeformt und folgt einem vorgegebenen Schema, formalisiert in einer DTD Beispiel: nicht vollständig markiertes Dokumentfragment <A><B>pipapo<C>hello world</c></a> mögliche Strukturen: </B> </B> pipapo hello world pipapo hello world 2-29

30 XMLns: : XML-Namespaces Mechanismus zur Einbindung vordefinierter Element- und Attributnamen (Markup-Vokabular) Zur Vermeidung von Namenskonflikten, wenn mehrere DTD herangezogen en werden Deklaration als Attribut des Dokumentelement: <Elementname xmlns:namensraum-id = "Namensraum-URI"> Beispiel: Bezug auf Namensräume <tourismusinformation xmlns:hotelinfo=" xmlns:eventinfo=" <hotelinfo:ort>zürich</hotelinfo:ort> <eventinfo:ort>winterthur</eventinfo:ort> </tourismusinformation> 2-30

31 Keine XML-Syntax Nachteile von DTDs Positiv jedoch: DTD-Syntax ist kompakt, leicht lesbar und gut verständlich Keine echte Typisierung: Alle Werte sind Zeichenketten Dokumentenorientierte Herkunft unverkennbar Darstellungs- und Verarbeitungsmöglichkeiten in Anwendungen sind stark begrenzt Keine Integritätsbedingungen, z.b. keine exakten Unter- bzw. Obergrenzen für die Kardinalität von Sequenzen Semantische Korrektheit kann nicht überprüft werden Keine Namensräume (hier muss XMLns verwendet werden) Fazit: zusätzliche Typisierung (Schemabeschreibung) wünschenswert für die Verarbeitung von XML-Dokumenten in Anwendungen XML-Schema leistet dies (und soll irgendwann DTDs ganz ablösen) 2-31

32 XML-Schema (XMLschema( XMLschema) Mechanismus zur Trennung von Tags und Typen (Struktur vs. Typisierung) Modulare Schemadefinitionen mit voller Typisierung Führt Menge von Basisdatentypen ein Ermöglicht Typkonstruktionen inklusive Vererbung Bietet Dokumentationsmöglichkeiten Seit Mai 2001 W3C Recommendation Part 1: Structures, Part 2: Datatypes Schemadefinition erfolgt in XML-Syntax ("sieht ziemlich aufgebläht aus") Gerüst einer Schemadefinition: <xsd:schema xmlns:xsd= " </xsd:schema> 2-32

33 XML-Schema Schema- Basisdatentypen XML-Schema Schema- Typsystem ist von SQL und Java beeinflusst! 2-33

34 Datentyparten Einfache versus komplexe Datentypen Einfache Datentypen können keine Unterelemente und Attribute besitzen, komplexe Datentypen schon Beide sind für Elemente und Attribute verwendbar Alle DTD-Attributtypen sind auch im XML-Schema enthalten Vordefinierte versus konstruierte Datentypen Typkonstruktoren: Restriction: Einschränkung von einfachen Datentypen List: Liste von einfachen Datentypen Union: Vereinigung von einfachen Datentypen Subtypbildung: Extension: Erweiterung um Elemente bzw. Attribute (erzeugt komplexe Datentypen) 2-34

35 Einfache, benutzerdefinierte Datentypen Einschränkung Listenbildung <xsd:simpletype name="hobbys"> <xsd:list itemtype="xsd:string"/> </xsd:simpletype> <xsd:simpletype name="schulnote"> <xsd:restriction base="xsd:short"> <xsd:mininclusive value="1"/> <xsd:maxinclusive value="6"/> </xsd:restriction> </xsd:simpletype> <xsd:simpletype name="farben"> <xsd:restriction base="xsd:string"> <xsd:enumeration value="rot"/> <xsd:enumeration value="blau"/> <xsd:enumeration value="weiss"/> </xsd:restriction> </xsd:simpletype> Vereinigung <xsd:simpletype name="fahrzeug"> <xsd:union membertype="pkw LKW Motorrad Fahrrad "/> </xsd:simpletype> 2-35

36 Einschränkungsmöglichkeiten Unter-/Obergrenzen bei geordneten Wertebereichen mininclusive, maxinclusive (Grenzwerte sind eingeschlossen) minexclusive, maxexclusive (Grenzwerte sind ausgeschlossen) Längeneinschränkung bei Zeichenketten length, minlength, maxlength (genaue, minimale bzw. maximale Länge) Kardinalitätseinschränkung bei Listen (zulässige( Anzahl von Elementen) length, minlength, maxlength Längeneinschränkung bei numerischen Datentypen totaldigits (maximale Anzahl der Dezimalstellen) fractiondigits (Anzahl der Nachkommastellen) Aufzählung der erlaubten Werte enumeration 2-36

37 Komplexe, benutzerdefinierte Datentypen (1) Sequenz (sequence) Alternative (choice) <xsd:complextype name="fahrzeug" abstract="true"> <xsd:complexcontent> <xsd:sequence> <xsd:element name="hersteller" type="xsd:string"/> <xsd:element name="typ" type="xsd:string"/> </xsd:sequence> <xsd:choice> <xsd:element ref="ottomotor"/> <xsd:element ref="dieselmotor"/> </xsd:choice> </xsd:complexcontent> <xsd:attribute name="raeder" type="xsd:integer" default="4"/> </xsd:complextype> Sequenz: Liste von Elementen mit festgelegter Reihenfolge Alternative: Auswahl eines der vorgegebenen Elemente 2-37

38 Komplexe, benutzerdefinierte Datentypen (2) Subtypbildung durch Erweiterung (extension) <xsd:complextype name="firmenfahrzeug"> <xsd:complexcontent> <xsd:extension base="fahrzeug"> <xsd:sequence> <xsd:element name="firma" type="xsd:string"/> <xsd:element name="inspektion" type="xsd:date"/> </xsd:sequence> </xsd:extension> </xsd:complexcontent> </xsd:complextype> 2-38

39 XML-DTD XML-Schema Beispiel: DTD versus XML-Schema <!ELEMENT book (title, author+, price?)> <!ATTLIST book genre (autobiography novel philosophy) #REQUIRED> <!ELEMENT author (#PCDATA)> <!ELEMENT title (#PCDATA)> <!ELEMENT price (#PCDATA)> <?xml version='1.0?> <xsd:schema xmlns:xsd=" <xsd:element name="book" type="book"/> <xsd:complextype name="book"> <xsd:sequence> <xsd:element name="title" type="xsd:string"/> <xsd:element name="author" type="xsd:string" minoccurs="1" maxoccurs="unbounded"/> <xsd:element name="price" type="xsd:decimal" minoccurs="0" maxoccurs="1"/> </xsd:sequence> <xsd:attribute name="genre" type="genre"/> </xsd:complextype> <xsd:simpletype name="genre"> <xsd:restriction base="xsd:string"> <xsd:enumeration value="autobiography"/> <xsd:enumeration value="novel"/> <xsd:enumeration value="philosophy"/> </xsd:restriction> </xsd:simpletype> </xsd:schema> 2-39

40 DTD XML-Schema Grammatik Elemente + Attribute Nur Part-Of" Of"-Beziehungen PCDATA, CDATA Struktur und Typisierung Elemente, Attribute, einfache und komplexe Typen, Gruppen Zusätzlich Kind-Of" = Vererbung Diverse Datentypen Einbindung als Teil des Prologs eines XML-Dokument Beispiel: <!DOCTYPE bookstore SYSTEM "bookstore.dtd"> Angabe als Attribut des Dokumentelements Beispiel: <bookstore xmlns:xsd=" xsd:schemalocation="bookstore.xsd">... </bookstore> 2-40

41 Revue XML-Konformitäten wohlgeformt (well( well-formed) Dokument besitzt geordnete syntaktische Eigenschaften gültig (valid( valid) Dokument ist wohlgeformt und folgt einem a priori gegebenen Schema, formalisiert in einer Dokumenttypdefinition (DTD) Namensraumkonform (namespace( namespace-compliant) Markup in einem wohlgeformten Dokument entspricht der Deklarationen der referenzierten Namensräume Schemakonform (schema( schema-validity) Dokument ist wohlgeformt und konform zu einem gegebenen XML-Schema 2-41

42 Gültiges, aber nicht schemavalides Dokument <?xml version='1.0?> <bookstore xmlns:xsd=" xsd:schemalocation="bookstore.xsd"> <book genre="autobiography"> <title>the Autobiography of Benjamin Franklin</title> <author>benjamin Franklin</author> <price>8.99</price> </book> <book genre="novel"> <title>the Confidence Man</title> <author>herman Melville</author> <price>11.99</price> </book> <book genre="action"> <title>goldeneye</title> <author>pierce Brosnan</author> <price>14.99</price> </book> </bookstore> nicht schemakonform 2-42

43 Schemavalides Dokument <?xml version='1.0?> <bookstore xmlns:xsd=" xsd:schemalocation="bookstore.xsd"> <book genre="autobiography"> <title>the Autobiography of Benjamin Franklin</title> <author>benjamin Franklin</author> <price>8.99</price> </book> <book genre="novel"> <title>the Confidence Man</title> <author>herman Melville</author> <price>11.99</price> </book> <book genre="philosophy"> <title>the Gorgias</title> <author>plato</author> <price>9.99</price> </book> </bookstore> 2-43

44 Grobe Gegenüberstelung: : XML versus SGML XML ist eine Instanz von SGML (Standard Generalized Markup Language) SGML: DTD ist obligatorisch (nicht in XML) SGML erlaubt das Weglassen von Markup, wenn Beginn und Ende logischer Dokumentbestandteile abgeleitet werden können z.b. aus anderem Markup, zusammen mit der DTD XML-Mechanismen Mechanismen zur Festlegung, welcher Generalized Markup wo im Dokument zulässig ist weniger flexibel vereinfachen die Implementierung der Überprüfung der DTD-Konformität XML hat weniger vordefinierte (Attribut-)Typen Fazit: diverse, eher selten verwendete SGML-Features werden weggelassen Werkzeuge für XML sind "billiger" als für SGML XML weiter verbreitet als SGML, da einfacher zu erlernen 2-44

45 Vergleich: ER, XML, SGML ER-Modell XML SGML Modell Schema für Material- verwaltung z.b. MathML HTML Dokumenttyp Datenbank, konform zum Schema e ip ip +1= 0 n f (n) = Σ k k=1 Homepage von Förster Dokument- instanz 2-45

46 CSS XML-Architektur des W3C Cascading Style Sheets W3C Recommendation , revised (level 1) W3C Recommendation (level 2) DOM Document Object Model (DOM) Level 1 W3C Recommendation, , Second Edition RDF/RDFS XLink XML XMLns XMLschema XPointer XSL Resource Description Framework W3C Recommendation Extensible Linking Language W3C Recommendation Extensible Markup Language W3C Recommendation, Namespaces in XML W3C Recommendation, Schemas in XML W3C Recommendation, xx.xx.200x XML Pointer Language W3C Recommendation, Extensible Stylesheet Language W3C Recommendation

47 Standard-DTDs (1) Offizielle W3C-DTDs MathML: Mathematical Markup Language SMIL: Synchronized Multimedia Integration Language Appel: A Privacy Preference Exchange Language RDF: Resource Description Framework RDFS: Resource Description Framework Schemas SVG: Scaleable Vector Graphics HTML: Hypertext Markup Language E-Commerce OFX: Open Financial Exchange XMLEDI: Electronic Data Interchange 2-47

48 Standard-DTDs (2) Wissenschaft CML: Chemical Markup Language Computer, Kommunikation CDF: Channel Definition Format OSD: Open Software Distribution WIDL: Web Interface Definition Language JSML: Java Speech Markup Language DocBook Über hundert weitere von verschiedenen Gruppen angekündigte DTDs: Immobilien, Logfiles,, Genealogie etc. 2-48

49 Mit XML zusammenhängende Standards SGML Standard Generalized Markup Language ISO/IEC 8879:1986 HyTime UCS Hypermedia/Time-based Structuring Language ISO/IEC 10744:1992 Universal Multiple-Octet Coded Character Set (UCS) ISO/IEC :1993 DSSSL Document Style Semantics and Specification Language ISO/IEC 10179:

50 Zusammenfassung Wir wissen nun wie XML-Dokumente aufgebaut sind XML definiert Baumstruktur Semistrukturiertes Datenmodell bietet Flexibilität XML-DTD definiert Grammatik macht Dokumenttyp explizit einziger Datentyp: Zeichenkette; keine Integritätsbedingungen gültige XML-Dokumente XML-Namespaces definieren Vokabular Namenskonfliktauflösung XML-Schema bietet reiches Typsystem á la SQL schemakonforme XML-Dokumente Wir wollen nun XML-Dokumente in Anwendungen verarbeiten Benötigen dazu XML-Prozessoren 2-50

XML, XML-DTDs, und XML Schema

XML, XML-DTDs, und XML Schema Eidgenössische Technische Hochschule Zürich Swiss Federal Institute of Technology Zurich Institut für Informationssysteme Dr. C. Türker XML und Datenbanken WS 03/04 Übung 3 Beispiellösung XML, XML-DTDs,

Mehr

XML Schema 2016 S h_da S Seite 1

XML Schema 2016 S h_da S Seite 1 XML Schema Seite 1 XML/Schema: Strukturen Dokumentinstanz Dokumenttyp Wellformed Valid Dokumentstrukturdefinition mit XML/Schema XML Document Type Definition Seite 2 XML Dokument Instanz XML-Deklaration

Mehr

DTDs und XML-Schema. Robert Tolksdorf Freie Universität Berlin Institut für Informatik Netzbasierte Informationssysteme

DTDs und XML-Schema. Robert Tolksdorf Freie Universität Berlin Institut für Informatik Netzbasierte Informationssysteme DTDs und XML-Schema Robert Tolksdorf Freie Universität Berlin Institut für Informatik Netzbasierte Informationssysteme tolk@ag-nbi.de Heutige Vorlesung letzte Woche XML-Syntax Namensräume Heute Definition

Mehr

Zusammenfassung XML. Metasprache um Dokumenttypen zu definieren

Zusammenfassung XML. Metasprache um Dokumenttypen zu definieren 1. XML Grundbegriffe XML = extensible Markup Language Metasprache um Dokumenttypen zu definieren XML Baum

Mehr

XML-Schema Datentypen

XML-Schema Datentypen Datentypen Data Types Simple Types Complex Types User-derived Built-in Atomic (restriction) Non-atomic (list, union) Primitive Derived WT:III-1 XML Schema Reference Lettmann 2014 Datentypen anytype anysimpletype

Mehr

XML-Übersicht. Von HTML zu XML

XML-Übersicht. Von HTML zu XML XML-Übersicht Nutzen von XML (extensible Markup Language) Aufbau von XML-Dokumenten Definition von Grammatiken: DTD und XML Schema XML-Nutzung: Parser und Stylesheets mit schwarz-roter Linie aus: Vorlesung

Mehr

XML-Übersicht. Von HTML zu XML. Nutzen von XML. Geschichte von XML. Eigenschaften von XML. Nutzen von XML (extensible Markup Language)

XML-Übersicht. Von HTML zu XML. Nutzen von XML. Geschichte von XML. Eigenschaften von XML. Nutzen von XML (extensible Markup Language) Nutzen von XML (extensible Markup Language) Aufbau von XML-Dokumenten XML-Übersicht Definition von Grammatiken: DTD und XML Schema XML-Nutzung: Parser und Stylesheets mit schwarz-roter Linie aus: Vorlesung

Mehr

Deklaration standalone="yes" Quelle:

Deklaration standalone=yes Quelle: Wohlgeformtes XML-Dokument 1. Zu jedem Start-Tag existiert genau ein Ende-Tag 2. Bei leeren Elementen können diese zusammenfallen 3. Korrekte Elementschachtelung, d.h. keine Überlappung 4. Genau ein Wurzelelement

Mehr

XML Schema 2012/2013 S Seite 1 h_da W

XML Schema 2012/2013 S Seite 1 h_da W XML Schema Seite 1 XML/Schema: Strukturen Wiederholung Element / Attribut Deklaration XML Document Type Declaration Seite 2 XML Schema Schemata sind XML-Dokumente

Mehr

XML exemplarisch. nach: André Bergholz, Extending Your Markup: An XML Tutorial IEEE Internet Computing, Jul./Aug. 2000, 74 79

XML exemplarisch. nach: André Bergholz, Extending Your Markup: An XML Tutorial IEEE Internet Computing, Jul./Aug. 2000, 74 79 XML exemplarisch nach: André Bergholz, Extending Your Markup: An XML Tutorial IEEE Internet Computing, Jul./Aug. 2000, 74 79 Wohlgeformte XML-Dokumente bestehen aus Prolog genau einem Element Beispiel-Prolog.

Mehr

Konzeptionelle Modellierung von XML-Dokumenttypen

Konzeptionelle Modellierung von XML-Dokumenttypen Konzeptionelle Modellierung von XML-Dokumenttypen Rainer Eckstein Institut für Informatik LFE DBIS Humboldt-Universität zu Berlin Rainer Eckstein 1 Konzeptionelle Modellierung von XML: XML (extensible

Mehr

Eine Dokumenttypdefinition lässt sich im Kopfbereich des XML-Dokumentes (interne DTD) oder in einer separaten Datei formulieren (externe DTD).

Eine Dokumenttypdefinition lässt sich im Kopfbereich des XML-Dokumentes (interne DTD) oder in einer separaten Datei formulieren (externe DTD). IT-Zertifikat: Daten- und Metadatenstandards XML: wohlgeformt vs. gültig XML-Dokumente können gültig sein. Gültige (valide) Dokumente müssen strengeren Anforderungen bzgl. Ihrer Struktur genügen. Diese

Mehr

2 XML-Basiskonzepte. 2.1 XML-Dokumente

2 XML-Basiskonzepte. 2.1 XML-Dokumente D3kjd3Di38lk323nnm 19 Im Rahmen dieses Buches können wir keine vollständige Einführung in alle XML-Konzepte geben. Diejenigen Konzepte von XML, die für das Verständnis von XQuery nötig sind, sollen aber

Mehr

Hauptseminar Informatik. Die Strukturierung von XML-Dokumenten mit Hilfe von DTDs und XML Schema

Hauptseminar Informatik. Die Strukturierung von XML-Dokumenten mit Hilfe von DTDs und XML Schema Hauptseminar Informatik Die Strukturierung von XML-Dokumenten mit Hilfe von DTDs und XML Schema Gliederung 1. Motivation 2. XML Eine Einführung 3. DTD 4. XML Schema 4.1 Vergleich DTD und XML Schema 4.2

Mehr

XML steht für Extensible Markup Language. Helmut Vonhoegen (2007) beschreibt XML unter anderem so:

XML steht für Extensible Markup Language. Helmut Vonhoegen (2007) beschreibt XML unter anderem so: XML 1. Worum geht es? XML steht für Extensible Markup Language. Helmut Vonhoegen (2007) beschreibt XML unter anderem so: XML definiert eine Syntax, um strukturierte Datenbestände jeder Art mit einfachen,

Mehr

3. XML Schema. XML Schema. Eigenschaften von XML Schema. Vorteile eines expliziten Schemas: Die XML Schema Recommendation des W3C besteht aus:

3. XML Schema. XML Schema. Eigenschaften von XML Schema. Vorteile eines expliziten Schemas: Die XML Schema Recommendation des W3C besteht aus: 3. XML Schema Schemata 3. XML Schema 3. XML Schema Schemata XML Schema Vorteile eines expliziten Schemas: Bekanntmachen der Struktur vereinfachte Verarbeitung in Applikationen dedizierte Speicherung Die

Mehr

2. Einführung in Datenbanken und XML

2. Einführung in Datenbanken und XML 2. Einführung in Datenbanken und XML Was ist XML? 2. Einführung in Datenbanken und XML XML steht für extensible Markup Language durch das W3C entwickeltes Dokumentenformat einfach, flexibel, von SGML abgeleitet

Mehr

Logische Dokumentenstruktur mit SGML und XML

Logische Dokumentenstruktur mit SGML und XML Logische Dokumentenstruktur mit SGML und XML ein Referat von Oliver Lichte olichte@techfak.uni-bielefeld.de 15. Mai 2001 Standard Generalized Markup Language SGML GML Ende der sechziger Jahre von IBM entwickelt.

Mehr

IT-Zertifikat: Daten- und Metadatenstandards

IT-Zertifikat: Daten- und Metadatenstandards IT-Zertifikat: Daten- und Metadatenstandards DTD - Document Type Definition / Dokumenttypdefinition Das (bislang) Wichtigste auf einen Blick Externe DTD einbinden:

Mehr

Semantic Web Technologies I

Semantic Web Technologies I www.semantic-web-grundlagen.de Semantic Web Technologies I Lehrveranstaltung im WS07/08 M.Sc. Markus Krötzsch PD Dr. Pascal Hitzler Dr. Sebastian Rudolph entspricht Kapitel 2 des Buches Semantic Web -

Mehr

DTD: Syntax-Zusammenfassung

DTD: Syntax-Zusammenfassung DTD: Syntax-Zusammenfassung Dokumenttyp-Deklarationen Interne Teilmenge ]> Externe

Mehr

Was ist SGML. - welche Auszeichnungen (Mark up) sind erlaubt? - welche Auszeichnungen sind notwendig?

Was ist SGML. - welche Auszeichnungen (Mark up) sind erlaubt? - welche Auszeichnungen sind notwendig? Was ist SGML SGML = Standard Generalized Markup Language internationaler Standard für die Beschreibung von Textauszeichnungen ( marked up text ) SGML ist keine Auszeichnungssprache sondern ein Formalismus

Mehr

Strukturierung von Inhalten

Strukturierung von Inhalten Strukturierung von Inhalten extensible Markup Language Metasprache erlaubt die Definition eigener Markupsprachen zur Strukturierung von Informationen World Wide Web Consortium (W3C) Standard Basiert auf

Mehr

XML Grundlagen Teil I

XML Grundlagen Teil I XML Vorlesung FH Aargau, SS 2006 XML Grundlagen Teil I Erik Wilde 20.3.2006 http://dret.net/lectures/xml-fhnw-ss06/ 20.3.2006 XML Vorlesung FHA SS 2006 1 Übersicht Aufbau von XML XML Dokumenten-Syntax

Mehr

Tutorial 3 Einführung in XML

Tutorial 3 Einführung in XML Tutorial 3 Einführung in XML 1 Stefan Huster In diesem Tutorial lernen Sie die Grundlagen von XML kennen. Sie werden lernen, wie XML- Dokumente aufgebaut sind und wie ihre Struktur formal definiert werden

Mehr

Datenaustauschformate. Datenaustauschformate - FLV

Datenaustauschformate. Datenaustauschformate - FLV Datenaustauschformate FLV-Dateien CSV-Dateien XML-Dateien Excel-Dateien Access- Backupdateien Günter M. Goetz 108 Datenaustauschformate - FLV Fixed Length Values Repräsentation einer Tabelle als 'Flat-File'

Mehr

... MathML XHTML RDF

... MathML XHTML RDF RDF in wissenschaftlichen Bibliotheken (LQI KUXQJLQ;0/ Die extensible Markup Language [XML] ist eine Metasprache für die Definition von Markup Sprachen. Sie unterscheidet sich durch ihre Fähigkeit, Markup

Mehr

XML-Schema. Marko Harasic Freie Universität Berlin Institut für Informatik Netzbasierte Informationssysteme

XML-Schema. Marko Harasic Freie Universität Berlin Institut für Informatik Netzbasierte Informationssysteme XML-Schema Marko Harasic Freie Universität Berlin Institut für Informatik Netzbasierte Informationssysteme harasic@inf.fu-berlin.de Warum XML-Schema? 32.904237 73.620290

Mehr

<B1>Skript</B1> Skript zur Vorlesung Auszeichnungssprachen Stand: September 2016

<B1>Skript</B1> Skript zur Vorlesung Auszeichnungssprachen Stand: September 2016 Klaus Westermann Skript Skript zur Vorlesung Auszeichnungssprachen Stand: September 2016 Nr.: 12 Attribute, Entities B1 Skript "Auszeichnungssprachen" von Klaus Westermann ist lizenziert unter

Mehr

XML Eine Einführung XML Dokumente Erstellen

XML Eine Einführung XML Dokumente Erstellen XML Eine Einführung XML Dokumente Erstellen Entities definieren und verwenden XML (C) J.M.Joller 1 Der XML Entity Mechanismus ist Ein zeitsparendes Werkzeug Eine Möglichkeit verschiedene Datentypen in

Mehr

XHTML. Lernfragen zu XHTML. Was ist HTML? Überblick

XHTML. Lernfragen zu XHTML. Was ist HTML? Überblick Lernfragen zu XHTML XHTML Ist XHTML eine Erweiterung von HTML? Wie hängt XHTML mit XML zusammen? Wie ist ein XHTML-Dokument strukturiert? Wo sind die klassischen Einsatzgebiete von XHTML? Referat von Peter

Mehr

Verteilte Anwendungen. Teil 2: Einführung in XML

Verteilte Anwendungen. Teil 2: Einführung in XML Verteilte Anwendungen Teil 2: Einführung in XML 05.10.15 1 Literatur [2-1] Eckstein, Robert; Casabianca, Michel: XML Kurz und gut. O'Reilly, 2. Auflage, 2003 [2-2] Nussbaumer, Alfred; Mistlbacher, August:

Mehr

XML Eine Einführung XML Dokumente Erstellen

XML Eine Einführung XML Dokumente Erstellen XML Eine Einführung XML Dokumente Erstellen Gültige XML Dokumente Erstellen XML (C) J.M.Joller 1 Lernziele Nach dem Durcharbeiten dieser Lektion sollten Sie in der Lage sein Zu definieren, was man unter

Mehr

XML, XHTML und MathML

XML, XHTML und MathML XML, XHTML und MathML Erik Wilde Institut für Technische Informatik und Kommunikationsnetze (TIK) ETH Zürich 3.7.03 Erik Wilde 1 Programm Einführung und Geschichte von XML XML Basics (Dokumente, DTDs)

Mehr

Mario Jeckle. XML Schema

Mario Jeckle. XML Schema Mario Jeckle XML Schema Inhaltsübersicht Warum? benötigt XML noch eine Sprache zur Grammatikdefinition Wozu? kann XML-Schema eingesetzt werden Wie? funktioniert XML-Schema Was? nützt Ihnen der Einsatz

Mehr

Einführung in XML. Seminar: XML in der Bioinformatik Frank Schönmann WS 2002/03

Einführung in XML. Seminar: XML in der Bioinformatik Frank Schönmann WS 2002/03 Seminar: XML in der Bioinformatik WS 2002/03 Überblick Entwicklung von XML Regeln und Eigenschaften von XML Document Type Definition (DTD) Vor- und Nachteile von XML XML in der Bioinformatik Zusammenfassung

Mehr

Multimedia Technologie II

Multimedia Technologie II Vorlesung / Übungen Multimedia Technologie II Prof. Dr. Michael Frank / Prof. Dr. Klaus Hering Sommersemester 2004 HTWK Leipzig, FB IMN Zusätzliche Bedingung an Beschreibungen der Kategorie element_content

Mehr

XML Schema vs. Relax NG

XML Schema vs. Relax NG XML Schema vs. Relax NG p. 1/2 XML Schema vs. Relax NG Semistrukturierten Daten 1 Präsentation der Gruppe 2 XML Schema vs. Relax NG p. 2/2 Wozu XML Schema? W3C Empfehlung zur Definition von XML-Dokumentstrukturen

Mehr

Datenbanksysteme. XML und Datenbanken. Burkhardt Renz. Sommersemester 2015. Fachbereich MNI Technische Hochschule Mittelhessen

Datenbanksysteme. XML und Datenbanken. Burkhardt Renz. Sommersemester 2015. Fachbereich MNI Technische Hochschule Mittelhessen Fachbereich MNI Technische Hochschule Mittelhessen Sommersemester 2015 Übersicht Semistrukturierte Daten Dokumenttypdefinition XML-Schema XML aus Datenbank konstruieren XML in Datenbank speichern Merkmale

Mehr

1 Was ist XML? Hallo XML! Kommentare in XML 52

1 Was ist XML? Hallo XML! Kommentare in XML 52 Inhalt Vorwort 13 Einleitung und Ziel des Buches 15 1 Was ist XML? 21 1.1 XML ein Definitionsversuch 21 1.2 XML und HTML wo sind die Unterschiede? 22 1.3 XSLT 24 1.4 Einsatzgebiete von XML und XSLT 25

Mehr

Einführung in XML. Seminar: XML in der Bioinformatik Frank Schönmann WS 2002/03

Einführung in XML. Seminar: XML in der Bioinformatik Frank Schönmann WS 2002/03 Seminar: XML in der Bioinformatik WS 2002/03 Überblick Entwicklung von XML Regeln und Eigenschaften von XML Document Type Definition (DTD) Vor- und Nachteile von XML XML in der Bioinformatik Zusammenfassung

Mehr

Semistrukturierte Daten. 2. Datenmodellierung mit XML und XML-Schema XML. Lernziele:

Semistrukturierte Daten. 2. Datenmodellierung mit XML und XML-Schema XML. Lernziele: 2. Datenmodellierung mit XML und XML-Schema Was ist XML? 2. Datenmodellierung mit XML und XML-Schema 2. Datenmodellierung mit XML und XML-Schema Was ist XML? Semistrukturierte Daten Lernziele: Eigenschaften

Mehr

XML. Einführung, XML-Grundlagen und -Konzepte. XPath DTD. XQuery. XML-Schema XSLT XML-Grundlagen, -Sprachen, -Datenhaltungsfragen

XML. Einführung, XML-Grundlagen und -Konzepte. XPath DTD. XQuery. XML-Schema XSLT XML-Grundlagen, -Sprachen, -Datenhaltungsfragen XML-Abfragesprachen XML-Schemasprachen DTD XML-Schema... XPath XQuery XML XML-Transformationssprache XSLT Relationale DBMS XML in DBMS Dedizierte XML-DBMS 13 XML-Grundlagen, -Sprachen, -Datenhaltungsfragen

Mehr

XML. Einführung, XML-Grundlagen und -Konzepte. XPath DTD. XQuery. XML-Schema XSLT XML-Grundlagen, -Sprachen, -Datenhaltungsfragen

XML. Einführung, XML-Grundlagen und -Konzepte. XPath DTD. XQuery. XML-Schema XSLT XML-Grundlagen, -Sprachen, -Datenhaltungsfragen XML-Abfragesprachen XML-Schemasprachen DTD XML-Schema... XPath XQuery XML XML-Transformationssprache XSLT Relationale DBMS XML in DBMS Dedizierte XML-DBMS 12 XML-Grundlagen, -Sprachen, -Datenhaltungsfragen

Mehr

Einführung in XML Extensible Markup Language

Einführung in XML Extensible Markup Language Einführung in XML Extensible Markup Language XML Extensible Markup Language Seminarvortrag Komponentenarchitekturen WS 2008/2009 Inhaltsverzeichnis Folien der Präsentation...1 Erläuterungen zu den Beispieldateien...11

Mehr

XML Vorlesung ETHZ SS XML Vorlesung ETHZ, Sommersemester

XML Vorlesung ETHZ SS XML Vorlesung ETHZ, Sommersemester XML Vorlesung ETHZ, Sommersemester 2006 XML Schema Teil I Erik Wilde 9.5.2006 http://dret.net/lectures/xml-ss06/ 9.5.2006 XML Vorlesung ETHZ SS 2006 1 Übersicht Nachteile der DTDs Simple Types Type Restrictions

Mehr

Inhaltsverzeichnis Seite 1. Inhaltsverzeichnis. Ein I.T.P.-Fachbuch

Inhaltsverzeichnis Seite 1. Inhaltsverzeichnis. Ein I.T.P.-Fachbuch Inhaltsverzeichnis Seite 1 i Inhaltsverzeichnis Seite 2 Inhaltsverzeichnis XML für eserver i5 und iseries Vorwort...15 Kapitel 1 XML Ursprung und Zukunft... 19 In Diesem Kapitel erfahren Sie...19 Definition

Mehr

XML-Technologie: Grundlegende Syntax

XML-Technologie: Grundlegende Syntax XML DTD Inhalte XML-Technologie Syntax Namensräume XML-Integration in Software Web Services XML-Integration in Datenbanken Elemente und Attribute Entitäten Schlüssel und Verweise Bedingte Abschnitte XML-Technologie

Mehr

- Kapselung der Syntax/Semantik Definition. - Wiederverwendung, Standardisierung. - Vereinfachung der Festlegung von Datenstrukturen

- Kapselung der Syntax/Semantik Definition. - Wiederverwendung, Standardisierung. - Vereinfachung der Festlegung von Datenstrukturen Eine DTD (Documenttype-Definition) liefert eine formale Beschreibung der Struktur von einer Klasse von Dokumenten. Sie bestimmt die logischen Elemente eines Dokuments dieser Klasse. Vorteile durch die

Mehr

Web-Programmierung (WPR)

Web-Programmierung (WPR) Web-Programmierung (WPR) Vorlesung II. XML Manfred Gruner mailto:wpr@gruner.org 4.2 XML XML extensible Markup Language Universelles Format für strukturierte Dokumente und Daten Web: XML = Querschnittstechnologie

Mehr

Beuth Hochschule Verschiedene Bestandteile einer XML-Datei WS10/11

Beuth Hochschule Verschiedene Bestandteile einer XML-Datei WS10/11 Beuth Hochschule Verschiedene Bestandteile einer XML-Datei WS10/11 Verschiedene Bestandteile einer XML-Datei Eine XML-Datei kann nicht nur Auszeichnungen (d.h. Tags wie z.b. oder oder

Mehr

Zusammenfassung. 11.2002 M. Rigling 1/22 Version 1.0

Zusammenfassung. 11.2002 M. Rigling 1/22 Version 1.0 Zusammenfassung 11.2002 M. Rigling 1/22 Version 1.0 Grundbegriffe... 4 Elemente...4 Element mit Attribut...4 Kommentar...4 CDATA-Abschnitte...4 Processing Instructions...4 XML-Deklaration...5 DTD Document

Mehr

Diese neuen Gestaltungsmöglichkeiten können nun auf den Web-Anzeigenmarkt angewandt werden: Wissensbaustein»Anzeigenmarkt: CSS-Einsatz«(S.

Diese neuen Gestaltungsmöglichkeiten können nun auf den Web-Anzeigenmarkt angewandt werden: Wissensbaustein»Anzeigenmarkt: CSS-Einsatz«(S. 128 5XHTML&CSS* Wissensbaustein»CSS: ID-Attribut«(S. 180) Wissensbaustein»CSS: Umrandungen«(S. 182) Wissensbaustein»CSS: Füllungen & Abstände«(S. 185) Wissensbaustein»CSS: Pseudo-Klassen & -Elemente«(S.

Mehr

Gliederung. Service Oriented Architecture - XML Technologies. 1 von 11

Gliederung. Service Oriented Architecture - XML Technologies. 1 von 11 1 von 11 Gliederung Extensible Markup Language (XML) Wofür steht XML? Wie sieht XML aus? Dokumentgliederung Elemente Attribute Entity-Referenzen Vordefinierte Entities Verarbeitungsanweisungen (processing

Mehr

Gruppe A PRÜFUNG AUS SEMISTRUKTURIERTE DATEN 184.705 7. 1. 2014 Kennnr. Matrikelnr. Familienname Vorname

Gruppe A PRÜFUNG AUS SEMISTRUKTURIERTE DATEN 184.705 7. 1. 2014 Kennnr. Matrikelnr. Familienname Vorname Gruppe A PRÜFUNG AUS SEMISTRUKTURIERTE DATEN 184.705 7. 1. 2014 Kennnr. Matrikelnr. Familienname Vorname Arbeitszeit: 100 Minuten. Aufgaben sind auf den Angabeblättern zu lösen; Zusatzblätter werden nicht

Mehr

XML. Steffen Staab ISWeb Informationssysteme & Semantic Web

XML. Steffen Staab ISWeb Informationssysteme & Semantic Web XML XML (extensible Markup Language) Beschreibt den Inhalt und nicht die Präsentation. Unterschiede zu HTML: Neue Tags können definiert werden. Strukturen können eine willkürliche Tiefe haben. Ein XML

Mehr

XML DTD und Schema von Thomas Mangold

XML DTD und Schema von Thomas Mangold XML DTD und Schema von Thomas Mangold Inhalt: Zweck kurze Übersicht über den Aufbau Gemeinsamkeiten und Unterschiede Grundelemente Schema vs. DTD Beispiel Definitieren eines Schemas Links 15.05.2002 XML-Seminar

Mehr

5 XML und Analyse von XML-Dokumenten

5 XML und Analyse von XML-Dokumenten 5 XML und Analyse von XML-Dokumenten Erläuterungen zu XML vom W3C: Die Extensible Markup Language (XML) ist ein einfaches und sehr flexibles, von SGML abgeleitetes Textformat. SGML := Standard Generalized

Mehr

Gruppe A Bitte tragen Sie sofort und leserlich Namen, Studienkennzahl und Matrikelnummer ein und legen Sie Ihren Studentenausweis

Gruppe A Bitte tragen Sie sofort und leserlich Namen, Studienkennzahl und Matrikelnummer ein und legen Sie Ihren Studentenausweis Gruppe A Bitte tragen Sie sofort und leserlich Namen, Studienkennzahl und Matrikelnummer ein und legen Sie Ihren Studentenausweis bereit. PRÜFUNG AUS SEMISTRUKTURIERTE DATEN 181.135 23. 01. 2008 Kennnr.

Mehr

2. Klausur Web-basierte Informationssysteme SS 2016

2. Klausur Web-basierte Informationssysteme SS 2016 FAKULTÄT FÜR ELEKTROTECHNIK, INFORMATIK UND MATHEMATIK DR. THEODOR LETTMANN 2. Klausur Web-basierte Informationssysteme SS 2016 Name, Vorname: Matrikelnummer: MITTWOCH, 28. SEPTEMBER 2016, 09-11 UHR Bitte

Mehr

Henning Behme Stefan Mintert. XML in der Praxis. Professionelles Web-Publishing mit der Extensible Markup Language ADDISON-WESLEY

Henning Behme Stefan Mintert. XML in der Praxis. Professionelles Web-Publishing mit der Extensible Markup Language ADDISON-WESLEY 2008 AGI-Information Management Consultants May be used for personal purporses only or by libraries associated to dandelon.com network. Henning Behme Stefan Mintert XML in der Praxis Professionelles Web-Publishing

Mehr

http://www.therealgang.de/

http://www.therealgang.de/ http://www.therealgang.de/ Titel : Einführung in XML (Teil 1/2) Author : Dr. Pascal Rheinert Kategorie : Programmierung-Sonstige Teil II: XML Wichtiger Hinweis: Das folgende Dokument basiert auf dem HTML-Lehrgang

Mehr

XML-Praxis. XML-Grammatiken. Jörn Clausen joern@techfak.uni-bielefeld.de

XML-Praxis. XML-Grammatiken. Jörn Clausen joern@techfak.uni-bielefeld.de XML-Praxis XML-Grammatiken Jörn Clausen joern@techfak.uni-bielefeld.de Übersicht formale Beschreibung von XML-Sprachen verschiedene Lösungen Document Type Definition Relax NG XML-Praxis XML-Grammatiken

Mehr

Semistrukturierte Daten

Semistrukturierte Daten Semistrukturierte Daten XML Stefan Woltran Emanuel Sallinger Institut für Informationssysteme Technische Universität Wien Sommersemester 2014 Stefan Woltran, Emanuel Sallinger Seite 1 XML Was ist XML?

Mehr

3.1 Sinn und Zweck von Namensräumen

3.1 Sinn und Zweck von Namensräumen 3 3 Die Erstellung eigener Auszeichnungssprachen und somit die Erschaffung eigener Dokumenttypen, in denen die Elemente ihre eigene Bedeutung haben, ist mit XML leicht gemacht. Natürlich können solche

Mehr

Polymorphe Typen in OEM (1) OEM. Polymorphe Typen in OEM (2) Object Exchange Model (OEM)

Polymorphe Typen in OEM (1) OEM. Polymorphe Typen in OEM (2) Object Exchange Model (OEM) Polymorphe Typen in (1) Object Exchange Model (). Motivation: Historische Entwicklung, alternatives semistrukturiertes Datenmodell. Manche Ansätze im Folgenden basieren auf. Thema der folgenden Folien.

Mehr

Agenda GRUNDKURS INFORMATIK 8 BESCHREIBUNG VON DATEN XML. Von SGML zu XML. Grundbegriffe XML Dokument. XML Beispiel

Agenda GRUNDKURS INFORMATIK 8 BESCHREIBUNG VON DATEN XML. Von SGML zu XML. Grundbegriffe XML Dokument. XML Beispiel Agenda GRUNDKURS INFORMATIK 8 BESCHREIBUNG VON DATEN HTML und Von SGML zu Grundbegriffe Beispiele DTDs Marcel Götze Unterschiede zwischen HTML und 4 Von SGML zu ersetzt HTML nicht : entwickelt zum Transport

Mehr

XML-Schema im Detail. Robert Tolksdorf Freie Universität Berlin Institut für Informatik Netzbasierte Informationssysteme

XML-Schema im Detail. Robert Tolksdorf Freie Universität Berlin Institut für Informatik Netzbasierte Informationssysteme XML-Schema im Detail Robert Tolksdorf Freie Universität Berlin Institut für Informatik Netzbasierte Informationssysteme tolk@ag-nbi.de Wie geht es weiter? bisher Definition von XML-Sprachen DTDs und XML-Schema

Mehr

Extensible Markup Language (XML)

Extensible Markup Language (XML) Extensible Markup Language (XML) Erik Wilde TIK ETH Zürich Sommersemester 2001 Übersicht Motivation für die Einführung von XML XML Positionierung ein Profile von SGML XML Basics Szenarien Syntax DTDs XML

Mehr

PRÜFUNG IN SEMI-STRUKTURIERTE DATEN Kennnr. Matrikelnr. Familienname Vorname

PRÜFUNG IN SEMI-STRUKTURIERTE DATEN Kennnr. Matrikelnr. Familienname Vorname PRÜFUNG IN SEMI-STRUKTURIERTE DATEN 184.705 27. 06. 2017 Kennnr. Matrikelnr. Familienname Vorname Arbeitszeit: 100 Minuten. Aufgaben sind auf den Angabeblättern zu lösen; Zusatzblätter werden nicht gewertet.

Mehr

XML. Eine Einführung. XML (C) J.M.Joller 1

XML. Eine Einführung. XML (C) J.M.Joller 1 XML Eine Einführung XML (C) J.M.Joller 1 XML Eine Einführung Warum XML? XML (C) J.M.Joller 2 Warum XML? W3C World Wide Web Consortium beschreibt XML: Die Extensible Narkup Language (XML) ist eine Teilmenge

Mehr

Buchstabensuppe. Standards für die Präsentation von XML-Instanzen

Buchstabensuppe. Standards für die Präsentation von XML-Instanzen W. Schubert, Siemens ICM N IS P23-1- Buchstabensuppe Standards für die Präsentation von XML-Instanzen Walther Schubert Siemens ICM N IS P23 und Manfred Krüger MID/Information Logistics Group GmbH XML Name

Mehr

Semistrukturierte Daten

Semistrukturierte Daten Semistrukturierte Daten Teil 4: XML-Schema Sommersemester 2014 4.1. Überblick 4.2. Element-Deklarationen 4.3. Attribut-Deklarationen 4.4. Komplexe Typen 4.5. Simple Typen 4.6. Vererbung 4.7. weitere XML-Schema

Mehr

03 XML Grundlagen. Manuel Burghardt Lehrstuhl für Medieninformatik

03 XML Grundlagen. Manuel Burghardt Lehrstuhl für Medieninformatik Markupsprachen 03 XML Grundlagen Manuel Burghardt Warum XML? Nachteile von SGML und HTML SGML ist für die meisten Aufgaben zu komplex, und dadurch nicht sofort einsetzbar (komplexe Metasprache) HTML ist

Mehr

XML und Datenmodellierung

XML und Datenmodellierung Rainer Eckstein Silke Eckstein XML und Datenmodellierung XML-Schema und RDF zur Modellierung von Daten und Metadaten einsetzen dpunkt.verlag VII Inhaltsverzeichnis Vorwort v 1 Einleitung 1 1.1 Aufbau 2

Mehr

XML-Praxis. XML-Grammatiken. joern@techfak.uni-bielefeld.de

XML-Praxis. XML-Grammatiken. joern@techfak.uni-bielefeld.de XML-Praxis XML-Grammatiken Jörn Clausen joern@techfak.uni-bielefeld.de 1 Übersicht formale Beschreibung von XML-Sprachen verschiedene Lösungen Document Type Definition Relax NG 2 wohlgeformtes vs. valides

Mehr

XML Grundlagen. Andreas Rottmann,Sebastian Riedl. 27. August 2002. Quit Full Screen Previous Page Next Page GoTo Page Go Forward Go Back

XML Grundlagen. Andreas Rottmann,Sebastian Riedl. 27. August 2002. Quit Full Screen Previous Page Next Page GoTo Page Go Forward Go Back XML Grundlagen Andreas Rottmann,Sebastian Riedl 27. August 2002 Rottmann, Riedl: XML Grundlagen 1 Überblick Hintergründe und Geschichte Aufbau von XML-Dokumenten DTD Schemata Erweiterungen XML APIs Rottmann,

Mehr

Semistrukturierte Datenmodelle. XML Datenmodelle. XML Infoset. OEM Beispielbaum. Document InfoItem. Beispiel

Semistrukturierte Datenmodelle. XML Datenmodelle. XML Infoset. OEM Beispielbaum. Document InfoItem. Beispiel XML Datenmodelle Web Informationssysteme Wintersemester 2002/2003 Donald Kossmann Semistrukturierte Datenmodelle Beispiel: OEM (Objekt Exchange Model) Repräsentiere Dokument als annotierten Baum Knoten

Mehr

IN A NUTSHELL. Elliotte Rusty Harold & W, Scott Means. Deutsche Übersetzung von Kathrin Lichtenberg & Jochen Wiedmann O'REILLY*

IN A NUTSHELL. Elliotte Rusty Harold & W, Scott Means. Deutsche Übersetzung von Kathrin Lichtenberg & Jochen Wiedmann O'REILLY* 2008 AGI-Information Management Consultants May be used for personal purporses only or by libraries associated to dandelon.com network. IN A NUTSHELL Elliotte Rusty Harold & W, Scott Means Deutsche Übersetzung

Mehr

Semistrukturierte Daten

Semistrukturierte Daten Semistrukturierte Daten Teil 4: XML-Schema Sommersemester 2009 4.1. Überblick 4.2. Namespaces 4.3. Element-Deklarationen 4.4. Attribut-Deklarationen 4.5. Komplexe Typen 4.6. Simple Typen 4.7. Vererbung

Mehr

XML. Basis Syntax. Basis Syntax. XML (extensible Markup Language)

XML. Basis Syntax. Basis Syntax. XML (extensible Markup Language) XML XML (extensible Markup Language) Beschreibt den Inhalt und nicht die Präsentation. Unterschiede zu HTML: Neue Tags können definiert werden. Strukturen können eine willkürliche Tiefe haben. Ein XML

Mehr

(a) Erstellen Sie für die Web-Veröffentlichung eines Artikels die Meta-Informationen nach dem Dublin-Core-Standard.

(a) Erstellen Sie für die Web-Veröffentlichung eines Artikels die Meta-Informationen nach dem Dublin-Core-Standard. Web-Technologie 22. Mai 2013 Übungsblatt 3 WT:III Bis zum 28.05.2013 sind Lösungen zu folgenden Aufgaben abzugeben: 4, 6, 7, 8. Aufgabe 1 : XML (a) Erstellen Sie für die Web-Veröffentlichung eines Artikels

Mehr

XML. Teil 1: Grundbegriffe. Abteilung Informatik WS 02/03

XML. Teil 1: Grundbegriffe. Abteilung Informatik WS 02/03 XML Teil 1: Grundbegriffe Abteilung Informatik WS 02/03 Was ist XML? XML-Anwendung: eine XML- Auszeichnungssprache WS 02/03 XML - 2 Was ist XML nicht? XML ist keine...... Programmiersprache... Netzwerk-Kommunikationsprotokoll...

Mehr

Definition von Datentypen mit XML- Schemata

Definition von Datentypen mit XML- Schemata Lernziele Definition von Datentypen mit XML- Schemata Wie wird die Element-Struktur mit einem XML-Schemata deklariert? Wie werden Attribute mit einem XML-Schema Deklariert? Was sind einfache und komplexe

Mehr

ASN.1 <-> XML TRANSLATION

ASN.1 <-> XML TRANSLATION ASN.1 XML TRANSLATION Management Verteilter Systeme Patrick Gerdsmeier, Pierre Smits Wintersemester 2003/2004 Lehrstuhl für Systeme Prof. Dr. Kraemer BTU Cottbus ASN.1 XML TRANSLATION Gliederung

Mehr

Inhaltsverzeichnis. Vorwort... Einleitung... Einführung... 1

Inhaltsverzeichnis. Vorwort... Einleitung... Einführung... 1 Vorwort... Einleitung... V VII Einführung... 1 1 Grundlagen... 7 1.1 Dokumentmodelle... 7 1.1.1 Multimedia... 8 1.1.2 Hypermedia... 9 1.1.3 Verteilung... 11 1.2 Geschichte des WWW... 13 1.2.1 Struktur...

Mehr

XML Grammatiken und XForms

XML Grammatiken und XForms XML Grammatiken und XForms von Astrid Sackel im Rahmen des Seminars XML und intelligente Systeme bei Sebastian Wrede und Ingo Lütkebohle Uni Bielefeld Wintersemester 2005 06 31. Oktober 2005 Wozu eigentlich

Mehr

Klaus Schild, XML Clearinghouse Aufbau von XML- Dokumenten

Klaus Schild, XML Clearinghouse Aufbau von XML- Dokumenten Aufbau von XML- Dokumenten Lernziele Wie ist ein XML-Dokument aufgebaut? Was sind Elemente und was sind Attribute? Wann sollten Attribute und wann Elemente verwendet werden? Elemente ist ein Anfangs-Tag

Mehr

Klaus Schild, Klaus Schild, Element-Deklaration: 1. Möglichkeit

Klaus Schild, Klaus Schild, Element-Deklaration: 1. Möglichkeit Wie geht es weiter? XML-Schema Schema: Datentypen letzte Vorlesung Beschreibung von Dokument-Typen Einführung von DTDs und XML-Schema anhand eines einheitlichen Beispiels heute XML-Schema: Definition von

Mehr

Namespaces. Namensräume...

Namespaces. Namensräume... Namespaces Namensräume... sind ein Konzept, d.h. rein virtuell, ohne reale Umsetzungen, sind eine Sammlung von Namen, Beachte: Bei Verwendung von Namensräumen dürfen die Namen KEINEN Doppelpunkt enthalten.

Mehr

Vorlesung Datenbanken II SS 2006

Vorlesung Datenbanken II SS 2006 Vorlesung Datenbanken II SS 2006 1 Vorlesung Datenbanken II SS 2006 Sven Wachsmuth, Technische Fakultät, AG Angewandte Informatik Vorlesung Datenbanken II SS 2006 2 4.2 XML als Datenmodell DTDs Document

Mehr

XML Schema Kurzreferenz

XML Schema Kurzreferenz XML Schema Kurzreferenz Auszug aus: Helmut Vonhoegen: Einstieg in XML, 3. Auflage, Galileo Press 2005 Schema-Deklaration

Mehr

Wie ist die Struktur der Daten? Wie wird die Austauschbarkeit der Daten sichergestellt?

Wie ist die Struktur der Daten? Wie wird die Austauschbarkeit der Daten sichergestellt? Ein starkes Team? Einführung in XML und XSLT (Teil 1) Das Dokumentenaustauschformat XML und die Transformationssprache XSLT werden meist in einem Atemzug genannt. Doch ist diese Kombination wirklich so

Mehr

Formale Sprachen Grundlagen und Anwendungen. Dr. Wolfgang Süß

Formale Sprachen Grundlagen und Anwendungen. Dr. Wolfgang Süß Formale Sprachen Grundlagen und Anwendungen Formale Sprachen: Motivation Sprachen werden eingeteilt in: Natürliche Sprachen oder Umgangssprachen Diese werden gesprochen und dienen der Kommunikation. Künstliche

Mehr

Gruppe A PRÜFUNG AUS SEMISTRUKTURIERTE DATEN 184.705 25. 10. 2013 Kennnr. Matrikelnr. Familienname Vorname

Gruppe A PRÜFUNG AUS SEMISTRUKTURIERTE DATEN 184.705 25. 10. 2013 Kennnr. Matrikelnr. Familienname Vorname Gruppe A PRÜFUNG AUS SEMISTRUKTURIERTE DATEN 184.705 25. 10. 2013 Kennnr. Matrikelnr. Familienname Vorname Arbeitszeit: 100 Minuten. Aufgaben sind auf den Angabeblättern zu lösen; Zusatzblätter werden

Mehr

2. XML 2.1 XML 1.0 und XML Schema. Jörg Schwenk Lehrstuhl für Netz- und Datensicherheit

2. XML 2.1 XML 1.0 und XML Schema. Jörg Schwenk Lehrstuhl für Netz- und Datensicherheit XML- und Webservice- Sicherheit 2. XML 2.1 XML 1.0 und XML Schema Gliederung 1. XML 1.0 2. XML Namespaces: URI, URL und URN 3. XML Schema Literatur: A. Tanenbaum, Computer Networks. E. R. Harold and W.

Mehr

Einführung in XML. Von Klammern, Schachteln und gefüllten Keksen. Hier im Folienmaster Präsentationstitel eintragen

Einführung in XML. Von Klammern, Schachteln und gefüllten Keksen. Hier im Folienmaster Präsentationstitel eintragen Institut für Dokumentologie und Editorik Von Klammern, Schachteln und gefüllten Keksen Folie 1 Hier im Folienmaster Präsentationstitel eintragen Spring School 14. bis 18. März 2011 Überblick - XML Grundlagen

Mehr

Einführung in XML. Arthur Brack FHDW Hannover. 1. Oktober 2009

Einführung in XML. Arthur Brack FHDW Hannover. 1. Oktober 2009 Einführung in XML Arthur Brack FHDW Hannover Inhalt Was ist XML? Warum XML? Aufbau von XML-Dokumenten Ausblick XML-Schemasprachen XPath XSLT Zusammenfassung Literatur Einführung in XML 2 / 14 Was ist XML?

Mehr