1 / 16

Einführung in XML Schemata - die Alternative zu DTDs

Einführung in XML Schemata - die Alternative zu DTDs. Zweck von XML - Schema: Definition von Dokumentypen oder Dokumentklassen Formulierung von Regeln für die Auszeichnung ->Anordnung der Tags (mit Attributen). Vorteile gegenüber DTDs (1)

fairly
Download Presentation

Einführung in XML Schemata - die Alternative zu DTDs

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. Einführung in XML Schemata - die Alternative zu DTDs Dipl.- Dok. Rusalka Offer

  2. Zweck von XML - Schema: • Definition von Dokumentypen oder Dokumentklassen • Formulierung von Regeln für die Auszeichnung • ->Anordnung der Tags (mit Attributen) Dipl.- Dok. Rusalka Offer

  3. Vorteile gegenüber DTDs (1) • Definition in XML selber (gleiche Deklarations- und Auszeichnungs- syntax) • Datenstrukturen und -typen sind in größerer Anzahl vorhanden und können beliebig erweitert werden (hierzu zählen auch genaue Häufigkeits- angaben) • Implementierung von Namensräumen • Erweiterung der Referenzierungs- möglichkeiten Dipl.- Dok. Rusalka Offer

  4. Vorteile gegenüber DTDs (2) • Möglichkeiten zur Vererbung von Eigenschaften deklarierter Objekte • Stärkere Datenorientierung (anstatt Dokumentorientierung) • Schemata durch XML-Prozessor verarbeitbar (keine Erweiterungen für die Prüfung von DTDs notwendig) Dipl.- Dok. Rusalka Offer

  5. Nachteile gegenüber DTDs: • keine deutliche Unterscheidung zwischen Deklaration und Verwendung (Verzicht auf syntaktisch eigenständige Deklarationssprache) • deutlich längerer Sourcecode (Lesbarkeit!) • Entwicklung noch nicht abgeschlossen • (früher: Existenz von mehreren Schemasprachen) Dipl.- Dok. Rusalka Offer

  6. XML -Schema-Sprachenaktuell: W3C: XML Schema language bisher: Microsoft/IBM: Document Content Description Language (DCD) GMD / TU Darmstadt: Document Defintion Markup Language (DDML) Veo Systems / Muzmo Communications u.a.:Schema for object-oriented XML (SOX) Dipl.- Dok. Rusalka Offer

  7. Aufbau von XML-Schemata <? xml version="1.0“ encoding="UTF8“?> <xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema" Beschreibung der Datenstruktur (simpleType | complexType | group| attributeGroup) | element |attribute | notation)* </xsd:schema> Dipl.- Dok. Rusalka Offer

  8. Deklarationsarten in Schemata: • Element - Deklarationen • Attribut - Deklarationen • Notations - Deklarationen • Elemente und Attribute können verschiedenen Typen zugeordnet werden, die deklariert werden müssen • Complex - Type • Simple - Type XML-Schemata werden unter der Endung .xsd gespeichert Dipl.- Dok. Rusalka Offer

  9. Complex - Type Beispiel: <xsd:complexType name="Adresse" > <xsd:sequence> <xsd:element name=“Name" type="xsd:string"/> <xsd:element name=“Strasse" type="xsd:string"/> <xsd:element name=“PLZ" type="xsd:decimal"/> <xsd:element name=“Ort" type="xsd:string"/> </xsd:sequence> <xsd:attribute name=“Land" type="xsd:NMTOKEN" fixed=“Deutschland"/> </xsd:complexType> Dipl.- Dok. Rusalka Offer

  10. Erläuterung Complex-Type (1): • Complex-Type Elemente können im Gegensatz zu den Simple-Type Elemente weitere Elemente und Attribute beinhalten. • Im vorigen Beispiel wird folgendes festgelegt: -Jedes Element in einem XML-Dokument vom Typ Adresse muss vier Elemente und ein Attribut besitzen. -Die Elemente müssen in der vorgegebenen Reihenfolge stehen und die vorgegebenen Namen tragen. -Drei Elemente sind vom Typ string und ein Element vom Typ decimal -Das Element Adresse kann einem Attribut “Land “ haben, das denn Wert “ Deutschland “ haben muss. Dipl.- Dok. Rusalka Offer

  11. Erläuterung Complex-Type (2): Dieser definierte Complex-Type kann an anderer Stelle im Schema referenziert werden: <xsd:complexType name=“Bestellung"> <xsd:sequence> <xsd:element name=“Empfaenger" type="Adresse"/> <xsd:element name=“Absender" type=“Adresse"/> </xsd:sequence> </xsd:complexType> In diesem Beispiel ist der Complex-Type Adresse Bestandteil des Complex-Types Bestellung. Dipl.- Dok. Rusalka Offer

  12. Erläuterung Complex-Type (3): XML-Beispiel: <?xml version="1.0"?> <Bestellung> <Empfaenger Land=“Deutschland"> <Name>Rusalka Offer</Name> <Strasse>Claudiusstr. 1</Strasse> <PLZ>50678</PLZ> <Ort>Koeln</Ort> </Empfaenger> <Absender Land=“Deutschland""> <Name>Firma 1</Name> <Strasse>Firmenweg 1</Strasse> <PLZ>11111</PLZ> <Ort>Wolkenkuckucksheim</Ort> </Absender> ........ Dipl.- Dok. Rusalka Offer

  13. Simple Type (1) • (Datentypen von Elementen) • Beispiel: • <xsd:element name= "Name" type="xsd:string"/> • <xsd:element name= "Strasse" type="xsd:string"/> • Erläuterung: • Die beiden Elemente Name und Strasse sind vom Typ string • Der Typ string ist innerhalb von XML Schema als Simple Type definiert. • Andere Beispiele für Simple Types sind:decimal, integer, double, long, token, boolean • Eine komplette Liste gibt es auf den Seiten des W3C Dipl.- Dok. Rusalka Offer

  14. Simple Type (2) Neue Datentypen können aus den bestehenden abgeleitet werden. Beispiel: <xsd:simpleType name="meine_Zahl"> <xsd:restriction base="xsd:integer"> <xsd:minInclusive value="100"/> <xsd:maxInclusive value="999"/> </xsd:restriction> </xsd:simpleType> In diesem Beispiel wird ein neuer Simple Type auf der Basis des Datentyps integer erstellt. Dieser Datentyp ist auf die Zahlen von 100 bis 999 beschränkt. Dipl.- Dok. Rusalka Offer

  15. Element - Deklarationen: • Beispiel: • <xsd:element name=“Auslieferungsdatum" type="xsd:date" minOccurs="0"/> • Neben dem Datentyp kann bei Elementen sowohl die Häufigkeit des Auftretens bestimmt werden, als auch ein Default- oder Fixed-Wert • Zur Bestimmung gibt es festgelegte Attribute:minOccurs, maxOccurs, fixed, default • In diesem Beispiel ist das Auftreten des Elementes optional, da minOccurs auf 0 gesetzt ist Dipl.- Dok. Rusalka Offer

  16. Attribut - Deklarationen: • Beispiel: • <xsd:attribute name=“Land" type="xsd:NMTOKEN" fixed=“Deutschland"/> • Attribute zu Elementen dürfen einmal oder gar nicht auftreten (bezogen auf ein Element) • Bei der Deklaration wird das Auftreten von Attributen mit den Vorgaben use (Werte:required, optional, prohibited), fixed und default geregelt • In diesem Beispiel hat das Attribut Land einen festen Wert (Deutschland) und ist vom Typ NMTOKEN Dipl.- Dok. Rusalka Offer

More Related