Extensible Markup Language Von SGML zu XML XML – Beispiel
Transcription
Extensible Markup Language Von SGML zu XML XML – Beispiel
24.11.2009 Unterschiede zwischen HTML und XML Extensible Markup Language XML Von SGML zu XML 28 XML ersetzt HTML nicht XML: entwickelt zum Transport und zur Strukturierung und zur Speicherung von Daten HTML: entwickelt zur Darstellung von Daten “HTML is about displaying information, while XML is about carrying information.” http://www.w3schools.com/xml/xml_whatis.asp XML ersetzt HTML nicht HTML und XML sind beide nur Text XML – Beispiel 29 SGML weitaus umfangreicher als XML →SGML zu komplex XML Untermenge von SGML, 80-20 Regel Idee des Hypertext auch hier grundlegend Ziel: Flexibilisierung der Struktur Notwendig: technische Unterstützung 1996: erster Entwurf von XML quasi Standard zur Dokumentbeschreibung <?xml version="1.0" encoding="ISO-8859-1" standalone="yes"?> <Vorlesung> <Titel>Grundkurs Informatik</Titel> / <Thema>XML</Thema> <Studiengang>KWL</Studiengang> </Vorlesung> Grundbegriffe – XML Dokument 30 Grundbegriffe – Elemente 31 Ein XML-Dokument ist ein Datenstrom (der nicht zwingend als Datei vorliegen muß), welcher den Strukturierungsprinzipien der eXtensible Markup Language genügt. besteht aus Prolog: können <?xml version="1.0" version 1.0 encoding encoding= "UTF-8" UTF 8 standalone="yes"?> und XML Daten: <Vorlesung> <Titel>GrundkursInformatik</Titel> <Thema>XML</Thema> <Studiengang>KWL</Studiengang> </Vorlesung> viele Dokumente besitzen Komponenten, oft hierarchisch organisiert: logische Dokumente logische Komponenten in XML: Elemente oder d andere Elemente enthalten (textuellen) ( ll ) TTeilil des d eigentlichen i li h D Dokumentes k Elemente sind durch Start- und Endtag begrenzt oder Leeres-Element-Tag <Vorlesung> <Titel>Grundkurs Informatik</Titel> <Thema>XML</Thema> <Studiengang>KWL</Studiengang> <Pflichtfach/> </Vorlesung> 1 24.11.2009 XML – Sprache, Definition Beispiel 32 33 Eine Anwendung der Extensible Markup Language. Ein Vokabular, das aus Symbolen und der ihnen zugewiesenen Bedeutung (Semantik) gebildet wird, ergänzt um Regeln (grammatikalische Struktur und Gültigkeitsregeln für den Inhalt (z.B. Datentypen)) zur Kombination der Vokabularelemente. Anwendungen einer so neu geschaffenen XMLSprache werden als XML-Dokumente bezeichnet. <?xml version="1.0" encoding="ISO-8859-15" standalone="yes"?> <Vorlesung> <Titel>Grundkurs Informatik</Titel> <Thema>XML</Thema> <Studiengang>KWL</Studiengang> <Pflichtfach/> </Vorlesung> Grundbegriffe – Elemente 34 Grundbegriffe – Attribute 35 durch logische Struktur der Elemente wird hierarchischer Aufbau definiert kann als Baum dargestellt werden <?xml version="1.0" encoding="ISO-8859-15" standalone="yes"?> <Vorlesung> <Titel i l start="2009-10-11T09:00:00+01:00“> "2009 10 11 09 00 00 01 00“ Grundkurs Informatik </Titel> <Thema>XML</Thema> <Studiengang>KWL</Studiengang> </Vorlesung> Vorlesung Titel Thema Studiengang Grundkurs Informatik XML KWL ähnlich HTML können Elemente Attribute enthalten wird als Attribut am Tag angegeben Pflichtfach Wurzel- oder Dokumentelement: enthält alle anderen Elemente XML in 10 Punkten 36 XML in 10 Punkten 37 XML steht für strukturierte Daten: 1. XML strukturiert Daten Strukturierung von Daten ubiquitär: Adressbücher, Tabellenkalkulation, finanzielle Transaktionen XML stellt die Regeln, ist aber keine Programmiersprache erlaubt l b die di D Definition fi i i einer i S Sprache h zur Strukturierung S k i <?xml version="1.0" encoding="ISO-8859-1" standalone="yes"?> <Vorlesung> <Titel>Grundkurs Informatik</Titel> <Thema>XML</Thema> <Studiengang>KWL</Studiengang> </Vorlesung> http://www.w3c.de/Misc/XML-in-10-points.html XML sieht ein wenig wie HTML aus: 2. verwendet Tags: <tag> und Attribute: <tag name=´Wert´> Tags sind aber nicht vorgegeben, jede Anwendung kann eigene definieren <br> heisst also nicht Zeilenumbruch XML ersetzt HTML nicht <?xml version="1.0" encoding="ISO-8859-1" standalone="yes"?> <Vorlesung> <Titel>Grundkurs Informatik</Titel> <Thema>XML</Thema> <Studiengang>KWL</Studiengang> </Vorlesung> http://www.w3c.de/Misc/XML-in-10-points.html 2 24.11.2009 XML in 10 Punkten XML in 10 Punkten 38 XML ist Text, aber nicht zum Lesen: 3. XML ist vom Design her ausführlich: 4. XML ist mit jedem Editor lesbar Speicherung textuell, nicht binär vereinfacht den Datenaustausch zwischen Maschinen XML Dateien sind größer als vergleichbare binäre Formate 188 Byte XML, davon 30 Byte reine Daten <?xml version version="1.0" "1 0" encoding encoding="ISO-8859-1" "ISO 8859 1" standalone="yes"?> <Vorlesung> <Titel>Grundkurs Informatik</Titel> <Thema>XML</Thema> <Studiengang>KWL</Studiengang> </Vorlesung> <?xml version="1.0" encoding="ISO-8859-1" standalone="yes"?> <Vorlesung> <Titel>Grundkurs Informatik</Titel> <Thema>XML</Thema> <Studiengang>KWL</Studiengang> </Vorlesung> http://www.w3c.de/Misc/XML-in-10-points.html XML in 10 Punkten XML in 10 Punkten XML ist eine Familie von Techniken: 5. XML ist neu, aber nicht so neu: 6. XML – Überbegriff für eine Reihe von Techniken Beispielsweise: entwickelt seit 1996, Wurzeln aber SGML, 1969 Seit 1998 W3C Standard Seit 1990 Entwicklung von HTML – Erfahrungen Basis für XML „Das Beste aus SGML SGML” XLink: realisiert Verlinkung zwischen XML-Dokumenten XPointer: Eindeutige g Beschreibung g der Position von Elementen innerhalb eines XML-Dokumentes XSL: Stylesheets zur Darstellung von XML DOM - Document Object Model: Modell des XML-Dokumentes, Datenstruktur zum Zugriff auf Dokument(teile) XML in 10 Punkten xHTML 42 43 7. XML überführt HTML in xHTML: Ende der 1960er Jahre: Entwicklung von SGML HTML basiert auf SGML, jetzt Version 4.0 1996: Entwicklung von XML XML: generelle, allgemein einsetzbare Auszeichnungssprache mit XML wurden eine Reihe von SGML Dateiformaten entwickelt, die auch im Web eingesetzt wurden Beispiel: SVG Wirrwarr von Standards XML XML gerechtes HTML ist syntaktisch zu vielen XML-Standardsprachen kompatibel und kann in andere XML-Dokumente eingebettet werden Vereinheitlicht das automatische Lesen (Parsen) von Dateien wichtig, XML ist syntaktisch strenger: HTML wird in der Syntax an das strengere XML angepaßt z.B. jeder Start-Tag muss einen End-Tag oder ‚/‘ besitzen <p>Das ist ein Absatz</p> <br /> Weitere Spezifikationen sind jetzt Pflicht (Dokumenttyp, ...) HTML xHTML 3 24.11.2009 XML in 10 Punkten Wohlgeformtheit 44 45 XML ist modular: 8. 10. Bei leeren Elementen können diese zu einem Tag zusammenfallen. <Pflichtfach /> / XML ist die Basis für RDF und das Semantic Web: 9. Zu jedem Start-Tag existiert genau ein Ende-Tag. <Titel>Grundkurs Informatik</Titel> XML erlaubt die Definition eines neuen Dokumentformates durch Kombination und Wiederbenutzung Problem: zwei Formate können parallel entwickelt und damit gleiche Tags oder Attribute mit unterschiedlicher Bedeutung besitzen Lösung: Namensräume Semantic Web: Netz von Sinnzusammenhängen Vorraussetzung: Beschreibung von Ressourcen: RDF Korrekte Elementschachtelung, d.h. Elemente überlappen einander nicht. <Titel>Grundkurs Informatik<Thema>XML </Titel><Thema> XML ist lizenzfrei, plattform- und herstellerunabhängig, und gut unterstützt XML – Beispiel Genau ein Wurzelelement. Wohlgeformtheit 46 47 <?xml version="1.0" encoding="ISO-8859-15" standalone="yes"?> <Vorlesung> <Titel>Grundkurs Informatik</Titel> <Thema>XML</Thema> <Studiengang>KWL</Studiengang> <Pflichtfach /> </Vorlesung> <Titel start="2009-10-11T09:00:00+01:00">Grundkurs Informatik</Titel> XML stellt Basis für die Umwandlung in verschiedene Dokumentformate dar Kein Start-Tag (oder Tag der ein leeres Element einleitet)) enthält zwei oder mehr Attribute desselben Namens. <Titel start="" start=""> XML – Medienunabhängig Alle Attributwerte sind in einfachen oder doppelten Anführungszeichen. Keine Kommentare innerhalb von Tags. Kommentare beginnen und enden mit genau zwei Bindestrichen. <!-- Kommentar --> < darf nicht innerhalb von Elementinhalten oder Attributwerten auftreten:< statt dessen Anwendungen für XML Anzeigen: Browser Erzeugen, Verändern: Editor Opera, XML jeder HTML xHTML Firefox, InternetExplorer Texteditor Texteditor, jEdit, jEdit PsPad Lesen: Parser Verarbeiten: XML-Processor PDF 4 24.11.2009 XML-Sprachen WH: XML definiert regeln für die Entwicklung von Markup-Sprachen Beispiele: SVG DocBook-XML, OpenDocument (ODF) XML-Sprachen: SVG <?xml version="1.0" encoding="utf-8"?> <svg xmlns="http://www.w3.org/2000/svg" width="400" height="600"> <circle cx="100" cy="100" r="50" /> <rect x="100" y="100" width="100" height="200" /> <line x1="100" y1="100" x2="200" y2="200" stroke="red" stroke-width="4px"/> / </svg> RSS-Feeds XML-Sprachen: DocBook Definiert Vokabular zur Beschreibung von textuellen Dokumenten Erlaubt Strukturierung von Texten XML-Sprachen: RSS-Feeds Weit umfangreicher (aber auch komplizierter) → OpenDocument Really Simple Syndication Ermöglicht, Webseiten oder Teile davon zu abonnieren Nicht beschränkt auf textuelle Inhalte: Podcasts Beispiel: http://www.spiegel.de/dienste/0,1518,271804,00.ht ml Zusammenfassung 56 Trennung von Inhalt und Layout XML - eXtensible Markup Language XML strukturiert Daten logische, hierarchische Struktur XML-Dokument: baumartiger Aufbau Besteht aus Elementen: Element hat Name (Tag) und Inhalt (von Start- und Endtag umschlossen) Wohlgeformtheit, DTD 5