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

Save this PDF as:
 WORD  PNG  TXT  JPG

Größe: px
Ab Seite anzeigen:

Download "XSL. extensible Stylesheet Language. Die Stylesheet Sprache für XML"

Transkript

1 XSL extensible Stylesheet Language Die Stylesheet Sprache für XML

2

3 XSL ist ein World Wide Web Standard XSL ist ein vom World Wide Web Consortium empfohlener Standard W3C Recommendation von XSLT2.0 und XPath2.0 Januar 2007 W3C Proposed Recommendation der gesamten XSL, inklusive XSL Formatting Objects August 2001

4 CSS XSL W3C hat mit der Festlegung des XSL Standards begonnen, bevor derjenige von CSS festgelegt war. Wozu gibt es zwei Style Sheet Sprachen? CSS XSL Verwendung mit HTML? ja nein Verwendung mit XML? ja ja Transformations-Sprache? nein ja Syntax CSS XML

5 CSS - Style Sheet für HTML-Files HTML benutzt vordefinierte (und darum allgemein bekannte) Tags: <h1> Titel-Element <p> neuer Abschnitt,... Im CSS wird definiert, wie die verschiedenen Elemente darzustellen sind (Fonts, Farben,...) h1 { font-family: sans-serif; font-size: 48pt } p { font-size: 8pt; color: blue }

6 XSL Style Sheet für XML XML benutzt keine vordefinierten Tags: <table> kann eine HTML Tabelle oder auch ein Möbelstück sein. Im XML-Dokument steht nicht, wie die Daten dargestellt werden sollen. Es braucht einen Mechanismus, welcher beschreibt, wie die Daten eines XML-Dokumentes dargestellt werden sollen. XSL bietet diesen Mechanismus

7 XSL erzeugt beliebige Formate PDF (XSL-FO) XML TeX PostScript (XSL-FO) XML (Daten) Word XML (X)HTML C++ Java

8 XSL: Drei Teile / Drei Sprachen Drei Teile eine Methode, um XML Dokumente zu transformieren, eine Methode, um XML Teile und Patterns zu adressieren eine Methode, um XML Dokumente zu formatieren Drei Sprachen XSLT, die Sprache um XML umzuwandeln XPath, die Sprache zum Adressieren und Selektieren von XML-Knoten XSL Formatting Objects (XSL FO), die Sprache um formatierte Ausgabe zu beschreiben.

9 XSLT XSL Transformations

10 XSL Transformations XSLT ist der wichtigste Teil des XSL Standard. XSLT wird benutzt, um XML Dokumente in andere (XML, HTML,...) Dokumente umzuformen. XSLT kann auch neue (nicht im XML-Dokument enthaltene) Daten-Elemente in das Ausgabe- Dokument einfügen (zum Beispiel Formatier- Befehle), Elemente umsortieren oder weglassen. XSLT kann die XML-Knoten (zum Beispiel auch abhängig vom Wert des Elementes) verschieden behandeln (formatieren).

11 Wie funktioniert XSLT? XSL (Templates) XML (Daten) Ausgabe Dokument

12 Wie funktioniert XSLT? XSLT benutzt im Transformations-Prozess die Sprache XPath, um die zu einem Template passenden Knoten herauszufiltern. Sobald im XML-Dokument ein passender Knoten (match) gefunden wird, formt XSLT diesen Knoten mit Hilfe der angegebenen Regeln (Template) um, und schreibt das Resultat ins Ausgabe-Dokument. Alle Text-Knoten des XML-Dokumentes, welche nicht zu einer Regel (einem Template) passen, werden unmodifiziert in das Ausgabe-Dokument kopiert.

13 Das Beispiel Dokument: People.xml <?xml version="1.0"?> <people> <person> <name> <firstname>alan</firstname> <lastname>turing</lastname> </name> <born date="1912" addressref="gbl"/> <died date="1954" addressref="gbc"/> <profession>computer scientist</profession> <profession>mathematician</profession> <profession>cryptographer</profession> <hobby>philosophy</hobby> <hobby>biology</hobby> </person>...

14 XML Dokument mit Stylesheet Verbinden <?xml version="1.0"?> <?xml-stylesheet type="text/xsl" href=" <people> <person> <name> <firstname >Alan</firstName> <lastname>turing</lastname> </name>...

15 xsl:template XSL benutzt Templates (Regeln), um zu bestimmen, wie die XML-Knoten umgeformt werden sollen. Ein "match"-attribut wird benutzt, um ein Knoten einem Template zuzuordnen. <xsl:template match= Knoten > Action </xsl:template>

16 XSL: "hello world" <?xml version="1.0" encoding="utf-8"?> <xsl:stylesheet version="2.0" xmlns:xsl=" <xsl:output method="text" encoding="utf-8"/> <xsl:template match="people"> hello world </xsl:template> </xsl:stylesheet> hello world

17 XSL: "hello world" <?xml version="1.0" encoding="utf-8"?> <xsl:stylesheet version="1.0" xmlns:xsl=" <xsl:output method="text"/> <xsl:template match="people"> hello world </xsl:template> <xsl:template match="person"> I am here </xsl:template> </xsl:stylesheet> hello world

18 XSL: "hello world" <?xml version="1.0" encoding="utf-8"?> <xsl:stylesheet version="1.0" xmlns:xsl=" <xsl:output method="text"/> <xsl:template match="person"> I am here </xsl:template> </xsl:stylesheet> I am here I am here I am here I am here Great Britain London Germany Ulm USA Queens, NY Switzerland Basel Great Britain Cambridge USA Princeton

19 Die wichtigsten xsl Befehle <xsl:... >

20 xsl:apply-templates Der Befehl xsl:apply-templates sucht im XML den angegebene Pfad, eine Regel dazu und führt diese aus. Welches Kind als nächstes behandelt werden soll, kann explizit ausgewählt werden durch ein select-attribut <xsl:apply-templates select="person"/> Der Befehl <xsl:apply-templates/> sucht alle Kind (-Elemente) des aktuellen Knotens und führt deren Templates aus.

21 xsl:apply-templates <?xml version="1.0" encoding="utf-8"?> <xsl:stylesheet version="1.0" xmlns:xsl=" <xsl:output method="text"/> <xsl:template match="people"> <xsl:apply-templates select="person"/> </xsl:template> <xsl:template match="person"> I am here </xsl:template> </xsl:stylesheet> I am here I am here I am here I am here

22 xsl:call-template <?xml version="1.0" encoding="utf-8"?> <xsl:stylesheet version="1.0 xmlns:xsl=" <xsl:template match="people"> <xsl:call-template name="templ1"/> </xsl:template> <xsl:template name=" templ1"> <xsl:apply-templates select="person"/> </xsl:template> <xsl:template match="person">i am here</xsl:template> </xsl:stylesheet> I am here I am here I am here I am here

23 xsl:for-each Das gleiche Resultat erhalten wir durch <xsl:template match="people"> <xsl:for-each select="person"> I am here </xsl:for-each> </xsl:template> I am here I am here I am here I am here

24 xsl:value-of Das XSL <xsl:value-of> Element kann benutzt werden, um den Wert bestimmter Knoten auszugeben. Beispiele: <xsl:value-of select="lastname"/> <xsl:value-of select="firstname"/> <xsl:value-of select="hobby" separator=", " />

25 <xsl:template match="people"> <html> <head><title> Famous Scientists</title></head> <body> <h4> Famous Scientists</h4> <xsl:apply-templates select="person"/> </body> </html> </xsl:template> <xsl:template match="person"> <p/> <xsl:apply-templates select="name"/> </xsl:template> <xsl:template match="name"> <xsl:value-of select="lastname"/> <xsl:text> </xsl:text> <xsl:value-of select="firstname"/> </xsl:template>

26 Adressieren von Attributen <xsl:template match="person"> <b><xsl:apply-templates select="name"/></b> <xsl:text> </xsl:text> <small> ( <xsl:value-of - <xsl: value-of </small> <p/> </xsl:template>

27 Templates mit Modes Es ist möglich, für dieselben Knoten mehrere, verschiedene Templates zu definieren, die dann kontextabhängig angewandt werden. Der Aufruf des Templates sowie das Template selber erhalten ein mode Attribute. Damit können zum Beispiel Inhaltsverzeichnisse, Querverweise oder verschiedene Darstellungen der gleichen Datenelemente erzeugt werden.

28 <xsl:template match="people"> <html> <body> <h4>table of Contents</h4> <ul><xsl:apply-templates select="person" mode="toc"/></ul> <xsl:apply-templates select="person"/> </body></html> </xsl:template> <xsl:template match="person" mode="toc"> <li/><xsl:value-of select="name/lastname"/> </xsl:template> <xsl:template match="person"> <p> <b><xsl:apply-templates select="name"/></b> <small> (<xsl:value-of - <xsl:value-of </p> </xsl:template>

29 Templates mit Modes Der erste Durchgang wird durch <xsl:template match="person" mode="toc"> gebildet, der zweite durch <xsl:template match="person">

30 xsl:if Mit Hilfe einer if-anweisung können Knoten unterschiedlich behandelt werden <xsl:if test="name/lastname = 'Euler' "> <xsl:if > 1900 "> <xsl:template match="person"> <xsl:if > 1900 "> <xsl:apply-templates select="name"/> </xsl:if> </xsl:template>

31 XSL Test Operation Die Bedingungen können mit and oder or verbunden werden. <xsl:template match="person"> <xsl:if > 1850 and name/firstname!= 'Alan' "> <xsl:apply-templates select="name"/> </xsl:if> </xsl:template> Richard Feynman Albert Einstein

32 xsl:choose Es gibt in XSL kein if-else Konstrukt. Anstatt eines ifelse gibt es ein xsl:choose. Verzweigungen werden aus xsl:when und xsl:otherwise zusammengesetzt. <xsl:choose> <xsl:when test="...">... </xsl:when> <xsl:otherwise>... </xsl:otherwise> </xsl:choose>

33 XSL Auswahl Operation <xsl:template match="person"> <xsl:choose> <xsl:when test="profession='mathematician' "> <font color="blue"> <xsl:apply-templates select="hobby"/> </font> </xsl:when> <xsl:otherwise> <xsl:apply-templates select="hobby"/> </xsl:otherwise> </xsl:choose> </xsl:template>

34 xsl:sort Um eine Sequenz von Knoten während der Transformation (nach einem gewählten Schlüssel) zu sortieren, gibt es das sort Element: <xsl:sort select="name/lastname"/> xsl:sort kann entweder innerhalb eines <xsl:applytemplates> oder eines <xsl:for-each> Elements vorkommen. Das select-attribut gibt an, nach welchem Schlüssel sortiert werden soll.

35 XSL Sortier Operation <xsl:sort> als Kind von <xsl:apply-templates>: <xsl:apply-templates select="person"> <xsl:sort select="name/lastname" order="ascending"/> </xsl:apply-templates>

36 xsl:variable In XSL können auch Konstanten definiert werden: <xsl:variable name="ntext"> value_of_variable </xsl:variable> Der Wert der Konstanten ntext kann mit $ntext gelesen werden: <xsl:value-of select="$ntext"/> Der Wert von ntext kann nicht verändert werden!

37 xsl:variable Berechnen einer gewichteten Summe <xsl:variable name="tmp"> <tmpprice> <xsl:for-each select="book"> <item> <xsl:value-of select="price * quantity"/> </item> </xsl:for-each> </tmpprice> </xsl:variable> <xsl:value-of select="sum($tmp/tmpprice/item)"/>

38 xsl:param Beim Aufruf von Templates können Parameter übergeben werden <xsl:apply-templates select="title"> <xsl:with-param name="p1"> <xsl:value-of select="irgendein Wert"/> </xsl:with-param> </xsl:apply-templates> Verwendung im Template: <xsl:template match="title"> <xsl:param name="p1"/>... verwenden von $p1... </xsl:template>

39 xsl:for-each-group <xsl:template match="people"> <xsl:for-each-group select="address" group-by="country"> <xsl:value-of select="country"/>: <xsl:value-of select="current-group()/city" separator=", "/> <br/> </xsl:for-each-group> </xsl:template>

40 xsl:include / xsl:import <xsl:import href= "URI" > und <xsl:include href= "URI" > fügen das unter der angegebenen Adresse gefundene Stylesheet ein. <xsl:include href="ss.xsl"/> <xsl:include href="

41 Default Template Regeln Was geschieht mit den Knoten, wenn es im Stylesheet dafür kein Template gibt?

42 Text- und Attribut-Knoten Von Text- und Attribut-Knoten wird der Wert des Textes (des Attributes) in das Ausgabe-Dokument kopiert. Als XSL-Template sieht dies wie folgt aus: <xsl:template match= " "> <xsl:value-of select="."/> </xsl:template>

43 Root- und Element-Knoten Vom Root- und von allen Element-Knoten werden per Default die Template-Regeln aller Kindknoten aufgerufen. Als XSL-Template sieht dies wie folgt aus: <xsl:template match= " / * "> <xsl:apply-templates/> </xsl:template>

44 Kommentare / Verarbeitungsanweisung Kommentare und Processing Instructions werden per Default ignoriert. Als XSL-Template sieht dies wie folgt aus: <xsl:template match= "processing-instructions() comment()" /> Es gibt keine Adressierung (keinen XPath Ausdruck) für Namespace-Knoten.

45 Template Driven vs. Data Driven

46 Schwach strukturierte XML Dokumente Reports, Briefe, Webseiten,... <?xml version='1.0'?> <book-review> <title>this Book</title> by <author>this Author</author>, by <publisher>the Publisher</publisher> on <date>date</date>, indeed a good book. However, the book titled <title>book</title> by the same publisher is very bad. The reviewer... </book-review>

47 Data-Driven Template <xsl:stylesheet version="1.0" xmlns:xsl=" <xsl:template match="/"> <html><body> <xsl:apply-templates/> </body></html> </xsl:template> <xsl:template match="book-review"> <p> <xsl:apply-templates/> </p> </xsl:template>...

48

49 XPath

50 Adressierung Die Templates im Stylesheet können nur dann richtig (an der richtigen Stelle) angewandt werden, wenn die Adressierung (match) korrekt ist. XSL muss beliebige Knoten des XML-Dokumentes adressieren (identifizieren) können. Dafür benutzt XSL die Sprache XPath.

51 XPath Beispiele name alle <name> Kinder des aktuellen Knotens name/firstname alle <firstname> Kinder aller <name> Kinder des aktuellen Knotens / der Root Knoten des Dokumentes. der aktuelle Knoten.. der Vorgänger (Parent) des aktuellen Knotens //name alle <name> Elemente des Dokumentes.//name alle <name> Nachfolger (direkt und indirekt) des aktuellen Knotens

52 XPath Syntax Die XPath-Syntax sieht ähnlich aus wie die übliche Filesystem-Adressierung. Das Pattern matching ist abhängig vom Kontext: Ein XPath Ausdruck kann verschiedene Knoten bezeichnen, abhängig von der Stelle im Dokument, in welchem er steht. XPath findet alle passenden Knoten. Sollen nur gewisse Knoten aus dem Pfad selektiert werden, kann der Pfad (durch Prädikate) eingeschränkt werden.

53 XPath Syntax Ein XPath ist absolut, falls er mit einem Slash (" / ") anfängt: /person Ein Pfad ist zusammengesetzt auf einer Reihe von Schritten, welche durch "/" getrennt sind: people/person/born Attribute werden durch markiert. Pfade können kombiniert werden durch " " (Auswahl) name/firstname profession hobby

54 XPath: Wildcards Pfade können Wildcards enthalten: und node(). * selektiert alle selektiert alle Attribute node() selektiert alle Knoten Beispiele //* alle Elemente im Dokument /* alle Kinder von Root str/*/title alle <title> Enkel von str alle Attribute mit Namen id

55 XPath Prädikate XPath kann auch filtern. Dazu wird im select-attribut zum Pfad ein Prädikat mit angegeben <xsl:apply-templates select="person [name/firstname!= 'Alan' ]"/> Mögliche Filter-Operatoren sind: = gleich!= ungleich < kleiner als > grösser als

56 XPath Beispiele: Prädikate = 'gbc' ] alle <born> Kinder, welche ein addressref Attribut mit Wert "gbc" haben ] alle <died> Kinder, welche ein addressref Attribut haben person > 1900 ]/name alle Namen von Personen, welche später als 1900 geboren sind name[last()] das letzte <name> Kind des aktuellen Knotens

57 XPath Schritte Jeder Schritt im Pfad ist ein Bezeichner, ein Wildcard oder ein Prädikat. <xsl:template match="person"> <xsl:apply-templates </xsl:template> <xsl:template match="born died"> <xsl:value-of select="../*/lastname"/>, <xsl:value-of select="name(.) "/>: <xsl:value-of <xsl:variable name="var" <xsl:apply-templates </xsl:template>

58 Weitere Beispiele //name/* alle Kinder von name alle Kinder von name, die ein Attribut haben //name/*[*] alle Kinder von name, welche keine Blätter sind alle Elemente, die ein Attribut haben alle name Kinder von person Elementen, die ein Kind mit einem id Attribut haben alle Kinder von Elementen, die ein Attribut haben

59 XPath Adressierung-Achsen Es gibt für viele XPath-Adressen zwei Schreibweisen: die ausführliche und die abgekürzte. Bisher haben wir immer die abgekürzte Schreibweise benutzt. Abkürzung für: child parent.. self. descendant-or-self // (default)

60 Adressierungs-Achsen ancestor-or-self preceding ancestor following parent followingsibling precedingsibling self child descendant descendant-or-self

61 XPath: child, self, parent Child ist die Default-Richtung im Pfad. child:: kann immer weggelassen werden: /child::people/child::person/child::profession = /people/person/profession Statt self::* wird üblicherweise die abgekürzte Schreibweise (. ) benutzt: parent::* findet den (direkten) Vorgänger eines Knotens und kann abgekürzt werden durch..

62 XPath Funktionen

63 Die wichtigsten XPath Funktionen Konvertierungsfunktionen boolean( obj ) number( obj ) string( obj ) Negierung boolean not (value)

64 String Funktionen concat(), substring(), contains(), Konkatenation, Substring bilden, Substring-Test number string-length(string) boolean matches (string, pattern) true, falls der gegebene String das Pattern erfüllt. string replace (s1, pattern, s2) im String s1 werden alle Teile, welche das Pattern erfüllen, durch s2 ersetzt

65 Numerische Funktionen abs(), avg(), max(), min() Absolutwert, Durchschnitt, Maximum, Minimum round(), floor(), ceiling() Runden, Abrunden, Aufrunden Grundoperationen +, -, *, mod, div

66 Numerische Funktionen (2) <xsl:value-of select="sum(//number)"/> die Summe der Werte, welche in allen <number>-knoten vorkommen. <xsl:value-of select="sum(//book/quantity)"/> berechnet die Anzahl vorhandene Bücher format-number( , '#.0') ergibt den Wert -50.9

67 Funktionen auf Sequenzen person[3], person[last()] filtert die dritte (letzte) Person heraus position() gibt die Position des Knotens im Kontext zurück. count() zählt die Anzahl Knoten der Knoten-Menge set. count(//person) ergibt 4, count(//address) ergibt 6

68 Funktionen auf Sequenzen (2) boolean empty(items) ergibt true, falls items eine leere sequenz remove(), insert-before(), reverse(), subsequence(), Funktionen auf Sequenzen zum Löschen, Einfügen, Umdrehen und Zerteilen der Sequenzen.

69 Datum und Zeit current-date(), current-time() aktuelle Zeit, aktuelles Datum format-date(date, picturestring) Beispiel: format-date(current-date(), ' [D]-[M]-[Y] ')

70 For-Ausdrücke for $x in E1 return result evaluiert result für jedes Element der Sequenz E1 sum(for $x in book return $x/price * $x/quantity) summiert die price * quantity Werte aller order Elemente

71 Einlesen von XML-Dokumenten Die Funktion document($srcval ) lädt das an der Adresse (URI) srcval gefundene Dokument. Durch Definition einer Variable input kann so auf die Elemente des Files Daten.xml zugegriffen werden. <xsl:variable name="input" select="document('daten.xml')/person"/>

72 xsl:key, key() Durch xsl:key kann eine Indexierung (Schlüssel) von Elementen angelegt werden. von name-elementen: <xsl:key name="mykey1" match="name" Alle Anfangsbuchstaben von hobby-elementen: <xsl:key name="mykey2" match="hobby" use="substring(.,1,1)"/>

73 xsl:key, key() Die XPath Funktion key() gibt dann die entsprechenden Elemente zurück. <xsl:apply-templates select="key('mykey1','1912')"/> gibt alle name-knoten mit Geburtstjahr 1912 zurück. <xsl:apply-templates select="key('mykey2','p')"/> gibt alle hobby-knoten mit Anfangsbuchstabe "p" zurück.

74 People Beispiel: address ID auflösen Schlüssel definieren <xsl:key name="addrkey" match="address" Schlüssel benutzen <xsl:template match="person"> <xsl:apply-templates select="key('addrkey', </xsl:template>

75 xsl:function <xsl:stylesheet "version="2.0" xmlns:xsl=" xmlns:cs=" xmlns:xs=' <!-- function definition --> <xsl:function name="cs:substring"> <xsl:param name="str" as="xs:string"/> <xsl:param name="n" as="xs:integer"/> <xsl:sequenceselect= "if( string-length($str) >=$n ) then substring($str,1,$n) else error() "/> </xsl:function>

76 Exkurs: XQuery

77 Übungen

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 XSL Umformen von XML Dokumenten in andere XML Dokumente HTML Dokumente beliebige andere Formate (TEX, Java, ) Ausgeben von XML Daten auf

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

Transformation von XML-Dokumenten. IDE SummerSchool 2013, Chemnitz

Transformation von XML-Dokumenten. IDE SummerSchool 2013, Chemnitz Transformation von XML-Dokumenten Folie 1 Was ist XSL politisch? XSL ist eine eigene Technik. Zum Publizieren (Transformieren) von Dokumenten. Früher gab es dafür Verlage und Schriftsetzer, um gute Inhalte

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

XML. extensible Markup Language. Dr. Beatrice Amrhein.

XML. extensible Markup Language. Dr. Beatrice Amrhein. XML extensible Markup Language www.w3.org/xml Dr. Beatrice Amrhein 2 Inhaltsverzeichnis 1 XML Grundlagen...5 1.1 Die wichtigsten Punkte...5 1.2 XML Sprachen und Anwendungen...7 1.3 Der Aufbau eines XML

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

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

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

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

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

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

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

Verwaltungsaufgaben lösen mit XML und L A T E X

Verwaltungsaufgaben lösen mit XML und L A T E X Verwaltungsaufgaben lösen mit XML und L A T E X Uwe Siart T E X-Stammtisch München tutorien@siart.de Erstellt: 11. März 2003 Zuletzt geändert: 7. November 2008 Beispiele für Verwaltungsaufgaben 1 Listen

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

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

Templat-Regeln: XSLT Transformation: XML-Dokumente als Bäume: sieben Arten von Knoten. XSLT Verarbeitungsmodell für Templat-Regeln.

Templat-Regeln: XSLT Transformation: XML-Dokumente als Bäume: sieben Arten von Knoten. XSLT Verarbeitungsmodell für Templat-Regeln. XSLT Transformation: Templat-Regeln: XSLT Stylesheets: ausgedrückt in einem wohlgeformten XML-Dokument Muster zum Abgleich gegen Knoten im Ursprungsbaum Templat, dessen Körper instantiiert wird, liefert

Mehr

http://www.therealgang.de/ Titel : Einführung in XML (Teil 2/2) Author : Dr. Pascal Rheinert Kategorie : Programmierung-Sonstige Teil II: XML (Dokument 2/2) Wichtiger Hinweis: Das folgende Dokument basiert

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

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

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

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 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 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

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

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

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

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-Verarbeitung. XPath XSL die extensible Stylesheet Language. Torsten Schaßan SCRIPTO Modul 4: EDV Wolfenbüttel 25.-29.6.2012.

XML-Verarbeitung. XPath XSL die extensible Stylesheet Language. Torsten Schaßan SCRIPTO Modul 4: EDV Wolfenbüttel 25.-29.6.2012. XML-Verarbeitung XPath XSL die extensible Stylesheet Language Folie 1 Was ist XSL? - Mehrere Komponenten: - XSLT Transformations - XSL-FO Formatting Objects - XPath - (XML-Schema) - Ausgabeformate: - XML,

Mehr

XML and Semantic Web Technologies

XML and Semantic Web Technologies XML and Semantic Web Technologies Prof. Dr. Dr. L. Schmidt-Thieme MSc. André Busche Übung 7 1. Aufgabe 2. Aufgabe 3. vorletzte Saalübung 23.06.09 2/ Aufgabe 1a) Zeigen Sie Gemeinsamkeiten und Unterschiede

Mehr

Referat 11: Einführung in XPath

Referat 11: Einführung in XPath Referat 11: Einführung in XPath DARIAH-DE Tutorial Digitale Textedition mit TEI Redaktion: Christof Schöch (Univ. Würzburg) Version 1.0, 02/2014 Grundlage der Folien: DH@Oxford 2012 Lizenz: Creative Commons

Mehr

XSLT 2011/2012 S Seite 1 h_da W

XSLT 2011/2012 S Seite 1 h_da W XSLT Seite 1 Inhalt Einleitung XSLT Arbeitsweise von XSLT Template-Anweisungen XSLT Syntax Beispiele Seite 2 XSLT - Allgemeines XSLT = Extensible Stylesheet Language for Transformation Umformung von XML

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

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

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

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

06 Formatierungssprachen, XSL. Manuel Burghardt Lehrstuhl für Medieninformatik

06 Formatierungssprachen, XSL. Manuel Burghardt Lehrstuhl für Medieninformatik Markupsprachen 06 Formatierungssprachen, XSL Manuel Burghardt Wiederholung XML Namensräume werden benutzt, um in einem einzelnen Dokument mehrere XML Sprachen zu mischen (Ähnliche Funktionsweise wie Vorwahlen

Mehr

XSLT 2016 S h_da S Seite 1

XSLT 2016 S h_da S Seite 1 XSLT Seite 1 Inhalt Einleitung XSLT Arbeitsweise von XSLT Template-Anweisungen XSLT Syntax Beispiele Seite 2 XSLT - Allgemeines XSLT = Extensible Stylesheet Language for Transformation Umformung von XML

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

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

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

Datenbanksysteme. XML und Datenbanken. Burkhardt Renz. Sommersemester 2015. Fachbereich MNI Technische Hochschule Mittelhessen Fachbereich MNI Technische Hochschule Mittelhessen Sommersemester 2015 Übersicht Semistrukturierte Daten Dokumenttypdefinition XML-Schema XML aus Datenbank konstruieren XML in Datenbank speichern Merkmale

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

Präsentation von XML-Dokumenten mit Hilfe von Stylesheets

Präsentation von XML-Dokumenten mit Hilfe von Stylesheets Präsentation von XML-Dokumenten mit Hilfe von Stylesheets 02.05.2006 Kevin Adrian Sandra Aufenberg Peter Henschel Igor Ionov Eva Lai Stylesheets - Definition beschreiben, wie Dokumente angezeigt werden

Mehr

XSLT Muster und Lösungen

XSLT Muster und Lösungen XSLT Muster und Lösungen Thomas Bayer Tobias Kieninger Özgür Kipik bayer@oio.de Orientation in Objects GmbH Weinheimer Str. 68 68309 Mannheim www.oio.de Inhalt Einleitung XSL & XSLT XPath XML Pattern XSLT

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

Duale Zustellung. Standardprofile. Version 1.0.0, 14.08.2007. DI Arne Tauber arne.tauber@egiz.gv.at

Duale Zustellung. Standardprofile. Version 1.0.0, 14.08.2007. DI Arne Tauber arne.tauber@egiz.gv.at www.egiz.gv.at E-Mail: post@egiz.gv.at Telefon: ++43 (316) 873 5514 Fax: ++43 (316) 873 5520 Inffeldgasse 16a / 8010 Graz / Austria Duale Zustellung Version 1.0.0, 14.08.2007 DI Arne Tauber arne.tauber@egiz.gv.at

Mehr

UnivIS ein Informationssystem für Hochschulen

UnivIS ein Informationssystem für Hochschulen UnivIS ein Informationssystem für Hochschulen Christian Wawersich Config Informationstechnik eg Lederhosenstr. 30 D-91341 Röttenbach, Germany wawersich@informatik.uni-erlangen.de http://www.config.de/

Mehr

XSL. XSLT und XSL- FO. < Extensible Stylesheet Language /> TransformaLon und PräsentaLon von Metasprachen. Jan Balke und Sven Marquart 1

XSL. XSLT und XSL- FO. < Extensible Stylesheet Language /> TransformaLon und PräsentaLon von Metasprachen. Jan Balke und Sven Marquart 1 XSL < Extensible Stylesheet Language /> XSLT und XSL- FO TransformaLon und PräsentaLon von Metasprachen Jan alke und Sven Marquart 1 Der zweite Teil Wiederholung Kopieren Wahlmöglichkeiten Schleifen Inhalte

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

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

XML 1. Einführung, oxygen. Ulrike Henny. ulrike.henny@uni-koeln.de. IDE Summer School 2013, Chemnitz

XML 1. Einführung, oxygen. Ulrike Henny. ulrike.henny@uni-koeln.de. IDE Summer School 2013, Chemnitz XML 1 Einführung, oxygen Ulrike Henny ulrike.henny@uni-koeln.de XML extensible Markup Language Was ist XML? XML-Grundlagen XML-Editoren, oxygen HTML + CSS XPath Übungen Literatur Folie 2 Was ist XML? extensible

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

XPath Lokalisierspfade Achsen in Lokalisierungsschritten

XPath Lokalisierspfade Achsen in Lokalisierungsschritten Achsen in Lokalisierungsschritten self-achse Kontextknoten selbst child-achse Kindknoten des Kontextknotens in Dokumentreihenfolge parent-achse Elterknoten des Kontextknotens attribute-achse Attributknoten

Mehr

XML Path Language (XPath)

XML Path Language (XPath) XML Path Language (XPath) Erik Wilde ETH Zürich http://dret.net/netdret/ Abstract Die XML Path Language (XPath) ist nicht nur die Grundlage für viele aktuelle XML-Technologien (XSLT, XML Schema, XQuery),

Mehr

Komplexe Transformationen mit XSLT

Komplexe Transformationen mit XSLT XML-Praxis Komplexe Transformationen mit XSLT Jörn Clausen joern@techfak.uni-bielefeld.de 1 Übersicht Sortieren XML erzeugen und weiterverarbeiten modes Daten aus mehreren XML-Dokumenten lesen 2 sorting

Mehr

Verarbeitung von XML-Daten XSLT & XPath. Heiko Paoli (FZI)

Verarbeitung von XML-Daten XSLT & XPath. Heiko Paoli (FZI) Verarbeitung von XML-Daten XSLT & XPath Heiko Paoli (FZI) XML aus der DB: Und was nun? HTML Script-basierte XML Erzeugung Servlet/JSP Frameworks (XSQL, Cocoon) WML Datenbank +XML XML-Datenbank XML??? XML

Mehr

Übersicht. Web (Site) Engineering (WebSE) Java-Applets II. Java-Applets. Client-basierte Techniken Applets

Übersicht. Web (Site) Engineering (WebSE) Java-Applets II. Java-Applets. Client-basierte Techniken Applets Übersicht Web (Site) Engineering (WebSE) Vorlesung 6: Dynamisierungstechniken für Client und Server B. Schiemann, P. Reiß Lehrstuhl für Informatik 8 Universität Erlangen-Nürnberg 20. 11. 2007 XSL-Verarbeitung

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

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 2015/2016 S Seite 1 h_da W

XSLT 2015/2016 S Seite 1 h_da W XSLT Seite 1 XSL / XSLT xsltransformation ::= stylesheet stylesheet ::= template* template pattern ::= pattern, content_constructor ::= patternpath Content_constructor ::= literal_result_element instruction

Mehr

Klaus Schild, XML Clearinghouse 2003. Transformation von XML-Dokumenten

Klaus Schild, XML Clearinghouse 2003. Transformation von XML-Dokumenten Transformation von XML-Dokumenten Lernziele Warum kann es sinnvoll sein XML-Dokumente zu transformieren? Wie funktioniert XSLT (Extensible Stylesheet Language Transformations)? Was ist XPath? Was sind

Mehr

Einführung in XML Einführung in XML. Erik Wilde Institut für Technische Informatik und Kommunikationsnetze (TIK) ETH Zürich

Einführung in XML Einführung in XML. Erik Wilde Institut für Technische Informatik und Kommunikationsnetze (TIK) ETH Zürich Einführung in XML Erik Wilde Institut für Technische Informatik und Kommunikationsnetze (TIK) ETH Zürich http://dret.net/netdret/publications#unizh04a 16.8.04 Erik Wilde 1 Ziel XML als Format für strukturierte

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

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

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

XSLT. XSLT - Eine Einführung Wintersemester 2002/2003. Universität Bielefeld - Technische Fakultät. Jan Reinkensmeier, Heiko Neuweger

XSLT. XSLT - Eine Einführung Wintersemester 2002/2003. Universität Bielefeld - Technische Fakultät. Jan Reinkensmeier, Heiko Neuweger XSLT Jan Reinkensmeier, Heiko Neuweger 10.05.2003 Schriftliche Ausarbeitung zum Seminarvortrag XSLT - Eine Einführung Wintersemester 2002/2003 Universität Bielefeld - Technische Fakultät 1 Inhaltsverzeichnis

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

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

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

Texttransformation mit XSLT

Texttransformation mit XSLT Texttransformation mit XSLT Ulrike Henny, ulrike.henny@uni-wuerzburg.de 8. September 2016 Zentrum für Informationsmodellierung Austrian Centre for Digital Humanities Elisabethstraße 59/III, SR 81.31 1

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-QL. Querysprachen für XML. Semistrukturierte Datenmodell und XML Datenmodell. Beispiel

XML-QL. Querysprachen für XML. Semistrukturierte Datenmodell und XML Datenmodell. Beispiel XML-QL Querysprachen für XML Zusätzliche Quellen: http://www.w3.org/tr/xquery/ http://www.w3schools.com/xquery/ XML-QL ist eine Querysprache für XML mit folgenden Eigenschaften: Kombiniert die XML-Syntax

Mehr

XPath XML Path Language

XPath XML Path Language XPath XML Path Language Holger Jakobs bibjah@bg.bib.de, holger@jakobs.com 2006-08-17 aktuelle Version: http://www.bg.bib.de/portale/xml/pdf/xml-xpath.pdf Inhaltsverzeichnis 1 Baumentsprechung des XML-Dokuments

Mehr

XSLT extensible Stylesheet Language Transformation

XSLT extensible Stylesheet Language Transformation XSLT extensible Stylesheet Language Transformation Seite 1 Inhaltsverzeichnis 1. Was ist XSLT 3 1.1. Vorteile von XSLT 3 1.2 Anwendungen von XSL 3 2. Ablauf einer XSLT Transformation 4 2.1. Xalan und Xerces

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 XQuery Ziele der Sitzung Nach dieser Sitzung sollten Sie: XQuery als wesentlichen Standard zur Abfrage von in XML kodierten Daten kennen Mit Hilfe

Mehr

XPath & XQuery Standardisierte Abfragesprachen für XML-Dokumente. Sebastian Apel

XPath & XQuery Standardisierte Abfragesprachen für XML-Dokumente. Sebastian Apel XPath & XQuery Standardisierte Abfragesprachen für XML-Dokumente Sebastian Apel Inhalt Die Geschichte XPath 1.0 Das Datenmodell Pfadausdrücke Anwendung von XPath XPath 2.0 & XQuery Neues in XPath 2.0 Wozu

Mehr

Semistrukturierte Daten

Semistrukturierte Daten Semistrukturierte Daten Teil 7: XPath 1.0 Sommersemester 2007 7.1. Einführung 7.2. XPath Ausdrücke (expressions) 7.3. Pfadangaben (location paths) 7.4. Operatoren 7.5. Vordefinierte Funktionen 4.1. Einführung

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

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

XML XPath XSLT. Wiederholung und Auffrischung. Ulrike Henny und Patrick Sahle. IDE Autumn School 2012, Chemnitz

XML XPath XSLT. Wiederholung und Auffrischung. Ulrike Henny und Patrick Sahle. IDE Autumn School 2012, Chemnitz XML XPath XSLT Wiederholung und Auffrischung Ulrike Henny und Patrick Sahle XML, Wiederholung Werkzeuge? oxygen Folie 2 Folie 3 XML-Wiederholung XML Wissen codieren: Grundprinzipien, Baumstruktur, syntaktische

Mehr

XML-Scripting mit XSLT für SysAdmins

XML-Scripting mit XSLT für SysAdmins XML-Scripting mit XSLT für SysAdmins Gerd Aschemann 01.03.2002 GUUG FFG 2002, Bochum Konventionelle Konfigurationsdateien test.cno:testacc home.test.cno:testacc ServerAdmin testacc@test.cno

Mehr

CSS. Cascading Style Sheets

CSS. Cascading Style Sheets CSS Cascading Style Sheets Was ist CSS? CSS... steht für Cascading Style Sheets... definiert die Darstellung (Farben, Fonts,... ) von (HTML) Dokumenten auf Web-Seiten.... spart viel Aufwand, da Format-Regeln

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

XML Extensible Markup Language

XML Extensible Markup Language XML-Praxis XML Extensible Markup Language Jörn Clausen joern@techfak.uni-bielefeld.de Übersicht Woher? Wohin? Warum? Bestandteile von XML XML-Dokumente erstellen und bearbeiten XML-Praxis XML Extensible

Mehr

Prof. Dr. Martin Leischner Fachbereich Informatik XML. Prof. Dr. Martin Leischner Fachbereich Informatik. Anwendungen (SOAP,WSDL, ) Verknüpfungen XSL

Prof. Dr. Martin Leischner Fachbereich Informatik XML. Prof. Dr. Martin Leischner Fachbereich Informatik. Anwendungen (SOAP,WSDL, ) Verknüpfungen XSL XML M. Leischner E-Businesskommunikation SS 2004 Folie 1 XML Sprachfamilie Anwendungen (SOAP,WSDL, ) XLL Verknüpfungen XPOINTER XLINK XSL XSLT Layout CSS XPATH Sprache Dokumentenaustausch DTD XML Namespace

Mehr

Gruppe A PRÜFUNG AUS SEMISTRUKTURIERTE DATEN 184.705 7. 1. 2014 Kennnr. Matrikelnr. Familienname Vorname

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

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

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

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

y Extensible Stylesheet Language (XSL) y XSL Transformations (XSLT) y XML Path Language (XPath) y Zusammenfassung

y Extensible Stylesheet Language (XSL) y XSL Transformations (XSLT) y XML Path Language (XPath) y Zusammenfassung ;0/3DWK/DQJXDJH;3DWK XQG;6/7UDQVIRUPDWLRQV;6/7 (ULN:LOGH 7,.² (7+= ULFK 6RPPHUVHPHVWHU hehuvlfkw y Extensible Stylesheet Language (XSL) y XSL Transformations (XSLT) y XML Path Language (XPath) y Zusammenfassung

Mehr

XSLT (XSLT) Lernziele

XSLT (XSLT) Lernziele XSLT (XSLT) Lernziele Sie haben das Prinzip des XSLT-Transformationsprozesses verstanden. Sie sind in der Lage, ein XSLT-Stylesheet mit einem XML-Dokument zu verknüpfen. Sie sind in der Lage, Stylesheets

Mehr

Hinweise für die Nutzung von XSLTs beim PDF Export der BlueBridge Wiki Extensions

Hinweise für die Nutzung von XSLTs beim PDF Export der BlueBridge Wiki Extensions Hinweise für die Nutzung von XSLTs beim PDF Export der BlueBridge Wiki Extensions Dieses Dokument beschreibt die Einbindung von XSLTs, um die Format von PDF Exporten zu definieren. Wichtiger Hinweis: Mit

Mehr

Gruppe A PRÜFUNG AUS SEMISTRUKTURIERTE DATEN 181.135 21. 01. 2011 Kennnr. Matrikelnr. Familienname Vorname

Gruppe A PRÜFUNG AUS SEMISTRUKTURIERTE DATEN 181.135 21. 01. 2011 Kennnr. Matrikelnr. Familienname Vorname Gruppe A PRÜFUNG AUS SEMISTRUKTURIERTE DATEN 181.135 21. 01. 2011 Kennnr. Matrikelnr. Familienname Vorname Arbeitszeit: 120 Minuten. Aufgaben sind auf den Angabeblättern zu lösen; Zusatzblätter werden

Mehr

Seminar im Sommersemester 2006 Institut für Mikrosystemtechnik, niversität Siegen

Seminar im Sommersemester 2006 Institut für Mikrosystemtechnik, niversität Siegen Web 2.0 im Sommersemester 2006 Mikrosystemtechnik, niversität Siegen Seite 1 Inhalt Einführung Eine DTD erstellen Das XML-Dokument Formatierung mittels XSLT Die HTML-Ausgabe Das Document Object Model Ajax

Mehr

Gruppe A PRÜFUNG AUS SEMISTRUKTURIERTE DATEN 184.705 25. 10. 2013 Kennnr. Matrikelnr. Familienname Vorname

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

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

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

extended Markup Language (XML)

extended Markup Language (XML) Überblick über Internet-Technologien Server-Technologien Datenbankkopplung XSP Servlets JSP PHP CGI nur HTML nur HTML XML+ Dokumentsprachen Client-PGM ruft DB-Server Web-Server ruft Datenbankserver nur

Mehr