Semantic Web. XSLT: XML Transformation. Morteza Amini. Sharif University of Technology Fall 95-96
|
|
- Barnaby Ball
- 5 years ago
- Views:
Transcription
1 ه عا ی Semantic Web XSLT: XML Transformation Morteza Amini Sharif University of Technology Fall 95-96
2 Outline Fundamentals of XSLT XPath extensible Stylesheet Language Cocoon 2
3 XSLT XSLT stands for extensible Stylesheet Language Transformations It is used to transform XML documents into other kinds of documents, e.g. HTML, PDF, XML, XSLT uses two input files: The XML document containing the actual data. The XSL document containing both the framework in which to insert the data, and XSLT commands to do so. 3
4 XSLT Architecture Source XML doc XSL stylesheet XSL processor Target Document 4
5 Some Special Transforms XML to HTML for old browsers XML to LaTeX for TeX layout XML to SVG graphs, charts, trees XML to tab-delimited for db/stat packages XML to plain-text occasionally useful XML to XSL-FO formatting objects 5
6 XSLT Data Model XSLT reads an XML documents as a source tree Transforms the documents into other formats (e.g., HTML) Transformations are specified in a stylesheet To navigate the tree XSLT uses XPath 6
7 Outline Fundamentals of XSLT XPath extensible Stylesheet Language Cocoon 7
8 Introduction to XPath XPath is a syntax for addressing parts of an XML document by describing paths through the document hierarchy, specifying constraints to match against the document's structure. XSL uses XPath expressions to determine which elements match a template, select nodes upon which to perform operations. 8
9 XPath Basics XPath expressions superficially resemble UNIX pathnames, e.g. poem/stanza/line refers to "all line elements which are children of stanza elements which are children of poem elements" XPath expressions are evaluated relative to a "context node", which is analogous to the "current working directory" in UNIX or DOS. The XPath expression for this is "." 9
10 XPath Basics - Selecting Nodes (1) Expression nodename Description Selects all nodes with the name "nodename" / Selects from the root node // Selects nodes in the document (from the current node) that match the selection no matter where they are. Selects the current node.. Selects the parent of the current Selects attributes 10
11 XPath Basics - Selecting Nodes (2) Path Expression bookstore /bookstore bookstore/book //book bookstore//book //@lang Result Selects all nodes with the name "bookstore" Selects the root element bookstore Note: If the path starts with a slash ( / ) it always represents an absolute path to an element! Selects all book elements that are children of bookstore Selects all book elements no matter where they are in the document Selects all book elements that are descendant of the bookstore element, no matter where they are under the bookstore element Selects all attributes that are named lang 11
12 XPath Basics Predicates or Conditions Predicates are used to find a specific node or a node that contains a specific value. Predicates are always embedded in square brackets. Path Expression /bookstore/book[1] /bookstore/book[last()] /bookstore/book[last()-1] /bookstore/book[position()<3] //title[@lang] //title[@lang='eng'] /bookstore/book[price>35.00] /bookstore/book[price>35.00]/title Result Selects the first book element that is the child of the bookstore element. Selects the last book element that is the child of the bookstore element Selects the last but one book element that is the child of the bookstore element Selects the first two book elements that are children of the bookstore element Selects all the title elements that have an attribute named lang Selects all the title elements that have an attribute named lang with a value of 'eng' Selects all the book elements of the bookstore element that have a price element with a value greater than Selects all the title elements of the book elements of the bookstore element that have a price element with a value greater than
13 XPath Basics Wildcards XPath wildcards can be used to select unknown XML elements. Wildcard Description * Matches any element node() Matches any attribute node Matches any node of any kind Path Expression Result /bookstore/* Selects all the child nodes of the bookstore element //* Selects all elements in the document //title[@*] Selects all title elements which have any attribute 13
14 XPath Basics Selecting Several Paths By using the operator in an XPath expression you can select several paths. Path Expression //book/title //book/price //title //price /bookstore/book/title //price Result Selects all the title AND price elements of all book elements Selects all the title AND price elements in the document Selects all the title elements of the book element of the bookstore element AND all the price elements in the document 14
15 A Simple Example (1) Consider the following XML document: <poem> <title>roses</title> <author>i m a Poet</author> <stanza> <line>roses are red</line> <line>violets are blue</line> </stanza> <stanza> <line>i'm a poet</line> <punch>and you're not!</punch> </stanza> </poem> 15
16 A Simple Example (2) The XPath "poem/stanza/line" selects <poem> <title>roses</title> <author>i m a Poet</author> <stanza> <line>roses are red</line> <line>violets are blue</line> </stanza> <stanza> <line>i'm a poet</line> <punch>and you're not!</punch> </stanza> </poem> 16
17 Example: Wildcards The XPath "poem/stanza/*" selects <poem> <title>roses</title> <author>i m a Poet</author> <stanza> <line>roses are red</line> <line>violets are blue</line> </stanza> <stanza> <line>i'm a poet</line> <punch>and you're not!</punch> </stanza> </poem> 17
18 Example: Descendants The XPath "poem//punch" selects: <poem> <title>roses</title> <author>i m a Poet</author> <stanza> <line>roses are red</line> <line>violets are blue</line> </stanza> <stanza> <line>i'm a poet</line> <punch>and you're not!</punch> </stanza> </poem> 18
19 Example: Sequencing (1) The XPath "poem/stanza/line[1]" selects: <poem> <title>roses</title> <author>i m a Poet</author> <stanza> <line>roses are red</line> <line>violets are blue</line> </stanza> <stanza> <line>i'm a poet</line> <punch>and you're not!</punch> </stanza> </poem> 19
20 Example: Sequencing (2) The XPath "poem/stanza/line[position() = last()]" selects: <poem> <title>roses</title> <author>i m a Poet</author> <stanza> <line>roses are red</line> <line>violets are blue</line> </stanza> <stanza> <line>i'm a poet</line> <punch>and you're not!</punch> </stanza> </poem> 20
21 Example: Selecting Text Nodes The XPath "poem/author/text()" selects: <poem> <title>roses</title> <author>i m a Poet</author> <stanza> <line>roses are red</line> <line>violets are blue</line> </stanza> <stanza> <line>i'm a poet</line> <punch>and you're not!</punch> </stanza> </poem> 21
22 Example: Conditionals The XPath "poem/stanza[punch]" selects: <poem> <title>roses</title> <author>i m a Poet</author> <stanza> <line>roses are red</line> <line>violets are blue</line> </stanza> <stanza> <line>i'm a poet</line> <punch>and you're not!</punch> </stanza> </poem> 22
23 Example: Conditionals - Equality The XPath //line[text()="i'm a poet"] selects: <poem> <title>roses</title> <author>i m a Poet</author> <stanza> <line>roses are red</line> <line>violets are blue</line> </stanza> <stanza> <line>i'm a poet</line> <punch>and you're not!</punch> </stanza> </poem> 23
24 Outline Fundamentals of XSLT XPath extensible Stylesheet Language Cocoon 24
25 A Simple XSL Example File data.xml: <?xml version="1.0"?> <?xml-stylesheet type="text/xsl" href="render.xsl"?> <message>hello World!</message> File render.xsl: <?xml version="1.0"?> <xsl:stylesheet version="1.0 xmlns:xsl=" <!-- one rule, to transform the input root (/) --> <xsl:template match="/"> <html><body> <h1><xsl:value-of select="message"/></h1> </body></html> </xsl:template> </xsl:stylesheet> 25
26 Stylesheet (.xsl file) It is a well-formed XML document It is a collection of template rules A template rule consists of pattern and a template Pattern is specified in XPath and locates the node of the XML tree. The located node is replaced by the template in the result 26
27 Stylesheet (2) An XSLT document has the.xsl extension The XSLT document begins with: <?xml version="1.0"?> <xsl:stylesheet version="1.0" xmlns:xsl=" Contains one or more templates, such as: <xsl:template match="/">... </xsl:template> And ends with: </xsl:stylesheet> 27
28 Stylesheet (3) The template <xsl:template match="/"> says to select the entire file You can think of this as selecting the root node of the XML tree Inside this template, <xsl:value-of select="message"/> selects the message child Alternative XPath expressions that would also work:./message /message/text()./message/text() 28
29 Stylesheet (4) The XSL was: <xsl:template match="/"> <html><body> <h1><xsl:value-of select="message"/></h1> </body></html> </xsl:template> The <xsl:template match="/"> chooses the root The <html> <body> <h1> is written to the output file The contents of message is written to the output file The </h1> </body> </html> is written to the output file 29 The resultant file looks like: <html><body> <h1>hello World!</h1> </body></html>
30 How XSLT Works The XML text document is read in and stored as a tree of nodes. The <xsl:template match="/"> template is used to select the entire tree. The rules within the template are applied to the matching nodes, thus changing the structure of the XML tree. If there are other templates, they must be called explicitly from the main template. Unmatched parts of the XML tree are not changed. After the template is applied, the tree is written out again as a text document. 30
31 Where XSLT Can be Used Server side: A server can use XSLT to change XML files into HTML files before sending them to the client. Client side: A modern browser can use XSLT to change XML into HTML on the client side. This is what we will mostly be doing in this class. Most users seldom update their browsers. If you want everyone to see your pages, do any XSL processing on the server side. 31
32 xsl:value-of <xsl:value-of select="xpath expression"/> selects the contents of an element and adds it to the output stream. The select attribute is required. Notice that xsl:value-of is not a container, hence it needs to end with a slash. Example (from an earlier slide): <h1> <xsl:value-of select="message"/> </h1> 32
33 xsl:for-each xsl:for-each is a kind of loop statement The syntax is <xsl:for-each select="xpath expression"> Text to insert and rules to apply </xsl:for-each> Example: to select every book (//book) and make an unordered list (<ul>) of their titles (title), use: <ul> <xsl:for-each select="//book"> <li> <xsl:value-of select="title"/> </li> </xsl:for-each> </ul> 33
34 Filtering Output (1) You can filter (restrict) output by adding a criterion to the select attribute s value: <ul> <xsl:for-each select="//book"> <li> <xsl:value-of select="title[../author='terry Pratchett']"/> </li> </xsl:for-each> </ul> This will select book titles by Terry Pratchett 34
35 Filtering Output (2) Here is the filter we just used: <xsl:value-of select="title[../author='terry Pratchett']"/> author is a sibling of title, so from title we have to go up to its parent, book, then back down to author. This filter requires a quote within a quote, so we need both single quotes and double quotes. Legal filter operators are: =!= < > Numbers should be quoted, but apparently don t have to be. 35
36 Filtering Output (3) Here s what we did: <xsl:for-each select="//book"> <li> <xsl:value-of select="title[../author='terry Pratchett']"/> </li> </xsl:for-each> It doesn t work right! This will output <li> and </li> for every book, so we will get empty bullets for authors other than Terry Pratchett. There is no obvious way to solve this with just xsl:value-of 36
37 xsl:if xsl:if allows us to include content if a given condition (in the test attribute) is true Example: <xsl:for-each select="//book"> <xsl:if test="author='terry Pratchett'"> <li> <xsl:value-of select="title"/> </li> </xsl:if> </xsl:for-each> This does work correctly! 37
38 xsl:choose The xsl:choose... xsl:when... xsl:otherwise construct is XML s equivalent of Java s switch... case... default statement The syntax is: <xsl:choose> <xsl:when test="some condition">... some code... </xsl:when> <xsl:when test="some condition">... some code... </xsl:when> <xsl:otherwise>... some code... </xsl:otherwise> </xsl:choose> xsl:choose is often used within an xsl:for-each loop. 38
39 xsl:sort You can place an xsl:sort inside an xsl:for-each. The attribute of the sort tells what field to sort on. Example: <ul> <xsl:for-each select="//book"> <xsl:sort select="author" order= descending"/> <li> <xsl:value-of select="title"/> by <xsl:value-of select="author"/> </li> </xsl:for-each> </ul> This example creates a list of titles and authors, sorted by author. 39
40 Creating Tags from XML Data Suppose the XML contains <name>semantic Web Course Home Page</name> <url> And you want to turn this into <a href=" Semantic Web Course Home Page</a> We need additional tools to do this! 40
41 Creating Tags--solution 1 Suppose the XML contains <name>semantic Web Course Home Page</name> <url> <xsl:attribute name="..."> adds the named attribute to the enclosing tag. The value of the attribute is the content of this tag. Example: <a> <xsl:attribute name="href"> <xsl:value-of select="url"/> </xsl:attribute> <xsl:value-of select="name"/> </a> Result: <a href=" Semantic Web Course Home Page</a> 41
42 Creating Tags--solution 2 Suppose the XML contains <name>semantic Web Course Home Page</name> <url> An attribute value template (AVT) consists of braces { } inside the attribute value. The content of the braces is replaced by its value. Example: <a href="{url}"> <xsl:value-of select="name"/> </a> Result: <a href=" Semantic Web Course Home Page</a> 42
43 Modularization Modularization--breaking up a complex program into simpler parts--is an important programming tool. In programming languages modularization is often done with functions or methods. In XSL we can do something similar with xsl:apply-templates. For example, suppose we have a DTD for book with parts titlepage, tableofcontents, chapter, and index. We can create separate templates for each of these parts. 43
44 Book Example <xsl:template match="/"> <html> <body> <xsl:apply-templates/> </body> </html> </xsl:template> <xsl:template match="tableofcontents"> <h1>table of Contents</h1> <xsl:apply-templates select="chapternumber"/> <xsl:apply-templates select="chaptername"/> <xsl:apply-templates select="pagenumber"/> </xsl:template> Etc. 44
45 xsl:apply-templates The <xsl:apply-templates> element applies a template rule to the current element or to the current element s child nodes. If we add a select attribute, it applies the template rule only to the child that matches. If we have multiple <xsl:apply-templates> elements with select attributes, the child nodes are processed in the same order as the <xsl:apply-templates> elements 45
46 Applying templates to children <book> <title>xml</title> <author>gregory Brill</author> </book> With this line: XML by Gregory Brill <xsl:template match="/"> <html> <head></head> <body> <b><xsl:value-of select="/book/title"/></b> <xsl:apply-templates select="/book/author"/> </body> </html> </xsl:template> <xsl:template match="/book/author"> by <i><xsl:value-of select="."/></i> </xsl:template> Without this line: XML 46
47 Tools for XSL Development There are a number of free and commercial XSL tools available. XSLT processors: MSXML, which currently supports the latest XSLT specification (native Win32). Xalan from Apache (C++, Java). Editors and browsers Internet Explorer 6.0 and uppers XML Spy (commercial) XML Spear (Free) XML Fox (Free) 47
48 Outline Fundamentals of XSLT XPath extensible Stylesheet Language Cocoon 48
49 Cocoon Cocoon is Apache s dynamic XML Publishing Framework. Cocoon uses XSLT. Cocoon allows separation of content, logic and presentation. Making sure people can interact and collaborate on a project, without stepping on each other toes, and component-based web development. Cocoon is a web-application that runs using Apache Tomcat (Cocoon.war). 49
50 What Cocoon can do browser HTML/PDF/... request WML request XML document (static or dynamic) request? New Device 50
51 Cocoon Pipeline Cocoon introduced the idea of a pipeline to handle a request. A pipeline is a series of steps for processing a particular kind of content. XML Document SAX SAX HTML File File Generator XSLT Transformer HTML serializer 51
52 Cocoon Processing 52
53 Separating Content and Layout 53
54 Sitemap Centralized configuration file in XML Sub-sitemaps possible Contains set of ready-to-use components Use them to build functions Write and drop-in your own Contains collection of pipelines (functions) One generator 0-n transformer One serializer 54
55 Sitemap (2) 55
56 References Specifications: An excellent XSLT tutorial: Another tutorial: Cocoon: 56
57 Any Question... 57
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 informationSeleniet XPATH Locator QuickRef
Seleniet XPATH Locator QuickRef Author(s) Thomas Eitzenberger Version 0.2 Status Ready for review Page 1 of 11 Content Selecting Nodes...3 Predicates...3 Selecting Unknown Nodes...4 Selecting Several Paths...5
More informationXSL 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 informationWeb Services Week 3. Fall Emrullah SONUÇ. Department of Computer Engineering Karabuk University
Web Services Week 3 Emrullah SONUÇ Department of Computer Engineering Karabuk University Fall 2017 1 Recap XML, Writing XML Rules for Writing XML Elements, Attributes, and Values XSL, XSLT 2 Contents Homework
More informationXML 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 informationCOP 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 informationIntroduction 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 informationComp 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 informationXPath 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 informationXML. 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 informationXSLT: 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 informationExtensible 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 informationIntroduction 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 information8/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 informationXSLT 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 informationXSL 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 informationAuthor: 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 informationLars 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 informationPresentation. 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 informationStyle 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 informationXSLT. 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 informationExam : 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 informationXSLT. 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 informationHypermedia 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 informationComputer 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 informationXML 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 informationXSL 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 informationXSL 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 informationXPath 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 informationXML 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 informationXSLT (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 information1. Documenting your project using the Eclipse help system
1. Documenting your project using the Eclipse help system Build easy-to-use and searchable help documentation Arthur Barr, Software engineer, IBM Summary: The Eclipse Platform, which provides a very powerful
More informationBirkbeck (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 informationTranscript of Abel Braaksma's Talk on XSLT Streaming at XML Prague 2014
Transcript of Abel Braaksma's Talk on XSLT Streaming at XML Prague 2014 The video of Abel's talk is here: http://www.youtube.com/watch?v=kaupzeew4xg&t=318m25s Abel's slides are here: http://exselt.net/portals/1/streaming%20for%20the%20masses.zip
More informationxmlns:gu="http://www.gu.au/empdtd" xmlns:uky="http://www.uky.edu/empdtd">
Namespaces Namespaces An XML document may use more than one DTD or schema Since each structuring document was developed independently, name clashes may appear The solution is to use a different prefix
More informationXML: Extensible Markup Language
XML: Extensible Markup Language CSC 375, Fall 2015 XML is a classic political compromise: it balances the needs of man and machine by being equally unreadable to both. Matthew Might Slides slightly modified
More informationDisplay 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 informationXML 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 informationXML 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 informationDITA 1.3 Feature Article A Brief Introduction to XSL for Processing DITA Content
DITA 1.3 Feature Article A Brief Introduction to XSL for Processing DITA Content An OASIS DITA Adoption Technical Committee Publication Chunk1739435240 iii Contents Chunk1739435240 Part I What is XSL?
More informationCSC System Development with Java Working with XML
CSC 308 2.0 System Development with Java Working with XML Department of Statistics and Computer Science What is XML XML stands for extensible Markup Language is designed to transport and store data XML
More informationSemi-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 information6/3/2016 8:44 PM 1 of 35
6/3/2016 8:44 PM 1 of 35 6/3/2016 8:44 PM 2 of 35 2) Background Well-formed XML HTML XSLT Processing Model 6/3/2016 8:44 PM 3 of 35 3) XPath XPath locates items within an XML file It relies on the XML
More informationStructured documents
Structured documents An overview of XML Structured documents Michael Houghton 15/11/2000 Unstructured documents Broadly speaking, text and multimedia document formats can be structured or unstructured.
More informationGenerating 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 informationIntroduction 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 informationIntroduction 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 informationWeb 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 informationPresentation 19: XML technologies part 2: XSL, XSLT, XSL-FO, XPath & XML Programming
Presentation 19: XML technologies part 2: XSL, XSLT, XSL-FO, XPath & XML Programming Outline XML recap Formatting CSS or XSL? XPath XSL/XSLT XSL-FO XML Programming Slide 2 XML markup recap XML based on
More informationBurrows & 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 informationApplied 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 informationXML. Rodrigo García Carmona Universidad San Pablo-CEU Escuela Politécnica Superior
XML Rodrigo García Carmona Universidad San Pablo-CEU Escuela Politécnica Superior XML INTRODUCTION 2 THE XML LANGUAGE XML: Extensible Markup Language Standard for the presentation and transmission of information.
More informationExtreme 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 informationinfo-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~ Ian Hunneybell: DIA Revision Notes ~
XML is based on open standards, and is text-based, thereby making it accessible to all. It is extensible, thus allowing anyone to customise it for their own needs, to publish for others to use, and to
More informationManipulating 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 informationXSLT 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 informationXSLT (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 informationThe main Topics in this lecture are:
Lecture 15: Working with Extensible Markup Language (XML) The main Topics in this lecture are: - Brief introduction to XML - Some advantages of XML - XML Structure: elements, attributes, entities - What
More informationXSLT 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 informationCopyright 2008 Pearson Education, Inc. Publishing as Pearson Addison-Wesley. Chapter 7 XML
Chapter 7 XML 7.1 Introduction extensible Markup Language Developed from SGML A meta-markup language Deficiencies of HTML and SGML Lax syntactical rules Many complex features that are rarely used HTML
More informationGenerating Web Pages Using XSLT
Generating Web Pages Using XSLT 238 XSLT for Data Interchange 239 6.1.xml: An Employee List Document
More informationAdvanced 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 informationXSLT. 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 informationAdvanced 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 informationIntroduction 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 informationCopyright 2007 Ramez Elmasri and Shamkant B. Navathe. Slide 27-1
Slide 27-1 Chapter 27 XML: Extensible Markup Language Chapter Outline Introduction Structured, Semi structured, and Unstructured Data. XML Hierarchical (Tree) Data Model. XML Documents, DTD, and XML Schema.
More information<?xml version = 1.0 encoding= windows-874?> <?xml-stylesheet type= text/css href= #xmldocs?> <style id= xmldocs > element-name{ } </style>
XML Displaying Displaying XML: CSS A modern web browser and a cascading style sheet (CSS) may be used to view XML as if it were HTML A style must be defined for every XML tag, or the browser displays it
More informationINLS 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 informationXSL 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 informationComputer 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 informationOne of the main selling points of a database engine is the ability to make declarative queries---like SQL---that specify what should be done while
1 One of the main selling points of a database engine is the ability to make declarative queries---like SQL---that specify what should be done while leaving the engine to choose the best way of fulfilling
More information7.1 Introduction. extensible Markup Language Developed from SGML A meta-markup language Deficiencies of HTML and SGML
7.1 Introduction extensible Markup Language Developed from SGML A meta-markup language Deficiencies of HTML and SGML Lax syntactical rules Many complex features that are rarely used HTML is a markup language,
More informationA Guide for Designing Your Own Dyamic SiteMason Templates. Creating. SiteMason Templates
A Guide for Designing Your Own Dyamic SiteMason Templates Creating SiteMason Templates 2 Creating SiteMason Templates (c) 2003 Monster Labs, Inc. Current Version: February 6, 2003 Manual Version 1.0 3
More informationAdvanced 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 informationDHANALAKSHMI COLLEGE OF ENGINEERING, CHENNAI
DHANALAKSHMI COLLEGE OF ENGINEERING, CHENNAI Department of Information Technology IT6801 SERVICE ORIENTED ARCHITECTURE Anna University 2 & 16 Mark Questions & Answers Year / Semester: IV / VII Regulation:
More informationXML 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 information6/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 informationWeb 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 informationXML Extensible Markup Language
XML Extensible Markup Language Generic format for structured representation of data. DD1335 (Lecture 9) Basic Internet Programming Spring 2010 1 / 34 XML Extensible Markup Language Generic format for structured
More informationCSI 3140 WWW Structures, Techniques and Standards. Representing Web Data: XML
CSI 3140 WWW Structures, Techniques and Standards Representing Web Data: XML XML Example XML document: An XML document is one that follows certain syntax rules (most of which we followed for XHTML) Guy-Vincent
More informationDynamic 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 informationExtensions 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 informationCopyright 2005, by Object Computing, Inc. (OCI). All rights reserved. Database to Web
Database To Web 10-1 The Problem Need to present information in a database on web pages want access from any browser may require at least HTML 4 compatibility Want to separate gathering of data from formatting
More informationThinking 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 informationEXAM 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 informationSection A: Multiple Choice
Section A: Multiple Choice Question 1 Each item has only one correct answer. Two marks for each correct answer, zero marks for each incorrect answer. Use the supplied sheet to record a single response
More informationXML PRESENTATION OF DOCUMENTS
Network Europe - Russia - Asia of Masters in Informatics as a Second Competence 159025-TEMPUS-1-2009-1-FR-TEMPUS-JPCR Sergio Luján Mora Department of Software and Computing Systems University of Alicante
More informationXPath. Lecture 36. Robb T. Koether. Wed, Apr 16, Hampden-Sydney College. Robb T. Koether (Hampden-Sydney College) XPath Wed, Apr 16, / 28
XPath Lecture 36 Robb T. Koether Hampden-Sydney College Wed, Apr 16, 2014 Robb T. Koether (Hampden-Sydney College) XPath Wed, Apr 16, 2014 1 / 28 1 XPath 2 Executing XPath Expressions 3 XPath Expressions
More informationPASS4TEST. IT Certification Guaranteed, The Easy Way! We offer free update service for one year
PASS4TEST IT Certification Guaranteed, The Easy Way! \ http://www.pass4test.com We offer free update service for one year Exam : 000-141 Title : XML and related technologies Vendors : IBM Version : DEMO
More informationQuerying and Transforming XML Data Chapter5 Contents
Contents Outline of Lecture... 153 Sources... 153 Motivation... 153 Querying and Transforming XML Data... 154 Tree Model of XML Data... 154 XML Hierarchy... 155 What is XPath?... 156 XPath - Selecting
More informationXML. Marie Dubremetz Uppsala, April 2014
XML Marie Dubremetz marie.dubremetz@lingfil.uu.se Uppsala, April 2014 Presentation Plan 1 Introduction 2 XML Specificities and Motivations 3 XML: Vocabulary and Techniques Uppsala May 2015 2/37 Table of
More informationXML Overview, part 1
XML Overview, part 1 Norman Gray Revision 1.4, 2002/10/30 XML Overview, part 1 p.1/28 Contents The who, what and why XML Syntax Programming with XML Other topics The future http://www.astro.gla.ac.uk/users/norman/docs/
More informationCS433 Technology Overview
CS433 Technology Overview Scott Selikoff Cornell University November 13, 2002 Outline I. Introduction II. Stored Procedures III. Java Beans IV. JSPs/Servlets V. JSPs vs. Servlets VI. XML Introduction VII.
More informationCOPYRIGHTED 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 informationDelivery Options: Attend face-to-face in the classroom or remote-live attendance.
XML Programming Duration: 5 Days Price: $2795 *California residents and government employees call for pricing. Discounts: We offer multiple discount options. Click here for more info. Delivery Options:
More informationBurrows & Langford Chapter 9 page 1 Learning Programming Using Visual Basic.NET
Burrows & Langford Chapter 9 page 1 CHAPTER 9 ACCESSING DATA USING XML The extensible Markup Language (XML) is a language used to represent data in a form that does not rely on any particular proprietary
More informationThe 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 informationXML, XPath, and XSLT. Jim Fawcett Software Modeling Copyright
XML, XPath, and XSLT Jim Fawcett Software Modeling Copyright 1999-2017 Topics XML is an acronym for extensible Markup Language. Its purpose is to describe structured data. XPath is a language for navigating
More informationWhat is XML? XML is designed to transport and store data.
What is XML? XML stands for extensible Markup Language. XML is designed to transport and store data. HTML was designed to display data. XML is a markup language much like HTML XML was designed to carry
More information