Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

But if I bought a radio and found that it accessed only certain stations and not others, I'd be upset. I suppose I could have a half dozen radios, one.

Ähnliche Präsentationen


Präsentation zum Thema: "But if I bought a radio and found that it accessed only certain stations and not others, I'd be upset. I suppose I could have a half dozen radios, one."—  Präsentation transkript:

1 But if I bought a radio and found that it accessed only certain stations and not others, I'd be upset. I suppose I could have a half dozen radios, one for each set of stations. It makes no more sense to have a half dozen computers or different operating systems or browsers for Web access. Sir Timothy J. Berners-Lee (Begründer des WWW) XML Grundlagen

2 XML Grundlagen 2 SGML Entwicklung: 1967 generic coding 1968 editorial structure tags 1969 GML 1986 SGML als ISO-Standard 8879 Funktion: Formale Typisierung von Dokumenten (Buch: Kapitel, Abschnitte, Unterabschnitte, …) Charakterisiert Dokumenttyp anhand Document Type Definitionen (DTD) Metasprache zum beschreiben von Markup Languages. (kann eigene Tags definieren und deren strukturelle Beziehung zueinander festlegen) Reibungsloser Ablauf erforderte hohen Initialaufwand (Programme, Schulungen)

3 XML Grundlagen 3 SGML Beispiel: Für das folgende Beispiel soll der Dokumenttyp "Notiz" dienen. Eine Notiz soll einen Titel haben, aus mindestens einem Absatz bestehen und im Text sollen wichtige Stellen markierbar sein: Angenommen diese DTD ist als Datei /usr/home/sm/dtd/notiz.dtd abgespeichert. Eine Instanz des Dokumenttyps würde so aussehen: Termine Dienstag, 9 Uhr: Zahnarzttermin...

4 XML Grundlagen 4 Was ist XML ? Entwicklung: Am wurde XML 1.0 als Empfehlung des W3C veröffentlicht Am folgte die 2.Edition von XML 1.0 Am folgte die 3.Edition von XML 1.0 AM folgte die 4.Edition von XML 1.0 Funktion: reduzierte Version von SGML Standard zur Modellierung von Daten in Form einer Baumstruktur Klartext verständlich für Mensch & Maschine definiert Regeln für den Aufbau von Dokumenten Standard zur Definition von beliebigen in ihrer Grundstruktur jedoch stark verwandten Auszeichnungssprachen Metasprache Sieht ähnlich wie HTML aus, ist jedoch nicht als Nachfolger gedacht.

5 XML Grundlagen 5 Was ist XML ? Aufbau: Ein XML-Dokument besteht aus einem Prolog und den eigentlichen XML- Daten. Prolog: XML-Daten: Hallo Welt!

6 XML Grundlagen 6 Warum XML ? technisch völlig plattformunabhängig Liefert Zusatzinformationen über Daten, die direkt weiterverarbeitet werden können. umfangreiche Formatierungen mit HTML nicht möglich HTML erlaubt keine Definition eigener DTDs SGML ist nicht gut geeignet um Dokumente über das Internet anzubieten. Spezifikationsumfang von XML geringer als SGML, da Teilmenge. Pareto Verteilung XML enthält mehr Restriktionen (Entwicklung von Browsern leichter) CSS und JavaScript/DOM sind 100% zu XML kompatible. Kann verwendet werden, wenn keine Datenbank zur verfügung steht.

7 XML Grundlagen 7 Korrektheit XML hat 2 verschiedene Vorstellungen von "korrekt". Wohlgeformtheit: Dokument mit verständlichem Markup wird als wohlgeformtes Dokument bezeichnet. Gültigkeit: Der Standard definiert ein XML-Dokument als gültig, wenn es wohlgeformt ist, den Verweis auf eine DTD enthält und das durch die DTD beschriebene Format einhält. Wird ein XML-Dokument als nicht gültig erkannt, ist seine Verarbeitung gemäß W3C-Vorgabe abzubrechen.

8 XML Grundlagen 8 Korrektheit Ein wohlgeformtes Dokument sollte u.a. folgende Bedingungen erfüllen: die XML-Version sollte deklariert sein es gibt genau 1 Wurzelelement innerhalb des Wurzelelementes sind alle Elemente eindeutig ineinander verschachtelt alle nicht-leeren Elemente sind mit Start-Tag und End-Tag markiert jeder Start-Tag beginnt mit und jeder End-Tag beginnt mit leere Elemente sind entweder mit Start- und End-Tag markiert oder beginnen mit Ein Kommentar wird begrenzt von eingeschlossen ein Attribut darf nicht zweimal im gleichen Tag vorkommen verwendete Entitäten müssen vor ihrer Referenzierung deklariert worden sein

9 XML Grundlagen 9 Korrektheit Beispiel für ein wohlgeformtes XML-Dokument: wohlgeformt.xml: Ich bin wohlgeformt.

10 XML Grundlagen 10 Die DTD ist das Regelwerk des XML-Dokuments und definiert Elemente, Entities und Attribute. In HTML gibt es eine fest vorgeschriebene HTML-DTD. Bei XML kann man sich diese DTD selber definieren (lassen). Vorteile: Mehr Handlungsspielraum, da die Syntax auf die Bedürfnisse angepasst werden kann. Jeder Elementtyp kann in der gewünschten Häufigkeit angegeben werden. Ein XML-Editor kann einen Autor davon abhalten, die Gültigkeit eines XML-Dokuments zu zerstören. Eine DTD bildet die Grundlage für eine mögliche homogene, dezentrale Weiterverarbeitung der XML-Daten. Dokument Type Definition

11 XML Grundlagen 11 Beispiel dokumenttypdefinition.dtd Dokument Type Definition

12 XML Grundlagen 12 Beispiel für daraus resulierendes XML-Dokument xmldoc.xml Hans Wurst Musterstr.1, Musterstadt verheiratet 2 Kinder Dokument Type Definition

13 XML Grundlagen 13 In der Praxis kann es vorkommen, dass beim Konsolidieren zweier XML-Dokumente, Elementtypen mit gleicher Bezeichnung verwendet werden. Mögliche Folge wäre keine eindeutige Zuweisung des Elementtyps zu einer der vorhandenen DTDs. XSLT hätte Probleme die XML-Daten richtig aufzubereiten Man bedient sich in diesem Fall der Namensräume. Ein qualifizierender Name Qname besteht aus: Präfix(Namensraum):lokaler Teil(Element oder Attribut) Hans Hänschen Die URI soll nur eine eindeutige Bezeichnung für den Namensraum sein. Es wird nicht auf die Datei zugegriffen. Namensräume

14 XML Grundlagen 14 Ein XML-Schema (auch XML-Schema-Definition kurz:XSD) bietet eine umfangreichere Alternative zur Strukturbeschreibung als eine DTD. Das Schema wird in XML verfasst. XML-Schema

15 XML Grundlagen 15 Die Vorteile der XSD bestehen vorrangig in der Komplexität und den möglichen Einstellungen, die vorgenommen werden können. 1. Das XSD kann sich selber validieren und ist somit als Bestandteil des XML-Dokuments korrekt. 2. Das XSD wird in XML verfasst und es bedarf keiner neuen, XML- fremden Sprache. 3. In Schema lassen sich komplexe Datentypen definieren und sogar im Wertebereich eingrenzen. XML-Schema

16 XML Grundlagen 16 Elementdefinitionen: Simple: Complex: XML-Schema

17 XML Grundlagen 17 Mit einem XLink lassen sich zwei Typen von Links erstellen: simple: vergleichbar mit dem aus HTML bekannten Link auf Ressource oder Internetauftritt. extended: bildet komplexes Linksystem, mit dem man mehrere Ressourcen/Internetseiten gleichzeitig ansprechen kann. Außerdem lassen sich Verhaltensmuster für Linkgruppen definieren. XLink

18 XML Grundlagen 18 Der XPointer macht es möglich neben Element(teilen) auch auf einzelne Punkte oder Bereiche zu referenzieren. Vorgabe dabei ist allerdings, dass die angesprochenen Dokumente XML-konform sind. Es gibt 2 Zeigertypen. #xpointer(): sucht Element mit entsprechender ID oder Alternative #xpointer(id("zielid1")) xpointer(id("zielid2")) #element(): verfolgt den Strukturbaum bis zum gewünschten Element #element(1/2/3) oder #element(element1/2/3) XPointer

19 XML Grundlagen 19 Document Object Model DOM ist eine Programmierschnittstelle (API) für den Zugriff auf HTML- oder XML-Dokumente. Sie wird vom World Wide Web Consortium definiert erlaubt Computerprogrammen dynamisch den Inhalt, die Struktur und das Layout eines Dokuments zu verändern. Programmschnittstelle ist Plattform und Sprachneutral geeignet für Script-Sprachen aber z.B. auch für HTML-Editoren Verarbeitung eines Dokuments Im ersten Schritt wird ein Dokument eingelesen und ein Dokument-Objekt erzeugt. Anhand dieses Objekts kann mittels der Methoden des API auf die Inhalte, Struktur und Darstellung zugegriffen werden. DOM erlaubt: die Navigation zwischen den einzelnen Knoten eines Dokuments, das Erzeugen, Verschieben und Löschen von Knoten sowie das Auslesen, Ändern und Löschen von Textinhalten. Am Ende der Verarbeitung kann aus dem Dokument-Objekt durch Serialisierung ein neues XML- oder HTML-Dokument generiert werden.

20 XML Grundlagen 20 Document Object Model Beispiel: Beispiel_xmldoc.xml Hans Wurst Musterstr.1, Musterstadt verheiratet

21 XML Grundlagen 21 Document Object Model DOM-Baum zu Beispiel_xmldoc.xml: Fast alle XML-Parser bieten inzwischen ein DOM-Modul an, mit dem sich ein DOM aus einer XML-Datei erstellen läßt. Der DOM-Baum, der vom Parser erstellt wird, muß immer vollständig im Hauptspeicher gehalten werden. (bedenke Performance)

22 XML Grundlagen 22 Transformation von XML-Dokumenten XSL Transformations (XSLT) ist ein Sprachbestandteil der eXtensible Stylesheet Language XSL. XSLT bietet die Möglichkeit beliebige XML-Dokumente in andere Formate zu transformieren. Es ist es möglich die Daten in XML zu speichern, aber in einem anderen bzw. nützlicheren Format darzustellen oder kompakter zu gestalten als das Original. (ohne überflüssige Informationen) mögliche Ausgabeformate sind XML, HTML, XHTML, SVG, VRML und PDF Die Transformation geschieht mithilfe von XSL-Stylesheets Parsen durch Transformations-Engine (z.b. Saxon) Existiert zu einer Auszeichnung eine Regel im Stylesheet, ein sogenanntes Template, wird diese angewandt und der Ergebnis-Code wird erzeugt

23 XML Grundlagen 23 Transformation von XML-Dokumenten Beispiel: adressbuch.xml –-–-Saxon–-–-> adressbuch.html Die Transformation eines Adressbuchs adressbuch.xml in eine HTML-Datei adressbuch.html soll hier mit der XSLT-Engine Saxon beispielhaft gezeigt werden. Die Quelldatei adressbuch.xml: Hans Wurst Bockstadt 50

24 XML Grundlagen 24 Transformation von XML-Dokumenten Das Transformations-Stylesheet adressbuch.xsl: Transformiertes Adressbuch

25 XML Grundlagen 25 Transformation von XML-Dokumenten

26 XML Grundlagen 26 Aufruf: saxon -o adressbuch.html adressbuch.xml adressbuch.xsl Quelldatei: adressbuch.xml Stylesheet: adressbuch.xsl Ergebnis: adressbuch.html Transformation von XML-Dokumenten

27 XML Grundlagen 27 Transformation von XML-Dokumenten Ergebnis adressbuch.html: Transformiertes Adressbuch Hans Wurst Bockstadt 50 Das Ergebnis dieser Transformation ist also eine reine HTML-Datei, die über die Angaben im Stylesheet beliebig gestaltet werden darf

28 XML Grundlagen 28 Transformation von XML-Dokumenten Beispiel: XML - Gästebuch easyboard.php (Die Index-Seite des Gästebuches) easyboard_entries.xml (Enthällt die Einträge im XML-Format)

29 XML Grundlagen 29 Bücher : SGML für die Praxis – Ansatz und Einsatz von ISO 8879, Wolfgang Rieger, Springer-Verlag Berlin Heidelberg, 1995 XML für Dummies, 3. überarbeitete Auflage, Lucinda Dykes, Ed Tittel; Wiley- Vch, 2006 XML, Grundlagen der Sprache und Anwendungen in der Praxis; Dirk Ammelburger, Carl Hanser Verlag, 2004 Internet : Quellen


Herunterladen ppt "But if I bought a radio and found that it accessed only certain stations and not others, I'd be upset. I suppose I could have a half dozen radios, one."

Ähnliche Präsentationen


Google-Anzeigen