Übung 5 Klaus Schild,

Size: px
Start display at page:

Download "Übung 5 Klaus Schild,"

Transcription

1 Übung 5 1

2 Übung 5 Fragen zur Vorlesung XSLT? XSLT in Depth XSLT Programming Musterfragen Musterlösung XSLT for transformation from content to presentation 2

3 XSLT in Depth 3

4 Valid XSLT <xsl:stylesheet> </xsl:stylesheet> <xsl:stylesheet xmlns:xsl=" Transform" > </xsl:stylesheet> <xsl:stylesheet version="1.0" > xmlns:xsl=" Transform" </xsl:stylesheet> 4

5 Valid XSLT <xsl:stylesheet version="1.0" > xmlns:xsl=" Transform" </xsl:stylesheet> <name> </name> <first_name>john</first_name> <last_name>smith</last_name> 5

6 Valid XSLT John Smith How come? 6

7 Never forget about the. Default templates - Are ALWAYS used by the XSLT processor - Can t be switched off, only OVERRIDDEN <xsl:template match="* /"> <xsl:apply-templates/> </xsl:template> <xsl:template <xsl:value-of select="."/> </xsl:template> <xsl:template match="processinginstruction() comment()" /> 7

8 Default templates <name> <first_name>john</first_name> <last_name>smith</last_name> </name> root (/) name first_name last_name John Smith 8

9 Overriding templates If a match exists in the stylesheet, that template will override the default template <xsl:template match="name"> <! - Do Nothing --> </xsl:template> overrides <xsl:template match="* /"> <xsl:apply-templates/> </xsl:template> 9

10 Overriding templates (2) So what about this? Does the more specific template override the more general? <xsl:template match="name"> <! - Do Nothing --> </xsl:template> <xsl:template match="name[2]"> <xsl:apply-templates/> </xsl:template> is overriden by 10

11 Overriding templates (3) And what about this? What happens if the name element in the second position has also a lang attribute with the value en? <xsl:template match="name[@lang='en']"> <! - Do Nothing --> </xsl:template> <xsl:template match="name[2]" <xsl:apply-templates/> </xsl:template>??? 11

12 Template priority If more than one template rule with the same import precedence matches a given node. - Import precedence is default template rules, explicitly imported rules and then rules in the actual stylesheet the one with the highest priority is chosen - Rules with match patterns of a single element or attribute name have priority 0 - Rules with match patterns of prefix:* have priority Rules with match patterns which have only a wildcard test (*,@*,node() ) have priority Rules with any other patterns, e.g. with location paths or predicates, have priority

13 Template priority (2) It is an error if two or more template rules match a node and have the same priority - Most XSLT processors choose the LAST template rule rather than signal an error One can explicitly give a template a priority <xsl:template match=" " priority="1"> How to execute multiple rules on the same node? - Use a more general match on a template rule - Within the rule, make the specific node selection - You can use named templates rather than matching on the selected node 13

14 Overriding by import You can use <xsl:import href="import.xsl"/> However, imported templates have less precedence than templates in the main stylesheet To force the processor to use BOTH an imported template and a template in the main stylesheet: <xsl:apply-imports /> The problem is that imports must be top level elements and come before all other elements, hence are always overridden The alternative is to include templates at the top level but ANYWHERE in the stylesheet, such as right at the end <xsl:include href="import.xsl"/> 14

15 XSLT and namespaces XSLT processors are namespace-aware - Patterns must identify namespaces of elements <name xmlns=" </name> <first_name>john</first_name> <last_name>smith</last_name> <xsl:template match="name"> <! - Do Nothing --> </xsl:template> 15

16 XSLT and namespaces <name xmlns=" </name> <first_name>john</first_name> <last_name>smith</last_name> <xsl:stylesheet xmlns=" <xsl:template match="name"> <! - Do Nothing --> </xsl:template> </xsl:stylesheet> 16

17 XSLT and namespaces <aa:name xmlns:aa=" </aa:name> <aa:first_name>john</aa:first_name> <aa:last_name>smith</aa:last_name> <xsl:stylesheet xmlns:zz=" <xsl:template match="zz:name"> <! - Do Nothing --> </xsl:template> </xsl:stylesheet> 17

18 XSLT Programming 18

19 Did you know XSLT is Turing-complete - meaning? Turing-completeness: - Computational system that can compute every Turingcomputable function - Such functions represent the notion of algorithm, i.e. a finite program should be able to compute them - They are used to measure models of computation All general programming languages are Turing-complete - Hence: XSLT is as expressive as such languages! 19

20 Proving XSLT s programming power XSLT is usually referred to as a declarative programming language For example, one can state z = y + 3 The variable z now has the value of y increased by 3 A variable, once declared, can not change value (stateless) In XSLT it looks like this: <xsl:variable name="z" select="$y + 3" /> 20

21 Higher order functions in XSLT Functions can be implemented in template references - Templates in XSLT correspond to functions - Named templates are called by xsl:call-template - Parameters are declared on a template with xsl:param - Parameter values are set when a template is called using xsl:with-param In XSLT one has to call a template specifically by name - You can t provide a template name by variable - Hence you can t really dynamically call templates 21

22 Template references Define templates which perform some function, e.g. <xsl:template name="2times"> <xsl:param name = "a" /> <xsl:value-of select = "2 * $a" /> </xsl:template> <xsl:template name="3plus"> <xsl:param name = "a" /> <xsl:value-of select = "3 + $a" /> </xsl:template> 22

23 Template references (2) Now define a template which accepts as parameter an input value, instantiates the two function templates, passing to each instantiation the input in the template s parameter and as result gives the sum of the outputs. mysum(x)=(2*x)+(3+x) Call mysum(3): <xsl:call-template name = "mysum" > <xsl:with-param name = "x" select = "3" /> </xsl:call-template> 23

24 Template references (3) <xsl:template name = "mysum" > <xsl:param name = "x" /> <xsl:variable name="v1"> <xsl:call-template name = "2times" > <xsl:with-param name= "a" select="$x" /> </xsl:call-template> </xsl:variable> <xsl:variable name="v2"> <xsl:call-template name = "3plus" > <xsl:with-param name="a" select="$x" /> </xsl:call-template> </xsl:variable> <xsl:value-of select="$v1 + $v2"/> </xsl:template> 24

25 Template references (4) How about printing a certain number of dots, where the number is not known at compile time? In C, it could look like this: void printdots(int n) { int i; for (i = 0; i < n; i++) { printf("."); } } 25

26 Recursive programming What most programming languages can accomplish with loops must be solved in functional languages like XSLT with recursion Recursion is a powerful programming construct for solving particular classes of problem (divide and conquer) Usual construction: <xsl:template name=" "> Parameters Test Do something or not (Another Test) Either generate new parameter values call template recursively Or end </xsl:template> 26

27 Recursion example I presently have an XML tag stored as so: <rating> 7 </rating> It is essentially for rating a product out of a possible score of 10. What I want to do is to convert it like this: Rating: where the "7" will be made BOLD. 27

28 Recursion example Define the starting state <xsl:template name="ratings"> <xsl:param name="limit" select="10"/> <xsl:param name="this" select="1"/> <xsl:param name="emph"/> $this is the parameter that will be tested $emph is the parameter to be tested against (when the template is called, it shall be set to the value that is to be placed in bold) $limit is the exit condition 28

29 Recursion example Define the test <xsl:choose> <xsl:when test="$this=$emph"> <b> <xsl:value-of select="$this"/></b> </xsl:when> <xsl:otherwise> <xsl:value-of select="$this"/> </xsl:otherwise> </xsl:choose> 29

30 Recursion example Define the recursion. Don t forget an exit condition! <xsl:if test="$this < $limit"> <xsl:call-template name="ratings"> <xsl:with-param name="limit" select="$limit"/> <xsl:with-param name="this" select="$this+1"/> <xsl:with-param name="emph" select="$emph"/> </xsl:call-template> </xsl:if> </xsl:template> 30

31 Musterfragen 31

32 Frage 1 Which of the following XSLT elements will apply any matching templates to all the children of the current node? A. <xsl:apply-templates select="node()" /> B. <xsl:call-template name="*" /> C. <xsl:apply-templates /> D. <xsl:call-template /> E. <xsl:apply-templates name="*" /> 32

33 Frage 2 <?xml version="1.0" encoding="utf-8"?> <periodictable> <chemicalelement symbol="ag"> <atomicnumber>47</atomicnumber <atomicweight> </atomicweight </chemicalelement> Which is the output from </periodictable> <xsl:copy/>? A. <chemicalelement/> B. <chemicalelement symbol="ag"/> C. <chemicalelement symbol="ag"> </chemicalelement> D

34 Frage 3 <?xml version="1.0" encoding="utf-8"?> <periodictable> <chemicalelement symbol="ag"> <atomicnumber>47</atomicnumber <atomicweight> </atomicweight </chemicalelement> Which is the output from </periodictable> <xsl:copy-of select="." />? A. <chemicalelement/> B. <chemicalelement symbol="ag"/> C. <chemicalelement symbol="ag"> </chemicalelement> D

35 Frage 4 <?xml version="1.0" encoding="utf-8"?> <periodictable> <chemicalelement symbol="ag"> <atomicnumber>47</atomicnumber <atomicweight> </atomicweight </chemicalelement> Which is the output from </periodictable> <xsl:value-of select="." />? A. <chemicalelement/> B. <chemicalelement symbol="ag"/> C. <chemicalelement symbol="ag"> </chemicalelement> D

36 Frage 5 <?xml version="1.0" encoding="utf-8"?> <A> <B c="123"> <C /> <D>text</D> </B> <D> <E>more text</e> <F c="246" /> </D> <F a="369" /> </A> <xsl:template match="a"> <xsl:apply-templates /> </xsl:template> <xsl:template match="b D F"> <xsl:value-of select="@*" /> </xsl:template> Which is the output? A. Nothing B. 123 text more text C D

37 Frage 6 <?xml version="1.0" encoding="utf-8"?> <A> <B c="123"> <C /> <D>text</D> </B> <D> <E>more text</e> <F c="246" /> </D> <F a="369" /> </A> <xsl:template match="b D F"> <xsl:if test="node()/text()"> <xsl:value-of select="." /> </xsl:if> </xsl:template> Which is the output? A. Nothing B. text C. text more text D. 123 text more text

38 Frage 7 <?xml version="1.0" encoding="utf-8"?> <A> <B c="123"> <C /> <D>text</D> </B> <D> <E>more text</e> <F c="246" /> </D> <F a="369" /> </A> <xsl:template match="d"> <xsl:apply-templates select="f" /> </xsl:template> <xsl:template match="f"> <xsl:value-of select="@*" /> </xsl:template> Which is the output? A. Nothing B. text more text C. text D

39 Musterlösung sung des Übungsblattes 4 39

40 Beispieltransformation <document xmlns=" > <title>beginning XML</title> <author>hunter et al.</author> <chapter name="chapter 1"> <section>chap. 1_1</section> <section>chap. 1_2</section> <section>chap. 1_3</section> </chapter> <chapter name="chapter 2"> <section>chap. 2_1</section> <section>chap. 2_2</section> </chapter> <chapter name="chapter 3"> <section>chap. 3_1</section> <section>chap. 3_2</section> <section>chap. 3_3</section> <section>chap. 3_4</section> </chapter> </document> 40

41 Ergebnisdokument 41

42 Nötige strukturelle Transformation 42

43 Klasse der Ursprungsdokumente 43

44 Grundstruktur der Lösung für jedes Element außer ns:section ein Template match="ns:document": alle document Elemente, die Namensraum zugeordnet sind 44

45 Erzeugung der HTML-Grundstruktur 45

46 Transformation von title und author Was passiert, wenn title oder author nicht vorhanden ist? 46

47 ns:title <h1>, ns:author <h2> Was passiert, wenn title oder author Kind-Elemente haben? 47

48 Select. or text()? <xsl:template match="p"> <DIV> <xsl:copy-ofof select="."/> </DIV> <DIV> <xsl:copy/> </DIV> <DIV> <xsl:value-of select="."/> </DIV> </xsl:template> <source> <p id="a12">compare <B>these constructs</b>. </p> </source> <DIV> <p id="a12">compare <B>these constructs</b>. </p> </DIV> <DIV> <p/> </DIV> <DIV> Compare these constructs. </DIV> oder mit "text()" statt "." <DIV> Compare </DIV> 48

49 Spaltenüberschriften erzeugen 49

50 Grundstruktur der Tabelle erzeugen Beachte: select="ns:chapter" meint alle Kind-Elemente ns:chapter 50

51 Spaltenüberschriften <TH> erzeugen 51

52 Zeilen <TR> erzeugen Für N von 1 bis zur maximalen Anzahl von sections: Erzeuge <TR> mit <TD>s, die Nte section von jedem chapter enthalten! 52

53 Erzeuge Zeile N! 53

54 Erzeuge Zeile N! Beachte: für ns:section kein Template definiert Was passiert hier ohne ein solches Template? 54

55 Vordefinierte Templates 1. vordefiniertes Template realisiert rekursiven Aufruf des Prozessors, wenn kein Template anwendbar ist: <xsl:template match="* /"> <xsl:apply-templates/> </xsl:template> 2. vordefiniertes Template kopiert PCDATA und Attribut-Werte des aktuellen Knotens in das Ergebnisdokument: <xsl:template <xsl:value-of select="."/> </xsl:template> 55

56 Vermeide <TD/>! selbstschließende Elemente <TD/> vermeiden, da HTML <TD></TD> erwartet 56

57 Rekursion: Erzeuge Zeile N+1 57

58 Und der eigentliche Aufruf mit N=1 58

59 XSLT for content to presentation 59

60 Content to presentation Besides content-to-content transformations, XSLT is often used to transform a content format (i.e. some XML document) into a presentation format The output mustn t be well formed XML, it could be HTML or some other unstructured textual format However, there are XML-based presentation formats (XHTML, SVG, SMIL) XML-to-XML transformation is preferable - As XSLT templates work on a XML input structure, it is an easier mapping to a XML output structure - It is also easier to check output validity 60

61 RSS to SMIL <smil> <head> <layout> <root-layout width="450 height="450"/> <region id="top" top="0" left="0" width="450" height="100"/> <region id="text" top="100" left="0" width="250" height="100"/> <region id="desc" top="200" left="0" width="250" height="250" /> <region id="img" top="100" left="250" width="200" height="350" /> </layout> </head> <body>... </body> </smil> 61

62 RSS to SMIL (2) <rss> <channel> <title>.</title> <item> <title>star City</title> <enclosure> </enclosure> <description>.</description> </item> <item> <title>star City</title> <enclosure> </enclosure> <description>.</description> </item> </channel> </rss> <smil> <head> <layout>... </layout> </head> <body> <text src=".." region="top" /> <seq begin="0s"> <par dur="10s"> <text src=".." region="text" /> <text src=".." region="desc" /> <image src=".." region="img" /> </par> <par dur="10s"> </par> </seq> </body> </smil> 62

63 RSS to SMIL (3) <rss> <channel> <title>.</title> <item> <title>star City</title> <enclosure> </enclosure> <description>.</description> </item> <item> <title>star City</title> <enclosure> </enclosure> <description>.</description> </item> </channel> </rss> <smil> <head> <layout>... </layout> </head> <body> <text src=".." region="top" /> <seq begin="0s"> <par dur="10s"> <text src=".." region="text" /> <text src=".." region="desc" /> <image src=".." region="img" /> </par> <par dur="10s"> </par> </seq> </body> </smil> 63

64 The XSLT <xsl:template match="/"> <xsl:apply-templates select="rss" /> </xsl:template> Why not just start writing e.g. template match="//item"? Because we want to ensure we are transforming a RSS document, and not just some XML document with item elements! 64

65 The XSLT (2) <xsl:template match="rss"> <smil> <head> <layout>... </layout> </head> <body> <xsl:apply-templates select="title" /> <seq> <xsl:apply-templates select="item" /> </seq> </body> </smil> </xsl:template> 65

66 The XSLT (3) <xsl:template match="title"> <text src="data:,{.}" region="top" /> </xsl:template> Reminder: <xsl:value-of select="." /> returns the string value of the element node (the text within the element tags) We can t put the value-of element inside an output element, so we use an attribute value template This means placing the XPath expression inside curly braces {} Btw the data: scheme needs to escape spaces which XPath function could be used here? 66

67 The XSLT (4) <xsl:template match="item"> <par dur="10s"> <text src="data:,{title}" region="text" /> <text src="data:,{description}" region="desc" /> <image region="img" /> </par> </xsl:template> Reminder: Template will be called for each item element in document order Why not use separate templates for the child elements of item? We assumed enclosures were images, how could we write <image>, <audio> or <video> elements based on the value of enclosure s type attribute? 67

68 Viewing in the browser To have a RSS (or any XML) document shown in the browser with style rules applied <?xml-stylesheet href="rss.xsl" type="text/xsl" media="screen"?> Generally used with stylesheets with (X)HTML output If the browser is correctly configured, a SMIL output should be opened in a SMIL player For our example (with inline text) you need to use Real Player 68

XSLT: How Do We Use It?

XSLT: How Do We Use It? XSLT: How Do We Use It? Nancy Hallberg Nikki Massaro Kauffman 1 XSLT: Agenda Introduction & Terminology XSLT Walkthrough Client-Side XSLT/XHTML Server-Side XSLT/XHTML More Creative Server-Side XSLT 2 XSLT:

More information

XSL Elements. xsl:copy-of

XSL Elements. xsl:copy-of XSL Elements The following elements are discussed on this page: xsl:copy-of xsl:value-of xsl:variable xsl:param xsl:if xsl:when xsl:otherwise xsl:comment xsl:import xsl:output xsl:template xsl:call-template

More information

Computer Science E-259

Computer Science E-259 Computer Science E-259 XML with Java Lecture 5: XPath 1.0 (and 2.0) and XSLT 1.0 (and 2.0), Continued 22 October 2007 David J. Malan malan@post.harvard.edu 1 Computer Science E-259 Last Time CSS Level

More information

Author: Irena Holubová Lecturer: Martin Svoboda

Author: Irena Holubová Lecturer: Martin Svoboda NPRG036 XML Technologies Lecture 6 XSLT 9. 4. 2018 Author: Irena Holubová Lecturer: Martin Svoboda http://www.ksi.mff.cuni.cz/~svoboda/courses/172-nprg036/ Lecture Outline XSLT Principles Templates Instructions

More information

XPath and XSLT without the pain!

XPath and XSLT without the pain! XPath and XSLT without the pain! Bertrand Delacrétaz ApacheCon EU 2007, Amsterdam bdelacretaz@apache.org www.codeconsult.ch slides revision: 2007-05-04 Goal Learning to learn XPath and XSLT because it

More information

Exam : Title : XML 1.1 and Related Technologies. Version : DEMO

Exam : Title : XML 1.1 and Related Technologies. Version : DEMO Exam : 000-142 Title : XML 1.1 and Related Technologies Version : DEMO 1. XML data is stored and retrieved within a relational database for a data-centric application by means of mapping XML schema elements

More information

XSL Transformation (XSLT) XSLT Processors. Example XSLT Stylesheet. Calling XSLT Processor. XSLT Structure

XSL Transformation (XSLT) XSLT Processors. Example XSLT Stylesheet. Calling XSLT Processor. XSLT Structure Transformation (T) SOURCE The very best of Cat Stevens UK 8.90 1990 Empire Burlesque Bob

More information

Burrows & Langford Appendix D page 1 Learning Programming Using VISUAL BASIC.NET

Burrows & Langford Appendix D page 1 Learning Programming Using VISUAL BASIC.NET Burrows & Langford Appendix D page 1 APPENDIX D XSLT XSLT is a programming language defined by the World Wide Web Consortium, W3C (http://www.w3.org/tr/xslt), that provides the mechanism to transform a

More information

XPath and XSLT. Overview. Context. Context The Basics of XPath. XPath and XSLT. Nodes Axes Expressions. Stylesheet templates Transformations

XPath and XSLT. Overview. Context. Context The Basics of XPath. XPath and XSLT. Nodes Axes Expressions. Stylesheet templates Transformations XPath and XSLT Michael B. Spring Department of Information Science and Telecommunications University of Pittsburgh spring@imap.pitt.edu http://www.sis.pitt.edu/~spring Context The Basics of XPath Nodes

More information

EXAM XML 1.1 and Related Technologies TYPE: DEMO

EXAM XML 1.1 and Related Technologies TYPE: DEMO IBM EXAM - 000-142 XML 1.1 and Related Technologies TYPE: DEMO http://www.examskey.com/000-142.html 1 Question: 1 XML data is stored and retrieved within a relational database for a data-centric application

More information

Lars Schmidt-Thieme, Information Systems and Machine Learning Lab (ISMLL), University of Hildesheim, Germany, Course on XML and Semantic Web

Lars Schmidt-Thieme, Information Systems and Machine Learning Lab (ISMLL), University of Hildesheim, Germany, Course on XML and Semantic Web Course on XML and Semantic Web Technologies, summer term 2012 0/44 XML and Semantic Web Technologies XML and Semantic Web Technologies I. XML / 5. XML Stylesheet Language Transformations (XSLT) Lars Schmidt-Thieme

More information

XSLT Programming Constructs

XSLT Programming Constructs XSLT Programming Constructs Contents 1. Procedural programming in XSLT 2. Defining named template rules 3. Parameterizing XSLT style sheets 2 1. Procedural Programming in XSLT Declarative vs. procedural

More information

Extensible Markup Stylesheet Transformation (XSLT)

Extensible Markup Stylesheet Transformation (XSLT) Extensible Markup Stylesheet Transformation (XSLT) Asst. Prof. Dr. Kanda Runapongsa Saikaew (krunapon@kku.ac.th) Dept. of Computer Engineering Khon Kaen University 1 Overview Terms: XSL, XSLT, XSL-FO Value

More information

XSL Languages. Adding styles to HTML elements are simple. Telling a browser to display an element in a special font or color, is easy with CSS.

XSL Languages. Adding styles to HTML elements are simple. Telling a browser to display an element in a special font or color, is easy with CSS. XSL Languages It started with XSL and ended up with XSLT, XPath, and XSL-FO. It Started with XSL XSL stands for EXtensible Stylesheet Language. The World Wide Web Consortium (W3C) started to develop XSL

More information

COP 4814 Florida International University Kip Irvine XSLT. Updated: 2/9/2016 Based on Goldberg, Chapter 2. Irvine COP 4814

COP 4814 Florida International University Kip Irvine XSLT. Updated: 2/9/2016 Based on Goldberg, Chapter 2. Irvine COP 4814 COP 4814 Florida International University Kip Irvine XSLT Updated: 2/9/2016 Based on Goldberg, Chapter 2 XSL Overview XSL Extensible Stylesheet Language A family of languages used to transform and render

More information

Advanced XSLT. Web Data Management and Distribution. Serge Abiteboul Ioana Manolescu Philippe Rigaux Marie-Christine Rousset Pierre Senellart

Advanced XSLT. Web Data Management and Distribution. Serge Abiteboul Ioana Manolescu Philippe Rigaux Marie-Christine Rousset Pierre Senellart Advanced XSLT Web Data Management and Distribution Serge Abiteboul Ioana Manolescu Philippe Rigaux Marie-Christine Rousset Pierre Senellart Web Data Management and Distribution http://webdam.inria.fr/textbook

More information

XSLT (part I) Mario Alviano A.Y. 2017/2018. University of Calabria, Italy 1 / 22

XSLT (part I) Mario Alviano A.Y. 2017/2018. University of Calabria, Italy 1 / 22 1 / 22 XSLT (part I) Mario Alviano University of Calabria, Italy A.Y. 2017/2018 Outline 2 / 22 1 Introduction 2 Templates 3 Attributes 4 Copy of elements 5 Exercises 4 / 22 What is XSLT? XSLT is a (Turing

More information

Introduction to XSLT

Introduction to XSLT Introduction to XSLT Justin Tilton, Chief Executive Officer instructional media + magic, inc. at the JA-SIG Conference Vancouver, BC Sunday, June 9, 2002 The Abstract Looking for a methodology to quickly

More information

XSL extensible Style Language" DOCUMENTS MULTIMEDIA! Transforming documents using! XSLT" XSLT processor" XSLT stylesheet"

XSL extensible Style Language DOCUMENTS MULTIMEDIA! Transforming documents using! XSLT XSLT processor XSLT stylesheet DOCUMENTS MULTIMEDIA! Transforming documents using! XSLT" XSL extensible Style Language"!" A family of languages for defining document transformation and presentation" XSL XSLT XSL-FO Christine Vanoirbeek"

More information

Advanced XSLT. Web Data Management and Distribution. Serge Abiteboul Philippe Rigaux Marie-Christine Rousset Pierre Senellart

Advanced XSLT. Web Data Management and Distribution. Serge Abiteboul Philippe Rigaux Marie-Christine Rousset Pierre Senellart Advanced XSLT Web Data Management and Distribution Serge Abiteboul Philippe Rigaux Marie-Christine Rousset Pierre Senellart http://gemo.futurs.inria.fr/wdmd January 15, 2010 Gemo, Lamsade, LIG, Télécom

More information

Manipulating XML Trees XPath and XSLT. CS 431 February 18, 2008 Carl Lagoze Cornell University

Manipulating XML Trees XPath and XSLT. CS 431 February 18, 2008 Carl Lagoze Cornell University Manipulating XML Trees XPath and XSLT CS 431 February 18, 2008 Carl Lagoze Cornell University XPath Language for addressing parts of an XML document XSLT Xpointer XQuery Tree model based on DOM W3C Recommendation

More information

Web Data Management XSLT. Philippe Rigaux CNAM Paris & INRIA Saclay

Web Data Management XSLT. Philippe Rigaux CNAM Paris & INRIA Saclay http://webdam.inria.fr Web Data Management XSLT Serge Abiteboul INRIA Saclay & ENS Cachan Ioana Manolescu INRIA Saclay & Paris-Sud University Philippe Rigaux CNAM Paris & INRIA Saclay Marie-Christine Rousset

More information

XSLT is... XML XSLT XSL-FO XPath

XSLT is... XML XSLT XSL-FO XPath XSLT XSLT is... XML XSLT XSL-FO XPath Назначение XSLT XML XML Назначение XSLT XML HTML Сервер Браузер Назначение XSLT XML HTML Сервер Браузер Declaration

More information

XML and Semantic Web Technologies. II. XML / 5. XML Stylesheet Language Transformations (XSLT)

XML and Semantic Web Technologies. II. XML / 5. XML Stylesheet Language Transformations (XSLT) XML and Semantic Web Technologies XML and Semantic Web Technologies II. XML / 5. XML Stylesheet Language Transformations (XSLT) Lars Schmidt-Thieme Information Systems and Machine Learning Lab (ISMLL)

More information

XML. Objectives. Duration. Audience. Pre-Requisites

XML. Objectives. Duration. Audience. Pre-Requisites XML XML - extensible Markup Language is a family of standardized data formats. XML is used for data transmission and storage. Common applications of XML include business to business transactions, web services

More information

XML Wrap-up. CS 431 March 1, 2006 Carl Lagoze Cornell University

XML Wrap-up. CS 431 March 1, 2006 Carl Lagoze Cornell University XML Wrap-up CS 431 March 1, 2006 Carl Lagoze Cornell University XSLT Processing Model Input XSL doc parse Input XML doc parse Parsed tree serialize Input XML doc Parsed tree Xformed tree Output doc (xml,

More information

XSLT. December 16, 2008

XSLT. December 16, 2008 XSLT December 16, 2008 XML is used in a large number of applications, either data-centric (semi-structured databases), or document-centric (Web publishing). In either case, there is a need for transforming

More information

Extensions to XSLT 1.0, and XSLT 2.0

Extensions to XSLT 1.0, and XSLT 2.0 ... Extensions A typical problem: XSLT 1.0 does not have any way of finding the current date and time. However, some XSLT 1.0 processors allow you to use extensions to XSLT 1.0. The EXSLT initiative http://www.exslt.org/

More information

XML and Databases XSLT Stylesheets and Transforms

XML and Databases XSLT Stylesheets and Transforms XML and Databases XSLT Stylesheets and Transforms Kim.Nguyen@nicta.com.au Lecture 11 1 / 38 extensible Stylesheet Language Transformations Outline 1 extensible Stylesheet Language Transformations 2 Templates

More information

Semi-structured Data 11 - XSLT

Semi-structured Data 11 - XSLT Semi-structured Data 11 - XSLT Andreas Pieris and Wolfgang Fischl, Summer Term 2016 Outline What is XSLT? XSLT at First Glance XSLT Templates Creating Output Further Features What is XSLT? XSL = extensible

More information

info-h-509 xml technologies Lecture 5: XSLT Stijn Vansummeren February 14, 2017

info-h-509 xml technologies Lecture 5: XSLT Stijn Vansummeren February 14, 2017 info-h-509 xml technologies Lecture 5: XSLT Stijn Vansummeren February 14, 2017 lecture outline 1 How XML may be rendered in Web Browsers 2 Syntax and Semantics of XSLT 3 How XPath is used in XSLT 1 our

More information

Presentation. Separating Content and Presentation Cascading Style Sheets (CSS) XML and XSLT

Presentation. Separating Content and Presentation Cascading Style Sheets (CSS) XML and XSLT Presentation Separating Content and Presentation Cascading Style Sheets (CSS) XML and XSLT WordPress Projects Theme Generators WYSIWYG editor Look at tools to support generation of themes Design a new

More information

Introduction to XSLT

Introduction to XSLT Introduction to XSLT Justin Tilton, Chief Executive Officer instructional media + magic, inc. at the JA-SIG Conference Destin, Florida December 2, 2001 The Abstract Looking for a methodology to quickly

More information

Computer Science E-259

Computer Science E-259 Computer Science E-259 XML with Java Lecture 4: XPath 1.0 (and 2.0) and XSLT 1.0 (and 2.0) 21 February 2007 David J. Malan malan@post.harvard.edu 1 Computer Science E-259 Last Time DOM Level 3 JAXP 1.3

More information

XML and Databases. Lecture 11 XSLT Stylesheets and Transforms. Sebastian Maneth NICTA and UNSW

XML and Databases. Lecture 11 XSLT Stylesheets and Transforms. Sebastian Maneth NICTA and UNSW XML and Databases Lecture 11 XSLT Stylesheets and Transforms Sebastian Maneth NICTA and UNSW CSE@UNSW -- Semester 1, 2010 Outline 1. extensible Stylesheet Language Transformations (XSLT) 2. Templates:

More information

XML. <subtitle>xslt (cont)</subtitle> <author>prof. Dr. Christian Pape</author>

XML. <subtitle>xslt (cont)</subtitle> <author>prof. Dr. Christian Pape</author> XML xslt (cont) prof. Dr. Christian Pape Content Expressions and Functions Copying nodes Using variables and parameters Conditional Processing XSLT 5-2 Expressions

More information

<xsl:apply-templates select="atom:entry/atom:content"/> <xsl:copy-of xmlns:xsl="http://www.w3.org/1999/xsl/transform"/>

<xsl:apply-templates select=atom:entry/atom:content/> <xsl:copy-of xmlns:xsl=http://www.w3.org/1999/xsl/transform/> Split one of your gravestone XSL stylesheets into two parts, one with templates about persons, the other with templates about inscriptions. Have a third template which pulls them together, using .

More information

INTERNET & WEB APPLICATION DEVELOPMENT SWE 444. Fall Semester (081) Module 4 (III): XSL

INTERNET & WEB APPLICATION DEVELOPMENT SWE 444. Fall Semester (081) Module 4 (III): XSL INTERNET & WEB APPLICATION DEVELOPMENT SWE 444 Fall Semester 2008-2009 (081) Module 4 (III): XSL Dr. El-Sayed El-Alfy Computer Science Department King Fahd University of Petroleum and Minerals alfy@kfupm.edu.sa

More information

Semantic Web. XSLT: XML Transformation. Morteza Amini. Sharif University of Technology Fall 95-96

Semantic Web. XSLT: XML Transformation. Morteza Amini. Sharif University of Technology Fall 95-96 ه عا ی Semantic Web XSLT: XML Transformation Morteza Amini Sharif University of Technology Fall 95-96 Outline Fundamentals of XSLT XPath extensible Stylesheet Language Cocoon 2 XSLT XSLT stands for extensible

More information

XSL Concepts: Conditions and Loops. Robert Kiffe, Senior Web Developer OmniUpdate, Inc.

XSL Concepts: Conditions and Loops. Robert Kiffe, Senior Web Developer OmniUpdate, Inc. XSL Concepts: Conditions and Loops Robert Kiffe, Senior Web Developer OmniUpdate, Inc. Quick XSL Recap Conditional Statements If Choose XPath Conditional Loops For-Each For-Each-Group Apply-Templates Activities!

More information

XSLT (part II) Mario Alviano A.Y. 2017/2018. University of Calabria, Italy 1 / 19

XSLT (part II) Mario Alviano A.Y. 2017/2018. University of Calabria, Italy 1 / 19 1 / 19 XSLT (part II) Mario Alviano University of Calabria, Italy A.Y. 2017/2018 Outline 2 / 19 1 Introduction 2 Variables, conditional constructs and iterations 3 Sorting and grouping 4 Named templates

More information

Dynamic Indexing with XSL

Dynamic Indexing with XSL In content is generally displayed in a static format. This means that the content entered never changes unless it is updated manually. When a page is transformed, the data entered on the page is visible.

More information

XSLT. Lecture 38. Robb T. Koether. Mon, Apr 21, Hampden-Sydney College. Robb T. Koether (Hampden-Sydney College) XSLT Mon, Apr 21, / 26

XSLT. Lecture 38. Robb T. Koether. Mon, Apr 21, Hampden-Sydney College. Robb T. Koether (Hampden-Sydney College) XSLT Mon, Apr 21, / 26 XSLT Lecture 38 Robb T. Koether Hampden-Sydney College Mon, Apr 21, 2014 Robb T. Koether (Hampden-Sydney College) XSLT Mon, Apr 21, 2014 1 / 26 1 XSLT 2 Running XSLT 3 XSLT Files 4 Output Modes 5 XSLT

More information

Introduction to XSLT. Version 1.3 March nikos dimitrakas

Introduction to XSLT. Version 1.3 March nikos dimitrakas Introduction to XSLT Version 1.3 March 2018 nikos dimitrakas Table of contents 1 INTRODUCTION... 3 1.1 XSLT... 3 1.2 PREREQUISITES... 3 1.3 STRUCTURE... 3 2 SAMPLE DATA... 4 3 XSLT... 6 4 EXAMPLES... 7

More information

XSL and OU Campus. OmniUpdate User Training Conference OmniUpdate, Inc Flynn Road, Suite 100 Camarillo, CA 93012

XSL and OU Campus. OmniUpdate User Training Conference OmniUpdate, Inc Flynn Road, Suite 100 Camarillo, CA 93012 XSL and OU Campus OmniUpdate User Training Conference 2015 OmniUpdate, Inc. 1320 Flynn Road, Suite 100 Camarillo, CA 93012 OmniUpdate, Inc. 1320 Flynn Road, Suite 100 Camarillo, CA 93012 800.362.2605 805.484.9428

More information

Custom Tables with the LandXML Report Extension David Zavislan, P.E.

Custom Tables with the LandXML Report Extension David Zavislan, P.E. December 2-5, 2003 MGM Grand Hotel Las Vegas Custom Tables with the LandXML Report Extension David Zavislan, P.E. CV41-2 Learn some basic concepts of LandXML and the extensible Stylesheet Language (XSL)

More information

XSDs: exemplos soltos

XSDs: exemplos soltos XSDs: exemplos soltos «expande o tipo base»

More information

WebSphere DataPower SOA Appliances and XSLT (Part 2 of 2) - Tips and Tricks

WebSphere DataPower SOA Appliances and XSLT (Part 2 of 2) - Tips and Tricks IBM Software Group WebSphere DataPower SOA Appliances and XSLT (Part 2 of 2) - Tips and Tricks Hermann Stamm-Wilbrandt (stammw@de.ibm.com) DataPower XML Compiler Developer, L3 8 July 2010 WebSphere Support

More information

4. Unit: Transforming XML with XSLT

4. Unit: Transforming XML with XSLT Semistructured Data and XML 28 4. Unit: Transforming XML with XSLT Exercise 4.1 (XML to HTML) Write an XSLT routine performing the following task: Map the following country data for each country to an

More information

Display the XML Files for Disclosure to Public by Using User-defined XSL Zhiping Yan, BeiGene, Beijing, China Huadan Li, BeiGene, Beijing, China

Display the XML Files for Disclosure to Public by Using User-defined XSL Zhiping Yan, BeiGene, Beijing, China Huadan Li, BeiGene, Beijing, China PharmaSUG China 2018 Paper CD-72 Display the XML Files for Disclosure to Public by Using User-defined XSL Zhiping Yan, BeiGene, Beijing, China Huadan Li, BeiGene, Beijing, China ABSTRACT US Food and Drug

More information

XSLT. Announcements (October 24) XSLT. CPS 116 Introduction to Database Systems. Homework #3 due next Tuesday Project milestone #2 due November 9

XSLT. Announcements (October 24) XSLT. CPS 116 Introduction to Database Systems. Homework #3 due next Tuesday Project milestone #2 due November 9 XSLT CPS 116 Introduction to Database Systems Announcements (October 24) 2 Homework #3 due next Tuesday Project milestone #2 due November 9 XSLT 3 XML-to-XML rule-based transformation language Used most

More information

Sample Text Point Instruction

Sample Text Point Instruction TSMAD29/DIPWG7 11.11B Paper for Consideration by TSMAD/DIPWG Potential Adjustments to S-100 Part 9 Portrayal - Text Styles. Submitted by: CARIS Executive Summary: This paper discusses the introduction

More information

Style Sheet A. Bellaachia Page: 22

Style Sheet A. Bellaachia Page: 22 Style Sheet How to render the content of an XML document on a page? Two mechanisms: CSS: Cascading Style Sheets XSL (the extensible Style sheet Language) CSS Definitions: CSS: Cascading Style Sheets Simple

More information

store process communicate

store process communicate store process communicate 2011-10-04 store as XML communicate using HTML and CSS process with XSL

More information

Advanced XSLT editing: Content query web part (CQWP) Dolev Raz SharePoint top soft Soft.co.il

Advanced XSLT editing: Content query web part (CQWP) Dolev Raz SharePoint top soft Soft.co.il Advanced XSLT editing: Content query web part (CQWP) Dolev Raz SharePoint Implementer @ top soft dolev_r@top- Soft.co.il About Me Dolev Raz 22 years-old Live in Qiriyat Ono Works in Logic trough Top Soft

More information

XSLT. Patryk Czarnik. XML and Applications 2014/2015 Lecture

XSLT. Patryk Czarnik. XML and Applications 2014/2015 Lecture XSLT Patryk Czarnik XML and Applications 2014/2015 Lecture 10 15.12.2014 XSLT where does it come from? XSL Extensible Stylesheet Language Presentation of XML documents by transformation XSLT XSL Transformations

More information

Chapter 1. DocBook XSL

Chapter 1. DocBook XSL Chapter 1. DocBook XSL Bob Stayton $Id: publishing.xml,v 1.4 2002/06/03 19:26:58 xmldoc Exp $ Copyright 2000 Bob Stayton Table of Contents Using XSL tools to publish DocBook documents... 1 XSLT engines...

More information

XML and Databases. Outline XML. XML, typical usage scenario XML. 1. extensible Stylesheet Language X M L. Sebastian Maneth NICTA and UNSW

XML and Databases. Outline XML. XML, typical usage scenario XML. 1. extensible Stylesheet Language X M L. Sebastian Maneth NICTA and UNSW Outline XML and Databases 1. extensible Stylesheet Language Transformations (XSLT) 2. Templates (match pattern action) Lecture 11 XSLT Stylesheets and Transforms Sebastian Maneth NICTA and UNSW 3. Default

More information

The Transformation Language XSL

The Transformation Language XSL Chapter 8 The Transformation Language XSL 8.1 XSL: Extensible Stylesheet Language developed from CSS (Cascading Stylesheets) scripting language for transformation of data sources to HTML or any other optical

More information

Advanced XQuery and XSLT

Advanced XQuery and XSLT NPRG036 XML Technologies Lecture 9 Advanced XQuery and XSLT 30. 4. 2018 Author: Irena Holubová Lecturer: Martin Svoboda http://www.ksi.mff.cuni.cz/~svoboda/courses/172-nprg036/ Lecture Outline XQuery Update

More information

Generating Variants Using XSLT Tutorial

Generating Variants Using XSLT Tutorial Table of Contents 1. Overview... 1 2. About this tutorial... 1 3. Setting up the pure::variants project... 1 4. Setting up the feature model... 3 5. Setting up the family model... 4 6. Setting up the XSLT

More information

Introduction to XSLT. Version 1.0 July nikos dimitrakas

Introduction to XSLT. Version 1.0 July nikos dimitrakas Introduction to XSLT Version 1.0 July 2011 nikos dimitrakas Table of contents 1 INTRODUCTION... 3 1.1 XSLT... 3 1.2 PREREQUISITES... 3 1.3 STRUCTURE... 3 2 SAMPLE DATA... 4 3 XSLT... 6 4 EXAMPLES... 7

More information

Comp 336/436 - Markup Languages. Fall Semester Week 9. Dr Nick Hayward

Comp 336/436 - Markup Languages. Fall Semester Week 9. Dr Nick Hayward Comp 336/436 - Markup Languages Fall Semester 2018 - Week 9 Dr Nick Hayward DEV Week assessment Course total = 25% project outline and introduction developed using a chosen markup language consider and

More information

XSLT program. XSLT elements. XSLT example. An XSLT program is an XML document containing

XSLT program. XSLT elements. XSLT example. An XSLT program is an XML document containing XSLT CPS 216 Advanced Database Systems Announcements (March 24) 2 Homework #3 will be assigned next Tuesday Reading assignment due next Wednesday XML processing in Lore (VLDB 1999) and Niagara (VLDB 2003)

More information

XSLT Version 2.0 is Turing-Complete: A Purely Transformation Based Proof

XSLT Version 2.0 is Turing-Complete: A Purely Transformation Based Proof XSLT Version 2.0 is Turing-Complete: A Purely Transformation Based Proof Ruhsan Onder and Zeki Bayram Department of Computer Engineering/Internet Technologies Research Center Eastern Mediterranean University

More information

Functions & Conditional Statements

Functions & Conditional Statements Functions & Conditional Statements OmniUpdate User Training Conference 2015 OmniUpdate, Inc. 1320 Flynn Road, Suite 100 Camarillo, CA 93012 OmniUpdate, Inc. 1320 Flynn Road, Suite 100 Camarillo, CA 93012

More information

Print & Page Layout Community W3C

Print & Page Layout Community W3C @ W3C Tony Graham Chair http://www.w3.org/community/ppl/ public-ppl@w3.org @pplcg irc://irc.w3.org:6665/#ppl Version 1.0 14 February 2014 2014 Mentea @ W3C 5 Survey 8 Decision making in XSL-FO processing

More information

COPYRIGHTED MATERIAL. Contents. Part I: Introduction 1. Chapter 1: What Is XML? 3. Chapter 2: Well-Formed XML 23. Acknowledgments

COPYRIGHTED MATERIAL. Contents. Part I: Introduction 1. Chapter 1: What Is XML? 3. Chapter 2: Well-Formed XML 23. Acknowledgments Acknowledgments Introduction ix xxvii Part I: Introduction 1 Chapter 1: What Is XML? 3 Of Data, Files, and Text 3 Binary Files 4 Text Files 5 A Brief History of Markup 6 So What Is XML? 7 What Does XML

More information

Hypermedia and the Web XSLT and XPath

Hypermedia and the Web XSLT and XPath Hypermedia and the Web XSLT and XPath XSLT Extensible Stylesheet Language for Transformations Compare/contrast with CSS: CSS is used to change display characteristics of primarily HTML documents. But,

More information

Appendix H XML Quick Reference

Appendix H XML Quick Reference HTML Appendix H XML Quick Reference What Is XML? Extensible Markup Language (XML) is a subset of the Standard Generalized Markup Language (SGML). XML allows developers to create their own document elements

More information

DocBook: A Case Study and Anecdotes. Norman Walsh Sun Microsystems, Inc.

DocBook: A Case Study and Anecdotes. Norman Walsh Sun Microsystems, Inc. DocBook: A Case Study and Anecdotes Norman Walsh Sun Microsystems, Inc. Background What is DocBook? A DocBook Document DocBook History DocBook s Purpose 2 / 30 What is DocBook? DocBook is an XML vocabulary

More information

Transformation mit XSLT/XPath

Transformation mit XSLT/XPath Transformation mit XSLT/XPath Seminar Dokumentenverarbeitung Sommersemester 2002 Jörn Clausen Transformation mit XSLT/XPath p.1/10 Technikalitäten Dateien in /vol/lehre/dokumentenverarbeitung/ Environment

More information

The Transformation Language XSL

The Transformation Language XSL Chapter 8 The Transformation Language XSL 8.1 XSL: Extensible Stylesheet Language developed from CSS (Cascading Stylesheets) scripting language for transformation of data sources to HTML or any other optical

More information

Implementing XForms using interactive XSLT 3.0

Implementing XForms using interactive XSLT 3.0 Implementing XForms using interactive XSLT 3.0 O'Neil Delpratt Saxonica Debbie Lockett Saxonica Abstract In this paper, we discuss our experiences in developing

More information

Thinking About a Personal Database

Thinking About a Personal Database Chapter 17: The idiary Database: A Case Study in Database Organization Fluency with Information Technology Third Edition by Lawrence Snyder Thinking About a Personal Database Regular Versus Irregular Data

More information

Programming issues 5.1 CONTROL STATEMENTS

Programming issues 5.1 CONTROL STATEMENTS C H A P T E R 5 Programming issues 5.1 Control statements 110 5.2 Combining stylesheets with include and import 126 5.3 Named templates 132 5.4 Debugging 133 5.5 Extensions to XSLT 143 5.6 Numbers and

More information

Excel to XML v3. Compatibility Switch 13 update 1 and higher. Windows or Mac OSX.

Excel to XML v3. Compatibility Switch 13 update 1 and higher. Windows or Mac OSX. App documentation Page 1/5 Excel to XML v3 Description Excel to XML will let you submit an Excel file in the format.xlsx to a Switch flow where it will be converted to XML and/or metadata sets. It will

More information

Advanced Studies in IT CT433 Exam Q&A

Advanced Studies in IT CT433 Exam Q&A Advanced Studies in IT CT433 Exam Q&A Dr. Axel Polleres www.deri.ie Copyright 2008 Digital Enterprise Research Institute. All rights reserved. XML Know what is well-formed XML, valid XML Well-formed: Close

More information

8/1/2016. XSL stands for EXtensible Stylesheet Language. CSS = Style Sheets for HTML XSL = Style Sheets for XML. XSL consists of four parts:

8/1/2016. XSL stands for EXtensible Stylesheet Language. CSS = Style Sheets for HTML XSL = Style Sheets for XML. XSL consists of four parts: XSL stands for EXtensible Stylesheet Language. CSS = Style Sheets for HTML XSL = Style Sheets for XML http://www.w3schools.com/xsl/ kasunkosala@yahoo.com 1 2 XSL consists of four parts: XSLT - a language

More information

Birkbeck (University of London)

Birkbeck (University of London) Birkbeck (University of London) MSc Examination Department of Computer Science and Information Systems Internet and Web Technologies (COIY063H7) 15 Credits Date of Examination: 13 June 2017 Duration of

More information

6/6/2016 3:23 PM 1 of 15

6/6/2016 3:23 PM 1 of 15 6/6/2016 3:23 PM 1 of 15 6/6/2016 3:23 PM 2 of 15 2) XSLT Selection XSLT allows for selection with two statements xsl:if chooses to do or not to do (very basic) xsl:choose chooses from several alternatives

More information

Proposal: Codelists 1.0 April 2003

Proposal: Codelists 1.0 April 2003 Proposal: Codelists 1.0 April 2003 Proposal: Codelists / 1.0 / April 2003 1 Document Control Abstract In many cases, there is a need to use sets of pre-defined codes (such as country and currency codes)

More information

Developing High-Quality XSLT Stylesheets

Developing High-Quality XSLT Stylesheets XSLT and XQuery September 13, 2018 Developing High-Quality XSLT Stylesheets Priscilla Walmsley, Datypic, Inc. Class Outline Introduction...2 Clarity...8 Modularity... 11 Robustness...27 Other Improvements...35

More information

XML and XSLT. XML and XSLT 10 February

XML and XSLT. XML and XSLT 10 February XML and XSLT XML (Extensible Markup Language) has the following features. Not used to generate layout but to describe data. Uses tags to describe different items just as HTML, No predefined tags, just

More information

Extreme Java G Session 3 - Sub-Topic 5 XML Information Rendering. Dr. Jean-Claude Franchitti

Extreme Java G Session 3 - Sub-Topic 5 XML Information Rendering. Dr. Jean-Claude Franchitti Extreme Java G22.3033-007 Session 3 - Sub-Topic 5 XML Information Rendering Dr. Jean-Claude Franchitti New York University Computer Science Department Courant Institute of Mathematical Sciences 1 Agenda

More information

Applied Databases. Sebastian Maneth. Lecture 18 XPath and XSLT. University of Edinburgh - March 23rd, 2017

Applied Databases. Sebastian Maneth. Lecture 18 XPath and XSLT. University of Edinburgh - March 23rd, 2017 Applied Databases Lecture 18 XPath and XSLT Sebastian Maneth University of Edinburgh - March 23rd, 2017 2 Outline Lecture 19 (Monday March 27th): Recap / Exam preparation Lecture 20 (Monday March 27th):

More information

1.1 Customize the Layout and Appearance of a Web Page. 1.2 Understand ASP.NET Intrinsic Objects. 1.3 Understand State Information in Web Applications

1.1 Customize the Layout and Appearance of a Web Page. 1.2 Understand ASP.NET Intrinsic Objects. 1.3 Understand State Information in Web Applications LESSON 1 1.1 Customize the Layout and Appearance of a Web Page 1.2 Understand ASP.NET Intrinsic Objects 1.3 Understand State Information in Web Applications 1.4 Understand Events and Control Page Flow

More information

Improving Existing XSLT Stylesheets. Improving Existing XSLT Stylesheets Priscilla Walmsley

Improving Existing XSLT Stylesheets. Improving Existing XSLT Stylesheets Priscilla Walmsley Improving Existing XSLT Stylesheets 19 September 2013 Improving Existing XSLT Stylesheets Priscilla Walmsley Datypic, Inc. Attribution- Noncommercial-Share Alike 3.0 Unported License www.xmlsummerschool.com

More information

INLS 760 Web Databases Lecture 12 XML, XPATH, XSLT

INLS 760 Web Databases Lecture 12 XML, XPATH, XSLT INLS 760 Web Databases Lecture 12 XML, XPATH, XSLT Robert Capra Spring 2013 Note: These lecture notes are based on the tutorials on XML, XPath, and XSLT at W3Schools: http://www.w3schools.com/ and from

More information

Deliverable 5.2 Annex B Implementing the MESMA Metadata Profile on GeoNetwork 2.6.0

Deliverable 5.2 Annex B Implementing the MESMA Metadata Profile on GeoNetwork 2.6.0 Deliverable 5.2 Annex B Implementing the MESMA Metadata Profile on GeoNetwork 2.6.0 WP Leader: Gerry Sutton Coastal & Marine Resource Centre, University College Cork (Partner 8, UCC Cork, Ireland) Author:

More information

White Paper. XML-Based Export and Import of Objects Using XSLT. Fabasoft Folio 2017 R1 Update Rollup 1

White Paper. XML-Based Export and Import of Objects Using XSLT. Fabasoft Folio 2017 R1 Update Rollup 1 White Paper XML-Based Export and Import of Objects Using XSLT Fabasoft Folio 2017 R1 Update Rollup 1 Copyright Fabasoft R&D GmbH, Linz, Austria, 2018. All rights reserved. All hardware and software names

More information

Generating Web Pages Using XSLT

Generating Web Pages Using XSLT Generating Web Pages Using XSLT 238 XSLT for Data Interchange 239 6.1.xml: An Employee List Document

More information

Excel to XML v4. Version adds two Private Data sets

Excel to XML v4. Version adds two Private Data sets Excel to XML v4 Page 1/6 Excel to XML v4 Description Excel to XML will let you submit an Excel file in the format.xlsx to a Switch flow were it will be converted to XML and/or metadata sets. It will accept

More information

Introduction to XSLT

Introduction to XSLT Summer School 2011 1/59 Introduction to XSLT TEI@Oxford July 2011 Summer School 2011 2/59 Publishing XML files using XSLT Our work will be divided into four parts Basic XSLT Target: make HTML from TEI

More information

XSLT and Structural Recursion. Gestão e Tratamento de Informação DEI IST 2011/2012

XSLT and Structural Recursion. Gestão e Tratamento de Informação DEI IST 2011/2012 XSLT and Structural Recursion Gestão e Tratamento de Informação DEI IST 2011/2012 Outline Structural Recursion The XSLT Language Structural Recursion : a different paradigm for processing data Data is

More information

EXAM IN SEMI-STRUCTURED DATA Study Code Student Id Family Name First Name

EXAM IN SEMI-STRUCTURED DATA Study Code Student Id Family Name First Name EXAM IN SEMI-STRUCTURED DATA 184.705 10. 01. 2017 Study Code Student Id Family Name First Name Working time: 100 minutes. Exercises have to be solved on this exam sheet; Additional slips of paper will

More information

XPath Quick Reference

XPath Quick Reference XPath Quick Reference Node Types Nodes can be of the following types: NodeType root element attribute text cornrnent processing narnespace Name Element name Attribute name Processing instruction target

More information

Web Programming Paper Solution (Chapter wise)

Web Programming Paper Solution (Chapter wise) What is valid XML document? Design an XML document for address book If in XML document All tags are properly closed All tags are properly nested They have a single root element XML document forms XML tree

More information

Übung 2 Klaus Schild,

Übung 2 Klaus Schild, Übung 2 1 Übung 2 Fragen zur Vorlesung? In Depth: Entities Musterlösung sung des Übungblattes 1 Musterlösung sung des Übungsblattes 2 Weitere Musterfragen XML Tools: using Eclipse with DTDs XML Extra:

More information