XSLT extensible Stylesheet Language Transformation

Größe: px
Ab Seite anzeigen:

Download "XSLT extensible Stylesheet Language Transformation"

Transkript

1 XSLT extensible Stylesheet Language Transformation Seite 1

2 Inhaltsverzeichnis 1. Was ist XSLT Vorteile von XSLT Anwendungen von XSL 3 2. Ablauf einer XSLT Transformation Xalan und Xerces 5 Beispiel 1: Transformation in ein C++ File 6 3. XSL Anweisungen Syntax XSL Stylesheet Aufbau Grundlegende Anweisungen 9 Beispiel 2: Transformation in ein Html Ziel Dokument Weitere XSL Anweisungen 14 Beispiel 3: Parameter Verwendung Pattern Matching Location Steps Achsen Knoten Typen Prädikate und vollständige Location Steps (gekürzter Syntax) 22 Beispiel 4: Benutzung von XPath anweisungen 23 Anhang: Default Template Rules Quellen 26 Seite 2

3 Was ist XSLT: XSLT bedeutet extensible Stylesheet Language Transformation. Es ist eine Skript Sprache, deren Syntax XML gebunden ist. Mittels eines XSL Stylesheets transformiert man ein XML Dokument (Ursprungs Dokument) in ein anderes Dokument (Ziel Dokument). An einer Transformation sind also 3 Komponenten beteiligt: Das Ursprungs XML Dokument Es enthält Elemente in XML Syntax Das XSL Stylesheet Es enthält Rules (Transformations Regeln) sowie Processing Instrucktion (Steueranweisungen) Das Ziel Dokument Die Transformation kann man sich als Copy & Paste vorstellen. Ein Element wird im Ursprungs Dokument gefunden, daraufhin wird das zugehörige Fragment aus dem XSL Stylesheet genommen, und in das Ziel Dokument eingefügt. Das XSL Stylesheet beschreibt dabei: In welcher Reihenfolge der Inhalt des XML Ursprungs Dokument in das Ziel Dokument überführt wird. Wie die Elemente des XML Ursprungs Dokumentes im Ziel Dokument dargestellt werden. 1.1 Vorteile von XSLT Benutzung des XML Syntax Das es sich um ASCII text handelt sind die Transoformations Regeln gut lesbar. Außerdem ist das Stylesheet von XML Parser verarbeitbar. Es können verschiedene XSLT Stylesheets auf ein Dokument angewendet werden. Nicht an eine Programmiersprache gebunden. Von den meisten Programmiersprachen aus kann aber auf XSLT mittels API s zugegriffen werden. Trennung von Daten, Logik und Darstellung Daten: Logik: Darstellung: XML externes Programm z.b. Programm (mittels DOM Zugriff) XSL Stylesheet 1.2 Anwendungen für XSLT Transformation in ein HTML Ziel Dokument Dies ist die im Moment häufigste Anwendung. XSLT dient hier wie bereits erwähnt der Trennung von Daten, Logik und Darstellung Transformation in andere Ziel Dokumente wie z.b. PDF oder Tex Einfügen von Dynamischen Inhalt in Templates. (siehe Beispiel Transformation in ein "C++" File Seite 3

4 2.Ablauf einer XSLT Transformation (aus Hands on XSL von Don R. Day) An der Transformation sind 2 Parser beteiligt: XML Parser XSL Parser Zuerst kommt der XML Parser zum Einsatz. Er liest zuerst das XSL Stylesheet ein, und erzeugt daraus eine sogenannte Rules Base. Dies ist eine Pointer Struktur, die es nachher erlaubt schneller auf die einzelnen Rules des XSL Stylesheets zuzugreifen. Nun wird das XML Ursprungs Dokument vom XML Parser geparsed. Aus diesem wird ein Source Tree (eine Baumstruktur) gemacht, mit einer Wurzel, an dem die einzelnen Elemente des XML Ursprungs Dokumentes hängen. Die Reihenfolge des Parsens kann dabei je nach verwendeten Parser variieren. Nun kommt der XSL Parser zum Einsatz. Er wendet nun zu den einzelnen Elementen des Source Tree die entsprechende Rule in der Rules Base an, und schreibt das Ergebnis der Rule in den Result Tree. Zu beginn wird der Parser dabei auf die Wurzel gesetzt. Er steigt dann immer Links am Baum entlang hinab, bis er an das Ende eines Astes kommt. Dieses Absteigen wird im XSL Stylesheet durch die <xsl:apply template...> Anweisungen gesteuert. Am Ende wird der Result Tree zur Ausgabe und damit zum Ziel Dokument Seite 4

5 2.1. Xalan und Xerces Es gibt mehrere XSLT Prozessoren wie es auch mehrere XML Parser gibt. Am bekanntesten sind wohl Xerces (XML Parser) sowie Xalan (XSLT Prozessor). Beide sind vom Apache Projekt, und frei zugänglich. Xalan Aufruf: Java.org.apache.xalan.xslt.Process [Parameter] Parameter: IN [URL] Definiert das XML Ursprungs Dokument, welches geparsed werden soll { XSL [URL] } optional Das XSL File, in denen die Rules stehen { PARAM [name] [expression] } optional Setzen eines Stylesheet parameters (name) und dessen Wert (expression) {OUT [URL] } optional Das Ausgabefile. Wird dieser Parameter weggelassen, wird auf die Standart Ausgabe geschrieben. Seite 5

6 Beispiel 1: Transformation in ein c++ File XML Ursprungs Dokument: cpp.xml <?xml version="1.0"?> <CPP> <MAIN> <TEXT>eine Ausgabe</TEXT> </MAIN> </CPP> XML Ursprungs Dokument: cpp_mitstylesheet.xml <?xml version="1.0"?> <?xml stylesheet href="cpp.xsl" type="text/html"?> <CPP> <MAIN> <TEXT>eine Ausgabe</TEXT> </MAIN> </CPP> XSL Stylesheet:cpp.xsl <?xml version="1.0"?> <xsl:stylesheet xmlns:xsl=" <xsl:template match="cpp"> /****************************************** Eine Transformation nach C++ ******************************************/ <xsl:apply templates/> <xsl:template match="main"> int main(int argc,char[] argv) { <xsl:apply templates/> } <xsl:template match="text"> printf( <xsl:value of select="."/> ); </xsl:stylesheet> Seite 6

7 Aufruf: Java org.apache.xalan.xslt.process in cpp.xml xsl cpp.xsl Wenn in der XML Datei ein Stylesheet angegeben ist, dann braucht man den xsl Parameter nicht Aufruf: Java org.apache.xalan.xslt.process in cpp_mitstylesheet.xml Ausgabe eines Transformations Vorganges == Parsing file:/home/thorsten/wba Vortrag/Samples/cpp.xsl == Parse of file:/home/thorsten/wba Vortrag/Samples/cpp.xsl took 363 milliseconds == Parsing cpp.xml ====== Parse of cpp.xml took 63 milliseconds ============================= Transforming... transform took 7 milliseconds XSLProcessor: done Ziel Dokument: cpp.cpp /****************************************** Eine Transformation nach C++ ******************************************/ int main(int argc,char[] argv) { printf( eine Ausgabe ); } Seite 7

8 3. XSL Anweisungen 3.1 Syntax Da XSL auf XML basiert, haben alle anweisungen folgenden Syntax: <xsl:[anweisung [Parameter] ]>... </xsl:[anweisung]> oder <xsl:[anweisung [Parameter] ]/> 3.2 XSL Stylesheet Aufbau Das XSL Stylesheet wird repräsentiert von dem <xsl:stylesheet> Tag. Darin enthalten sind sogenannte Top Level Anweisungen: <xsl:import> Importiert ein Stylesheet <xsl:include> Fügt ein Stelysheet ein <xsl:stripe space> bestimmt welche Text Elemente von ohne Leerzeichen zu lesen sind <xsl:preserve space> bestimmt welche Text Elemente mit Leerzeichen zu lesen sind <xsl:output> <xsl:key> <xsl:decimal format> <xsl:namspace alias> <xsl:attribute set> <xsl:variable> legt Variablen fest <xsl:param> legt parameter fest <xsl:template> Definition der Regeln, welcher Text in das Ziel Dokument einfügt werden soll. Wenn das Element für das die <xsl:template> Anweisung steht im XML Urprungs Dokument gefunden wird. Seite 8

9 3.3. Grundlegende Anweisungen Syntax: <xsl:stylesheet> <xsl:stylesheet xmnlns:[namensraum]> </xsl:stylesheet> Beschreibung: Wurzel Element eines XSL Stylesheets. Schließt den Rest des Stylesheets ein. Als Parameter muß der Namensraum definiert werden. Achtung Der Namensraum ist in mancher Dokumentation veraltet. Die Aktuelle Xalan Version erkennt folgenden Namensraum: xmlns:xsl=" Beispiel: Syntax: <xsl:stylesheet xmlns:xsl= " <xsl:include> <xsl:include href="[url]"/> Beschreibung: Nur in xsl:stylesheet erlaubt Die Knoten innerhalb des xsl:stylesheet des einzufügenden Dokuments werden an die Stelle des <xsl:include> Aufrufes in das aktuelle Dokument eingefügt Beispiel: Syntax: <xsl:include "Steylesheet2.xsl"/> <xsl:import> <xsl:import href="[url]"/> Beschreibung: Nur in xsl:stylesheet erlaubt Die Knoten innerhalb des xsl:stylesheet des einzufügenden Dokuments werden an die Stelle des xsl:import Aufrufes in das aktuelle Dokument eingefügt Beispiel: Unterschied zu include: Wenn in beiden Stylesheets gleiche Definitionen oder Template rules vorhanden sind, habe diejenigen des Importierenden Files Vorrang <xsl:import "Steylesheet2.xsl"/> Seite 9

10 Syntax: Beschreibung: Beispiel: Syntax: Beschreibung: Beispiel: Syntax: Beschreibung: Beispiel: <xsl:template> <xsl:template name="[name] match="[query String]"> Zuweisung eines Elementes zu einer Transformations Regel. Elemente die die Bedingung im Query String (siehe Pattern Matching) erfüllen werden durch den Inhalt des Tags ersetzt. <xsl:template match="/"> <html> Dies ist die Wurzel </Html> <xsl:apply template> <xsl:apply template select="[query String]"/> Steuerung des Absteigens im Source Tree. Alle Elemente die die Bedingung im Query String erfüllen werden abgearbeitet. <xsl:apply templates/> oder <xsl:apply templates select="/kinderelemente"/> <xsl:value of> <xsl:value of select="[query String]"/> Holt sich den Inhalt der im Query String angegebenen Elemente und fügt diesen in den Result Tree ein. Wenn das im Query String adressierte Element keinen Inhalt hat, sucht der Parser in dessen Kinder Elementen <xsl:value of select="."/> Seite 10

11 Beispiel 2: Transformation in ein Html Ziel Dokument XML Ursprungs Dokument: cpp.xml <?xml version="1.0"?> <EINFACH> <ADRESSE> <NAME> Maier </NAME> <VORNAME> Heinz </VORNAME> </ADRESSE> <ADRESSE> <NAME> Wagner </NAME> <VORNAME> Hildegard </VORNAME> </ADRESSE> </EINFACH> Seite 11

12 XSL Stylesheet: einfach.xsl <?xml version="1.0"?> <xsl:stylesheet xmlns:xsl=" <xsl:template match="/"> <html> <xsl:apply templates/> </html> <xsl:template match="einfach"> <table border="1"> Name Vorname <xsl:apply templates/> </table> <xsl:template match="adresse"> <xsl:apply templates/> <xsl:template match="name"> <xsl:value of select="."/> <xsl:template match="vorname"> <xsl:value of select="."/> </xsl:stylesheet> Seite 12

13 Ergebnis: einfach.html <html> <table border="1"> Name Vorname Maier Heinz Wagner Hildegard </table> </html> Seite 13

14 3.4.Weitere XSL Anweisungen Syntax: Beschreibung: <xsl:variable> <xsl:variable name="[name]" select="[wert]/> <xsl:variable name="[name]">[wert]</xsl:variable> <xsl:variable name="[name]"/> Definition einer Variable. Ist nur das Attribut select mit einem Ausdruck besetzt, so ist der Wert der Variable das Ergebnis des Ausdrucks. Ist kein select Attribut besetzt, dafür aber der Kontext, so ist der Wert der Variable der Kontext. Beispiel: Syntax: Beschreibung: Ist beides nicht besetzt, so ist der Wert der variable ein leerer String. <xsl:variable name="var" select="234"/> <xsl:variable name="var">ein Template</xsl:variable> <xsl:variable name="var"/> <xsl:param> <xsl:param name="[name]" select="[wert]/> <xsl:param name="[name]">[wert]</xsl:param> <xsl:param name="[name]"/> Definition eines Parameters. Ist nur das Attribut select mit einem Ausdruck besetzt, so ist der Wert des Parameters das Ergebnis des Ausdrucks. Ist kein Select Attribut besetzt, dafür aber der Kontext, so ist der Wert des Parameters der Kontext. Ist beides nicht besetzt, so ist der Wert des Parameters ein leerer String. Beispiel: Unterschied zu Variable: Die Definition von Parameter ist der Default wert. Einem Parameter kann ein anderer Wert von Außen (z.b. durch PARAM parameter von Xalan) mitgegeben werden. <xsl:param name="var" select="5"/> <xsl:param name="var">default</xsl:param> <xsl:param name="var"/> Seite 14

15 Syntax: Beschreibung: Beispiel: Syntax: Beschreibung: Beispiel: <xsl:call template> <xsl:call template name=[template]> Aufruf eines Templates <xsl:call template name="mytemplate"> <xsl:with param> <xsl:with param name="[template]> [wert] </xsl:with param> Zuweisung eines Wertes an einen Parameter oder Variable beim Aufruf einer Rule <xsl:with param name="local">4</xsl:with param> Seite 15

16 Beispiel 3: Parameter Verwendung In diesem Beispiel wird das einfach.xml File aus Beispiel 2 verwendet XSL Stylesheet: einfach.xsl <?xml version="1.0"?> <xsl:stylesheet xmlns:xsl=" <xsl:param name="parameter">2</xsl:param> <xsl:variable name="local"/> <xsl:template match="/"> <html> <xsl:apply templates/> </html> <xsl:template match="einfach"> <table border="1"> Name Vorname <xsl:apply templates select="/einfach/adresse[position()=$parameter]"/> <xsl:call template name="aufruf"> <xsl:with param name="local"> 1 </xsl:with param> </xsl:call template> </table> <xsl:template match="adresse"> <xsl:apply templates/> <xsl:template match="name"> <xsl:value of select="."/> <xsl:template match="vorname"> <xsl:value of select="."/> <xsl:template name="aufruf"> <xsl:value of select="/einfach/adresse[position()=$local]/name"/> <xsl:value of select="/einfach/adresse[position()=$local]/vorname"/> </xsl:stylesheet> Seite 16

17 Aufruf: java org.apache.xalan.xslt.process in einfach.xml xsl parambsp.xsl out parambsp1.html Ergebnis: parambsp1.html <html> <table border="1"> Name Vorname Wagner Hildegard Maier Heinz </table> </html> Seite 17

18 Aufruf: java org.apache.xalan.xslt.process in einfach.xml xsl parambsp.xsl out parambsp2.html PARAM parameter 1 Ergebnis: parambsp2.html <html> <table border="1"> Name Vorname Maier Heinz Maier Heinz </table> </html> Seite 18

19 4.Pattern matching In einigen der bisher behandelten Anweisungen war als Attribute ein Query String angesprochen worden. Der Query String dient dazu Elemente zu adressieren, um die Verarbeitung auf diese Elemente zu beziehen. Dieser Query String wird auch als Location Step bezeichnet. Die Notation des Query Strings ist an die Adressierung im Filesystem angelehnt und wird als XPath bezeichnet. Neben XPath gibt es noch XPointer, auf das nicht näher eingegangen wird. Mit XPath Location Steps kann man von dem Element auf dem man sich gerade befindet ausgehend in verschiedene Suchrichtungen im Source Tree navigieren. Mit XPointer kann man Elemente im Source Tree ansprechen unabhängig von der Suchrichtung. 4.1.Location Steps Location Steps bestehen aus 3 Teilen: Achse Knoten Typ Prädikat Syntax: [achse]::[knoten Typ()][Prädikat] Mittels der Locaton Steps werden nun ein oder mehrere Knoten adressiert werden Achsen Die Achsen geben an in welcher Suchrichtung die auszuwählenden Elemente sich befinden, ausgehend vom aktuellen Element self Das aktuelle Element wird adressiert. child Die direkten Nachkommen des Elementes werden adressiert. Seite 19

20 parent Der direkte Vorfahre des aktuellen Elementes wird adressiert. descendant Alle direkten Nachkommen des aktuellen Elementes und deren Nachkommen werden adressiert. ancestor Alle Elemente von der Wurzel ausgehend, die durchlaufen wurden um auf das Aktuelle Element zu kommen werden adressiert. following sibling Die Elemente die den gleichen Vorfahren haben, aber in der Verarbeitung nach dem Aktuellen Element folgen, werden adressiert. preceding sibling Die Elemente die den gleichen Vorfahren haben, aber in der Verarbeitung vor dem Aktuellen Element stehen, werden adressiert. following Die Elemente die in der Verarbeitung nach dem Aktuellen Element folgen, aber kein Vorfahr des Aktuellen Elementes sind oder ein Vorfahr dieses Vorfahren sind, werden adressiert. Seite 20

21 preceding Alle Elemente die in der Verabeitung vor dem Aktuellem Element liegen, aber keine Vorfahren des Aktuellen Elementes sind, oder Vorfahren dieses Vorfahren sind, werden adressiert. descendant or self Variation von descendant und self. Alle Nachkommen des aktuellen Elementes sowie das Aktuelle Element selbst, werden adressiert. ancestor or self Variation von ancestor und self. Alle Elemente von der Wurzel ausgehend, die durchlaufen wurden um auf das Aktuelle Element zu kommen, sowie das Aktuelle Element selbst, werden adressiert. 4.3.Knoten Typen Mit der Angabe eines Knoten Typen kann man die Selektion der zu adressierenden Elemente noch einschränken, bzw. Teile von Elementen adressieren. Wenn kein Knoten Type angegeben ist, so wird default mäßig node() angewendet. node() alle Knoten egal welcher Typ text() alle Knoten die Text enthalten comment() alle Kommentare processing instructions() alle Processing Instructions attribute() alle Attribute Seite 21

22 4.4.Prädikate und vollständige Location Steps (gekürzter Syntax) Prädikate werden als boolsche Ausdrücke in eckigen Klammern notiert und beschreiben weitere Einschränkungen in der Selektion der Knoten. Sie werden direkt an die Node Typen angehängt Knoten betreffende Location Steps / Die Wurzel adressieren. * alles (vom aktuellen Element ausgehend adressieren. //Kinder/derenKinder von aktuellen Element ausgehende alle Nachkommen adressieren, die ein Element»Kinder«haben, die wiederum ein Element»derenKinder«haben. Prädikate following::node()[@anzahl="1"] Alle (wegen node()) Elemente die in der Verarbeitung nach dem Aktuellen Element folgen, aber kein Vorfahr des Aktuellen Elementes sind oder ein Vorfahr dieses Vorfahren sind, adressieren, die ein Attribut namens»anzahl«haben, und dessen Wert 1 ist. (zusätzlich) Positionsangaben./Kinder[@anzahl][position()= 1 ] Das Aktuelle Element adressieren (.), und dessen ersten Nachkommen adressieren, welches ein Element»Kinder«hat, daß ein Attribut»anzahl«hat. /Eltern[position()=last()] Die Nachkommen adressieren, die ein Element»Eltern«haben, und davon das letzte Element auswählen. Benutzung boolscher Funktionen presceding::kinder[enkel and Enkel[position()=last()]] Alle Elemente die in der Verabeitung vor dem Aktuellem Element liegen, aber keine Vorfahren des Aktuellen Elementes sind, oder Vorfahren dieses Vorfahren sind, ein Element»Kinder«haben, die wiederum entweder ein Element»Enkel«haben, und dieses ist das letzte aller Möglichen. anchestor or self::kinder[@wert="2" Alle Elemente von der Wurzel ausgehend, die durchlaufen wurden um auf das Aktuelle Element zu kommen, sowie das Aktuelle Element selbst, die ein Element»Kinder«haben dessen Attribut»wert«=2 ist oder dessen Attribut»anzahl«=3 ist werden adressiert. Seite 22

23 Beispiel 4: Benutzung von XPath Anweisungen XML Ursprungs Dokument: buch.xml <?xml version="1.0"?> <BUCH> <KAPITEL Nummer="1"> <NAME> Das erste Kapitel </NAME> <SEITE Nummer="1"> <INHALT> Seite 1 Kapitel 1 </INHALT> <KOPFZEILE> Buch Kopfzeile 1 Kapitel 1 </KOPFZEILE> </SEITE> </KAPITEL> <KAPITEL Nummer="2"> <NAME> Das zweite Kapitel </NAME> <SEITE Nummer="1"> <INHALT> Seite 1 Kapitel 1 </INHALT> <KOPFZEILE> Buch Kopfzeile 1 Kapitel 1 </KOPFZEILE> </SEITE> <SEITE Nummer="2"> <INHALT> Seite 2 Kapitel 2 </INHALT> <KOPFZEILE> Buch Kopfzeile 2 Kapitel 2 </KOPFZEILE> </SEITE> </KAPITEL> <KAPITEL Nummer="3"> <NAME> Das dritte Kapitel </NAME> <SEITE Nummer="1"> <INHALT> Seite 1 Kapitel 3 </INHALT> <KOPFZEILE> Buch Kopfzeile 1 Kapitel 3 </KOPFZEILE> </SEITE> </KAPITEL> </BUCH> Seite 23

24 Alle Kapitel eines Buches auswählen > Alle Kinder mit Namen "Kapitel" von Buch auswählen XSL Stylesheet: buchbsp1.xsl <?xml version="1.0"?> <xsl:stylesheet xmlns:xsl=" <xsl:template match="/"> <HTML> <xsl:apply templates select="/buch/kapitel"/> </HTML> <xsl:template match="/buch/kapitel"> <br/>dies ist ein Kapitel: <xsl:value of select ="NAME"/> <br/> </xsl:stylesheet> Ergebnis: buchbsp1.html Dies ist ein Kapitel: Das erste Kapitel Dies ist ein Kapitel: Das zweite Kapitel Dies ist ein Kapitel: Das dritte Kapitel Bestimmtes Kapitel eines Buches auswählen > Kapitel mit Attribut Nummer= 2 XSL Stylesheet: buchbsp2.xsl <?xml version="1.0"?> <xsl:stylesheet xmlns:xsl=" <xsl:template match="/"> <HTML> <xsl:apply templates select="/buch/kapitel[@nummer= 2 ]"/> </HTML> <xsl:template match="/buch/kapitel"> <br/>dies ist ein Kapitel: <xsl:value of select ="NAME"/> <br/> </xsl:stylesheet> Ergebnis: buchbsp2.html Dies ist ein Kapitel: Das zweite Kapitel Seite 24

25 Bestimmtes Kapitel eines Buches auswählen > Kapitel mit Positionsnummer XSL Stylesheet: buchbsp3.xsl <?xml version="1.0"?> <xsl:stylesheet xmlns:xsl=" <xsl:template match="/"> <HTML> <br/>erstes <br/><xsl:apply templates select="/buch/kapitel[position()= 1 ]"/> <br/>positionsnummer <br/><xsl:apply templates select="/buch/kapitel[position()= 2 ]"/> <br/>letztes <br/><xsl:apply templates select="/buch/kapitel[position()=last()]"/> <br/>vorletztes <br/><xsl:apply templates select="/buch/kapitel[position()=last() 1]"/> </HTML> <xsl:template match="/buch/kapitel"> <br/>dies ist ein Kapitel: <xsl:value of select ="NAME"/> <br/> </xsl:stylesheet> Ergebnis: buchbsp3.html Erstes Dies ist ein Kapitel: Das erste Kapitel Positionsnummer Dies ist ein Kapitel: Das zweite Kapitel Letztes Dies ist ein Kapitel: Das dritte Kapitel Vorletztes Dies ist ein Kapitel: Das zweite Kapitel Seite 25

26 Anhang 1: Default Template Rules Es gibt mehrere Default Template Rules, die angewandt werden, wenn im Stylesheet keine andere Rule diese außer kraft setzt Wenn der Parser auf ein Element stößt, für das es keine Template Rule gibt, wird folgende Rule angewandt: <xsl:template match="* /"> <xsl:apply templates/> <xsl:template/> Wenn es sich bei dem Element handelt, daß keine Nachkommen hat, wird folgende Rule angewandt: <xsl:template <xsl:value of select="."/> <xsl:template/> Anhang 2: Quellen Hands on XSL ( Don R. Day) ibm.com/developerworks/xml/library/hands on xsl/index.html?dwzone=xml Xalan und Xerces XSL Seite 26

Einführung. Hallo-Welt in XSLT

Einführung. Hallo-Welt in XSLT 2. Vorlagen-Technik Inhalt 1. Einführung 2. Vorlagen 3. XPath 4. Kontrollstrukturen 5. Sortierung, Gruppierung und Nummerierung 6. Parameter und Variablen 7. Vorgaben für Ein- und Ausgabeformate 8. Auslagerung

Mehr

Seminar Dokumentenverarbeitung

Seminar Dokumentenverarbeitung XPath und XSL/XSLT Seminar Dokumentenverarbeitung Juni 2002 Jan-Gerrit Drexhage jdrexhag@techfak.uni-bielefeld.de Garvin Gripp ggripp@techfak.uni-bielefeld.de 1 XSLT extensible Stylesheet Language (for

Mehr

XSL Transformation. Eine praxisorientierte Einführung Philip Heck

XSL Transformation. Eine praxisorientierte Einführung Philip Heck XSL Transformation Eine praxisorientierte Einführung Philip Heck Agenda Motivation Hello World - Getting Started with XSLT XSLT Verarbeitung im Detail XPath 2 Motivation datenzentriertes XML als Standard

Mehr

XSL Transformation (XSLT) Teil II

XSL Transformation (XSLT) Teil II XML Vorlesung FH Aargau, SS 2006 XSL Transformation (XSLT) Teil II Erik Wilde 19.6.2006 http://dret.net/lectures/xml-fhnw-ss06/ 19.6.2006 XML Vorlesung FHA SS 2006 1 Übersicht Conflict Resolution Variablen

Mehr

XML Vorlesung FHA SS

XML Vorlesung FHA SS XML Vorlesung FH Aargau, SS 2006 XSL Transformation (XSLT) Teil II Erik Wilde 19.6.2006 Übersicht Conflict Resolution Variablen und Parameter Sortieren Erzeugen des Ausgabebaumes XPath Erweiterungen um

Mehr

XSLT für SAP NetWeaver Process Integration. Transformationssprache für XML Dokumente

XSLT für SAP NetWeaver Process Integration. Transformationssprache für XML Dokumente XSLT für SAP NetWeaver Process Integration Transformationssprache für XML Dokumente Entwicklung und Laufzeit Datenebene Metadatenebene Generieren Generieren Entwicklung ORDERS02 IDocXML Schema Validieren

Mehr

XSL. extended Stylesheet Language. Die Stylesheet Sprache für XML

XSL. extended Stylesheet Language. Die Stylesheet Sprache für XML XSL extended Stylesheet Language Die Stylesheet Sprache für XML XPath www.w3.org/tr/xpath Adressierung Die Templates im Stylesheet können nur dann richtig (an der richtigen Stelle) angewandt werden, wenn

Mehr

XSL Transformations (XSLT) Teil II

XSL Transformations (XSLT) Teil II XML Vorlesung ETHZ, Sommersemester 2006 XSL Transformations (XSLT) Teil II Erik Wilde 6.6.2006 http://dret.net/lectures/xml-ss06/ 6.6.2006 XML Vorlesung ETHZ SS 2006 1 Übersicht Conflict Resolution Variablen

Mehr

Projektseminar "Texttechnologische Informationsmodellierung"

Projektseminar Texttechnologische Informationsmodellierung Projektseminar "Texttechnologische Informationsmodellierung" Formatierung und Transformation http://www.text-technology.de/projects/sekimo.html Ziel dieser Sitzung Nach dieser Sitzung sollten Sie: XPath

Mehr

Transformation von XML-Dokumenten mit XSLT

Transformation von XML-Dokumenten mit XSLT Transformation von XML-Dokumenten mit XSLT Fabian Holzer Proseminar XML - Grundlagen, Verarbeitung und Anwendungen Institut für Programmstrukturen und Datenorganisation (IPD) Lehrstuhl für Systeme der

Mehr

Inhalt des Moduls: Grundlagen. Vorlagen. Kontrollstrukturen. Ausgabestrukturen. Parameter und Variablen. Dateibasierte Auslagerung

Inhalt des Moduls: Grundlagen. Vorlagen. Kontrollstrukturen. Ausgabestrukturen. Parameter und Variablen. Dateibasierte Auslagerung XSLT Inhalt des Moduls: Grundlagen Vorlagen Kontrollstrukturen Ausgabestrukturen Parameter und Variablen Dateibasierte Auslagerung Grundlagen XSLT (extensible Stylesheet Language for Transformations) ist

Mehr

Einführung in XML. Seminarunterlage. Version 3.05 vom

Einführung in XML. Seminarunterlage. Version 3.05 vom Seminarunterlage Version: 3.05 Version 3.05 vom 8. März 2017 Dieses Dokument wird durch die veröffentlicht.. Alle Rechte vorbehalten. Alle Produkt- und Dienstleistungs-Bezeichnungen sind Warenzeichen oder

Mehr

Linux I II III Res WN/TT NLTK XML Weka E XML BNC XSLT BNC/XML 7 BNC/XML XML BNC XSLT. Ressourcen-Vorkurs

Linux I II III Res WN/TT NLTK XML Weka E XML BNC XSLT BNC/XML 7 BNC/XML XML BNC XSLT. Ressourcen-Vorkurs BNC/XML 7 BNC/XML XML BNC XSLT extensible Markup Language I XML erlaubt es, strukturierte Daten in Textdateien zu speichern. Zum Schreiben und Lesen von XML-Dateien genügen einfache Text-Editoren wie Emacs

Mehr

XSLT XSL Transformations

XSLT XSL Transformations XML-Praxis XSLT XSL Transformations Teil 1 Jörn Clausen joern@techfak.uni-bielefeld.de Übersicht Namespaces XPath einfache XSLT-Stylesheets template rules default rules XML-Praxis XSLT XSL Transformations,

Mehr

Wege zur Anzeige. XSL die extensible Stylesheet Language. Wege zur Anzeige. Folie 1. Institut für Dokumentologie und Editorik

Wege zur Anzeige. XSL die extensible Stylesheet Language. Wege zur Anzeige. Folie 1. Institut für Dokumentologie und Editorik XSL die extensible Stylesheet Language Folie 1 Spring School 14. bis 18. März 2011 Einführung - Warum XML? Warum TEI? Trennung von Form und Inhalt Eine Quelle, viele verschiedene Ausgabeformate - Standardstylesheets

Mehr

XSLT XSL Transformations

XSLT XSL Transformations XML-Praxis XSLT XSL Transformations Teil 2 Jörn Clausen joern@techfak.uni-bielefeld.de Übersicht weitere XSLT-Techniken: Bedingungen, Verzweigungen Schleifen templates aufrufen Variablen, Parameter Anwendungsbeispiel

Mehr

XSLT XSL Transformations

XSLT XSL Transformations XML-Praxis XSLT XSL Transformations Teil 2 Jörn Clausen joern@techfak.uni-bielefeld.de Übersicht weitere XSLT-Techniken: Bedingungen, Verzweigungen Schleifen templates aufrufen Variablen, Parameter Anwendungsbeispiel

Mehr

XSLT IDE AUTUMN SCHOOL

XSLT IDE AUTUMN SCHOOL 1 Was ist das? (Extensible Stylesheet Language Transformation) ist eine Transformationssprache für XML- Dokumente. 2 Was ist das? W3C-Recommendation: http://www.w3.org/style/xsl/ W3C-Standard seit 1999,

Mehr

XSLT XSL Transformations

XSLT XSL Transformations XML-Praxis XSLT XSL Transformations Teil 1 Jörn Clausen joern@techfak.uni-bielefeld.de Übersicht Namespaces XPath einfache XSLT-Stylesheets template rules default rules XML-Praxis XSLT XSL Transformations,

Mehr

Dirk Ammelburger XML. Grundlagen der Sprache und Anwendungen in der Praxis HANSER

Dirk Ammelburger XML. Grundlagen der Sprache und Anwendungen in der Praxis HANSER Dirk Ammelburger XML Grundlagen der Sprache und Anwendungen in der Praxis HANSER r 1 Einleitung 2 1.1 Über dieses Buch 3 1.2 Für wen ist das Buch gedacht? 4 1.3 Wie ist das Buch aufgebaut? 5 1.4 Konventionen

Mehr

Eine Schnelleinführung in XSL

Eine Schnelleinführung in XSL Eine Schnelleinführung in XSL Michael Dienert 8. Juli 2014 1 Was ist XSL? XSL ist die Abkürzung von Extensible Stylesheet Language. XSL ist selbst wieder eine XML-Anwendung, d.h. XSL-Dokumente müssen immer

Mehr

XML-Praxis. Einführung in XSLT. Jörn Clausen

XML-Praxis. Einführung in XSLT. Jörn Clausen XML-Praxis Einführung in XSLT Jörn Clausen joern@techfak.uni-bielefeld.de Übersicht Extensible Stylesheet Language XSL XSL Transformations XSLT templates Verarbeitung steuern XML-Praxis Einführung in XSLT

Mehr

FileMaker Konferenz 2010 XML / XSLT. Ein Workshop mit [x] cross solution Armin Egginger

FileMaker Konferenz 2010 XML / XSLT. Ein Workshop mit [x] cross solution Armin Egginger XML / XSLT Ein Workshop mit [x] cross solution Armin Egginger [x] cross solution Armin Egginger - Zertifizierter FileMaker Entwickler Urheber von CrossCheck Netzwerk von Datenbankprogrammierern Kunden

Mehr

XML-Praxis.

XML-Praxis. XML-Praxis Einführung in XSLT Jörn Clausen joern@techfak.uni-bielefeld.de Übersicht Extensible Stylesheet Language XSL XSL Transformations XSLT templates Verarbeitung steuern XML-Praxis Einführung in XSLT

Mehr

XSLT vs. STX STX. Streaming Transformation for XML. Jan Krueger

XSLT vs. STX STX. Streaming Transformation for XML. Jan Krueger STX Streaming Transformation for XML Jan Krueger (jkrueger@) Motivation Gemeinsamkeiten : XSLT, STX Was ist neu? Zusammenfassung fuer XSLT Insider Fazit Literatur - 2 - Motivation

Mehr

Weiterführende Literatur: M. Knobloch, M. Kopp: Web-Design mit XML, dpunkt-verlag 2001

Weiterführende Literatur: M. Knobloch, M. Kopp: Web-Design mit XML, dpunkt-verlag 2001 9. Mediendokumente 9.1 Generische Auszeichnungssprachen: XML 9.2 XML und Style Sheets 9.3 XML für Multimedia: SMIL 9.4 XML Transformationen: XSLT Weiterführende Literatur: M. Knobloch, M. Kopp: Web-Design

Mehr

Weiterführende Literatur: M. Knobloch, M. Kopp: Web-Design mit XML, dpunkt-verlag 2001

Weiterführende Literatur: M. Knobloch, M. Kopp: Web-Design mit XML, dpunkt-verlag 2001 9. Mediendokumente 9.1 Generische Auszeichnungssprachen: XML 9.2 XML und Style Sheets 9.3 XML für Multimedia: SMIL 9.4 XML Transformationen: XSLT Weiterführende Literatur: M. Knobloch, M. Kopp: Web-Design

Mehr

Extensible Stylesheet Language Transformations XSLT

Extensible Stylesheet Language Transformations XSLT Extensible Stylesheet Language Transformations XSLT 13.06.2007 Grundlagen der Stylesheets XSLT Extensible Stylesheet Language Transformation Transformation Überführt XML-Daten in ein neues Format wieder

Mehr

7.2.2 Spezifikation einer Treffermenge

7.2.2 Spezifikation einer Treffermenge 7.2.2 Spezifikation einer Treffermenge Das Ergebnis der Auswertung eines XPath Ausdrucks (Version 1.0) ist eine Liste von Knoten. Folgende Schritte sind bei einer Anfrage auszuführen: 1.) Festlegung des

Mehr

Weiterführende Literatur: M. Knobloch, M. Kopp: Web-Design mit XML, dpunkt-verlag 2001

Weiterführende Literatur: M. Knobloch, M. Kopp: Web-Design mit XML, dpunkt-verlag 2001 9. Mediendokumente 9.1 Generische Auszeichnungssprachen: XML 9.2 XML und Style Sheets 9.3 XML für Multimedia: SMIL 9.4 XML Transformationen: XSLT Weiterführende Literatur: M. Knobloch, M. Kopp: Web-Design

Mehr

XML-Praxis. Mit XSLT arbeiten. Jörn Clausen

XML-Praxis. Mit XSLT arbeiten. Jörn Clausen XML-Praxis Mit XSLT arbeiten Jörn Clausen joern@techfak.uni-bielefeld.de Übersicht Kontrollstrukturen Bedingungen Schleifen named templates Variablen und Parameter Rekursion XML-Praxis Mit XSLT arbeiten

Mehr

XML-Praxis. Mit XSLT arbeiten. Jörn Clausen

XML-Praxis. Mit XSLT arbeiten. Jörn Clausen XML-Praxis Mit XSLT arbeiten Jörn Clausen joern@techfak.uni-bielefeld.de Übersicht Kontrollstrukturen Bedingungen Schleifen named templates Variablen und Parameter Rekursion XML-Praxis Mit XSLT arbeiten

Mehr

Web (Site) Engineering (WebSE)

Web (Site) Engineering (WebSE) 1 / 22 Web (Site) Engineering (WebSE) Vorlesung 6: Tools und Programmierung B. Schiemann, P. Reiß Lehrstuhl für Informatik 8 Universität Erlangen-Nürnberg 29.11.2005 2 / 22 Übersicht XML-Beispiel Zugriff

Mehr

IT-Zertifikat: Daten- und Metadatenstandards. Transformation von XML-Dokumenten mit XSLT (und XPATH) XSLT kurz und knackig. XSLT und die Praxis

IT-Zertifikat: Daten- und Metadatenstandards. Transformation von XML-Dokumenten mit XSLT (und XPATH) XSLT kurz und knackig. XSLT und die Praxis IT-Zertifikat: Daten- und Metadatenstandards Transformation von XML-Dokumenten mit XSLT (und XPATH) XSLT kurz und knackig I. Was ist XSLT? XSL Transformation (XSLT) ist eine Programmiersprache zur Transformation

Mehr

XSL Transformations (XSLT) Teil I

XSL Transformations (XSLT) Teil I XML Vorlesung ETHZ, Sommersemester 2006 XSL Transformations (XSLT) Teil I Erik Wilde 30.5.2006 http://dret.net/lectures/xml-ss06/ Übersicht Herkunft von XSLT XSLT aus der Ferne betrachtet Template Rules

Mehr

IN A NUTSHELL. Elliotte Rusty Harold & W, Scott Means. Deutsche Übersetzung von Kathrin Lichtenberg & Jochen Wiedmann O'REILLY*

IN A NUTSHELL. Elliotte Rusty Harold & W, Scott Means. Deutsche Übersetzung von Kathrin Lichtenberg & Jochen Wiedmann O'REILLY* 2008 AGI-Information Management Consultants May be used for personal purporses only or by libraries associated to dandelon.com network. IN A NUTSHELL Elliotte Rusty Harold & W, Scott Means Deutsche Übersetzung

Mehr

Grundlagen der Extensible Stylesheet Language

Grundlagen der Extensible Stylesheet Language Grundlagen der Extensible Stylesheet Language Transformations (XSLT) Marc Monecke monecke@informatik.uni-siegen.de Praktische Informatik Fachbereich Elektrotechnik und Informatik Universität Siegen, D-57068

Mehr

APEX und Apache FOP Freie PDF-Erstellung mit APEX 3.0.1

APEX und Apache FOP Freie PDF-Erstellung mit APEX 3.0.1 APEX und Apache FOP Freie PDF-Erstellung mit APEX 3.0.1 Dr. Gudrun Pabst Basel Baden Bern Lausanne Zürich Düsseldorf Frankfurt/M. Freiburg i. Br. Hamburg München Stuttgart Agenda Kürzel: XML, XSL, XSLT,

Mehr

Weiterführende Literatur: M. Knobloch, M. Kopp: Web-Design mit XML, dpunkt-verlag 2001

Weiterführende Literatur: M. Knobloch, M. Kopp: Web-Design mit XML, dpunkt-verlag 2001 9. Mediendokumente 9.1 Generische Auszeichnungssprachen: XML 9.2 XML und Style Sheets 9.3 XML für Multimedia: SMIL 9.4 XML Transformationen: XSLT Weiterführende Literatur: M. Knobloch, M. Kopp: Web-Design

Mehr

XML Vorlesung FHA SS

XML Vorlesung FHA SS XML Vorlesung FH Aargau, SS 2006 XSL Transformations (XSLT) Teil I Erik Wilde 12.6.2006 http://dret.net/lectures/xml-fhnw-ss06/ Übersicht 8 30 9 30 : Test (XML Schema) Herkunft von XSLT XSLT aus der Ferne

Mehr

Inhalte. Stylesheet-Wurzel Vorlagen Ausgabe Leerraum Funktionen Kontrollanweisungen & Techniken Sortierung Nummerierung

Inhalte. Stylesheet-Wurzel Vorlagen Ausgabe Leerraum Funktionen Kontrollanweisungen & Techniken Sortierung Nummerierung XSLT Inhalte Stylesheet-Wurzel Vorlagen Ausgabe Leerraum Funktionen Kontrollanweisungen & Techniken Sortierung Nummerierung Gruppierung XML-Erstellung Variablen und Parameter Module kombinieren Reguläre

Mehr

XSLT: Transformation von XML

XSLT: Transformation von XML namics Developer Days 21./22.6.2002 XSLT: Transformation von XML Erik Wilde ETH Zürich http://dret.net/netdret/ 21.6.2002 namics DevDays XSLT 1 Übersicht XML als Format für strukturierte Daten Zugriff

Mehr

Übersicht. Web (Site) Engineering (WebSE) XML-Beispieldokument. Simple API for XML (SAX) [Pro] XML-Beispiel. Vorlesung 6: Tools und Programmierung

Übersicht. Web (Site) Engineering (WebSE) XML-Beispieldokument. Simple API for XML (SAX) [Pro] XML-Beispiel. Vorlesung 6: Tools und Programmierung Übersicht Web (Site) Engineering (WebSE) Vorlesung 6: Tools und Programmierung XML-Beispiel B. Schiemann, P. Reiß Lehrstuhl für Informatik 8 Universität Erlangen-Nürnberg 29.11.2005 Zugriff auf Inhalt,

Mehr

XSL Templates. Mit Templates arbeiten. XSL Templates

XSL Templates. Mit Templates arbeiten. XSL Templates XSL Templates Mit Templates arbeiten Innerhalb von XSLT werden Templates verwendet. Ein Template ist eine Vorlage für die Transformation bestimmter Knoten. Diese Knoten können Elemente, Attribute oder

Mehr

Semistrukturierte Daten

Semistrukturierte Daten Semistrukturierte Daten 7. XSLT Semistrukturierte Daten XSLT Stefan Woltran Institut für Informationssysteme Technische Universität Wien Sommersemester 2011 Stefan Woltran Seite 1 Semistrukturierte Daten

Mehr

Verteilte Anwendungen. Teil 8: XSL II (XSLT)

Verteilte Anwendungen. Teil 8: XSL II (XSLT) Verteilte Anwendungen Teil 8: XSL II (XSLT) 27.10.16 1 Literatur [8-1] Bongers, Frank: XSLT 2.0. Galileo, 2004 [8-2] Skulschus, Marco; Wiederstein, Marcus: XSLT 2.0. mitp, 2005 [8-3] Lenz,Evan: XSLT 1.0

Mehr

XML-Praxis. Mit XSLT arbeiten. Jörn Clausen.

XML-Praxis. Mit XSLT arbeiten. Jörn Clausen. XML-Praxis Mit XSLT arbeiten Jörn Clausen joern@techfak.uni-bielefeld.de 1 Übersicht Kontrollstrukturen Bedingungen Schleifen named templates Variablen und Parameter Rekursion 2 Bedingungen Datum nur ausgeben,

Mehr

Seminar: XML und intelligente Systeme

Seminar: XML und intelligente Systeme Seminar: XML und intelligente Systeme XML-Navigation: XPath, E4X Christoph Weitkamp cweitkam@techfak.uni-bielefeld.de Einleitung XPath ist eine Sprache, um Informationen in XML-Dokumenten zu finden Modellierung

Mehr

Projektarbeit: Übersetzung von XML-Updatesprachen

Projektarbeit: Übersetzung von XML-Updatesprachen Projektarbeit: Übersetzung von XML-Updatesprachen Hannes Grunert Inhalt I. Aufgabenstellung II. Vergleich von XUpdate und XSLT III.Übersetzung i. XSEL XUpdate ii. XUpdate XSLT IV.Implementierung i. Architektur

Mehr

Auszug aus: Helmut Vonhoegen: Einstieg in XML, 3. Auflage, Galileo Press 2005

Auszug aus: Helmut Vonhoegen: Einstieg in XML, 3. Auflage, Galileo Press 2005 Kurzreferenz zu XSLT Auszug aus: Helmut Vonhoegen: Einstieg in XML, 3. Auflage, Galileo Press 2005 Diese Anweisung sorgt dafür, dass auf den aktuellen Knoten nur die in das Stylesheet

Mehr

Vorlesung Datenbanken II SS 2006

Vorlesung Datenbanken II SS 2006 Vorlesung Datenbanken II SS 2006 1 Vorlesung Datenbanken II SS 2006 Sven Wachsmuth, Technische Fakultät, AG Angewandte Informatik Vorlesung Datenbanken II SS 2006 2 4.2.2 XML-Anfragesprachen Konzepte von

Mehr

Dokumentverarbeitung

Dokumentverarbeitung Dokumentverarbeitung D. Rösner Institut für Wissens- und Sprachverarbeitung Fakultät für Informatik Otto-von-Guericke Universität Magdeburg Winter 2012/13, 2. November 2012, c 2010-13 D.Rösner D. Rösner

Mehr

XML-Praxis. XPath. Jörn Clausen

XML-Praxis. XPath. Jörn Clausen XML-Praxis XPath Jörn Clausen joern@techfak.uni-bielefeld.de Übersicht XPath Namespaces XML-Praxis XPath 2/34 XML-Dokument als Baum weitere Text-Knoten durch whitespace Aufgabe: lokalisiere einen (oder

Mehr

XSL Transformations (XSLT) Teil III

XSL Transformations (XSLT) Teil III XML Vorlesung ETHZ, Sommersemester 2006 XSL Transformations (XSLT) Teil III Erik Wilde 13.6.2006 http://dret.net/lectures/xml-ss06/ 13.6.2006 XML Vorlesung ETHZ SS 2006 1 Übersicht Tips und Tricks Mengenoperationen

Mehr

Praktikum zu XML: Übung 11

Praktikum zu XML: Übung 11 Fachhochschule Wiesbaden - Fachbereich Informatik Praktikum zu XML: Übung 11 XSLT Eine HTML-Tabelle 10.06.2003 H. Werntges, FB Informatik, FH Wiesbaden 1 Organisatorisches Arbeitsverzeichnis: ~/kurse/xml/11/

Mehr

XSL Transformationen. -Teil 2 - Schwerpunkt: Templates und Kontrollstrukturen. XSL Transformationen - Teil 2 Christina Krieglstein / 66

XSL Transformationen. -Teil 2 - Schwerpunkt: Templates und Kontrollstrukturen. XSL Transformationen - Teil 2 Christina Krieglstein / 66 XSL Transformationen -Teil 2 - Schwerpunkt: Templates und Kontrollstrukturen / 66 Gliederung 1. Templates 1.1 Allgemeine Informationen 1.2 match-attribut 1.3 Eingebaute Template Rules 1.4 xsl:apply-templates

Mehr

XML-Praxis. XPath. Jörn Clausen

XML-Praxis. XPath. Jörn Clausen XML-Praxis XPath Jörn Clausen joern@techfak.uni-bielefeld.de Übersicht XPath Namespaces XML-Praxis XPath 2/34 XML-Dokument als Baum root presentation status date author toc ilist weitere Text-Knoten durch

Mehr

Gruppe A PRÜFUNG AUS SEMISTRUKTURIERTE DATEN Kennnr. Matrikelnr. Familienname Vorname

Gruppe A PRÜFUNG AUS SEMISTRUKTURIERTE DATEN Kennnr. Matrikelnr. Familienname Vorname Gruppe A PRÜFUNG AUS SEMISTRUKTURIERTE DATEN 184.705 24. 10. 2014 Kennnr. Matrikelnr. Familienname Vorname Arbeitszeit: 100 Minuten. Aufgaben sind auf den Angabeblättern zu lösen; Zusatzblätter werden

Mehr

XML-Praxis.

XML-Praxis. XML-Praxis Einführung in XSLT Jörn Clausen joern@techfak.uni-bielefeld.de 1 Übersicht Extensible Stylesheet Language XSL XSL Transformations XSLT templates Verarbeitung steuern 2 XML Und dann? XML beschreibt

Mehr

Einführung in XML Extensible Markup Language

Einführung in XML Extensible Markup Language Einführung in XML Extensible Markup Language XML Extensible Markup Language Seminarvortrag Komponentenarchitekturen WS 2008/2009 Inhaltsverzeichnis Folien der Präsentation...1 Erläuterungen zu den Beispieldateien...11

Mehr

XSLT. h_da SS Seite 1

XSLT. h_da SS Seite 1 XSLT Seite 1 Inhalt Beispiele Xquery Einleitung XSLT Arbeitsweise von XSLT Template-Anweisungen XSLT Syntax Beispiele Seite 2 Aufbau eines XQL Dokuments Module ::= VersionDecl? MainModule Beispiele für

Mehr

Musterlösung des Übungsblattes 4

Musterlösung des Übungsblattes 4 Musterlösung des Übungsblattes 4 1 Beispieltransformation beginning XML hunter et al. chap.

Mehr

XML. XML-Abfrage- und Transformationssprachen. XPath DTD. XQuery. XML-Schema XSLT XML-Grundlagen, -Sprachen, -Datenhaltungsfragen

XML. XML-Abfrage- und Transformationssprachen. XPath DTD. XQuery. XML-Schema XSLT XML-Grundlagen, -Sprachen, -Datenhaltungsfragen XML-Abfragesprachen XML-Schemasprachen DTD XML-Schema... XPath XQuery XML XML-Transformationssprache XSLT Relationale DBMS XML in DBMS Dedizierte XML-DBMS 86 XML-Grundlagen, -Sprachen, -Datenhaltungsfragen

Mehr

XML. XML-Datenmodellierung / XML-Schemasprachen. XPath DTD. XQuery. XML-Schema XSLT XML-Grundlagen, -Sprachen, -Datenhaltungsfragen

XML. XML-Datenmodellierung / XML-Schemasprachen. XPath DTD. XQuery. XML-Schema XSLT XML-Grundlagen, -Sprachen, -Datenhaltungsfragen XML-Datenmodellierung / XML-Schemasprachen XML-Abfragesprachen XML-Schemasprachen DTD XML-Schema... XPath XQuery XML XML-Transformationssprache XSLT Relationale DBMS XML in DBMS Dedizierte XML-DBMS 83

Mehr

Semistrukturierte Daten

Semistrukturierte Daten Semistrukturierte Daten Teil 8: XSLT 1.0 Sommersemester 2007 8.1. Einführung 8.2. Aufbau von XSLT-Stylesheets 8.3. Abarbeitung von XSLT-Stylesheets 8.4. Result Tree 8.5. Kontrollstrukturen 8.6. Variablen,

Mehr

Dynamische Inhalte und Formate

Dynamische Inhalte und Formate Dynamische Inhalte und Formate p. 1/3 Dynamische Inhalte und Formate Seminar Document Engineering Dennis Busch dennis.busch@gmx.de Institut für Softwaretechnologie Fakultät für Informatik Universität der

Mehr

Gruppe A PRÜFUNG AUS SEMISTRUKTURIERTE DATEN Kennnr. Matrikelnr. Familienname Vorname

Gruppe A PRÜFUNG AUS SEMISTRUKTURIERTE DATEN Kennnr. Matrikelnr. Familienname Vorname Gruppe A PRÜFUNG AUS SEMISTRUKTURIERTE DATEN 184.705 13. 1. 2015 Kennnr. Matrikelnr. Familienname Vorname Arbeitszeit: 100 Minuten. Aufgaben sind auf den Angabeblättern zu lösen; Zusatzblätter werden nicht

Mehr

XML-Praxis. XPath. Jörn Clausen.

XML-Praxis. XPath. Jörn Clausen. XML-Praxis XPath Jörn Clausen joern@techfak.uni-bielefeld.de 1 Übersicht XPath Namespaces 2 XML-Dokument als Baum root presentation status date author toc ilist weitere Text-Knoten durch whitespace Aufgabe:

Mehr

XSL Transformations (XSLT) Teil III

XSL Transformations (XSLT) Teil III XML Vorlesung ETHZ, Sommersemester 2006 XSL Transformations (XSLT) Teil III Erik Wilde 13.6.2006 http://dret.net/lectures/xml-ss06/ Übersicht Tips und Tricks Mengenoperationen in XPath Keys Modularisierung

Mehr

Projektseminar "Texttechnologische Informationsmodellierung"

Projektseminar Texttechnologische Informationsmodellierung Projektseminar "Texttechnologische Informationsmodellierung" Analyse mit XSLT Ziel diese Sitzung Nach dieser Sitzung sollten Sie: Einen ersten Überblick über Funktionen in XPath haben Stylesheets und Templates

Mehr

Semistrukturierte Daten

Semistrukturierte Daten Semistrukturierte Daten 8. XSLT Semistrukturierte Daten XSLT Stefan Woltran Emanuel Sallinger Institut für Informationssysteme Technische Universität Wien Sommersemester 2014 Stefan Woltran, Emanuel Sallinger

Mehr

Web Technologien XML, XQuery, XPath und XSLT

Web Technologien XML, XQuery, XPath und XSLT Web Technologien XML, XQuery, XPath und XSLT Univ.-Prof. Dr.-Ing. Wolfgang Maass Chair in Information and Service Systems Department of Law and Economics WS 2011/2012 Wednesdays, 8:00 10:00 a.m. Room HS

Mehr

XML und Dokumentenmanagement

XML und Dokumentenmanagement XML und Dokumentenmanagement XML-Standards XML DTD XPath XSL DOM, SAX, XQuery,... - SS 2004 - Prof. Dr. Stefan Böttcher Folie XML / 1 Überblick: Internet-Technologien für Dokumentenmanagement Server-Technologien

Mehr

XSL Transformations (XSLT) Teil I

XSL Transformations (XSLT) Teil I XML Vorlesung ETHZ, Sommersemester 2006 XSL Transformations (XSLT) Teil I Erik Wilde 30.5.2006 http://dret.net/lectures/xml-ss06/ 30.5.2006 XML Vorlesung ETHZ SS 2006 1 Übersicht Herkunft von XSLT XSLT

Mehr

XSL und XSLT. Inhalt. Mathias Heilig email: mathias.heilig@gmx.de. XSL Übersicht. Formatierungsprozess. Sprachbeschreibung. Vorführung Resümee

XSL und XSLT. Inhalt. Mathias Heilig email: mathias.heilig@gmx.de. XSL Übersicht. Formatierungsprozess. Sprachbeschreibung. Vorführung Resümee Mathias Heilig email: mathias.heilig@gmx.de Inhalt XSL Übersicht XSL im XML- Umfeld XSLT XPath XSL- FO Was können wir mit XSLT heute machen? Formatierungsprozess XSLT im XML- Formatierungsprozess Transformation

Mehr

Datenbanksysteme. XML und Datenbanken. Burkhardt Renz. Sommersemester Fachbereich MNI Technische Hochschule Mittelhessen

Datenbanksysteme. XML und Datenbanken. Burkhardt Renz. Sommersemester Fachbereich MNI Technische Hochschule Mittelhessen Datenbanksysteme XML und Datenbanken Burkhardt Renz Fachbereich MNI Technische Hochschule Mittelhessen Sommersemester 2019 Übersicht Semistrukturierte Daten Datendefinition in XML Dokumenttypdefinition

Mehr

Gruppe 3 / 5 / 10. Tutorübung zu Einsatz und Realisierung von Datenbanksystemen (SS 17) Michael Schwarz

Gruppe 3 / 5 / 10. Tutorübung zu Einsatz und Realisierung von Datenbanksystemen (SS 17) Michael Schwarz Gruppe 3 / 5 / 10 Tutorübung zu Einsatz und Realisierung von Datenbanksystemen (SS 17) Michael Schwarz Institut für Informatik Technische Universität München 19.07 / 20.07 / 21.07.2017 1/3 Allgemeines

Mehr

Konzept und Realisierung Extensible Stylesheet Language

Konzept und Realisierung Extensible Stylesheet Language Konzept und Realisierung Extensible Stylesheet Language Hauptseminar Telematik SS2002 Kai Weber XSL/XSLT 1 Inhalt des Vortrages Wozu dienen Stylesheets Vorstellung der XSL-Sprachfamilie Transformationen

Mehr

Agenda. 1. Was können wir mit XSLT alles machen? 1. Beispiele: 1. Webseiten 2. Textprozessierung 3. Datenbankabfragen

Agenda. 1. Was können wir mit XSLT alles machen? 1. Beispiele: 1. Webseiten 2. Textprozessierung 3. Datenbankabfragen Agenda 1. Was können wir mit XSLT alles machen? 1. Beispiele: 1. Webseiten 2. Textprozessierung 3. Datenbankabfragen 4. 2. Theorie 1. XML 2. XPath + Übung 3. XSLT 4. Wie verhalten sich beide zueinander?

Mehr

Einführung in XML. Arthur Brack FHDW Hannover. 1. Oktober 2009

Einführung in XML. Arthur Brack FHDW Hannover. 1. Oktober 2009 Einführung in XML Arthur Brack FHDW Hannover Inhalt Was ist XML? Warum XML? Aufbau von XML-Dokumenten Ausblick XML-Schemasprachen XPath XSLT Zusammenfassung Literatur Einführung in XML 2 / 14 Was ist XML?

Mehr

XSLT, Teil 3. Udo Kelter

XSLT, Teil 3. Udo Kelter XSLT, Teil 3 Udo Kelter 12.06.2007 Zusammenfassung dieses Lehrmoduls Auch in XML-Datenbeständen hat man das Problem der Verbundbildung, also der Bildung neuer Elemente, die Daten aus verschiedenen Quellen

Mehr

Inhalt. Stylesheets. Stylesheets XSL VU Semistrukturierte Daten 1. Stylesheets

Inhalt. Stylesheets. Stylesheets XSL VU Semistrukturierte Daten 1. Stylesheets Inhalt 181135 VU Semistrukturierte Daten 1 XSL - Extensible Stylesheet Language (Teil 1) 25.10.2005 Reinhard Pichler Stylesheets XSLT Aufbau eines XSLT Stylesheets Abarbeitung eines XSLT Stylesheets Erzeugung

Mehr

XML-Praxis. XML-Anwendungen.

XML-Praxis. XML-Anwendungen. XML-Praxis XML-Anwendungen Jörn Clausen joern@techfak.uni-bielefeld.de 1 Übersicht DocBook Software-Installation dokumentieren 2 DocBook SGML/XML-Sprache für technische Dokumentationen Norman Walsh, OASIS

Mehr

XPath chneeberger J. S

XPath chneeberger J. S XPath J. Schneeberger Anmerkungen Step Folie wiederholen Location Path = Pfadbeschreibung Arbeit Alles im bscw digidoc Was ist die neues Version von XML? Wie wird das HTML erzeugt Übungsfolien an Martin

Mehr

CARL HANSER VERLAG. Dirk Ammelburger XML. Grundlagen der Sprache und Anwendungen in der Praxis 3-446-22562-5. www.hanser.de

CARL HANSER VERLAG. Dirk Ammelburger XML. Grundlagen der Sprache und Anwendungen in der Praxis 3-446-22562-5. www.hanser.de CARL HANSER VERLAG Dirk Ammelburger XML Grundlagen der Sprache und Anwendungen in der Praxis 3-446-22562-5 www.hanser.de 1 1.1 Einleitung... 2 Über dieses Buch... 3 1.2 Für wen ist das Buch gedacht?...

Mehr

XML exemplarisch. nach: André Bergholz, Extending Your Markup: An XML Tutorial IEEE Internet Computing, Jul./Aug. 2000, 74 79

XML exemplarisch. nach: André Bergholz, Extending Your Markup: An XML Tutorial IEEE Internet Computing, Jul./Aug. 2000, 74 79 XML exemplarisch nach: André Bergholz, Extending Your Markup: An XML Tutorial IEEE Internet Computing, Jul./Aug. 2000, 74 79 Wohlgeformte XML-Dokumente bestehen aus Prolog genau einem Element Beispiel-Prolog.

Mehr

X-Technologien. XML and Friends. Jörn Clausen joern@techfak.uni-bielefeld.de. 9. Juli 2001

X-Technologien. XML and Friends. Jörn Clausen joern@techfak.uni-bielefeld.de. 9. Juli 2001 X-Technologien XML and Friends 9. Juli 2001 Jörn Clausen joern@techfak.uni-bielefeld.de Übersicht XML SAX DOM XSL XPath XSLT XSL FO Extensible Markup Language Simple API for XML Document Object Model Extensible

Mehr

Softwaretechnik 2 - XML -

Softwaretechnik 2 - XML - Softwaretechnik 2 - XML - Wirtschaftsinformatik 20.07.10 Thomas Perschke Inhalt XML Überblick: Java-API für XML JAXP Heute: SAX Ausblick: DOM Beispielszenario XSL Was ist XML? XML (Extensible Markup Language)

Mehr

Praktikum zur Veranstaltung XML-Technologie: Übung 09

Praktikum zur Veranstaltung XML-Technologie: Übung 09 Fachhochschule Wiesbaden - Fachbereich Informatik Praktikum zur Veranstaltung XML-Technologie: Übung 09 XSLT Eine HTML-Tabelle 06.01.2005 (c) 2004 H. Werntges, FB Informatik, FH Wiesbaden 1 Organisatorisches

Mehr