1 / 16

XML – Grundlagen und Anwendungen

XML – Grundlagen und Anwendungen. Teil 2: Modellierung von Dokumenten mit der DTD Prof. Dr. Michael Löwe, FHDW Hannover. Inhalt. Motivation Modellierung von Elementen und Inhalt Modellierung von Attributen Modellierung von Referenzen Validierung von Dokumenten Zusammenfassung.

amalia
Download Presentation

XML – Grundlagen und Anwendungen

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. XML – Grundlagen und Anwendungen Teil 2: Modellierung von Dokumenten mit der DTD Prof. Dr. Michael Löwe,FHDW Hannover

  2. Inhalt Motivation Modellierung von Elementen und Inhalt Modellierung von Attributen Modellierung von Referenzen Validierung von Dokumenten Zusammenfassung XML Grundlagen und Anwendungen

  3. Motivation XML allein ist und kann Alles und Nichts! Jede Verarbeitung macht Annahmen über den Inhalt Annahmen stecken in der Verarbeitung Verarbeitung realisiert O.-K.-Fall und Ausnahmen Austausch der Dokumente setzt Austausch der Verarbeitung voraus Unabhängige Beschreibung des Inhalts ist besser Separierung von Fehlern und Ausnahmen Konzentration der Verarbeitung auf das Wesentliche Asynchrone Erstellung der Verarbeitungen (Sender und Empfänger) Man benötigt Modelle für Klasse ähnlicher Dokumente (DTD) XML Grundlagen und Anwendungen

  4. Motivation DTD für XML wie Datenbankschema für Datenbank UML-Klassendiagramm für OO-Programm Geschäftsprozessmodell für Geschäftsprozess Algorithmus für Berechnung Programm für Prozess Petrinetz für „Event Structure“ Routenplan für konkrete Fahrt Grammatik für Satz XML Grundlagen und Anwendungen

  5. Anforderungen an DTD Welche Elemente sind erlaubt. Welche Elemente kommen in welchen anderen vor (Gliederung). In welcher Reihenfolge kommen sie vor. Welche Attribute gibt es. Welchen Typ haben die Attribute Sind die Attribute vorgeschrieben oder optional Elementdefinition Attributlisten XML Grundlagen und Anwendungen

  6. Elementdefinition <!ELEMENT name Inhaltsspezifikation> Inhaltsspezifikation: EMPTY leeres Element ANY beliebiger Inhalt (#PCDATA) Text (RA) Regulärer Ausdruck (#PCDATA | E1 | … | En)* Gemischter Inhalt XML Grundlagen und Anwendungen

  7. Reguläre Ausdrücke in der DTD • Jeder Elementname ist ein regulärer Ausdruck • Wenn r, r1, r2,…, rn reguläre Ausdrücke sind, dann auch • die Sequenz (r1, r2, …, rn) • die Auswahl (r1 | r2 | … | rn ) • die möglicherweise leere Iteration r* (Kopfgesteuert) • die nicht leere Iteration r+ (Fußgesteuert) • der optionale Ausdruck r? XML Grundlagen und Anwendungen

  8. Eigenschaften Reg. Ausdrücke (r, s), t = r, (s, t) ; (r | s) | t = r | (s | t) r | s = s | r (t, r | t, s) = t, (r | s) r++ = r+ ; r** = r* ; r?? = r? r+ = r, r* ; r* = (r+)? = (r?)+ ; (r*)? = (r?)* = r* (r* | s*)* = (r | s)* ; (r+ | s+)* = (r | s)* (r* | s*)+ = (r | s)* ; (r+ | s+)+ = (r | s)+ XML Grundlagen und Anwendungen

  9. Eigenschaften der Inhaltsspezifikation Kontextfreie Grammatik in erweiterter Backus/Naur-Form. Es gibt nur eine Regel pro Element. Inhalt und Reihenfolge nur für direkte Nachfahren. Inhalt eines Elements kann endlicher Automat prüfen. Korrektheit des Inhalts des gesamten XML-Dokuments: Prüfung durch Familie endlicher Automaten für die Elemente. Gesamtaufwand der Prüfung linear in der Anzahl der Elemente. Gesamtprüfung kann leicht parallelisiert werden. XML ist einfach (auch in der Verarbeitung)!!! XML Grundlagen und Anwendungen

  10. Attributlisten <!ATTLIST elementNameAttribute*> Attribute nameTypeKind Type CDATA beliebiger Text NMTOKEN, NMTOKENS Text aus Buchstaben, Zahlen und _, -, ., : (t1 | t2 | … | tn) Auswahl aus Liste von NMTOKENs Kind #IMPLIED Optional #REQUIRED Zwingend erforderlich “defaultValue“ Optional, defaultValue wenn nicht vorhanden #FIXED “defaultValue“ Optional, wenn vorhanden = defaultValue XML Grundlagen und Anwendungen

  11. Übung 2 Schreiben Sie eine DTD für Bücher, so dass: Bücher einen Titel, Autoren und Kapitel haben. Autoren Name, Vorname und zur internen Kommunikation eine Email haben. Kapitel einen Titel, ggf. ersten Paragraph und mindestens 2 Abschnitte haben. Abschnitte einen Titel haben und dann bestehen aus entweder genau einem Paragraph oder ggf. einem ersten Paragraph und mindestens 2 Abschnitten. Paragraphen aus Texten und Fußnoten und Endnoten bestehen. Titel, Texte, Fußnoten und Endnoten nicht weiter strukturiert sind. Begründen Sie stets Ihre Entwurfsentscheidungen! XML Grundlagen und Anwendungen

  12. Validierung von Dokumenten Genügen Dokumente den allgemeinen Regeln von XML, sind sie wohlgeformt. Genügen sie den Einschränkungen einer DTD, nennt man sie gültig (bezogen auf die DTD). Dokument auf DTD beziehen durch: <!DOCTYPE rootElementName SYSTEM “url“> oder <!DOCTYPE rootElementName PUBLIC “publicDTDName“ “url“> im Prolog des Dokuments. XML Grundlagen und Anwendungen

  13. Übung 3 Schreiben Sie eine DTD für die Dokumente aus „Elementen“, „Attributen“ und „Texten“, die sie in Übung 1 entwickelt haben! XML Grundlagen und Anwendungen

  14. Referenzen Für Attribute gibt es folgende weitere Typen: • ID Wert ist XML-Name, eindeutig unter allen ID-Werten. • IDREF Wert muss ein ID-Attributwert im Dokument sein. • IDREFS Durch Leerzeichen getrennte Liste von IDREF-Werten. XML-Namen sind NMTOKENs, die mit einem Buchstaben oder “_“ beginnen. XML Grundlagen und Anwendungen

  15. Übung 4 Erweitern Sie Übung 2 um Kreuzreferenzen! XML Grundlagen und Anwendungen

  16. Zusammenfassung XML allein ist die Beliebigkeit an sich. Erst mit DTDs wird der Austausch von Informationen über XML sicher und vernünftig. DTDs nutzen Reguläre Ausdrücke zur Inhaltspezifikation Typisierung und Anwendungsbedingungen für Attributsspezifikationen Globale eindeutige Namen für Verweise Wohlgeformte XML-Dokumente können bzgl. einer DTD gültig oder ungültig sein. Die Prüfung auf Gültigkeit ist effizient. (Linearer Aufwand) XML Grundlagen und Anwendungen

More Related