Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

Ein Vortrag im Rahmen des Seminars WWW und Datenbanken SS 2001 XSL - Dokumente mit Stil Referent: Fabian Wleklinski.

Ähnliche Präsentationen


Präsentation zum Thema: "Ein Vortrag im Rahmen des Seminars WWW und Datenbanken SS 2001 XSL - Dokumente mit Stil Referent: Fabian Wleklinski."—  Präsentation transkript:

1 Ein Vortrag im Rahmen des Seminars WWW und Datenbanken SS 2001 XSL - Dokumente mit Stil Referent: Fabian Wleklinski

2 10. Mai 2001 XSL - Dokumente mit Stil2 Einleitung Ziele des Vortrags: Warum XSL? XSLT? XSL FO? XPath? Grundverständnis wichtigste Elemente nicht Ziel des Vortrags: Syntax pauken XSL lernt sich wie HTML am Besten in der Praxis

3 10. Mai 2001 XSL - Dokumente mit Stil3 Einleitung Tagesordnung: Informationswirrwarr XSL XSLT XPath XSL FO XSL – Ein Beispiel XSL – Zusammenfassung Ausblick Software Literatur

4 10. Mai 2001 XSL - Dokumente mit Stil4 Informationswirrwarr unz ä hlige Formate f ü r Informationen teils standardisiert, teils propriet ä r.html,.ps,.pdf,.doc,.rm,.mp3,.wma,.jpg,.png,.ppt,.lyx,.bmp,.lwp,.vcf,....

5 10. Mai 2001 XSL - Dokumente mit Stil5 Informationswirrwarr Informationsaustausch im Alltag? erschwert durch inkompatible Formate oft ist Datenkonvertierung n ö tig je nach Format spezifisches Vorgehen unl ö sbares Problem f ü r exotische Formate F ü r Teilbereiche existieren Quasi- Standards HTML, PowerPoint, Excel,...

6 10. Mai 2001 XSL - Dokumente mit Stil6 Informationswirrwarr 60er Jahre: Entwicklung der GML bei IBM Generalized Markup Language 80er Jahre: Entwicklung der SGML Standard Generalized Markup Language 1986 zum ISO-Standard setzt sich nur in wenigen Bereichen durch, da komplex und Software schwer zu programmieren popul ä rste Anwendung: HTML

7 10. Mai 2001 XSL - Dokumente mit Stil7 1996: DSSSL wird ISO-Standard Stilsprache für SGML erlaubt Umwandlung von SGML Dokumenten, z.B. SGML HTML genauso kompliziert wie SGML selber 1996: W3C verabschiedet CSS Zuweisen von physischen zu logischen Auszeichnungen physische Auszeichnungen sind: Schriftfarbe, -gr öß e, kursiv,... logische Auszeichnungen sind: Ü berschrift, Absatz, Fu ß zeile,... Informationswirrwarr

8 10. Mai 2001 XSL - Dokumente mit Stil8 Informationswirrwarr 1997: W3C verabschiedet XML Teilmenge von SGML Notbehelf: Formatierung mittels CSS 1997: XSL- Vorschlag bei W3C eingereicht Microsoft, ArborText, Inso, Henry Thompson, James Clark (DSSSL-Engine Jade) Aber was ist XSL... ???

9 10. Mai 2001 XSL - Dokumente mit Stil9 XSL Stilsprache von XML in XML-Syntax ähnlich zu DSSSL XSL is based on DSSSL, which is based on Lisp. It is amazing what people will do to avoid Lisp

10 10. Mai 2001 XSL - Dokumente mit Stil10 XSL Forderungen: einfache Nutzung über das Internet XML-Syntax deklarative Sprache für Textformatierungen wie bei CSS oder DSSSL vorhanden als letzte Möglichkeiteine Skriptsprache, um komplexe Formatierungen und Erweiterbarkeit zu garantieren

11 10. Mai 2001 XSL - Dokumente mit Stil11 XSL Forderungen: schnelle Entwicklung von XSL-Anwendungen XSL-Dokumente sollen intuitiv lesbar sein Im Allgemeinen in.xsl-Dateien enthalten

12 10. Mai 2001 XSL - Dokumente mit Stil12 XSL Einfaches Beispiel:

13 10. Mai 2001 XSL - Dokumente mit Stil13 XSL 3 Bestandteile: XSLT(XSL Transformations) XPath(XML Path Language) XSL FO(XSL Formatting Objects) XSLT ist die revolution ä rste Neuerung XSLT ist nur 1 der 3 K omponenten von XSL XSL FO geh ö ren nicht zu XSLT, sondern zu XSL! XPath geh ö rt nicht zu XSLT, auch nicht zu XSL, sondern ist eigenst ä ndig! (vgl. XLink)

14 10. Mai 2001 XSL - Dokumente mit Stil14 XSL Status: XSL 1.0Candidate Recommendation XSLT 1.0Recommendation XSLT 1.1Working Draft XSLT 2.0 req.Working Draft XPATH 1.0Recommendation XPATH 2.0 req.Working Draft

15 10. Mai 2001 XSL - Dokumente mit Stil15 XSL SGML XML DSSSL XSL HTML CSS XHTML

16 10. Mai 2001 XSL - Dokumente mit Stil16 XSL XML XSL XSL FO XSLT XPath

17 10. Mai 2001 XSL - Dokumente mit Stil17 XSL Streng genommen muss man einen XSL- und einen XSLT-Prozessor unterscheiden XSLT-Prozessor ist der übliche Ausdruck Ein XSL Prozessor ist eine Software die ein XML Quelldokument und ein XSL Dokument liest die XSL-Befehle auf das XML Quelldokument anwendet ein XML Zieldokument erzeugt

18 10. Mai 2001 XSL - Dokumente mit Stil18 XSL Wie arbeitet ein XSL Prozessor? aus dem XML Quelldokument eine Baumstruktur erzeugen, den Quellbaum XSL-Befehle anwenden, dabei Zielbaum aufbauen aus erzeugtem Zielbaum die XML Zieldatei schreiben Schritt 3: Zielbaum interpretieren, um Formatierung zu ermöglichen Die meisten XSL Anwendungen unterstützen keine XSL FO!

19 10. Mai 2001 XSL - Dokumente mit Stil19 XSL Zielbaum kann völlig andere Struktur besitzen als original-XML-Baum! Hinzufügen weiterer Strukturen z.B. Erzeugung von Inhaltsverzeichnis eines Dokumentes on the fly XSL-Datei enthält Baumkonstruktionsregeln

20 10. Mai 2001 XSL - Dokumente mit Stil20 XSL Baumkonstruktionsregeln bestehen aus zwei Teilen: 1. ein Muster zum Vergleich mit den Elementen des Quellbaumes 2. Anweisungen zum Erzeugen von Elementen für den Zielbaum

21 10. Mai 2001 XSL - Dokumente mit Stil21 XSLT XSLT=XSL Transformations XML Sprache, realisiert durch Namensraum xsl xmlns:xsl=http://www.w3.org/1999/XSL/Transf ormhttp://www.w3.org/1999/XSL/Transf orm

22 10. Mai 2001 XSL - Dokumente mit Stil22 XSLT muß das XML-Wurzelelement sein darf nur ein einziges Mal im XML Dokument stehen Alle XSLT-Anweisungen müssen unterhalb stehen xsl:transform gilt als Synonym

23 10. Mai 2001 XSL - Dokumente mit Stil23 XSLT Mögliche Attribute: default-space: Sollen Leerzeichen im Originaldokument erhalten bleiben? Vorgabewert: preserve indent-result: Sollen in der Ausgabe die Leerzeichen erhalten werden? Vorgabewert: yes language: im Stylesheet benutzte Skriptsprache. Vorgabewert: JScript result-ns: Namensraum der Ausgabe des XML- Prozessors Aber wie sehen die XSLT-Anweisungen aus... ???

24 10. Mai 2001 XSL - Dokumente mit Stil24 XSLT XSLT besteht aus Template Rules Template Rules sind XML-Elemente Eine Template-Rule besteht aus Regeln/Muster, die eine bestimmte Menge von XML Elementen beschreiben, ähnlich wie ein regulärer Ausdruck eine bestimmte Menge von Texten beschreibt Einem Template

25 10. Mai 2001 XSL - Dokumente mit Stil25 XSLT Was macht eine Template Rule? Die Regeln/Muster filtern bestimmte XML Elemente aus dem XML Quelldokument heraus Das in der Template Rule enthaltene Template wird auf die herausgefilterten XML Elemente angewendet Was macht ein Template? Template ist gewissermaßen die Vorlage für das Zieldokument Ein Template kann den Prozeß rekursiv fortführen Ergebnis der Verarbeitung bildet den Zielbaum

26 10. Mai 2001 XSL - Dokumente mit Stil26 XSLT Abfrage des Elementes im Quellbaum ist zwingend! Alle Knoten vom Typ muster, wobei muster ein XPath Ausdruck ist was XPath genau bedeutet, dazu kommen wir später!

27 10. Mai 2001 XSL - Dokumente mit Stil27 XSLT Template != Template Rule Template Rule: Regeln f ü r den Transformationsprozess, enth ä lt ein Template Template: ein St ü ck Stylesheet, wird im Zieldokument instanziiert

28 10. Mai 2001 XSL - Dokumente mit Stil28 XSLT Verarbeitung der Nachfahren des aktuellen Knotens Verarbeitung der Nachfahren des aktuellen Knotens, die vom Typ muster sind Vorgabewert für select ist node(), d.h. alle Knoten außer Attributen Sortierung der Knoten zuerst nach krit1 aufsteigend, dann nach krit2 absteigend

29 10. Mai 2001 XSL - Dokumente mit Stil29 XSLT Einfügen des Wertes des aktuellen Knotens als Text (+Unterknoten) Einfügen des Wertes der ausgewählten Knoten muster als Text. Vorgabewert ist. (Inhalt des aktuellen Knotens)

30 10. Mai 2001 XSL - Dokumente mit Stil30 XSLT Anwendung des Template auf eine Menge von Knoten Anwendung eines Template auf alle Knoten vom Typ muster, sowie Sortierung nach dem Wert von elem1

31 10. Mai 2001 XSL - Dokumente mit Stil31 XSLT Bedingte Anweisungen mit Attribut test nur für einfache Vergleiche abc Attribute: expr=script-expressionmuss TRUE zurückgeben language=lang-nameVorgabewert: JScript test

32 10. Mai 2001 XSL - Dokumente mit Stil32 XSLT Äquivalent zu select case, switch case,... aus C,JAVA,

33 10. Mai 2001 XSL - Dokumente mit Stil33 XSLT Benutzung innerhalb von Templates, die Ausgaben produzieren, xsl:copy Hinzufügen von Elementen Hinzufügen von Attributen cost kann auch ohne xsl:element benutzt werden bevor Kinderknoten zum Element gefügt werden, müssen alle Attribute erzeugt worden sein

34 10. Mai 2001 XSL - Dokumente mit Stil34 XSLT Im Beispiel wird das entsprechende Muster aus dem XML-Quellbaum geholt, und eine Ausgabe generiert:

35 10. Mai 2001 XSL - Dokumente mit Stil35 XSLT Im Beispiel wird das Element MeinElement kopiert und ein Attribut kopiert mit dem Wert true hinzugefügt true

36 10. Mai 2001 XSL - Dokumente mit Stil36 XPath seit November 1999 Empfehlung vom W3C operiert auf der XML Baumstruktur lokalisiert Knoten z.B. erster Absatz des dritten Abschnittes

37 10. Mai 2001 XSL - Dokumente mit Stil37 XPath XPath-Abfrage liefert node-set zurück (Menge von Knoten) Besitzt keine XML-Syntax Syntax eher vergleichbar mit Dateisystem ( location paths ) ( /usr/local/... ) Dient auch f ü r XPointer

38 10. Mai 2001 XSL - Dokumente mit Stil38 XPath Knoten eines XML Baumes/Dokumentes Wurzelknoten (root) Elemente Attribute Texte Namespace-Attribute Processing instructions Kommentare für XSL werden im Wesentlichen die fett- markierten Knotenarten benötigt

39 10. Mai 2001 XSL - Dokumente mit Stil39 XPath location paths (1) location path entspricht einer Dateisystem-Pfadangabe man nennt die Komponenten aber nicht Dateien oder Verzeichnisse, sondern location steps location steps sind die Namen der XML Elemente der Pfadtrenner ist "/" ein Pfad wird von links nach rechts abgearbeitet

40 10. Mai 2001 XSL - Dokumente mit Stil40 XPath location paths (2) Pfade beginnend mit "/" sind absolute Pfade, d.h. der Kontextknoten ist der Wurzelknoten. Andere Pfade sind relative Pfade, d.h. Kontextknoten bleibt unverändert Pfade enthalten Platzhalter genau wie im Dateisystem, aber wesentlich flexibler

41 10. Mai 2001 XSL - Dokumente mit Stil41 XPath Formale Definition des location path [/]location_step(/ location_step)* location step entspricht Verzeichnis/Datei im Dateisysten wirkt wie ein Filter: bekommt eine Knotenmenge als Eingabe, und liefert eine Teilmenge zurück

42 10. Mai 2001 XSL - Dokumente mit Stil42 XPath Es gibt genau einen Kontext-Knoten entspricht dem Arbeitsverzeichnis des Dateisystems genau wie im Dateisystem navigiert man von der aktuellen Position aus vor und zurück (cd xyz, cd..) aber: XPath kennt mehr als 2 Richtungen der Navigation!

43 10. Mai 2001 XSL - Dokumente mit Stil43 XPath Ein location step wählt aber nicht wie im Dateisystem einen bestimmten Unterknoten aus, sondern ist wie folgt aufgebaut: richtung::typ([prädikat])* Das Prädikat ist eine boolesche Bedingung Die Richtung der Navigation, der Typ der Knoten und das Prädikat verfeinern jeweils die Abfrage, d.h. verkleinern die Teilmenge der Knoten

44 10. Mai 2001 XSL - Dokumente mit Stil44 XPath Richtungen (1) self: aktueller Knoten child: direkte Kinderknoten descendant: Kinderknoten, aber keine Attribute! descendant-or-self: Kinderknoten oder aktueller Knoten, aber keine Attribute! parent: direkte Elternknoten ancestor: Elternknoten ancestor-or-self: Elternknoten oder aktueller Knoten...

45 10. Mai 2001 XSL - Dokumente mit Stil45 XPath Richtungen (2)... attribute: nicht-Namespace- Attribute namespace: Namespace-Attribute preceding-sibling: Vorgänger following-sibling: Nachfolger preceding: Alle Vorgänger following: Alle Nachfolger

46 10. Mai 2001 XSL - Dokumente mit Stil46 Vorgabewert für die Richtung: child abgekürzte Ausdrücke für Richtungen: XPath AbkürzungBeschreibung Keine aktuelle Knoten, anstatt self::node()..Der Mutter (Vater? Elter?) Knoten, anstatt parent::node() [2]anstatt [position()=2]

47 10. Mai 2001 XSL - Dokumente mit Stil47 Typen (1) XPath * Alle Knoten vom Typ der Achse. Achsentyp ist immer Element außer bei attribute und namespace. namespace Alle Knoten im Namespace namespace namespace:typ Alle Knoten mit Namen namespace:typ typ Alle Knoten mit Namen typ und NULL-Namespace text() Alle Textknoten

48 10. Mai 2001 XSL - Dokumente mit Stil48 Typen (2) XPath comment()Alle Kommentarknoten processing- instruction() Alle Processing-Instruction-Knoten processing- instruction(name) Alle Processing-Instruction-Knoten mit Expanded- Name name node()Alle Knoten

49 10. Mai 2001 XSL - Dokumente mit Stil49 abgekürzte Ausdrücke für Tests: XPath TestBeschreibung 'Name'Testet, ob Knoten diesen Namen hat *Knoten mit beliebigem Namen text()Ein Text Knoten..[..]Zusätzliches Prädikat (z.B. boolescher Ausdruck), das erfüllt sein muss

50 10. Mai 2001 XSL - Dokumente mit Stil50 abgekürzte Ausdrücke für location steps: XPath abgekürzter location steplocation step child:: self::node(). parent::node().. descendant-or-self::node()///

51 10. Mai 2001 XSL - Dokumente mit Stil51 Beispiele für location paths (1): XPath location pathAbkürzungBeschreibung child:text()text()Kinder-Textelemente /child:html/htmlElemente html unterhalb vom Wurzelknoten /descendant-or- self::node()/child:: table //tableElemente table überall im Dokument /parent::node()/chi ld::table/attribute:: dth Attribute WIDTH aller Tabellen, die Kinder des Eltern-Knotens sind

52 10. Mai 2001 XSL - Dokumente mit Stil52 einige, beispielhafte Funktionen in XPath: last(), position(), count(), id(), name(), substring(), concat(), true(), round(), translate() XPath

53 10. Mai 2001 XSL - Dokumente mit Stil53 Beispiele für location paths (2): XPath location pathAbkürzungBeschreibung /child::html/child:: body/child::html[2] /html/body/t able[2] Die zweite Tabelle im HTML-Body /descendant-or- self::table[attribute:: width = "50%"] dth = "50%"] Alle Tabellen, die "50%" Breite haben //td[position() != last()] Alle TD-Elemente im Dokument mit Ausnahme des letzten //ex:headAlle HEAD-Elemente, die im Namespace ex deklariert sind

54 10. Mai 2001 XSL - Dokumente mit Stil54 XSL FO formatierender Bestandteil von XSL ermöglicht Zuweisung von Schriftformatierungen fett, kursiv, Überschrift,... in XML-Syntax Anlehnungen an CSS

55 10. Mai 2001 XSL - Dokumente mit Stil55 XSL FO XSL FO=XSL Formatting Objects XML Sprache, realisiert durch Namensraum fo xmlns:fo=http://www.w3.org/1999/XSL/Formathttp://www.w3.org/1999/XSL/Format Alle XSL FO Elemente stehen unter Unter dürfen stehen:

56 10. Mai 2001 XSL - Dokumente mit Stil56 XSL FO Ist eine von vielen, denkbaren Formatierungssemantiken! CSS eine andere z.B. können Verlagshäuser eine eigene definieren bzw. XSL FO erweitern Wird von den meisten XSL Anwendungen (noch) nicht unterstützt!

57 10. Mai 2001 XSL - Dokumente mit Stil57 XSL FO Viel mehr Auszeichnungen gegenüber HTML+CSS Horizontal und vertikal gespiegelter Text Fußnoten Seitenzahlen in Querverweisen Silbentrennung Aurale Auszeichnungen für Sprachausgabe... Breitere Verwendung vorgesehen als bei CSS CSS primär für WWW XSL FO für WWW, WAP, Printmedien,...

58 10. Mai 2001 XSL - Dokumente mit Stil58 XSL FO für verschiedene Ausgabemedien können dank XSL verschiedene FO definiert werden z.B. seitenorientiert für Druck, nicht- seitenorientiert für HTML z.B. komplex für HTML, simpel für WAP/WML

59 10. Mai 2001 XSL - Dokumente mit Stil59 XSL FO Bessere Internationalisierung als bei CSS Unterstützung für alle Kombinationen von vertikaler und horizontaler Schreibrichtung bei logischen Richtungsangaben start, end,... statt left, bottom,...

60 10. Mai 2001 XSL - Dokumente mit Stil60 XSL FO XSL FO ist viel Schreibarbeit wird in der Praxis i.A. nur von XSL-Prozessoren erzeugt Bei CSS: em {font-weight:bold} Bei XSL FO:

61 10. Mai 2001 XSL - Dokumente mit Stil61 XSL FO XSL FO unterstützt die Definition von Seitenklassen Definition von Seitenklassen im master layout set dort können auch die möglichen Reihenfolgen festgelegt werden Dazu ein Beispiel: Die Seiten eines Buches Eine Coverseite, anschließend alternierend beliebig viele links- und rechtsliegende Seiten Außer Coverseite werden alle Seiten auf Papier mit Kopfzeile gedruckt

62 10. Mai 2001 XSL - Dokumente mit Stil62 XSL FO XSL Formatting Object layout master set Definition der Seitenklassen Die möglichen Abfolgen von Seitenklassen Die Seiten und ihre Inhalte

63 10. Mai 2001 XSL - Dokumente mit Stil63 XSL FO coverleftPagerightPage

64 10. Mai 2001 XSL - Dokumente mit Stil64 XSL FO Definition der Seitenklassen:

65 10. Mai 2001 XSL - Dokumente mit Stil65 XSL FO Festlegung der Seitenreihenfolge:

66 10. Mai 2001 XSL - Dokumente mit Stil66 XSL FO Seiteninhalte und Zuweisung zu Seitenklassen: Kopfzeile Flie ß text

67 10. Mai 2001 XSL - Dokumente mit Stil67 XSL FO enthält Formatierungsinformationen, die an eine Textstruktur geknüpft sind (z.B. Absatz- und Zeilenabstände, Textausrichtung, Numerierungs- und Gliederungsanweisungen,...) entspricht in etwa einem Absatz Der Name sagt es: Blockcharakter enthält Formatierungsinformationen, die keinen Zusammenhang zur Textstruktur haben (z.B. fett, kursiv,...)

68 10. Mai 2001 XSL - Dokumente mit Stil68 XSL FO XSL FO erlaubt noch viel, viel mehr... Definition von Einzügen, Schriftarten, -farben, -größen, Textauszeichnungen, Abständen,... Eine unvollständige Auflistung unter enthält 246 Attribute! Hier die Auswahl einiger c...-Attribute caption-side, case-name, case-title, character, clear, clip, color, color-profile-name, column-count, column-gap, column-number, column-width, content-height, content-type, content-width, country, cue, cue-after, cue-before

69 10. Mai 2001 XSL - Dokumente mit Stil69 XSL FO areas regions block areas line areas inline areas charakter areas

70 10. Mai 2001 XSL - Dokumente mit Stil70 XSL FO Erstellung von XSL FO-Strukturen nur per XSL-Prozessor sinnvoll (zu viel Schreibarbeit sonst) Instanzen der Formatierungsobjekte (xsl:fo) sind die Knoten des Zielbaumes der XSLT- Anwendung

71 10. Mai 2001 XSL - Dokumente mit Stil71 XSL – Ein Beispiel Software telemallCOMMUNITY der Firma telemall AG (Frankfurt) Standardsoftware für Internet-Communities basierend auf XML/XSLT entwickelt im Frühjahr 2001 von Kai Klüber, Martin Klossek und Fabian Wleklinski

72 10. Mai 2001 XSL - Dokumente mit Stil72 XSL – Ein Beispiel telemallCOMMUNITY benutzt XML/XSL warum? 5 Gründe für den Einsatz von XML!

73 10. Mai 2001 XSL - Dokumente mit Stil73 XSL – Ein Beispiel Grund 1: Trennung Implementierung und Design XML/XSLT erhöht die Wiederverwendbarkeit der Software XML/XSLT macht unabhängig(er) von den Entwicklern XML/XSLT beschleunigt unternehmensinterne Work- Flow-Prozesse, z.B. können Implementierung und Webdesign zeitgleich beginnen

74 10. Mai 2001 XSL - Dokumente mit Stil74 XSL – Ein Beispiel Grund 2: Personalisierung Jeder Benutzer des Systems kann sich sein Lieblings-Stylesheet auswählen Grund 3: Erweiterbarkeit XML/XSLT als ausgegebenes Datenformat garantiert die Erweiterbarkeit auf alternative Ausgabemedien wie WAP/WML, Windows CE- und Palm-Geräte, Print-Medien etc.

75 10. Mai 2001 XSL - Dokumente mit Stil75 XSL – Ein Beispiel Grund 4: Strenge Modularisierung durch offene Protokolle Einzelne Bestandteile des Systems sind autarke Applikationen, und bieten ihre Dienste durch eine XML- Schnittstelle (via http-Protokoll) an Grund 5: Offene Schnittstellen Schaffung universeller Schnittstellen für SOAP, NewsML, RDF etc. Austausch von Content zwischen Nachrichtenagenturen und Community-Betreibern Das folgende Diagramm soll die Idee verdeutlichen...

76 10. Mai 2001 XSL - Dokumente mit Stil76 MPG, WMV, RM, etc. AVI, AU, WAV, WMA, MP3 etc. DOC, HTML, PDF, etc. JPEG, GIF etc. GIF, JPG, NSK-TIFF etc. Veröffentlicher

77 10. Mai 2001 XSL - Dokumente mit Stil77 XSL – Ein Beispiel Eine Internet-Community beinhaltet viele, viele Datensätze Nachrichtenbeiträge Diskussionsbeiträge Einträge im Kleinanzeiger, schwarzen Brett, etc... Veröffentlichungen im Presseboard... Schauen wir uns nun exemplarisch einen Datensatz dieses Systems an, zum Beispiel eine Nachrichtenmeldung:

78 10. Mai 2001 XSL - Dokumente mit Stil :36: Manfred Mustermann MM Datensch ü tzer warnen vor gl ä sernem Internet-Nutzer neu loeschen

79 10. Mai 2001 XSL - Dokumente mit Stil79 XSL – Ein Beispiel Schauen wir uns nun das Ergebnis der Umwandlung mittels drei verschiedener XSL-Stylesheets an:

80 10. Mai 2001 XSL - Dokumente mit Stil80 XSL – Ein Beispiel Da das ganze System auf XML/XSL aufbaut, werden natürlich viel mehr XML Anweisungen erzeugt, als nur die, die wir gesehen haben Der gesamte XML Output sieht ungefähr so aus...

81 10. Mai 2001 XSL - Dokumente mit Stil81 XSL – Ein Beispiel

82 10. Mai 2001 XSL - Dokumente mit Stil82 XSL – Ein Beispiel Erstellen der XSL-Stylesheets ist eine Designaufgabe, die nicht von dem Entwicklerteam übernommen werden muß bzw. sollte ;-) Während der Entwicklung wurde daher ohne Layout gearbeitet, nur mit minimaler Darstellung Die Konvertierung von XML in HTML funktionierte zwar, aber das Ergebnis sah entsprechend übel aus, in etwa so...

83 10. Mai 2001 XSL - Dokumente mit Stil83 XSL – Ein Beispiel

84 10. Mai 2001 XSL - Dokumente mit Stil84 XSL – Ein Beispiel Nachdem die Design-Abteilung ihre Arbeit beendet hatte, standen entsprechende Stylesheets zur Verfügung Keine weitere Entwicklung, nur noch auswählen des neuen Stylesheet! Das Layout sieht dann besser aus, zum Beispiel so...

85 10. Mai 2001 XSL - Dokumente mit Stil85 XSL – Ein Beispiel

86 10. Mai 2001 XSL - Dokumente mit Stil86 XSL – Ein Beispiel

87 10. Mai 2001 XSL - Dokumente mit Stil87 XML ermöglicht heterogene Lieferkanäle! Informationen werden umgewandelt und mehrfach verwendet XSL – Ein Beispiel

88 10. Mai 2001 XSL - Dokumente mit Stil88 XSL - Zusammenfassung Vorteile gegenüber CSS 90% der Formatierungseigenschaften aus XSL Formatting Objects sind in CSS in ähnlicher Form enthalten, aber: XSL bietet weitreichendere und mächtigere Selektoren als CSS, es sind efektivere Baumkonstruktionen möglich ein Seitenlayout-Modell

89 10. Mai 2001 XSL - Dokumente mit Stil89 XSL - Zusammenfassung Vorteile gegenüber CSS ein erweitertes Formatierungsmodell bessere Internationalisierung und mehr Schreib- Modi Unterstützung von Linking

90 10. Mai 2001 XSL - Dokumente mit Stil90 XSL - Zusammenfassung Vorteile gegenüber CSS XSL ist XML Sprache Die Möglichkeiten von CSS werden durch XSL FO bereitgestellt, sogar übertroffen. Eine Umstrukturierung des XML Quellbaumes wie durch XSLT fehlt bei CSS. Kombination von XSL und XSS? Denkbar ist eine hybride Lösung: XSL auf dem Server, CSS auf dem Client

91 10. Mai 2001 XSL - Dokumente mit Stil91 Ausblick Bedeutung alternativer Plattformen steigt Handheld-PCs, Mobiltelefone, Kabel-TV,... Rendering auf dem Client Betrachter hat Lieblings-Stylesheet XML/XSL hat auf dem Server bereits unbemerkt Bedeutung erlangt gro ß e Websites benutzen teilweise XML/XSL, z.B.

92 10. Mai 2001 XSL - Dokumente mit Stil92 Software SAXON home page Sablotron: XSL Transformations Processor bin/get/webGA/act/sablotron.act bin/get/webGA/act/sablotron.act FOP (Apache)

93 10. Mai 2001 XSL - Dokumente mit Stil93 Software Unicorn XML Toolkit enterprises.com/products_xmlkit.html enterprises.com/products_xmlkit.html Antenna House XSL Formatter Ü bersicht von Free XML Tools _ix.html _ix.html

94 10. Mai 2001 XSL - Dokumente mit Stil94 Software Ü bersicht von Free XML Tools _ix.html _ix.html XML Software Guide: Specialized XML Software XML Software Guide: Additional XML Software Resource Lists

95 10. Mai 2001 XSL - Dokumente mit Stil95 Software XMLSOFTWARE XML Editors XMLSOFTWARE XML Browsers XML Software Guide: XML and XSL Editors XML.com Editors

96 10. Mai 2001 XSL - Dokumente mit Stil96 Literatur Extensible Markup Language (XML) Extensible Stylesheet Language (XSL) XSLT.com - Resource site for tools, events, books, tutorials and other resources related to xslt, xsl, xml

97 10. Mai 2001 XSL - Dokumente mit Stil97 Literatur XSL Transformations (XSLT) XML Path Language (XPath) Robert Wruck: XLink, XPath & XPointer wedel.de/~si/seminare/ws00/Ausarbeitung/3.xlin k/xlink0.htm wedel.de/~si/seminare/ws00/Ausarbeitung/3.xlin k/xlink0.htm

98 10. Mai 2001 XSL - Dokumente mit Stil98 Literatur ix 1/2001: XSLT-Tutorial XML.com: What is XSLT? x.html x.html ZVON.org

99 10. Mai 2001 XSL - Dokumente mit Stil99 Literatur XMLNews.org: XML and the news industry XSLINFO xml.org

100 10. Mai 2001 XSL - Dokumente mit Stil100 Literatur Jens Wilke: Abfragesprachen für XML-Dokumente muenchen.de/public/lehre/lehre.WS00/HS00- Ausarbeitungen/HS00-Ausarbeitung8.pdf muenchen.de/public/lehre/lehre.WS00/HS00- Ausarbeitungen/HS00-Ausarbeitung8.pdf Heiko Faasch: XSLT- Die XSL Transformationssprache wedel.de/~si/seminare/ws00/Ausarbeitung/5.xslt/xslt0.ht m wedel.de/~si/seminare/ws00/Ausarbeitung/5.xslt/xslt0.ht m

101 10. Mai 2001 XSL - Dokumente mit Stil101 Literatur Eugen Dück: Proseminar Datenmodellierung - Vortrag über XML muenchen.de/public/lehre/lehre.WS00/PS00- Ausarbeitungen/dueck-xmlproseminar.html muenchen.de/public/lehre/lehre.WS00/PS00- Ausarbeitungen/dueck-xmlproseminar.html Andreas Kempf, Mario Ganter, Jörg Knaust, Markus Kurczek: Extensible Style Language

102 10. Mai 2001 XSL - Dokumente mit Stil102 Literatur XML in der Praxis - von Henning Behme und Stefan Mintert XT Mario Jeckle: XML

103 10. Mai 2001 XSL - Dokumente mit Stil103 Kontakt & Downloads Fabian Wleklinski: Quellcodes und Folien im PPT-, PDF-, PS- und HTML-Format verfügbar unter: seminare/wwwdb/list.php3 seminare/wwwdb/list.php3

104 10. Mai 2001 XSL - Dokumente mit Stil104 Ende Das wars!


Herunterladen ppt "Ein Vortrag im Rahmen des Seminars WWW und Datenbanken SS 2001 XSL - Dokumente mit Stil Referent: Fabian Wleklinski."

Ähnliche Präsentationen


Google-Anzeigen