XML Extensible Markup Language Hype or Hope ?. © Problem Wie können Informationen gespeichert werden ? unabhängig von verwendeter.

Slides:



Advertisements
Ähnliche Präsentationen
Web-Content-Management-Systeme
Advertisements

25. Mai 2001Kleyer/Oyen/ReuseFolie 1 Fallstudie im Rahmen des Studienganges Wirtschaftsinformatik Christian Kleyer, Daniel Oyen, Svend Reuse Grundkonzeption.
Entwicklung UnivIS-Anbindung auf Basis von PHP und DOM-XML
Extensible Markup Language
Worzyk FH Anhalt Datenbanksysteme für FÜ WS 2004/2005 XML - 1 XML Extensible Markup Language.
XML.
Anmerkungen zu XML Im September 2000 Entwicklung/Anspruch von XML
Datenbankzugriff im WWW (Kommerzielle Systeme)
Datenbanken 2 - WML - Prof. Dr. Stefan Böttcher - WS 2000/01 Wireless Markup Language (WML) Quelle: Ziel: Daten aus dem Internet an.
Seminar: XML für Fortgeschrittene Referent: Katrin Apel
XML - Aufbau und Struktur - mit Einsatz im B2B
Hands On – Einführung in XML
IMS Universität Stuttgart 1 Einführung in XML Hannah Kermes HS: Elektronische Wörterbücher Do,
HTML - Einführung Richard Göbel.
FH-Hof Extensible Markup Language Richard Göbel. FH-Hof Extensible Markup Language XML XML ist universeller Ansatz für die Strukturierung von Zeichenketten.
Java: Grundlagen der Sprache
DOM (Document Object Model)
Seminar XML und Datenbanken Sven Wiegelmann SS 2002.
Polymorphie (Vielgestaltigkeit)
XINDICE The Apache XML Project Name: Jacqueline Langhorst
XML-Schema HKI Proseminar Wintersemester 2010/11 Dozentin: Frau Kurz von Jan Kohl und Christian Lütticke.
HTML - Eine erste Annäherung
XML-Parser Manuel Röllinghoff.
© 2002 Prof. Dr. G. Hellberg 1 XML-Seminar XML-Technologie: XML in Theorie und Praxis Prof. Dr. G. Hellberg XML-Technologie: XML in Theorie und Praxis.
Anwendungen. © Prof. T. Kudraß, HTWK Leipzig Historie des WWW Grundlage Internet – Entwickelt Ende der 60er Jahre vom US-Militär (ARPA-Net) – Technische.
Anwendungen. © Prof. T. Kudraß, HTWK Leipzig Historie des WWW Grundlage Internet – Entwickelt Ende der 60er Jahre vom US-Militär (ARPA-Net) – Technische.
Einführung XML XML Einführung Andreas Leicht.
Einführung MySQL mit PHP
Tobias Högel & Dennis Böck,
1 Grundlagen und Anwendung der Extensible Markup Language (XML ) Peter Buxmann Institut für Wirtschaftsinformatik Johann Wolfgang Goethe-Universität Frankfurt.
FH-Hof HTML - Einführung Richard Göbel. FH-Hof Komponenten des World Wide Webs WWW Browser HyperText Transfer Protocol (HTTP) via Internet WWW Server.
Coccon das Web-XML-Publishing System Thomas Haller.
Vortrag HTML, XHTML, DHTML
DTD – Deklaration von Elementen Beschreibt die Einschränkungen des Inhalts eines Elements Syntax: Einziger atomarer Typ: #PCDATA (Parsed Character DATA)
Einführung / Geschichte Einführung / Geschichte Motivation Motivation Beispiel Beispiel Architektur / Komponenten Architektur / Komponenten Konfiguration.
Einsatzgebiete und Anwendungen
Proseminar: „Webtechnologien für Ecommerce“
Wird ganz am Anfang der HTML-Datei geschrieben Doctype html public bedeutet, dass man sich auf die Öffentlichkeit der html-dtd bezieht Html ist die meist.
Java für Fortgeschrittene
Sesame Florian Mayrhuber
Übersicht Was ist cocoon? Separation of Concerns Pipeline Modell
Daniel Kucher Proseminar XHTML. 1. HTML – Struktur und Versionen 2. Der – Teil 3. Der – Teil 4. Stylesheets (CSS) – Das Rückrat von XHTML.
Wohlgeformtheit und Gültigkeit Grundlagen der Datenmodellierung Anke Jackschina.
Ausgabe vom Seite 1, XML Eine Einführung XML - Eine Einführung.
3. Juni 2003Moritz Petersen Minimales Markup und Templates zur Erstellung von strukturierten Texten Ein Zwischenbericht zur Diplomarbeit.
Struktur von RDF Fabian Scheller.
XML und Datenbanken © 2006 Markus Röder
XML in relationalen Datenbanken
XML (Extensible Markup Language)
ADAT©2004 Dipl. - Ing. Walter SabinSeite: 1 Version 1.0a XML EXTENSIBLE MARKUP LANGUAGE.
Torque in Turbine Team 4 Josef Bohninger Thomas Lindenhofer
Version X des Programms: Datenaustausch-Probleme % ( ) (WIRBEL-BASISTEIL GR. 52) N1G29X150Y85I150J25 N2G0X150Y25 Version Y des Programms:
XSL in der Praxis Anwendungsbeispiele für die eXtensible Stylesheet Language Andreas Kühne XML One 2000.
Drucken mit XSL-FO DaimlerChrysler  Drucken von Webseiten
Dublin Core IT-Zertifikat Daten- und Metadatenstandards.
© 2001 Sven Dammann1 Aufbau Integrierter Informationssysteme XML Bearbeitung und relationale Abbildung Sven Dammann Martin-Luther-Universität Halle-Wittenberg.
->Prinzip ->Systeme ->Peer – to – Peer
Hauptseminar Web-Services und verteilte Datenbanken Thema XML, DTDs und XML-Schema XML, DTDs und XML-Schema - Stefan Kurz, 25. April 2003.
- Warum: Das HTML-Dilemma
IT-Zertifikat der Phil.Fak Kurs 4: Daten- und Metadatenstandards Patrick Sahle XML-BasicsWS 08/09.
Datenbanken im Web 1.
Seminar zur Geoinformation Folie 1 Inhalt: –XML –XML- SCHEMA –XSL –Syntax –GML Seminar zur Geoinformation Datenaustausch mit XML / GML im InternetDatenaustausch.
Peter Brezany Institut für Softwarewissenschaften Universität Wien
Internet - Grundbegriffe Unterlagen zum Kurs "Wie erstelle ich eine Homepage?"
XML - Warum: Das HTML-Dilemma HTML, SGML, XML - Wie: Syntax, Konzepte, Sprachelemente Basics Wohlgeformte XML-Dokumente (ohne DTD) Gültige XML-Dokumente.
1 Java und XML Stephan Baldes Warum XML? In welchem Format wurden die Daten gespeichert? Bernd;Thomas;3;5;1987;Freiburg;Karlsruhe Peter;Maier;7;9;1980;Karlsruhe;Freiburg.
WebServices Vortrag zur Diplomarbeit WebServices Analyse und Einsatz von Thomas Graf FH Regensburg
Prof. Dr.-Ing. Franz-Josef Behr Geodaten und Datenmodell
 Präsentation transkript:

XML Extensible Markup Language Hype or Hope ?

© Problem Wie können Informationen gespeichert werden ? unabhängig von verwendeter Software standardisiert erweiterbar dauerhaft (technisch) einfach (technisch) migrationsfähig binär (z.B. Serialisierung) ASCII (rel.) Datenbank So nicht !

© Eigenschaften XML ist standardisiert XML ist eine Methode strukturierte Information zu speichern XML ist HTML ähnlich (aber sehr anders) XML ist Text, der nicht zum Lesen gedacht ist XML ist ausführlich XML ist eine Familie von Technologien (XSLT...) XML ist neu! (oder doch nicht?) XML ist lizenzfrei, Plattform unabhängig, unterstützt standardisierte XML-Programmierschnittstellen (SAX, DOM) XML-Applikationen sind nicht standardisiert!

© standardisiert Aufbau von XML-Dokumenten ist standardisiert Struktur natürlich (?) nicht Was bringt's ? Werkzeuge, APIs,... brauchen nur einmal entwickelt (gekauft) werden TCP/IP SMTP Client Anwendung Datenmodell Darstellung XML DTD

© strukturierte Information Nicht Freitext, sondern Struktur + Daten Strukturierung durch Tags Daten und Metadaten 2423|4567|100| |4567|50| |4567|10|19900

© EDIFACT UNH+1+ORDERS:D:96A:UN' BGM+220+AGL153+9+AB' DTM+137: :102' DTM+61: :102' NAD+BY+++PLAYFIELD BOOKS+34 FOUNTAIN SQUARE PLAZA+CINCINNATI+OH US' NAD+SE+++QUE+201 WEST 103RD STREET+INDIANAPOLIS+IN US' LIN+1' PIA :IB' QTY+21:5' PRI+AAA:24.99::SRP' LIN+2' PIA :IB' QTY+21:10' PRI+AAA:42.50::SRP' UNS+S' CNT+3:2' UNT+17+1'

© XML AGL Playfield Books 34 Fountain Square Plaza Cincinnati OH US QUE 201 West 103RD Street Indianapolis IN US XML by Example Developing XML Solutions

© HTML ähnlich The hypertext markup language is an SGML format (Tim Berners-Lee, 1991) Hypertext spezielle Anwendung feste Tags Markup Language Gruppen werden durch Kommandos (Markup) getrennt/identifiziert auch Daten+Metadaten Ganz wichtig heute eher HTMFADL Hypertext Markup, Formatting and Application Development Language ;-)

© nicht zum Lesen ! Beispiel: ausführlich geschwätzig ! XML ist nicht geeignet zur Darstellung manuellen Bearbeitung wer bearbeitet schon TCP-Pakete von Hand ! XML ist geeignet zur maschinellen Bearbeitung !!! zur Speicherung zum Datenaustausch

© Familie von Technologien Editoren nicht standardisiert/allgemein verfügbar Transformationen XSLT, Stylesheets,... Programmierwerkzeuge Parser, SAX, DOM Datenbanken Parser erlauben nur das Lesen von XML-Dokumenten Bearbeitung (z.B. Suchen, Filtern,...) manuell Datenbankfunktionalität auf XML-Dokumenten noch kaum verfügbar/verbreitet/verläßlich

© Neu ! W3C working group seit Juli 1996 Verbesserung/Nachfolger von HTML If you are doing catalogs, you need a Tag; for repair manuals you need ; [...] I want to be able to create new information structures [...] This is why C++ lets you make your own classes (imagine a development environment that didn't!) (Dave Hollander) SGML Standard Generalized Markup Language Textverarbeitungen, Ende 60er Jahre IBM: GML (Goldfarb, Mosher, Lorie), ISO 8897 Vereinfachtes SGML A slimmed-down SGML is not a new concept (W3C XML ERB, 1997)

© Standards,... sind so toll, daß jeder seinen eigenen haben sollte Applikationen sind NICHT standardisiert

© Namespaces Firma A benutzt Tag, Firma B auch (mit anderer Sematik) beide wollen gemeinsames Dokument erstellen Konflikt ! Namespaces: Tags erhalten Namespace zugewiesen.... Wichtig, wir arbeiten aber nur mit einem, lassen Namespaces also weg.

© Zusammenfassung XML ist Methode zur Speicherung/Übertragung von Informationen standardisiert einfach (jedenfalls einfacher als SGML) neu (gut) XML ist nicht Allheilmittel zum Datenaustausch Struktur der Dokumente muß (vom Anwender) standardisiert werden einfach (zu lesen,...) neu (gut)

© XML Dokument besteht aus Tags (Metadaten) und Text (Daten) Tags haben einen Namen werden durch <> begrenzt zu jedem Tag gehört ein Ende-Tag Tags können Attribute haben Attributwerte müssen in Anführungszeichen stehen Bei Tags ohne Daten (leere Elemente) Abkürzung statt

© XML Dokument contd. Tags können geschachtelt sein Till Hänisch Aber richtig, nicht so: Till Hänisch Welche Informationen als Attribut, welche als Daten Keine generellen Regeln Daten, die das Element beschreiben/modifizieren als Attribut sonst als Daten

© Welche Tags ? Im Prinzip frei, aber wer sorgt dann dafür, daß die Dokumente korrekt sind ? alle nötigen Informationen da richtige Schreibweise,.... DTD Document Type Definition legt fest, welche Tags wo möglich sind Instrument zur Standardisierung Validierung Überprüfung eines Dokuments, ob mit DTD konform Parser

© Aufbau eines Dokuments Zunächst die verwendete XML Version und Zeichensatz (XML-Deklaration) Dann die DTD zum Dokument, hier als URL oder als Datei Hier wird auch festgelegt, daß das äußerste Tag (Root) CONTACTLIST ist Jetzt kommen die Tags Hans Mustermann

© Beispiel Kontaktliste Liste mit Kontakten (Name, Adresse,...) jede Liste hat Eigentümer Tags - die ganze Liste - der Eigentümer - ein Kontakt - eine Person - Vorname - Nachname als PK wird die Adresse verwendet

© DTD

© Schritt für Schritt: 1 DTD ist auch ein XML Dokument oder doch nicht ? (XML-Schema) Zeichensatz ISO ISO Latin 1 Tag CONTACTLIST Eigentlich reden wir von ELEMENTen, die vom Start- und Ende-Tag begrenzt werden CONTACTLIST muß zuerst genau ein OWNER Element, dann ein oder mehrere CONTACT Elemente enthalten CONTACT? hieße null oder eins CONTACT* hieße beliebig viele (auch null) (OWNER|CONTACT) hieße entweder OWNER oder CONTACT

© 2 Element NAME kann kein oder ein FIRSTNAME Element und ein LASTNAME Element enthalten hat ein Attribut ( ), daß angegeben werden muß (#REQUIRED) und aus Text besteht (CDATA) Attributlisten können ein oder mehrere Attribute umfassen Aufbau jedes Eintrags: z.B.

© 3 Elemente FIRSTNAME und LASTNAME enthalten Text (PCDATA: Parsed Character DATA), keine Tags ! Element CONTACT enthält ein NAME Element andere Typen ANY - beliebige Tags EMPTY - leeres Tag

© Entities entsprechen etwa Makros Benutzung (Entity-Referenz) mit &Entity; &Copyright; > < auch externe Entities &adr; fügt die angegebene URI in das Dokument ein Parameter Entities (mit %) - Makro in DTD

© Dokument Hans Mustermann du Entspricht das Dokument der DTD ? Validierung durch Parser, z.B. mit Xerces Sample SAXCount java sax.SAXCount -v name

© Was tun mit XML ? Daten müssen/sollen verwendet/gelesen werden XML für Menschen ungeeignet transformieren XSLT wandelt XML in irgendwas anderes um meistens wieder in XML oder in HTML hier nur kurz: Umwandlung in HTML

© XSLT Transformationen XSL (Extensible Stylesheet Language) Skript mit Formatierungsregeln in XML geschrieben Umwandlung von XML in irgendwas (Text, XML, HTML) Welche Regeln für welche XML-Elemente ? Pattern matching auf Pfade / - Dokument Root /CONTACTLIST - Element CONTACTLIST Mächtige Konstrukte für z.B. Bedingungen,... hier nur einfaches Beispiel java org.apache.xalan.xslt.Process -IN XML-Datei -XSL Stylesheet -OUT Zieldatei

© Beispiel Kontakte von Kontakte von

© XML-Anwendungen Speicherung z.B. Konfigurationsdateien Datenaustausch RPC SOAP Darstellungsunabhängige Informationen Content Negotiation Web Anwendungen u. v. a. m. Annotationen (RISOURCE) P2P (jaxp)

© Konfigurationsdateien Warum mit XML ? "Jeder" kann XML Anwender Werkzeuge (Parser,...) hierarchische Strukturen bieten sich hier an Beispiel Remote Management, Plausibilitätsprüfung,... jdbc:oracle:thin walker:1521:till scott tiger

© Informationsaustausch eCommerce z.B. papierlose Bestellung ORDER Beispiel von vorher Alternative z.B. EDIFACT Probleme Standardisierung: DTD's (+Semantik) muß für verschiedene Anwender festgelegt werden, z.B. Andererseits: Transformationen sind einfach (XSLT,...) bisher: Austausch von Daten, aber: wie werden Funktionen im Zielsystem "aufgerufen" ? z.B. "Bestellung ausführen" oder "stornieren" ?

© SOAP verteilte Anwendungen Austausch von Daten Aufruf von Methoden entfernter Objekte "klassisch": RPC, CORBA, DCOM, RMI,... Alternative: SOAP XML-kodierter RPC standardisierter Nachfolger von XML-RPC portabel (da XML, HTTP basiert) einfach/problemlos (s. o.) (+) stateless (Transaktionen,...) (-) Overhead (gegenüber RPC, CORBA,...) Beispiel: Lagerbestand abfragen

© SOAP Beispiel Frage: Tefal 4711 und Antwort Tefal

© Web Anwendungen Content Negotiation Darstellung im Web (HTML) Als Ausdruck (PDF) Auf Handy (WML) Web-Anwendungen (z.B. Intranet) komplexes HTML für Anwender schwierig zu pflegen Layout-Änderungen aufwendig (an vielen Stellen) z.B. in HTML-Dateien, CGI-Scripts,... Trennung von Inhalt (XML) und Darstellung (HTML) Teamarbeit bei Erstellung Programmierer/Content-Lieferanten Designer Content Management

© Zusammenfassung XML Dokumente enthalten Elemente, die durch Tags begrenzt werden Einfache Regeln (Passende öffnende und schließende Tags, Attributwerte in "",...) Struktur kann durch DTD beschrieben werden muß aber nicht - Gegensatz zu SGML Überprüfung durch Validierung (Parser) Transformation durch XSLT Namespaces vermeiden Kollisionen weites Feld