4. Kontrollstrukturen

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

Transformation von XML-Dokumenten mit XSLT

XSLT XSL Transformations

Einführung. Hallo-Welt in XSLT

XSLT XSL Transformations

Projektseminar "Texttechnologische Informationsmodellierung"

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

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

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

Seminar Dokumentenverarbeitung

XSLT, Teil 3. Udo Kelter

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

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

Extensible Stylesheet Language Transformations XSLT

XSLT IDE AUTUMN SCHOOL

Web (Site) Engineering (WebSE)

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

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

XSLT, Teil 3. Udo Kelter

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

XSL Transformation (XSLT) Teil II

XML Vorlesung FHA SS

XSLT, XPath und XQuery Marco Skulschus Marcus Wiederstein Sarah Winterstone

XSLT: Transformation von XML

Verwendung von Xsl auf einem Computer oder einem Computer (für einen Computer)

XSL Transformations (XSLT) Teil I

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

Web Technologien XML, XQuery, XPath und XSLT

XSLT, Teil 3. Udo Kelter

XML Vorlesung FHA SS

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

1. Einführung 2. DTD 3. XML Schema 4. XPath 5. XSLT 6. XSL-FO 7. XQuery 8. Web Services 9. XML und Datenbanken

5. Sortierung, Nummerierung und Gruppierung

Transformation von XML-Dokumenten. IDE SummerSchool 2013, Chemnitz

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

XSL Transformations (XSLT) Teil II

Verteilte Anwendungen. Teil 8: XSL II (XSLT)

Semistrukturierte Daten

XML. XML-Abfrage- und Transformationssprachen. 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

Eine Schnelleinführung in XSL

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

Semistrukturierte Daten

XSL Transformation. Eine praxisorientierte Einführung Philip Heck

Semistrukturierte Daten

XSLT. h_da SS Seite 1

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

XSLT XSL Transformations

Umsetzung des Signaturenkataloges SK25 bei der XML-basierten Erzeugung kartenähnlicher Graphiken. Karl Neumann, Andreas Kupfer, Brigitte Mathiak

XSLT 07. G. Görz, J. Schneeberger Lehrstuhl Informatik 8 (KI)

Vorlesung Datenbanken II SS 2006

XML-Verarbeitung. XPath XSL die extensible Stylesheet Language. Torsten Schaßan SCRIPTO Modul 4: EDV Wolfenbüttel

XSLT. Gliederung. XSLT Beispiel

XSL und XSLT. Inhalt. Mathias Heilig XSL Übersicht. Formatierungsprozess. Sprachbeschreibung. Vorführung Resümee

XSL Transformations (XSLT) Teil I

TEI und XSLT. Referat von Hannah Goldschmidt und Christian Lütticke Datenbanktechnologie Sommersemester 2011

Tutorial: Anbindung einer SQL-Datenquelle. Version: 1.1 Autoren: David Haasler, Stefan Suermann

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

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

XML. XML-Verarbeitung mittels XSL

Musterlösung des Übungsblattes 4

XSLT XSL Transformations

Aufgabe zu XML II. ÜBUNG Korpusbearbeitung SS 2018 Blatt 8

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

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

Schematron. Effiziente Business Rules für XML-Dokumente. Bearbeitet von Marko Hedler, Manuel Montero Pineda, Nico Kutscherauer, Mehrdad Zaeri

XSLT, XPath und XQuery Marco Skulschus Marcus Wiederstein Sarah Winterstone

XPath Lokalisierspfade Achsen in Lokalisierungsschritten

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

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

Einführung in die Informatik I

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

XML-Praxis.

XSLT. Heutige Vorlesung. Warum XML-Dokumente transformieren? XSLT zur Transformation von XML-Dokumenten XSL-FO zur Erzeugung von druckfähigem Layout

Gruppe A Bitte tragen Sie sofort und leserlich Namen, Studienkennzahl und Matrikelnummer ein und legen Sie Ihren Studentenausweis

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

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

Klinikum Göttingen BE Tumorzentrum XML-Schema und TuDaSch-XML

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

Übersicht Shell-Scripten

Inhaltsverzeichnis. a. Standorte Syncro Soft...4. b. Impressum A. XML i. oxygen XML Author...4. ii. oxygen XML Developer...

Texttransformation mit XSLT

XSLT. Prof. Dr.-Ing. Robert Tolksdorf Freie Universität Berlin Institut für Informatik Netzbasierte Informationssysteme

Konzept und Realisierung Extensible Stylesheet Language

XML-Praxis. XML-Anwendungen.

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

Texttransformation mit XSLT

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


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

XML Kurs. Markus Degen / Prof. Peter Thiemann. 12. Oktober arkus Degen / Prof. Peter Thiemann () XML Kurs 12. Oktober / 75

Komplexe Transformationen mit XSLT

Transkript:

4. Kontrollstrukturen

Inhalt 1. Einführung 2. Vorlagen 3. XPath 4. Kontrollstrukturen 5. Sortierung, Gruppierung und Nummerierung 6. Parameter und Variablen 7. Ein- und Ausgabeformate 8. Auslagerung und Wiederverwendung 9. Fortgeschrittene Techniken

Fallunterscheidungen Einsatz von XPath if choose

Kontrollstrukturen Verwendung von XPath Separierung der Knotenmengen vor der Verarbeitung Dadurch getrennte Verarbeitung möglich Keine sukzessiven Tests entlang der Verarbeitung von Knoten Verwendung von xsl:if und xsl:choose Fallweise Verarbeitung durch laufende Tests während der sukzessiven Verarbeitung von Knoten Testbedingungen werden weiterhin in XPath formuliert

Fallunterscheidungen Einsatz von XPath if choose

Fallunterscheidungen: XPath Die erste Möglichkeit, Knotenmengen bedingt zu verarbeiten, stellt die Auswahl aus einer größeren Knotenmenge über XPath- Ausdrücke dar, welche im match- oder select-attribut untergebracht sind. Dies hat das Ergebnis zur Folge, dass aus einer vorgegebenen Knotenmenge nur eine bestimmte Menge anhand eines Prädikats bzw. einer gegebenen Eigenschaft ausgewählt und daher auch nur diese Unterauswahl verarbeitet wird. Entscheidend für die Verwendung von XPath-Ausdrücken in Form von Quasi-Fallunterscheidungen ist die Separierung einer vorhandenen Knotenmenge in eine Untermenge, welche dann für die Verarbeitung bereit steht.

Fallunterscheidungen: XPath 1 2 1 2 Einzelne Vorlage erstellen für Kunden mit @Typ-Wert p oder g

Fallunterscheidungen: XPath

Fallunterscheidungen: XPath

Fragen

Fallunterscheidungen Einsatz von XPath if choose

Fallunterscheidungen: if Bedingte Verarbeitung von Knotenmengen über den Einsatz von XPath-Suchmustern benötigt noch keine neuen XSL-Elemente. Es ist eine eine Filterung mit anschließender getrennter Verarbeitung. Bedingte Verarbeitung über xsl:if und sein test-attribut. Es ist kein Filter, sondern eine reine getrennte Verarbeitung. Mit Hilfe von if ist es nur möglich, Fallunterscheidungen durchzuführen, die keine Alternativfälle und auch keinen Sonderfall zulassen.

Fallunterscheidungen: if

Fallunterscheidungen: if If <xsl:if test="bedingung"> Anweisungen </xsl:if> Bei xsl:if nur einfaches if ohne else-fall Bei xsl:choose mehrere xsl:when-angaben und Standardfall möglich Bedingungen werden über XPath vorgegeben Choose <xsl:choose> <xsl:when test="bedingung"> Anweisungen </xsl:when> <xsl:when test="bedingung"> Anweisungen </xsl:when> <xsl:otherwise> Standard-Anweisungen </xsl:otherwise> </xsl:choose>

Fallunterscheidungen: if

Fallunterscheidungen: if

Fallunterscheidungen Einsatz von XPath if choose

Fallunterscheidungen: choose Für eine if-elseif-else-struktur benötigt man die Elemente xsl:choose als Container-Element mit den beiden Kind-Elementen xsl:when für if und else-if sowie xsl:otherwise für else. Das nachfolgende Beispiel erzeugt eine getrennte Ausgabe für Geschäftsund Privatkunden, allerdings in Dokumentrichtung, weil nach dem Auffinden eines Kunde-Elements jeweils die Fallunterscheidung abläuft.

Fallunterscheidungen: choose If <xsl:if test="bedingung"> Anweisungen </xsl:if> Bei xsl:if nur einfaches if ohne else-fall Bei xsl:choose mehrere xsl:when-angaben und Standardfall möglich Bedingungen werden über XPath vorgegeben Choose <xsl:choose> <xsl:when test="bedingung"> Anweisungen </xsl:when> <xsl:when test="bedingung"> Anweisungen </xsl:when> <xsl:otherwise> Standard-Anweisungen </xsl:otherwise> </xsl:choose>

Fallunterscheidungen: choose

Fragen

Wiederholungen Einsatz von Vorlagen-Regeln for-each

Wiederholungen: Vorlagen-Regeln Durch Vorlagen-Regeln erreicht man exakt die gleichen Ergebnisse wie durch einen Einsatz von xsl:for-each (Kontrollstruktur für Wiederholungen). Verwendete Elemente: xsl:apply-templates und sein match-attribut xsl:template und sein select-attribut

Wiederholungen Einsatz von Vorlagen-Regeln for-each

Wiederholungen: for-each Um Wiederholungen einzurichten, verwendet man xsl:for-each. Es besitzt ein select-attribut und erwartet die gleichen Lokalisierungspfade wie bspw. xsl:apply-templates. <!-- Kategorie: Anweisung --> <xsl:for-each select = node-set-expression > <!-- Inhalt: ( xsl:sort*, template ) --> </xsl:for-each> Folgen Über eine Verwendung von for-each spart man normalerweise eine Ebene bei unbenannten Vorlagen ein. Dies verlängert die Vorlage, welche das for-each-element enthält, um die Anweisungen, die normalerweise in der ausgelagerten Vorlage stünden.

Wiederholungen: for-each Verschiebung der Verarbeitung von Kunden (bspw. choose-/if- Anweisung(en)) in for-each verschieben.

Wiederholungen: for-each

Fragen...