XML Schema: Validieren statt Programmieren
|
|
|
- Heike Hermann
- vor 9 Jahren
- Abrufe
Transkript
1 namics Developer Days 21./ XML Schema: Validieren statt Programmieren Erik Wilde ETH Zürich namics Developer Days XML Schema 1 Übersicht Motivation XML Schema from ft Alternativen und Ergänzungen zu XML Schema Probleme und Stand der Technik namics Developer Days XML Schema 2 XML Schema Validieren statt Programmieren 1
2 Motivation Programmieren und Validieren B2B Applikationen brauchen valide Daten viele Bedingungen sind nicht im Schema mehr Validieren heisst weniger Programmieren deklarative vs. prozedurale Vorgehensweise bessere Verträge in B2B Szenarien Information Producer vs. Information Consumer XML und Schemas DTDs und ihre Nachteile XML Schema als Weiterentwicklung von DTDs namics Developer Days XML Schema 3 Was ist schlecht an DTDs? eine ganze Menge... keine Datentypen Elemente haben #PCDATA Attribute haben einige wenige Typen (CDATA, ID,...) keine Unterstützung für Modellierungsmethoden Element- und Attributtypen sind isoliert moderne Modellierung benutzt Typhierarchien keine XML Dokument Syntax braucht spezielle Parser, keine XML Tools diverse wenig benutzte obskure Features namics Developer Days XML Schema 4 XML Schema Validieren statt Programmieren 2
3 XML Schema from ft XML Schema Simple Types XML Schema Complex Types Type Derivation Identity Constraints Konsistenzbedingungen Advanced Features Reusable Groups und Substitution Groups namics Developer Days XML Schema 5 Instanz Element Typ Abstraktionsgrad Instanz 42 Element Anzahl Typ Integer Dokument Schema namics Developer Days XML Schema 6 XML Schema Validieren statt Programmieren 3
4 XML Schema Standards XML Schema Part 1: Structures Element Anzahl Typ Integer XML Schema Part 2: Datatypes namics Developer Days XML Schema 7 Was sind "Simple Types"? die Grundbausteine von XML Schema und damit auch XML Dokumenten Inhalt von Elementen oder Attributen Elemente: <isbn> </isbn> Attribute: <buch isbn=" "> drei Varianten von Simple Types Atomic Types (kleinste Einheit, z.b. Zahlen) List Types (mit Space getrennt, z.b. "3 5 7") Union Types (Vereinigung anderer Simple Types) namics Developer Days XML Schema 8 XML Schema Validieren statt Programmieren 4
5 Hierarchie der Simple Types derived types primitive types ur-types namics Developer Days XML Schema 9 Schema der Built-In Types <xs:simpletype name="integer"> <xs:restriction base="xs:decimal"> <xs:fractiondigits value="0" fixed="true"/> </xs:restriction> </xs:simpletype> <xs:simpletype name="nonnegativeinteger"> <xs:restriction base="xs:integer"> <xs:mininclusive value="0"/> </xs:restriction> </xs:simpletype> <xs:simpletype name="positiveinteger"> <xs:restriction base="xs:nonnegativeinteger"> <xs:mininclusive value="1"/> </xs:restriction> </xs:simpletype> namics Developer Days XML Schema 10 XML Schema Validieren statt Programmieren 5
6 Named oder Anonymous? Simple Types kommen in zwei Varianten Named Simple Types Anonymous Simple Types eine Frage der Wiederverwendung Named Types haben einen Typ-Namen können (und sollten) wiederverwendet werden werden immer global deklariert (im gesamten Schema) Anonymous Types werden ohne Name verwendet definiert an der Stelle wo sie verwendet werden damit keine Wiederverwendung möglich eine wichtige Modellierungsfrage! namics Developer Days XML Schema 11 Named Simple Types deklariert durch simpletype <xsd:simpletype name="dresssizetype"> <xsd:restriction base="xsd:integer"> <xsd:mininclusive value="2"/> <xsd:maxinclusive value="18"/> </xsd:restriction> </xsd:simpletype> Inhalt restriction, list oder union definiert, ob weiter abgeleitet werden darf <xsd:simpletype name="dresssizetype" final="#all"> kann spezifisch die Art von Ableitung verbieten extension, restriction, list, union (und #all) namics Developer Days XML Schema 12 XML Schema Validieren statt Programmieren 6
7 Anonymous Simple Types gleiche Struktur wie Named Types simpletype Element aber ohne name (und u.u. final) Attribut immer innerhalb von anderen Typ-Definitionen element, attribute, restriction, list, union die Möglichkeiten sind genau die gleichen <xsd:attribute name="size"> <xsd:simpletype> <xsd:restriction base="xsd:integer"> <xsd:mininclusive value="2"/> <xsd:maxinclusive value="18"/> </xsd:restriction> </xsd:simpletype> </xsd:attribute> namics Developer Days XML Schema 13 Simple Type Restrictions Simple Types können durch Restriction von anderen Simple Types abgeleitet werden der Base Type ist immer ebenfalls ein Simple Type Wurzel dieser Hierarchie ist der anysimpletype Erweiterungen sind nur möglich, indem der Simple Type zum Complex Type erweitert wird Restrictions enthalten Facets Facets sind durch vorgegebene Elemente definiert jede Restriction enthält 0-n Facets Facets können auch wiederholt werden wichtiges Werkzeug zur exakten Typ-Definition namics Developer Days XML Schema 14 XML Schema Validieren statt Programmieren 7
8 Facets definieren Einschränkungen von Wertebereichen von Simple Types Einteilung in zwei Klassen von Facets fundamental Facets grundlegende Eigenschaften constraining (or non-fundamental) Facets einschränkende Eigenschaften Facets haben einen Wert die meisten Facets können fixiert werden namics Developer Days XML Schema 15 Constraining Facets die praktisch anwendbaren Facets definieren Einschränkungen von Wertebereichen können bei Typableitungen verschärft werden es gibt 12 Typen von Constraining Facets length, minlength, maxlength, pattern, enumeration, whitespace, maxinclusive, maxexclusive, minexclusive, mininclusive, totaldigits, fractiondigits nicht alle Facets sind für alle Typen sinnvoll Verfügbarkeit richtet sich nach Primitive Type namics Developer Days XML Schema 16 XML Schema Validieren statt Programmieren 8
9 Primitive Types Facets (I) string boolean float double decimal duration datetime time date length, minlength, maxlength, pattern, enumeration, whitespace pattern, whitespace pattern, enumeration, whitespace, maxinclusive, maxexclusive, mininclusive, minexclusive pattern, enumeration, whitespace, maxinclusive, maxexclusive, mininclusive, minexclusive totaldigits, fractiondigits, pattern, whitespace, enumeration, maxinclusive, maxexclusive, mininclusive, minexclusive pattern, enumeration, whitespace, maxinclusive, maxexclusive, mininclusive, minexclusive pattern, enumeration, whitespace, maxinclusive, maxexclusive, mininclusive, minexclusive pattern, enumeration, whitespace, maxinclusive, maxexclusive, mininclusive, minexclusive pattern, enumeration, whitespace, maxinclusive, maxexclusive, mininclusive, minexclusive namics Developer Days XML Schema 17 Primitive Types Facets (II) gyearmonth gyear gmonthday gday gmonth hexbinary base64binary anyuri QName NOTATION pattern, enumeration, whitespace, maxinclusive, maxexclusive, mininclusive, minexclusive pattern, enumeration, whitespace, maxinclusive, maxexclusive, mininclusive, minexclusive pattern, enumeration, whitespace, maxinclusive, maxexclusive, mininclusive, minexclusive pattern, enumeration, whitespace, maxinclusive, maxexclusive, mininclusive, minexclusive pattern, enumeration, whitespace, maxinclusive, maxexclusive, mininclusive, minexclusive length, minlength, maxlength, pattern, enumeration, whitespace length, minlength, maxlength, pattern, enumeration, whitespace length, minlength, maxlength, pattern, enumeration, whitespace length, minlength, maxlength, pattern, enumeration, whitespace length, minlength, maxlength, pattern, enumeration, whitespace namics Developer Days XML Schema 18 XML Schema Validieren statt Programmieren 9
10 Verwendung von Facets Facets können fixiert werden keine weitere Änderung in Subtypen erlaubt wird mit dem fixed Attribut angegeben nicht möglich für pattern und enumeration Facets werden vererbt entlang der gesamten Typenhierachie wiederholte Facets müssen restriktiver sein keine Erweiterung der Einschränkungen erlaubt gilt auch für pattern und enumeration namics Developer Days XML Schema 19 Was man mit Facets nicht kann... Facets schränken einen Simple Type ein in verschiedenen Dimensionen in u.u. mehreren Schritten (Typableitung) können sich nicht auf andere Typen beziehen z.b. End-Datum muss nach dem Anfang liegen können keine Auswertungen vornehmen Summenfeld muss Summe bestimmter Felder sein d.h. konkrete Instanzen sind unberücksichtigt falls notwendig: zusätzliche Mechanismen z.b. Schematron oder programmgesteuert namics Developer Days XML Schema 20 XML Schema Validieren statt Programmieren 10
11 Patterns (Regular Expressions) Einschränkung von Simple Types Restrictions mit dem pattern Element Beschränkung der lexikalischen Werte einfacher Aufbau der Ausdrücke recht ähnlich den RegEx aus Perl, vi, grep,... zusätzlich Einbeziehung von Unicode Klassen sollten fast immer verwendet werden z.b. alle Texte auf ISO beschränken erleichtert das Leben der Applikationssoftware namics Developer Days XML Schema 21 Simple Types in XML Schema bisher haben wir Atomic Types betrachtet Datentypen gemäss der Typhierarchie Atomic Types erlauben genau einen Wert gemäss genau eines Typs (Typen können erweitert werden) Erweiterung des "genau einen Wert": Lists Listen von Werten sind erlaubt es dürfen nur Simple Types verwendet werden Trennung mit XML Whitespace Erweiterung des "genau eines Typs": Unions Mengen von Typen sind erlaubt es dürfen nur Simple Types verwendet werden namics Developer Days XML Schema 22 XML Schema Validieren statt Programmieren 11
12 Simple Type Derivations Derivation Restriction List Union Atomic Atomic List Union Base Type List List Union Union Union List Union namics Developer Days XML Schema 23 Was sind "Complex Types"? Elemente mit komplexen Typ haben entweder Child Elements oder Attribute ein komplexer Typ hat (meist) entweder ein Attribut oder ein Element Attribute haben auch einen Typ, dieser kann aber nie ein Complex Type sein. Complex Types haben entweder einen Namen (global definiert) oder sind anonym (lokal definiert) Elemente in einem Complex Type können nur dann den gleichen Namen haben, wenn sie auch vom gleichen Typ sind (andere Eigenschaften dürfen aber verschieden sein, z.b. minoccurs) namics Developer Days XML Schema 24 XML Schema Validieren statt Programmieren 12
13 Content in Complex Types Content eines Elementes sind die Daten (Zeichenketten) und Child Elements zwischen den beiden Tags des Elementes Arten von Content für komplexe Typen: Simple Content Complex Content: Element-only Content Mixed Content Empty Content namics Developer Days XML Schema 25 Complex Types + Content Types Simple Type Complex Type Simple Content Complex Content Element only Mixed Empty namics Developer Days XML Schema 26 XML Schema Validieren statt Programmieren 13
14 Wieso Type Derivation? "vom Allgemeinen zum Speziellen" Erweiterung von bestehenden Typ-Definitionen (Original bleibt erhalten) abgeleitete Typen können zur Verfeinerung eines Schemas benutzt werden oder erlauben die Weiterverwendung von bereits definierten Typen (statt mit Copy/Paste Typ- Deklaration kopieren und anpassen) objekt-orientierter Ansatz namics Developer Days XML Schema 27 Type Extension und Restriction Type Extension (Erweiterung): bestehenden Typ mit Attributen und/oder Child Elements erweitern Werte des Basis-Typs sind nicht unbedingt auch gültige Werte des erweiterten Typs Type Restriction (Einschränkung): bestehender Typ wird eingeschränkt Wertebereich eines eingeschränkten Typs ist Untermenge des Basis-Typs alle Werte des eingeschränkten Typs gehören auch in den Wertebereich des Basis-Typs Complex Types können nicht gleichzeitig erweitert und eingeschränkt werden (nur in 2 Schritten) namics Developer Days XML Schema 28 XML Schema Validieren statt Programmieren 14
15 Erlaubte Typ-Erweiterungen Base Type Complex Type Simple Type Simple Content Element only Complex Content Mixed Empty Simple Type Derived Type Complex Type Simple Content Complex Content Elementonly Mixed Empty namics Developer Days XML Schema 29 Erlaubte Typ-Restriktionen Base Type Complex Type * Falls alle Child Elements optional sind Simple Type Simple Content Element only Complex Content Mixed Empty Simple Type Derived Type Complex Type Simple Content Complex Content Elementonly Mixed * Empty * * namics Developer Days XML Schema 30 XML Schema Validieren statt Programmieren 15
16 Identity Constraints Erweiterung des ID/IDREF(S) Konzepts bieten eine ganze Reihe von Vorteilen belassen den Typ der Keys ermöglicht eine Typ-Validierung der Keys ermöglicht verschiedene Key Typen, z.b. Integers/Strings ermöglichen Keys über mehrere Felder ermöglichen scoped Keys (d.h. kontext-abhängig) beruhen auf Wertegleichheit (z.b = 2) können auch auf Elemente angewendet werden sind etwas komplizierter zu benutzen namics Developer Days XML Schema 31 ID/IDREF(S) in XML DTDs Referenzen von Elementen zu Elementen IDs werden als Attribute vergeben sie müssen gültige XML Namen sein sie müssen im XML Dokument eindeutig sein IDREF(S) werden als Attribute vergeben sie müssen existierende IDs referenzieren keine Möglichkeit der eigenen Typisierung Identifikation einzig über den Attributtyp ID keine Integers als Keys möglich (nur XML Namen) unabhängig vom Elementtyp namics Developer Days XML Schema 32 XML Schema Validieren statt Programmieren 16
17 Identity Constraints Eigenschaften Identity Contraints sind Einschränkungen genauere Spezifikation des Inhalts Keys/Referenzen nur eine mögliche Anwendung in vielen Fällen anwendbar genauere Spezifikation des Schemas prüfen deklarativ auf semantische Probleme nicht alles kann angegeben werden keine kausalen Abhängigkeiten programmierte Tests sind immer noch notwendig leider keine Verbindung mit dem Typ-Konzept namics Developer Days XML Schema 33 Reusable Groups wiederverwendbare Gruppen Elemente (Named Model Groups) Attribute (Attribute Groups) Deklaration von Gruppen immer gemeinsam verwendete Elemente/Attribute andere Art der Beziehung als bei Type Derivation lockerer Zusammenhang statt Spezialisierung Referenzierung über Gruppennamen entspricht Parameter Entities in DTDs semantisch wohldefiniert und damit sauberer namics Developer Days XML Schema 34 XML Schema Validieren statt Programmieren 17
18 Substitution Groups Ersetzen von Elementen durch andere Elemente es müssen abgeleitete Typen sein Beispiel: Element Kurs könnte in einer Liste von Kursen ersetzt werden durch Elemente wie Kochkurs, vakurs etc ermöglichen heterogene Aufzählungen Liste von Elementen unterschiedlicher Typen in einer Schema-Instanz Substitution Groups machen solche Listen lesbarer namics Developer Days XML Schema 35 XML Schema Processor Software für die Validierung von Infosets oftmals XML Parser mit Schema Unterstützung unterstützen neben DTDs auch XML Schema viele Implementierungen sind noch neu XML Schema lässt Spielraum verschiedene Parser machen verschiedene Dinge nicht alle Features müssen unterstützt werden Lokalisierung von Schema Dokumenten Zugriff auf das Resultat der Validierung Requirements definieren und abklären namics Developer Days XML Schema 36 XML Schema Validieren statt Programmieren 18
19 XML Schema Validation XML Schema arbeitet auf dem Infoset Eingabe der Validierung ist ein XML Infoset das Infoset wird validiert je nach processcontents Anweisungen d.h. u.u. werden Teile nicht validiert das Infoset wird um das Resultat ergänzt Post Schema Validation Infoset Contributions XML kennt ähnliches (Default oder Fixed Attribute) sehr viel detaillierter als eine ja/nein Entscheidung zusätzliche Informationen im Infoset können von Programmen ausgewertet werden namics Developer Days XML Schema 37 Effekte der Schema-Validierung das Infoset verändert sich PSVI Contributions aber auch "normale" Infoset Informationen z.b. werden Attributdefaults ergänzt sehr wichtig für die Weiterverarbeitung ein Schema sollte von Processing Guidelines begleitet werden u.u. Minimalbedingungen an einen Parser XML Schema ist keine komplette Lösung das Umfeld muss ebenso betrachtet werden namics Developer Days XML Schema 38 XML Schema Validieren statt Programmieren 19
20 Probleme und Stand der Technik XML Schema ist aufwendig deutlich mehr Aufwand als DTDs XML Schema ist fehlerhaft der Standard enthält Fehler im Typsystem XML Schema Software ist fehlerhaft oftmals nicht der volle Standard implementiert nicht auf eine Software verlassen falsch validierte Dokumente sind ein Problem falsche XML Schemas sind ein grosses Problem Test-Suite ist in Entwicklung u.u. Entwicklung eines offiziellen Conformance Test namics Developer Days XML Schema 39 Und trotzdem: XML Schema andere Software ist auch fehlerhaft DTD-Validierung ist auch nicht perfekt programmierte Tests sind es auch nicht XMl Schema Validierung wird besser werden XML Schema verbessert die Modellierung man muss mehr nachdenken über seine Daten man kann Modellierungstools benutzen XML Schema als B2B Basis Contract auf Basis XML Schema statt B2B bessere formale Übereinkunft weniger Interpretationsspielraum auf beiden Seiten namics Developer Days XML Schema 40 XML Schema Validieren statt Programmieren 20
21 "Validieren" von XML Schemas Validation definiert XML Dokument Validierung Ausgangspunkt ist ein korrektes XML Schema wie kommt man zu einem korrekten Schema? XML Schema selber sagt nichts dazu (z.b. lazy vs. eager) Apache Xerces XML Schema Parser Schema Quality Checker von IBM Alphaworks validiert keine Dokumente, sondern prüft Schemas Achtung: funktioniert nicht mit va 2 v 1.4.x namics Developer Days XML Schema 41 Und so kann man vorgehen beginnen mit einem einfachen XML Schema erstellt mit einem graphischen Tool wie XML Spy konvertiert aus einer bestehenden DTD 2. "validieren" des XML Schema mit Tools 3. validieren von Beispiel- oder Livedaten Toolunterstützung zur Erstellung von Beispieldaten 4. inkrementelle Verfeinerung des XML Schema z.b. Simple Type Facets, insbesondere Patterns 5. verbleibende Lücken der Validierung feststellen Lücken füllen mit Schematron o.ä. oder Code namics Developer Days XML Schema 42 XML Schema Validieren statt Programmieren 21
22 Alternativen & Ergänzungen XML Schema kann nicht alles keine Auswertung von Instanzen z.b. ein Summenfeld in einer Rechnung keine Abhängigkeiten zwischen Instanzen ein Integer muss grösser sein als ein anderer Schematron validiert Instanzen Tree Patterns statt Grammatiken finden von Context Nodes, Überprüfen von Bedingungen beliebige XPath Ausdrücke sind erlaubt (Effizienz!) kann eine Grammatik ergänzen oder ersetzen Schematron Schema wird nach XSLT übersetzt erfordert keine spezielle Infrastruktur oder Software namics Developer Days XML Schema 43 Zusammenfassung XML Schema als DTD++ Weiterentwicklung aufgrund von realem Bedarf Verbesserung in zwei Teilbereichen Datentypen Datenstrukturen XML Schema Simple Types einfachen Typenkonzept anwendungsorientierte Datentypen Ableitung von Typen möglich Einschränkungen von Wertebereichen (Facets) Verwendung von List oder Union Types namics Developer Days XML Schema 44 XML Schema Validieren statt Programmieren 22
Erik Wilde XML Schema
XML Schema Erik Wilde ETH Zürich http://dret.net/netdret/ Abstract XML Schema wird als Grundlage für eine zunehmende Anzahl von XML-Technologien (Web Services, XQuery, XSLT 2.0) immer wichtiger. XML Schema
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.
XML Schemasprachen. Übersicht und Einordnung. Übersicht. ! DTDs und XML Schema. ! Schemasprachen als Konzept. ! Schemasprachen selbstgemacht
XML Schemasprachen Übersicht und Einordnung Erik Wilde (ETH Zürich) 1 Übersicht! DTDs und XML Schema! Einschränkungen und Nachteile! Schemasprachen als Konzept! Grammatiken und Anderes! ISO Document Schema
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
XML Schema Kurzreferenz
XML Schema Kurzreferenz Auszug aus: Helmut Vonhoegen: Einstieg in XML, 3. Auflage, Galileo Press 2005 Schema-Deklaration
XML Vorlesung FHA SS 2006 15.5.2006
XML Vorlesung FH Aargau, SS 2006 XML Schema Teil III Erik Wilde 15.5.2006 http://dret.net/lectures/xml-fhnw-ss06/ Übersicht Reusable Groups Named Model Groups Attribute Groups Type Substitution Modellierungstechniken
Einleitung. Schema root Übersicht Dokumentation
XML Schema Inhalte Schema-Wurzel-Element Elemente und Attribute Gruppen Einfache Datentypen Komplexe Typen Schlüssel und Verweise Auslagerung und Wiederverwendung Namensräume Joker-Elemente Ersetzungsgruppen
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
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
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
XSL Transformation (XSLT) Teil IV
XML Vorlesung FH Aargau, SS 2006 XSL Transformation (XSLT) Teil IV Erik Wilde 3.7.2006 http://dret.net/lectures/xml-fhnw-ss06/ 3.7.2006 XML Vorlesung FHA SS 2006 1 Übersicht XSLT und Schemas Schemas für
DTDs und XML- Schemata
Wie geht es weiter? DTDs und XML- Schemata letzte Woche Syntax wohlgeformter e Namensräume Festlegung der Semantik von XML-Elementen heute Beschreibung von Dokument-Typen DTDs und XML-Schema anhand eines
Repräsentation von Struktur
Übersicht Einführung Document Type Definitions XML Schema Weitere Strukturbeschreibungssprachen Ziel: Kriterien Nur Jedes Dokument Thema Einführung Was machen Strukturbeschreibungen? Definition einer Menge
B Babuschka. Siehe Matrjoschka Babuschka-Design 294, 296, 301, 357 base 102, 109, 238 base64binary 74
Index Symbols Ableitung durch Einschränkung 103 Ableitung durch Liste 103 Ableitung durch Vereinigung 103 #all 278, 280, 281, 282 #all 103 ##any 315 ##local 315 Matrjoschka-Design 208.NET 429 ##other 315
Zusammenfassung XML. Metasprache um Dokumenttypen zu definieren
1. XML Grundbegriffe XML = extensible Markup Language Metasprache um Dokumenttypen zu definieren XML Baum
Versuchsziele. 1. Aufgabe. Hochschule Harz FB Automatisierung und Informatik Versuch: XML Thema: Grundkenntnisse in XML mit DTD s und Schemata
Hochschule Harz FB Automatisierung und Informatik Versuch: XML Thema: Grundkenntnisse in XML mit DTD s und Schemata Versuchsziele XML-Dateien für eine vorgegebene DTD-Datei erstellen können. XML-Dateien
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
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
Seminar: mobile GIS Austausch von Geodaten
Seminar: mobile GIS Austausch von Geodaten Tobias Wallura 30. Juni 2011 Tobias Wallura Austausch von Geodaten 30.06.2011 1 / 31 Agenda 1 Einführung 2 XML XML Schema XLink und XPointer XSLT 3 GML GML Dokumente
Präsentation zum Thema XML Datenaustausch und Integration
Sebastian Land Präsentation zum Thema XML Datenaustausch und Integration oder Warum eigentlich XML? Gliederung der Präsentation 1. Erläuterung des Themas 2. Anwendungsbeispiel 3. Situation 1: Homogene
2. Übung. Systemobjektmodell. TU Dresden - Institut für Bauinformatik Folie-Nr.: 1
WP3-13 Bauinformatik-Vertiefte Grundlagen 2. Übung Systemobjektmodell mittels EXPRESS-G Folie-Nr.: 1 Objektorientierte Modellierung Unter Objektorientierung (OO) versteht man eine Sichtweise auf komplexe
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
XSD - XML Schema Definition
XSD - XML Schema Definition Definieren von XML-Dokumenten Michael Dienert 15. September 2016 Inhaltsverzeichnis 1 Was sind XSD Dateien und warum soll man das lernen? 1 1.1 XSD Dateien und Anwendungen....................
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
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,
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
Document Type Definition (DTD)
Document Type Definition (DTD) 1. Einführung 2. DTD 3. XML Schema 4. XPath 5. XSLT 6. XSL-FO 7. XQuery 8. Web Services 9. XML und Datenbanken Inhalt des Moduls: Grundlagen Elemente, Attribute Komplexe
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
GEFEG.FX für ISO und GEFEG.Validation.Portal für ISO 20022:
GEFEG.FX für ISO 20022 und GEFEG.Validation.Portal für ISO 20022: Neueste Entwicklungen Inhalt: Neue GEFEG.FX Funktion: ISO 20022 UML Modelle packen... 3 Neue GEFEG.FX Funktion: Export nutzerdefinierter
XML Schema-Sprachen 04
XML Schema-Sprachen 04 G. Görz, J. Schneeberger Lehrstuhl Informatik 8 (KI) [email protected]! [email protected]! 1 Übersicht XML Schema-Sprachen Exkurs: Extended Backus-Naur
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)
Logische Dokumentenstruktur mit SGML und XML
Logische Dokumentenstruktur mit SGML und XML ein Referat von Oliver Lichte [email protected] 15. Mai 2001 Standard Generalized Markup Language SGML GML Ende der sechziger Jahre von IBM entwickelt.
XML Vorlesung ETHZ SS 2006 4.7.2006. XQuery. 4.7.2006 XML Vorlesung ETHZ SS 2006 2. 4.7.2006 XML Vorlesung ETHZ SS 2006 4
Vorlesung ETHZ, Sommersemester 2006 und Datenbanken Erik Wilde 4.7.2006 Übersicht Sichten auf Transfer vs. Datenmodell, Support im DBMS vs. relationales Modell (ER-Modell) SQL/ Integration von in die Welt
CARL HANSER VERLAG. Dirk Ammelburger XML. Grundlagen der Sprache und Anwendungen in der Praxis 3-446-22562-5. www.hanser.de
CARL HANSER VERLAG Dirk Ammelburger XML Grundlagen der Sprache und Anwendungen in der Praxis 3-446-22562-5 www.hanser.de 1 1.1 Einleitung... 2 Über dieses Buch... 3 1.2 Für wen ist das Buch gedacht?...
BackBüro Service GmbH. Version Dokumentation der XML-Schema-Definitionen für Rezepturen - Basis
BackBüro Service GmbH Version 2.1.0 - Basis Stand: April 2016 BackBüro Service GmbH sverzeichnis 1 Allgemeine Hinweise... 3 1.1 Codierung... 3 1.2 Aufbau des Schemas... 3 1.2.1 Definitionen... 3 1.2.2
IT-Zertifikat: Daten- und Metadatenstandards
IT-Zertifikat: Daten- und Metadatenstandards DTD - Document Type Definition / Dokumenttypdefinition Das (bislang) Wichtigste auf einen Blick Externe DTD einbinden:
Kontrollmitteilungsverfahren
RZF NRW Rechenzentrum der Finanzverwaltung des Landes Nordrhein-Westfalen SST : Schnittstellen SST_KMV_Datenschnittstelle_Protokoll_6 Version : 1.0.0 Status : abgestimmt Stand : 06.02.2017 Seite 2 von
XML-Schema (SCH) Sie erhalten einen Überblick über alle für XML-Schema relevanten Spezifikationen
XML-Schema (SCH) Lernziele Sie erhalten einen Überblick über alle für XML-Schema relevanten Spezifikationen und Werkzeuge. Sie kennen die Vorteile von XML-Schema gegenüber DTDs. Sie wissen, wie Elemente
XML Informationsmodelle
XML Vorlesung ETHZ, Sommersemester 2006 XML Informationsmodelle Erik Wilde 25.4.2006 http://dret.net/lectures/xml-ss06/ 25.4.2006 XML Vorlesung ETHZ SS 2006 1 Übersicht XML Namespaces für Schema-Kombination
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
Erhöhung der Datenqualität in XML-Dokumenten von Desktop Applikationen. Alexander Hilliger von Thile - REI/ID
Erhöhung der Datenqualität in XML-Dokumenten von Desktop Applikationen Alexander Hilliger von Thile - REI/ID Die Rolle von XML Markup (DQ) < < > > Markup DQ application server < < > Markup application
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
<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
Gruppe A PRÜFUNG AUS SEMISTRUKTURIERTE DATEN 184.705 2. 12. 2013 Kennnr. Matrikelnr. Familienname Vorname
Gruppe A PRÜFUNG AUS SEMISTRUKTURIERTE DATEN 184.705 2. 12. 2013 Kennnr. Matrikelnr. Familienname Vorname Arbeitszeit: 100 Minuten. Aufgaben sind auf den Angabeblättern zu lösen; Zusatzblätter werden nicht
Kontroll- und Mitteilungsverfahren
RZF NRW Rechenzentrum der Finanzverwaltung des Landes Nordrhein-Westfalen Kontroll- und Mitteilungsverfahren SST : Schnittstellen SST_KMV_Datenschnittstelle_Protokoll_5 Version : 1.0.4 Status : abgestimmt
XML Schema 2015 S h_da S Seite 1
XML Schema Seite 1 XML/Schema Weiterentwicklung Seit 5. April 2012 gibt es eine Weiterentwicklung von XML Schema: W3C XML Schema Definition Language (XSD) 1.1 Die wichtigsten Neuerungen: Assertions in
Programmieren 2 C++ Überblick
Programmieren 2 C++ Überblick 1. Einführung und Überblick 2. Klassen und Objekte: Datenkapselung 3. Erzeugung und Vernichtung von Objekten 4. Ad-hoc Polymorphismus 5. Behälter und Iteratoren 6. Templates
Repetitorium Informatik (Java)
Repetitorium Informatik (Java) Tag 6 Lehrstuhl für Informatik 2 (Programmiersysteme) Übersicht 1 Klassen und Objekte Objektorientierung Begrifflichkeiten Deklaration von Klassen Instanzmethoden/-variablen
Creational Patterns. Seminar Software-Entwurf. Thomas Liro WS 2004/05.
Creational Patterns Seminar Software-Entwurf WS 2004/05 Thomas Liro Inhaltsüberblick Einordnung des Themas Beschreibung von Design Pattern Auswahl von Design Patterns Was sind Creational
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
Objektorientierte Programmierung. Agenda für heute, 1. April, Eines der drei wichtigsten Programmierparadigmen
Agenda für heute, 1. April, 2010 Imperatives vs. objektorientiertes Programmieren Lesen Sie den Begleittext Seite 79 85 Eines der drei wichtigsten Programmierparadigmen (Paradigma: Denkmuster) Imperative
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
Modell/Metamodell. Generated Source Code. Generator. Model. Fakultät für Informatik und Wirtschaftsinformatik MDSD - SS 2014
Modell/Metamodell Model Generator Generated Source Code Andreas Schmidt Modellierung 1/18 Modell Modell beschreibt die zu generierende Anwendung Modell ist... abstrakt kompakt formal Modell kann in unterschiedlichen
Kapitel 4. Programmierkurs. Datentypen. Arten von Datentypen. Wiederholung Kapitel 4. Birgit Engels, Anna Schulze WS 07/08
Kapitel 4 Programmierkurs Birgit Engels, Anna Schulze Wiederholung Kapitel 4 ZAIK Universität zu Köln WS 07/08 1 / 23 2 Datentypen Arten von Datentypen Bei der Deklaration einer Variablen(=Behälter für
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
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
7. Schnittstellen Grundlagen zu Schnittstellen. 7. Schnittstellen
7. Schnittstellen Grundlagen zu Schnittstellen 7. Schnittstellen Eine Schnittstelle (Interface) ist eine Spezifikation eines Typs in Form eines Typnamens und einer Menge von Methoden, die keine Implementierungen
Weitere Beispiele. Beispiel CD-Spieler: Exemplare eines abstrakten Konzepts. 7. Schnittstellen. Schnittstelle: Syntax
Weitere Beispiele Beispiel CD-Spieler: Exemplare eines abstrakten Konzepts public interface Funktion { boolean istimdefbereich(double x); double wert(double x); String gibbeschreibung(); public interface
CLICK TO EDIT MASTER TITLE STYLE
CLICK TO EDIT MASTER TITLE STYLE AUTOMATISCHE ERZEUGUNG VON BENUTZEROBERFLÄCHEN UND DATENHALTUNG FÜR DIE KONFIGURATION VON FELDGERÄTEN Diplomverteidigung Betreuer (Firma ubigrate): Dipl.-Inform. Falk Hartmann
