Web-Programmierung (WPR)



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

Datenaustauschformate. Datenaustauschformate - FLV

... MathML XHTML RDF

Web-Programmierung (WPR)

Java und XML 2. Java und XML

HTML5. Wie funktioniert HTML5? Tags: Attribute:

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

XML und SOAP Einführung und Grundlagen

2. Einführung in Datenbanken und XML

IT-Zertifikat: Daten- und Metadatenstandards

Verteilte Anwendungen. Teil 2: Einführung in XML

X-Technologien. XML and Friends. Jörn Clausen 9. Juli 2001

XML 1. Einführung, oxygen. Ulrike Henny. IDE Summer School 2013, Chemnitz

Java: Kapitel 9. Java und XML. Programmentwicklung WS 2008/2009. Holger Röder

Ressourcen-Beschreibung im Semantic Web

Bibliothekssysteme / Verbundsysteme / Netze

Enterprise Applikation Integration und Service-orientierte Architekturen. 09 Simple Object Access Protocol (SOAP)

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

Strukturierung von Inhalten

X-Technologien. Ein Überblick. Ulrike Henny. IDE Summer School 2013, Chemnitz

Ferhat Ayaz. XML mit C++

XML Extensible Markup Language

CARL HANSER VERLAG. Dirk Ammelburger XML. Grundlagen der Sprache und Anwendungen in der Praxis

Daten- und Metadatenstandards Wintersemester 2011 / November 2011 XML II: DTD

XML Grundlagen Teil I

XSL Templates. Mit Templates arbeiten. XSL Templates

Tobias Hauser. XML-Standards. schnell+kompakt

Online-Publishing mit HTML und CSS für Einsteigerinnen

Übungsaufgaben zu XML:

Klaus Schild, XML Clearinghouse Transformation von XML-Dokumenten

Verteilte Systeme: Übung 4

WEBSEITEN ENTWICKELN MIT ASP.NET

Containerformat Spezifikation

Containerformat Spezifikation

1 Software Engineering 1

XML-basierte Standards für den Datenaustausch in der Logistikkette

XML Informationsmodelle

Einführung in XML. Seminarunterlage. Version 3.05 vom

XML Extensible Markup Language

Implementierung von Web Services: Teil I: Einleitung / SOAP

Predictive Modeling Markup Language. Thomas Morandell

Ruhr.pm XML-Daten verarbeiten mit XML::LibXML Autor: Datum:

Motivation. Inhalt. URI-Schemata (1) URI-Schemata (2)

Gruppe A PRÜFUNG AUS SEMISTRUKTURIERTE DATEN Kennnr. Matrikelnr. Familienname Vorname

Dirk Ammelburger XML. Grundlagen der Sprache und Anwendungen in der Praxis HANSER

Wiederholung: Beginn

IT- und Medientechnik

XML Schema vs. Relax NG

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

DTD: Syntax-Zusammenfassung


Fachdidaktik der Informatik Jörg Depner, Kathrin Gaißer

Es gibt situationsabhängig verschiedene Varianten zum Speichern der Dokumente. Word bietet im Menü DATEI unterschiedliche Optionen an.

5. Programmierschnittstellen für XML

XML-Austauschformat für Sicherheitsdatenblätter

RDF und RDF Schema. Einführung in die Problematik Von HTML über XML zu RDF

Dokumenten- und Content Management

5. Programmierschnittstellen für XML

Benutzerkonto unter Windows 2000

WSDL. Web Services Description Language. André Vorbach. André Vorbach

Präsentation zum Thema XML Datenaustausch und Integration

Workflow, Business Process Management, 4.Teil

XML-Namensräume. Marc Monecke

XML-Verarbeitung. XPath XSL die extensible Stylesheet Language. Torsten Schaßan SCRIPTO Modul 4: EDV Wolfenbüttel

Prof. Dr. Oliver Haase Karl Martin Kern Achim Bitzer. Programmiertechnik Zahlensysteme und Datendarstellung

Grundzüge und Vorteile von XML-Datenbanken am Beispiel der Oracle XML DB

Webseite in XML Kurzeinführung

XSL und XSLT. Inhalt. Mathias Heilig XSL Übersicht. Formatierungsprozess. Sprachbeschreibung. Vorführung Resümee

Webentwicklung mit Mozilla Composer I.

XML Verarbeitung mit einer in Haskell eingebetteten DSL. Manuel Ohlendorf (xi2079)

Inhalt. Vorbemerkungen... 1

Schiller-Gymnasium Hof

XML. Teil 3: Namensräume. Abteilung Informatik WS 02/03

GRAF-SYTECO. Handbuch. Zeichensatzgenerator für AT-Geräte. Erstellt: November SYsteme TEchnischer COmmunikation

Vorgaben und Erläuterungen zu den XML-Schemata im Bahnstromnetz

Wintersemester Maschinenbau und Kunststofftechnik. Informatik. Tobias Wolf Seite 1 von 18

Benutzerhandbuch. Leitfaden zur Benutzung der Anwendung für sicheren Dateitransfer.

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

Zusammenfassung XML. Metasprache um Dokumenttypen zu definieren

Das Einsteigerseminar

XML - Extensible Markup Language. Agenda - Oracle XML DB

Norm 240 Versionierung

JASSI Standard Tasks Version 1.5

xmltex Oder Wie bringt man XML und TeX zusammen? Daniel Radünz

Android Remote Desktop & WEB

Transkript:

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 Anwendungsszenarien Konfigurationsdateien Austauschformat zwischen WebClient u. Server 2

4.2 XML Vorteile von XML Plattformneutral Trennung von Inhalt und Präsentation Repräsentation beliebig komplexer strukturierter Daten Anreicherung von Nutzdaten um Metainformationen Verbesserung der Qualität von Dokumentenund Datenverarbeitungsprozessen (DTD,..) Verfügbarkeit standardisierter Tools 3

4.2 XML XML-Co-Standards XSL extensible Stylesheet Language (Formatierung und Layout) XSLT XSL Transformation XPath XML Path Language (Zugriff auf Dokumentenknoten) XML-Schema Dokumententypen-Definition 4

4.2.1 Markup-Sprachen Markup = Auszeichnung von Text Wesentlichen Vorteile Grundsätzliche plattformneutral Lesbar durch Mensch u. Computer Veränderbar durch variable Länge Formatierendes Markup (HTML) Schriftart + Schriftgröße +... Generisches Markup beschreibt Semantik des ausgez. Textes Tagnamen = Metainformationen 5

4.2.1 Markup-Sprachen Erweiterbares Markup HTML = fester Umfang von Tags XML = erweiterbar SGML XML HTML XHTML XSLT 6

4.2.2 XML-Dokument Struktur XML-Dokument Prolog XML-Deklaration Stylesheet-Referenz Dokumenttyp-Deklaration Wurzelelement Geschachtelte Elemente Kommentare Verarbeitungsanweisungen... Beispiel 7

4.2.2 XML-Dokument Formale Auszeichnungsregeln Ein XML-Dokument hat genau ein Wurzelelement XML-Elemente müssen mit einem Ende Tag abgeschlossen werden XML-Element müssen korrekt geschachtelt sein Attributwerte müssen in Anführungszeichen oder Hochkomma stehen Attribute müssen als Name=Wert-Paar definiert werden <td nowrap>inhalt</td> 8

4.2.2 XML-Dokument XML Dokument Elementen Attributen Textuellen Inhalt Elemente mit Inhalt (Text oder andere Elemente) ohne Inhalt Gemischer Inhalt (Text und andere Elemente)! Jedes Element muss genau ein Parent- Element haben 9

4.2.2 XML-Dokument Attribute Beschreiben ein Element zusätzlich Kardinalität:1 Modellierungsproblematik Attribut oder Element?? Eigentliche Bestimmung von Attributen:Metadaten Child-Elemente enthalten eigentliche Informationen 10

4.2.2 XML-Dokument Regeln für XML-Namen Unterscheidung Groß- u. Kleinschreibung Namen beginnen mit Buchstaben oder Unterstrich (Mindestlänge 1) Ziffern, Groß- Kleinbuchstaben, Unterstrich, Bindestrich(-), Punkt(.) Zeichen aus anderen Sprachräumen erlaubt Namen dürfen xml nicht enthalten 11

4.2.2 XML-Dokument Entity Referenzen Grund: Verbot von manchen Zeichen im textuellen Inhalt <, >, &,, ' Ersatzdarstellungen XML besitzt 5 vordefinierte Entity-Referenzen Zeichen Entity-Referenz < < > > & & " ' &apos; 12

4.2.2 XML-Dokument CDATA Bereich character data <![CDATA[ nicht zur parsender Text]]> Bereich wird vom Parser nicht interpretiert Zeichenreferenzen (Unicode) Zeichen ö dezimal ö hexadezimal ö 13

4.2.3 Dokument-Typen Dokument Inhalt, Präsentation,Struktur Dokumentenstruktur legt Elemente fest aus denen sich ein Dokument zusammensetzen kann. Dokumententyp beschreibt Dokumente von ein und derselben Struktur HTML 4.0, XMHTML XML-Dokumenttypen = XML-Anwendungen 14

4.2.3 Dokument-Typen Status eines XML-Dokument Well formed Dokument entspricht formalen Auszeichnungsregeln Valid Struktur des Dokumentes entspricht den Regeln des zugehörigen Dokumententyps. Wichtig: Valid = Well Formed Well Formed!= Valid Dokumenttypen => Verbesserung der Qualität 15

4.2.3 Dokument-Typen Dokumenttyp-Definition DTD DTDs besitzen keine XML-Syntax Elemente und Attribute werden definiert Element-Deklaration definiert Element und legt Regeln für dessen Verwendung fest. <ELEMENT Name Inhaltsmodell> Attributlistendeklaration <!ATTLIST Elementname Attributname Attributtyp Voreinstellung> 16

4.2.3 Dokument-Typen Dokumenttyp-Definition Definition Reihenfolge (, ) Definition Optionen ( ) Definition Kardinalität? => 0... 1 (= optional) + => 1... n * => 0... n wird Elementnamen nachgestellt Inhaltsmodell EMPTY,ANY Siehe Beispiel wein.dtd 17

4.2.4 Namesräume Ziel: Vermeidung von Namenskonflikten XML-Namensraum (namespace) Kollektion von Element- und Attributenamen envelope header body head html body soap xhtml Elemente einer XML-Applikation werden Präfixe vorangestellt: soap:body 18

4.2.4 Namesräume Namensraum-Deklaration URI URL URN Namensräume verknüpfen Elemente mit URIs <element xmlns:präfix=uri> 19

4.2.4 Namesräume Problem der Eindeutigkeit gibt es auch für Präfixe Präfixe müssen nur in einem Dokument eindeutig sein Der benutzte URI muss nicht wirklich existieren. Namesraumdeklaration im Start-Tag des Wurzelknoten Child-Tags erben den Nameraum DTDs unterstützen keine Namensräume. Beispiel: wein3.xml 20

4.2.5 Dokumente u. Daten XML war gedacht um Dokumente zu spezifizieren Heutzutage XML=universelles Datenaustauschformat Hierarchischer Struktur Plattformneutralität Aus Daten werden XML-Dokumente Datenaustauschformat erfordert weitergehende Prüfungen. 21

4.2.5 Dokumente u. Daten XML-Schema Alternative zu DTDs Vorteile von XML-Schema Ein XML-Schema ist ein XML-Dokument Präziesere Inhaltsmodellbeschreibung möglich Alle aus anderen Programmiersprachen bekannten Typen stehen zur Verfügung (für Elemente und Attribute) Namensräume werden unterstützt Ein XML-Dokument kann mit mehreren Schemas verknüpft werden. 22

4.2.5 Dokumente u. Daten Element-Deklaration <xsd:element name= name type= xsd:string /> Einfach Elemente (Blätter der Struktur) enthält keine Elemente und Attribute Verbindet Namen mit Typ Mögliche Typen: boolean, byte, integer, float, double, duration, datetime Eigene Typen und Wertebereiche definierbar 23

4.2.5 Dokumente u. Daten Komplexe Elemente <xsd:element name= name > <xsd:complextype>... </xsd:complextype> </xsd:element> Eigene Typedefinition möglich Beispiel: wein4.xml 24

4.2.6 XML-Verarbeitung 1. Schritt bei der Verarbeitung von XML ==> parsen 2 Programmiermodelle SAX (Simple API for XML) DOM (Document Object Model) 25

4.2.6 XML-Verarbeitung SAX (Simple API for XML) XML-Dokument verfügbarmachen über Callbacks ContentHandler-Klasse muss implementiert werden Events werden generiert Verarbeitung und parsen geschieht quase gleichzeitig SAX-Parser Bild 26

4.3 DOM Document Object Model Node DOM Core Document Element Attr HTMLDocument HTMLElement DOM HTML DOM in Firefox 27

4.3 DOM Wichtigster Unterschied zu SAX DOM Parser Langsam (zuerst wird ganze Dokument geparst und DOM aufgebaut im Speicher) Danach erst Zugriff auf DOM möglich Manipulierung des DOM durch DOM-API möglich (u.a. AJAX) Implementierung für unterschiedliche Programmiersprachen (C,C++,Java, JavaScript,...) 28

4.4 Layout-Prozess Vereinfachte Darstellung des Layoutprozesses für HTML-Dokumente DOM Handler Parser Layout Rendering Datenquelle Bildschirm DTD Stylesheet 29

4.5 Ereignisorientierung Browser Initialisierung Controller Präsentation Benutzer Ereignisse Ereignisse lesen DOM Ereignisse verarbeiten Netzwerk 30