Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

Prof. Dr. Fabian Glasen Content Management Systeme1 XML eXtensible Markup Language.

Ähnliche Präsentationen


Präsentation zum Thema: "Prof. Dr. Fabian Glasen Content Management Systeme1 XML eXtensible Markup Language."—  Präsentation transkript:

1 Prof. Dr. Fabian Glasen Content Management Systeme1 XML eXtensible Markup Language

2 Prof. Dr. Fabian Glasen Content Management Systeme2 XML Web-Sites xml.apache.org

3 Prof. Dr. Fabian Glasen Content Management Systeme3 XML Literatur Niedermair Elke, Niedermair, Michael, [2001]: XML Das grosse Buch, Data Becker, Düsseldorf. Rothfuss, Gunther / Ried, Christian, [2001]: Content Management mit XML, Springer, Berlin.

4 Prof. Dr. Fabian Glasen Content Management Systeme4 XML XML ist eine Metasprache zur Definition von Markupsprachen (z.B. HTML) XML ist selbst eine Markup-Sprache XML definiert eine hierarchische Struktur für ein Dokument Die Struktur kann mittels einer DTD oder XML-Schema festgeschrieben werden XML sagt nichts darüber aus, wie ein Dokument in einem Browser angezeigt wird. Zur Spezifikation der Anzeige können Stylesheets verwendet werden (CSS/ XSL)

5 Prof. Dr. Fabian Glasen Content Management Systeme5 XML XML wurde u.a. entworfen, um eine einfache Implementierung und Zusammenarbeit mit SGML und HTML zu gewährleisten.

6 Prof. Dr. Fabian Glasen Content Management Systeme6 XML Beispiel Root-Knoten Knoten

7 Prof. Dr. Fabian Glasen Content Management Systeme7 XML Nikolaus Weihnachtsmann Eisscholle Nordpol 012/ Oskar Osterhase Eierring Eierhausen 034/ Käptn Blaubär Schwindelweg Lügenbeutel 08765/324553

8 Prof. Dr. Fabian Glasen Content Management Systeme8 XML Jedes XML-Dokument muss mit einer XML-Deklaration beginnen

9 Prof. Dr. Fabian Glasen Content Management Systeme9 XML Kommentare Processing Instruction (PI) Beispiel für PI: XML-Deklaration

10 Prof. Dr. Fabian Glasen Content Management Systeme10 XML Schema: Da auch bei sprechenden Tagnamen nicht sicher gestellt ist, dass jeder Nutzer die Tagnamen eindeutig interpretiert, kann zusätzlich eine Definition (Beschreibung) dafür gegeben werden. Eine solche Definition (Beschreibung) nennt man ein Schema, wenn die dadurch implizierte Struktur häufiger wieder verwendet werden soll. Ein Schema ist als ein Modell für eine Klasse gleichartiger Dokumente mit wiederkehrendem Muster. Das Schema beschreibt die zugelassenen Tags und ihre Anordnung in einem gültigen Dokument

11 Prof. Dr. Fabian Glasen Content Management Systeme11 XML Schema: Um die gewünschte Strukturvorgabe systematisch zu ermöglichen (werden benötigt) bzw. stehen zur Verfügung: DTD- (Document Type Definition) XML-Schema XML-Prozessor validiert die XML-Dokumente hinsichtlich der zugehörigen DTDs.

12 Prof. Dr. Fabian Glasen Content Management Systeme12 DTD (Beispiel)

13 Prof. Dr. Fabian Glasen Content Management Systeme13 XML CSS Beispiel für CSS Datei person.css NAME {font family: Arial; font size: 20pt; color: red} STRASSE {font family: Arial; font size: 16pt; color: yellow} PLZ {font family: Arial; font size: 16pt; color: green} ORT {font family: Arial; font size: 16pt; color: blue} TEL {font family: Arial; font size: 12pt; color: magenta}

14 Prof. Dr. Fabian Glasen Content Management Systeme14 XML XML ist eine generalisierte Auszeichnungssprache (markup language) Inhaltsbeschreibungssprache eine Tag-Sprache (wie HTML) keine Seitenbeschreibungssprache (wie HTML) generalisiert: Benutzer kann eigene Tags definieren (Spezialsprachen z.B. XHTML) grosser Bruder: SGML (XML ist Teilmenge von SGML schlanker, aufwärtskompatibel)

15 Prof. Dr. Fabian Glasen Content Management Systeme15 XML XML ist ein Sprachbaukasten zur Erzeugung bedarfsgerechter neuer Auszeichnungssprachen –Erweiterbarkeit XML erlaubt die Definition neuer Tags und Attribute –Struktur XML erlaubt die Darstellung beliebig tief verschachtelter hierarchischer Strukturen –Validierung XML ermöglicht die Prüfung der strukturellen Gültigkeit der Dokumente (bezüglich DTD)

16 Prof. Dr. Fabian Glasen Content Management Systeme16 XML XML-Dokumente können von einer Person oder einer beliebigen Anwendung erzeugt und per Messaging über ein Netzwerk verschickt und von einer anderen Person oder Applikation interpretiert werden. XML-Dokumente können relativ einfach zur Präsentation in verschiedenen Ausgabeformaten (HTML, WML, PDF, RTF etc.) aufbereitet werden.

17 Prof. Dr. Fabian Glasen Content Management Systeme17 XML Tag-Sprachen erlauben Strukturierung Austausch Verarbeitung der Inhalte unabhängig von Plattformen Betriebssystemen spezifischer Anwendungssoftware

18 Prof. Dr. Fabian Glasen Content Management Systeme18 XML Funktionen des Markups in einem XML- Dokument: Aufteilung auf Speicherungseinheiten Beschreibung der hierarchischen Struktur Verknüpfung von Attribut-Wert-Paaren mit der Struktur

19 Prof. Dr. Fabian Glasen Content Management Systeme19 XML XSLXSLT XHTMLDOM RDF DTD XML-Schema SOXXDR XML Data Reduced Schema for Object-Oriented XML Resource Description Framework Document Object Model ebXML xCBL OFX OTP E-Business- XML Open Trading Protocol Open Financial Exchange Common Business Language Schema-Sprachen Business-Sprachen SOAP WSDL UDDI WEB-Services CSS Visualisierung / Transformation

20 Prof. Dr. Fabian Glasen Content Management Systeme20 XML XML basierte Standards XML-Basisstandard (XML als Metasprache) XML Kernstandards (Xpath, Xlink, DOM, XML-Schema, XSLT) Horizontale Standards (branchenunabhängige DTDs: WML, XHTML, SVG (Scalable Vector Graphics), xCBL, ebXML) Vertikale Standards (branchenspezifische DTDs und zugehörige Vokabularien)

21 Prof. Dr. Fabian Glasen Content Management Systeme21 XML Standardisierungsaktivitäten xCBL (Common Business Language) ebXML (Electronic Business XML) OFX (Open Financial Exchange) OTP (Open Trading Protocol)

22 Prof. Dr. Fabian Glasen Content Management Systeme22 XML XML eignet sich als Visualisierungssprache (formatunabhängig) Datenaustauschsprache für SCM (EDI) Metasprache zur Definition von Markup-Sprachen

23 Prof. Dr. Fabian Glasen Content Management Systeme23 XML - XSL XML-Dokument Transformations- regeln XSL-Stylesheet HTML WML PDFRTF Text... XMLTeX Transformation eines XML-Dokumentes in andere Formate

24 Prof. Dr. Fabian Glasen Content Management Systeme24 XML - XSL XML XSL HTML XSL Prozessor

25 Prof. Dr. Fabian Glasen Content Management Systeme25 XML Informationen können in XML als Elemente oder als Attribute abgelegt werden.

26 Prof. Dr. Fabian Glasen Content Management Systeme26 XML Beispiel: Ablage als Element... Inselgasse Konstanz...

27 Prof. Dr. Fabian Glasen Content Management Systeme27 XML Beispiel: Ablage als Attribut Attribute sollten möglichst Metainformationen zu den zugehörigen Elementen enthalten: 4711

28 Prof. Dr. Fabian Glasen Content Management Systeme28 XML Beispiel: Ablage als Attribut und als Element XML im Content Management ort=Heidelberg >Springer

29 Prof. Dr. Fabian Glasen Content Management Systeme29 XML CDATA-Abschnitte innerhalb von CDATA-Abschnitten werden Sonderzeichen z.B. für Tags etc. nicht interpretiert. Hallo Welt ]]> im Gegensatz zu : Hallo Welt

30 Prof. Dr. Fabian Glasen Content Management Systeme30 XML CDATA

31 Prof. Dr. Fabian Glasen Content Management Systeme31 XML XML-Prozessoren können XML-Dokumente lesen (interpretieren), d.h.: Sie können auf die Struktur zugreifen über die Struktur auf den Inhalt von XML-Dokumenten zugreifen Struktur und Inhalt verändern

32 Prof. Dr. Fabian Glasen Content Management Systeme32 XML und CSS (Cascading Style Sheets)

33 Prof. Dr. Fabian Glasen Content Management Systeme33 XML CSS CSS entsprechen in Word Druckformatvorlagen (Absatzformate) ermöglichen Layoutdefinition für neue Tags einer Web-Site, die in XML oder HTML verwendet werden durch Änderung der Tag-Definition in CSS-Datei wird das Design in allen betroffenen Web-Seiten geändert

34 Prof. Dr. Fabian Glasen Content Management Systeme34 XML CSS Gleichen XML-Tags in unterschiedlichen XML-Dokumenten kann durch CSS ein einheitliches Layout zugewiesen werden das Layout aller XML-Dateien, die ein Tag und den Bezug zur einer CSS-Datei enthalten, kann durch Änderung der Tag- Definition in der CSS-Datei einfach für alle XML-Dokumente verändert werden.

35 Prof. Dr. Fabian Glasen Content Management Systeme35 XML CSS Der fromme Dieb Ellis Peters Krimi Heyne Verlag Nach einem Unwetter müssen die... 12,90 DM

36 Prof. Dr. Fabian Glasen Content Management Systeme36 XML CSS Beispiel 1 für CSS-Datei katalog1.css Titel, Verlag, ISBN-Nummer {font-family:Arial} Autor, Erscheinungsjahr,Inhaltsangabe {font- family:"Courier New"} Kategorie, Seitenzahl, Preis {font-family:Times}

37 Prof. Dr. Fabian Glasen Content Management Systeme37 XML CSS Beispiel 2 für CSS-Datei katalog1.css Titel, Verlag, ISBN-Nummer, Autor, Erscheinungsjahr,Inhaltsangabe, Kategorie, Seitenzahl, Preis {display:block} Titel, Verlag, ISBN-Nummer {font-family:Arial} Autor, Erscheinungsjahr,Inhaltsangabe {font- family:"Courier New"} Kategorie, Seitenzahl, Preis {font-family:Times}

38 Prof. Dr. Fabian Glasen Content Management Systeme38 XML - CSS Beispiel 3 für CSS-Datei katalog1.css Titel {font-family:Arial; font-size: 18pt; font-style: italic} Autor {font: bold 16pt Arial; text-decoration: underline} Kategorie, Verlag, Erscheinungsjahr,Seitenzahl, ISBN-Nummer, Inhaltsangabe, Preis, Neupreis {font-family:Times; font-size: 12pt} Seitenzahl {font-family:Arial; font-size: 10pt} ISBN-Nummer, Neupreis {font-weight: bold} Kategorie {font-family:Arial; font-size: 12pt} Preis {text-decoration: line-through}

39 Prof. Dr. Fabian Glasen Content Management Systeme39 DTD (Document Type Definition)

40 Prof. Dr. Fabian Glasen Content Management Systeme40 XML - DTD Die DTD definiert die Struktur eines XML-Dokumentes es müssen alle Elemente, Attribute und Entitäten spezifiziert werden Wird zu Beginn eine Reihenfolge der Elemente spezifiziert, (Inhaltsmodell) müssen die Elemente in der festgelegten Reihenfolge im Dokument auftauchen. XML-Dokumente können auch ohne DTD angelegt werden Falls DTD einem XML-Dokument zugwiesen wird, muss sich das Dokument nach den Vorgaben richten

41 Prof. Dr. Fabian Glasen Content Management Systeme41 XML - DTD DTD liefert Unterstützung bei Interpretation durch Menschen und Programme und beim Austausch von XML-Dokumenten aber: Semantik / Bedeutung muss letztlich zwischen Menschen vereinbart werden. Sie kann z.B. durch Typdefinitionen verbessert werden (XML-Schema)

42 Prof. Dr. Fabian Glasen Content Management Systeme42 XML DTD

43 Prof. Dr. Fabian Glasen Content Management Systeme43 XML - DTD Die Dokumenttyp-Deklaration beginnt mit Die Element-Deklaration Gross- und Kleinschreibung wird strikt beachtet!!! ELEMENT und die Schlüsselwörter müssen gross geschrieben werden.

44 Prof. Dr. Fabian Glasen Content Management Systeme44 XML - DTD Wo sich die DTD befinden kann: im Dokument selbst (hohe Redundanz) in separater Datei auf dem gleichen Rechner wie das Dokument (benötigt Verweis im XML- Dokument) irgendwo im Netz (Gefahr eines Netzwerkfehlers) im Browser (Beispiel XHTML)

45 Prof. Dr. Fabian Glasen Content Management Systeme45 DTD Interne / externe DTDs interne DTDs werden in XML-Datei selbst definiert externe DTDs werden in eigener Datei definiert Verweis:

46 Prof. Dr. Fabian Glasen Content Management Systeme46 DTD externe DTD (Beispiel) Der fromme Dieb Ellis Peters Krimi Wilhelm Heyne Verlag GmbH&Co. KG, München Nach einem Unwetter müssen ,90 DM

47 Prof. Dr. Fabian Glasen Content Management Systeme47 DTD externe DTD (Beispiel)

48 Prof. Dr. Fabian Glasen Content Management Systeme48 XML - DTD Gültigkeitsbeschränkungen Attribute #REQUIREDAttribut muss immer auftreten #IMPLIEDAttribut muss nicht auftreten Elemente: *Element kann beliebig oft vorkommen ?ist optional +muss mindestens einmal vorkommen |Alternative bzw. Sequenz von Elementen

49 Prof. Dr. Fabian Glasen Content Management Systeme49 XML - DTD Definition der Häufigkeit von Elementen ?: einmal oder keinmal *: einmal oder keinmal oder mehrmals +: mindestens einmal oder mehrmals

50 Prof. Dr. Fabian Glasen Content Management Systeme50 XML - DTD Beispiel (DTD):

51 Prof. Dr. Fabian Glasen Content Management Systeme51 XML - DTD Beispiel (Instanz): Gruss Hallo how are you?

52 Prof. Dr. Fabian Glasen Content Management Systeme52 XML - DTD (Inhaltsmodell)

53 Prof. Dr. Fabian Glasen Content Management Systeme53 XML - DTD (Inhaltsmodell/Alternative) ]>

54 Prof. Dr. Fabian Glasen Content Management Systeme54 XML - DTD Beispiel Häufigkeit Der fromme Dieb Ellis Peters Krimi Historischer Roman

55 Prof. Dr. Fabian Glasen Content Management Systeme55 XML (DTD) - Defizite XML hat kein Typsystem (nur PCDATA / CDATA) ermöglicht keine Darstellung von n:m- Relationen liefert keinen Beitrag zu Prozessdefinition und Abwicklung XML ist langsam XML ist nicht objektorientiert (Vererbungsbeziehungen zwischen Dokumenttypen fehlen)

56 Prof. Dr. Fabian Glasen Content Management Systeme56 XML- Schema

57 Prof. Dr. Fabian Glasen Content Management Systeme57 XML-Schema Nachfolger der XML-DTD Weitaus ausdrucksstärker als DTD: Vielzahl elementarer Datentypen Komplexe Datentypen Verteilte Schemata (im Web verteilt) Vererbung zwischen Typdefinitionen Für Substrukturen eines Dokumentes können Schlüssel definiert werden.

58 Prof. Dr. Fabian Glasen Content Management Systeme58 XML Schemasprachen (XML-Schema) beschreiben XML-Dokumenttypen XML-Schema arbeitet mit Vererbung

59 Prof. Dr. Fabian Glasen Content Management Systeme59 XML-Schema XML-Schema ist selbst eine XML-Sprache Dadurch können XML-Parser auch auf Schemadefinitionen angewendet werden.

60 Prof. Dr. Fabian Glasen Content Management Systeme60 XML-Schema Beispiel

61 Prof. Dr. Fabian Glasen Content Management Systeme61 XML-Schema Beispiel

62 Prof. Dr. Fabian Glasen Content Management Systeme62 Visualisieren und Gestalten (XSL / XSL-FO / XSLT)

63 Prof. Dr. Fabian Glasen Content Management Systeme63 XML - XSL Visualisierung XSL (eXtensible Stylesheet Language) ermöglicht unterschiedliche Darstellungen des gleichen XML-Dokumentes in unterschiedlichen Anwendungskontexten mögliche Zielsprachen: HTML, RTF, PDF, ASCII Text, EDI, WML (Wireless Markup Language) etc.

64 Prof. Dr. Fabian Glasen Content Management Systeme64 XML - XSL XSL (eXtensible Stylesheet Language) HTML-Autoren können weiterhin mit HTML und CSS arbeiten Entwicklungsbausteine in XSL Scriptsprache für XSL ist ECMAScript (eine Standardisierung von JavaScript/) Flow-Object-Klassen von DSSSL

65 Prof. Dr. Fabian Glasen Content Management Systeme65 XML - XSL XSL umfasst die Sprachen XSLT (XSL Transformation) stellt Sprachelemente bereit, die beschreiben, wie die Übersetzung von XML-Dokumente in XML-Dokumente oder in andere Ausgabeformate erfolgen soll XSL-FO (XSL Formatierung) stellt Sprachelemente bereit, die beschreiben, wie XML- Elemente angezeigt werden sollen (Schriftart, Grösse etc.)

66 Prof. Dr. Fabian Glasen Content Management Systeme66 XML - XSL Wo / wie erfolgt die Transformation??? im Client (Browser) XML und XSL-Dokument werden zum Browser an den Browser übertragen und dort verarbeitet dynamisch am Server XML und XSL werden bei jedem Aufruf dynamisch am Server verarbeitet statisch am Server XML und XSL werden zu Beginn in HTML (etc.) transformiert und nur bei Änderungen als HTML (etc.) aktualisiert

67 Prof. Dr. Fabian Glasen Content Management Systeme67 XML - XSL (Beispiel: kurs.xsl)

68 Prof. Dr. Fabian Glasen Content Management Systeme68 XML - XSL (Beispiel: kurs.xml) 9:00-10:30 Raum 229 Java in verteilten Systemen Herr Dr. Müller 10:30-12:00 Raum 228 Java in verteilten Systemen Herr Peter Marks 13:00-17:00 Raum 228 Java in verteilten Systemen Herr Peter Marks

69 Prof. Dr. Fabian Glasen Content Management Systeme69 XML - XSL (Beispiel) 9:00-10:00 Raum 120 XML und Java Frau Petra Kern 10:00-12:00 Raum 120 XML und Java Frau Petra Kern 13:00-17:00 Raum 120 XML und Java Frau Petra Kern

70 Prof. Dr. Fabian Glasen Content Management Systeme70 XML - XSL (Beispiel: kurs.html) 9:00-10:30 Raum 229 Java in verteilten Systemen Herr Dr. Müller 10:30-12:00 Raum 228 Java in verteilten Systemen Herr Peter Marks 13:00-17:00 Raum 228 Java in verteilten Systemen Herr Peter Marks 9:00-10:00 Raum 120 XML und Java Frau Petra Kern 10:00-12:00 Raum 120 XML und Java Frau Petra Kern 13:00-17:00 Raum 120 XML und Java Frau Petra Kern

71 Prof. Dr. Fabian Glasen Content Management Systeme71 XML - XSL-FO XSL-FO (Formatierungsobjekte) unterstützen ein vielseitiges visuelles Layout (für professionelles Publishing) –Kopf und Fusszeilen –Fussnoten –Randnotizen –Seitenzahlen –Querverweise

72 Prof. Dr. Fabian Glasen Content Management Systeme72 XML - XSL-FO XSL-FO basiert auf rechteckigen Seiten-Bereichen (Kästen(Areas), die –Text –nichts (Leerraum) –Formatierungsobjekte enthalten können Der XSL-Formatierer ermittelt, wo diese Bereiche auf der Seite platziert werden

73 Prof. Dr. Fabian Glasen Content Management Systeme73 XML - XSL-FO XSL-FO Areas (Bereichstypen): Bereichscontainer oberste Container, kann auf Seite per Koordinaten positioniert werden Blockbereiche i.d.R: Absätze (können enthalten: Zeilenbereiche, Blockbereiche, Grafik) Zeilenbereiche nimmt eine Textzeile innerhalb eines Blocks auf, kann Inline- Bereiche enthalten Inline-Bereiche sind Teile einer Zeile, einzelne Zeichen, Fussnaoten, Referenzen, mathematische Formeln

74 Prof. Dr. Fabian Glasen Content Management Systeme74 XML - XSL-FO Bereichscontainer Kopfzeile Bereichscontainer Fusszeile Bereichscontainer Hauptkörper Zeilenbereich Blockbereich Inline-Bereich


Herunterladen ppt "Prof. Dr. Fabian Glasen Content Management Systeme1 XML eXtensible Markup Language."

Ähnliche Präsentationen


Google-Anzeigen