Dynamic Indexing with XSL

Size: px
Start display at page:

Download "Dynamic Indexing with XSL"

Transcription

1 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. An easier way to update data frequently is to display data from many pages on a single indexed page. This involves querying multiple static pages, and displaying the information in a preconfigured format. This example makes use of a faculty directory to illustrate the use of dynamic indexing with XSL. Using dynamic indexing involves taking pages with matching node structures (PCF files) and compiling the data into a faculty index page. The PCFs are similar to any other page template within an site. They contain <title> and other common data nodes from which data are pulled. This technique utilizes XSL to query each PCF file and obtain the information to display. There are many different ways to arrange the PCF files in order to access them. The most common, in which the files are all contained within the same physical folder, is the example used. This method can grab information from PCF files in folders throughout the site by making small changes to the XSL. Typically, the scope of the index should be kept small as this helps reduce the amount of time required to preview and publish the page. The compiled data can be displayed in many different ways. For instance, a standard faculty directory can pull data from one directory and display it in a table format. The front-end HTML or JavaScript can be further developed to enable on-demand sorting or filtering. This utilizes any of the information that has been pulled from the PCF to interact with design elements. While this is possible, this example uses Gallena University and does not include front-end design elements. To demonstrate the process of using dynamic indexing in, it is valuable to review some theories along with XSL elements and functions. This information is used to create a functional faculty index. XSL Functions and Elements xsl:function An <xsl:function> allows the developer to create stylesheet functions that can be referenced from any XPath expression used in the stylesheet. Functions provide the developer with a wide range of freedom in determining the actions performed. Example Syntax <xsl:function name= qname as=sequence-type override = "yes" "no"> <!-- Content: (xsl:param, sequence-constructor) --> </xsl:function> Page 1 of 16

2 Example <?xml version="1.0" encoding="utf-8?> <!DOCTYPE xsl:stylesheet SYSTEM " standard.dtd"> <xsl:stylesheet version="2.0" xmlns:xsl=" xmlns:ou=" <!-- function Definition --> <xsl:function name="ou:sample_function" as="xs:string"> <!-- Sequence processing for the function. --> <xsl:param name="string-value" /> <xsl:variable name="string-chars" select="tokenize($string-value, ' ') " /> <!-- continue processing logic --> <xsl:copy-of select="$string-chars[1]" /> </xsl:function> <xsl:template match="/"> <xsl:copy-of select="ou:sample_function('my string') " /> </xsl:template> </xsl:stylesheet> Attributes Attribute Name Syntax Message Description name name="ou:faculty" Required. Defines the name of the function. The name must have a namespace prefix to avoid clashing with other defined functions as as="xs:string: Optional. The attribute defines the type of value returned when the function is evaluated. override override="no" Optional. Specifies whether the function overrides any vendorsupplied function of the same name. xsl:copy-of <xsl:copy-of> copies the sequence of nodes to the resultant sequence. Also known as deep copy, when applied to a sequence, the node and all its descendants are copied. The select attribute is required. By default, <xsl:copy-of> copies all namespaces. Page 2 of 16

3 Example Syntax <xsl:copy-of select = expression copy-namespaces = "yes" "no" type = qname validation = "strict" "lax" "preserve" "strip" /> Example <?xml version="1.0" encoding="utf-8"?> <!DOCTYPE xsl:stylesheet SYSTEM " standard.dtd"> <xsl:stylesheet version="2.0" xmlns:xsl=" xmlns:ou=" <xsl:template match="/"> <!-- example calling the sample function above --> <xsl:copy-of select="ou:sample_function('my string')" /> <!-- example using a variable --> <xsl:copy-of select="$myvariable" /> <!-- example using XPath --> <xsl:copy-of select="document/maincontent/node()" /> </xsl:template> Attributes Attribute Name Syntax Message Description select select=expression Required. The sequence of values or nodes to be copied in the stylesheet. copy-namespace copy-namespaces="no" Optional. Indicates whether the namespace of an element should be copied. The default value is "yes". type type=qname Optional. Identifies the type of declaration against copied nodes. validation validation="strict" Optional. Specifies whether the copied nodes should be subjected to schema validation, or whether existing type annotations should be retained or removed. Page 3 of 16

4 xsl:variable The <xsl:variable> element enables the developer to declare a variable. Once defined, the expression can be applied within the XSL using the variable as opposed to entering the full expression multiple times. Variables are defined as global or local depending on their location in the document. Global variables are those defined as children of the <xsl:stylesheet>, and are available throughout the stylesheet. Local variables are those defined within an <xsl:template>, and can only be used within the context of that template. Variables can be referenced within an XSL expression or inline by utilizing curly braces { }. Example Syntax <xsl:variable name="name" select="expression" as="sequence-type"> <!-- Content: sequence-constructor --> </xsl:variable> Note: When the sequence-constructor is blank, the xsl:variable element should be self-closed. <xsl:variable name="example" select="'blue'" /> Example <?xml version="1.0" encoding="utf-8"?> <!DOCTYPE xsl:stylesheet SYSTEM " standard.dtd"> <xsl:stylesheet version="2.0" xmlns:xsl=" xmlns:ou=" <xsl:template match="/"> <xsl:variable name="favoritecolor">blue</xsl:variable> <!-- inline variable reference --> <p style="color:{$favoritecolor}">this is my favorite color!</p> <!-- XSL expression variable reference --> <p> <xsl:attribute name="style" select="concat('color:', $favoritecolor)" /> This is my favorite color! </p> </xsl:template> Page 4 of 16

5 Local Variable Assignment <?xml version="1.0" encoding="utf-8"?> <!DOCTYPE xsl:stylesheet SYSTEM " standard.dtd"> <xsl:stylesheet version="2.0" xmlns:xsl=" xmlns:ou=" <xsl:variable name="favoritecolor">blue</xsl:variable> <xsl:template name="paragraph-blue"> <p style="color:{$favoritecolor}">this is my favorite color!</p> </xsl:template> <xsl:template name="paragraph-gray"> <xsl:variable name="favoritecolor">gray</xsl:variable> <p style="color:{$favoritecolor}">this is my favorite color!</p> </xsl:template> </xsl:stylesheet> Attributes Attribute Name Syntax Message Description name name="fac_name" Required. Defines the name of the variable. select select="/document/content/ name/text()" Optional. The expression that is evaluated as the value of this variable. If omitted, the value is determined by the value of the sequence constructor of the xsl:variable element. as as="xs:date" Optional. The return type of the variable. xsl:param The <xsl:param> enables the developer to declare a parameter. Similar to variables, parameters are defined as global or local depending on the where they are defined within the document. There are three different usage categories for parameters; this example primarily uses Function Parameters. Stylesheet Parameters Stylesheet parameters are useful in creating global parameters that are accessible throughout the entire stylesheet declaration. A stylesheet parameter may be declared as mandatory or may have a default value specified for use when no value is supplied. Page 5 of 16

6 Template Parameters As a child of the template, <xsl:param> is used to define the parameter of the template, which may be supplied when the template is invoked. Function Parameters As a child of the function, <xsl:param> is used to define the parameter of the function, which is supplied when the function is invoked. Functional parameters are mandatory when called within an XPath. Example Syntax <xsl:param name="name" select="expression" as="sequence-type" required= "yes" "no"> <!-- Content: sequence-constructor --> </xsl:param> Note: When the sequence-constructor is blank, the xsl:param element should be self-closed. <xsl:param name="example" /> Example <?xml version="1.0" encoding="utf-8"?> <!DOCTYPE xsl:stylesheet SYSTEM " standard.dtd"> <xsl:stylesheet version="2.0" xmlns:xsl=" xmlns:ou=" <xsl:template match="/"> The best colors are: <xsl:copy-of select="ou:colors('blue','gray')" / >. </xsl:template> <xsl:function name="ou:colors"> <xsl:param name="favorite-color" /> <xsl:param name="runner-up" /> <xsl:copy-of select= concat($favorite-color, ' and ', $runner-up)" /> </xsl:function> Attributes Attribute Name Syntax Message Description name name="fac_name" Required. Defines the name of the parameter. select select="/document/content/ name/text()" Optional. The expression that is evaluated as the value of the Page 6 of 16

7 Attribute Name Syntax Message Description parameter. If omitted, the value is determined by the value of the sequence constructor of the xsl:param element. as as="xs:date" Optional. The return type of the parameter. required required="yes" Optional. Specifies whether the parameter is optional or mandatory. xsl:for-each xsl:for-each selects a sequence of items using an XPath expression and performs the same processing for each item in the sequence. Example Syntax <xsl:for-each select="expression"> <!-- Content: sequence-constructor --> </xsl:for-each> Example <xsl:for-each select="//tbody/tr"> <xsl:copy-of select="current()"/> <xsl:for-each> Attributes Attribute Name Syntax Message Description select select="maincontent/node()" Required. Expression returning a sequence of nodes and values that need to be processed. System-Defined Xpath Functions concat() The concat() function takes two or more arguments and returns a string. Note that each argument is converted into a string. concat(arg1, arg2,... ) Example <xsl:value-of select="concat('blue', 'and', 'gray')" /> Page 7 of 16

8 Output blue and gray Argument: arg(n)(mandatory): More than one argument of strings to be combined. substring-after() The substring-after() function returns the part of the string after a delimiter. Note that the function returns the first occurrence of the specified substring. substring-after(string, delimiter) substring-before(string, delimiter) Example <xsl:value-of select="substring-after('index.html', '.')"/> Output html Argument: string (mandatory): The containing string. Argument: delimiter (mandatory): The delimiter substring. substring-before() The substring-before() function returns the part of the string, before a delimiter. Note that the function returns the first occurrence of the specified substring. substring-before(string, delimiter) Example <xsl:value-of select="substring-before('index.html', '.')"/> Output index Argument: string(mandatory): The containing string. Argument: delimiter(mandatory): The delimiter substring. XSL DOC Call and the List Trigger In order to display data from many pages on a single page, it is necessary to query documents outside of the page being transformed (the index). The XSL doc function is used to query the external documents for specified XPath locations. The system adds on to this Page 8 of 16

9 functionality with the list trigger. Adding the list trigger provides the list of files or folders and their related <title> nodes. This functionality provides a list of the files needed to parse in order to get the appropriate data for the index. This listing enables the developer to programmatically loop through each file in the list and obtain the designated information. The doc function is typically invoked within a select statement: <xsl:copy-of select="doc($directory)/list" /> In the above example, after the doc is the list trigger: /list The list trigger instructs the transformation engine to provide a list of files within the specified path. In order to parse the document for data, the doc call is reformatted: <xsl:copy-of select= "doc(concat($directory,'filename.xml'))/root/title/node()" /> Note: It is not advisable to have a root node called list, as this can produce unexpected results. Example Syntax <!-- the doc call should always be invoked within an XSL select --> doc(full path)/list <!-- list files and titles --> doc(full path)/list/directory <!-- list directories --> doc(full file path)/xpath <!-- parse document and return data at specified xpath --> Creating a Faculty Index Now that the theories behind some of the elements that will be used in the following code have been defined and explained, a faculty index can be created. For the faculty index, the index page is going to create a list of the faculty members who have profiles on individual pages. In this example, the faculty member s image, name, and biography are displayed with a link to the full profile page. Page 9 of 16

10 To accomplish this, the PCFs for the individual faculty profile pages are created first. For this example, MultiEdit is used. MultiEdit is valuable as it ensures that the same node structure is used for every document. It is important that the structure remains the same because to obtain the information each file is programmatically looped through. Individual Profile Example Page 10 of 16

11 Code Example Configuring the Individual Profile XML Data for Retrieval Purpose: To learn how to modify XSL to add additional information to the XML data file. Objective: To create a single additional XML node in the profile page output XML. Editing the PCF 1. Create a new faculty profile using the faculty profile template. Fill in the applicable fields, and choose Create. 2. The name, designation, and image should be populated. Open the page in Edit mode to add additional information for Biography, Publications, and Education. Be sure to populate the Education field. 3. View the profile with the Source Editor and notice the multi-edit nodes containing information displayed on each profile. The profile contains the node <education>. This information in this node is displayed on the individual profile, but not in the index. The education information will be added to the XML data output. This makes the information available for display on the index page. Editing the XSL Navigate to the fac_profile.xsl file typically found in the _resources/xsl folder. Edit the file. Within the <root> node, add an additional node <education></education>. Within the <education> node, enter the XSL statement: <xsl:value-of select="document/education/node() [not(self::comment())]" /> 5. Save the XSL file, preview the newly created PCF file, and click the XML tab. 6. Review the new education data within the XML node, and publish the faculty profile page to make the XML changes live on the production server. Faculty Index Page The next step involves editing the XSL to configure the index page for the faculty section. This is the page on which the faculty data from each individual profile will be displayed. Adding Education Data to the Index Page Purpose: To learn how to modify XSL to add additional information to the index page display. Objective: To write XSL that pulls in the educational data from the revised XML document published by each individual profile. Page 11 of 16

12 Within the <xsl:for-each select=... /> statement, additional XSL can be added to display the educational data on each profile listing. 1. Navigate to the content.xsl file typically found in the _resources/xsl/import folder. 2. Educational information will be added under the image. Locate the following code: <xsl:for-each select="$faculty_list/faculty"> and within it locate <div class="portfolio-img">. 3. After the ending </a> tag, enter the following: <em><xsl:value-of select="./education/node()"/></em> In-context it should look like this: <div class="portfolio-img"> <a href="{./link/node()}"> <img width="320" height="180" src="{./image/node()}"/> <span class="portfolio-overlay"> </span> </a> <em><xsl:value-of select="./education/node()"/></em> </div> 4. Save the file. The value will not appear within the index until the faculty function is modified. About the Faculty Listing Function The function includes the name (i.e., <xsl:function name="ou:faculty-listing">) of the function that is called into the template, parameters, and variables. Functions are typically located in the following file: /_resources/xsl/functions.xsl. The three parameters (xsl:param) include: The path to the faculty profiles on staging: fac_loc The path to the faculty profiles on production: fac_loc_pro The file extension used: file_type The four variables (xsl:variable) are: A list of all of the directories and files within the faculty profiles directory on staging: all The current file s file name: file_name A Boolean value which returns if the XML file is available on the production server: xml_available A Boolean value which returns if the HTML file is available on the production server: html_available Listing the Required Files The doc function obtains a list of the directories and files in the faculty location. The $fac_loc is defined as a parameter and the value when the <xsl:function> is called. <xsl:copy-of select="doc($fac_loc)/list"/> Page 12 of 16

13 The /list portion of the code instructs to list the files in the faculty directory specified by $fac_loc. Parsing each Document for Data This doc function determines the path to the data file on production by using the $fac_loc_pro variable, adding a forward slash, and using the $file_name variable to determine the name of the file. It is replacing.pcf with.xml in order to point to the appropriate data file on the production server. This document is parsed in accordance to the XPath written outside the doc call. This defines the node path to follow in order to fetch the appropriate information. <xsl:value-of select="doc(concat($fac_loc_pro,'/',concat(substringbefore($file_name,'.pcf'),'.xml')))/root/title/node()"/> The doc function is used each time a new XPath location is referenced. Page 13 of 16

14 Complete Function <xsl:function name="ou:faculty-listing"> <xsl:param name="fac_loc"/> <xsl:param name="fac_loc_pro"/> <xsl:param name="file_type"/> <xsl:variable name="all"><xsl:copy-of select="doc($fac_loc)/list"/ ></xsl:variable> <xsl:for-each select="$all/list/file"> <xsl:variable name="file_name"><xsl:value-of select="."/></xsl:variable> <xsl:if test="not(($file_name='_leftnav.inc') or ($file_name='_properties.inc') or ($file_name='index.pcf'))"> <xsl:variable name="xml_available" as="xs:boolean"><xsl:copy-of select="unparsed-textavailable(concat($fac_loc_pro,'/',concat(substringbefore($file_name,'.pcf'),'.xml')))"/></xsl:variable> <xsl:variable name="html_available" as="xs:boolean"><xsl:copy-of select="unparsed-textavailable(concat($fac_loc_pro,'/',concat(substringbefore($file_name,'.pcf'),'.',$file_type)))"/></xsl:variable> <xsl:if test="$xml_available = true() and $html_available = true()"> <faculty> <title><xsl:valueof select="doc(concat($fac_loc_pro,'/',concat(substringbefore($file_name,'.pcf'),'.xml')))/root/title/node()"/></title> <sub-heading><xsl:valueof select="doc(concat($fac_loc_pro,'/',concat(substringbefore($file_name,'.pcf'),'.xml')))/root/sub-heading/node()"/></subheading> <image><xsl:valueof select="doc(concat($fac_loc_pro,'/',concat(substringbefore($file_name,'.pcf'),'.xml')))/root/image/node()"/></image> <bio><xsl:value-of disable-outputescaping="yes" select="doc(concat($fac_loc_pro,'/',concat(substringbefore($file_name,'.pcf'),'.xml')))/root/bio/node()"/></bio> <link><xsl:valueof select="concat($fac_loc_pro,'/',concat(substringbefore($file_name,'.pcf'),'.html'))"/></link> </faculty> </xsl:if> </xsl:if> </xsl:for-each> </xsl:function> Page 14 of 16

15 Editing the Function The function has to be edited to add the education data to the index page. To complete the function, the nodes for the transformation need to be declared. In order to pull a node value from another document, the doc function is used. 1. Navigate to /_resources/xsl/functions.xsl. 2. Edit the file. 3. Find <xsl:function name="ou:faculty-listing>". 4. Locate the <xsl:if> (after the variables declarations) that is testing if the HTML and XML are available. <xsl:if test="$xml_available = true() and $html_available = true()"> 5. Locate the <faculty> node between the opening and closing <xsl:if>. 6. Between the open and closing <faculty> tags there are existing nodes (corresponding to the MultiEdit fields for the faculty profile; for example, <title>, <image>, and <bio>. The code snippet to add will do the following: Generate an <education></education> node and get the value of the education node added to the profile xml. Parse the documentation on the production server using the doc function and specify the appropriate Xpath to the <education> node. Add the code snippet: <education> <xsl:value-of select="doc(concat($fac_loc_pro,'/',concat(substringbefore($file_name,'.pcf'),'.xml')))/root/education/node()"/> </education> 7. Save the changes. <faculty> <title><xsl:value-of select="doc(concat($fac_loc_pro,'/',concat(substringbefore($file_name,'.pcf'),'.xml')))/root/title/node()"/></title> <image><xsl:value-of select="doc(concat($fac_loc_pro,'/',concat(substringbefore($file_name,'.pcf'),'.xml')))/root/image/node()"/></image> <bio><xsl:value-of disable-output-escaping="yes" select="doc(concat($fac_loc_pro,'/',concat(substringbefore($file_name,'.pcf'),'.xml')))/root/bio/node()"/></bio> <link><xsl:value-of select="concat($fac_loc_pro,'/',concat(substringbefore($file_name,'.pcf'),'.html'))"/></link> <education><xsl:value-of select="doc(concat($fac_loc_pro,'/',concat(substringbefore($file_name,'.pcf'),'.xml')))/root/education/node()"/></education> </faculty> Page 15 of 16

16 Testing Configuration and Updates The files have all been configured to transform the faculty pages. Publish the faculty directory to update the indexing for the individual pages. To test that all of the code is working as expected, navigate to index.pcf. When previewed, the page should now display a list of faculty members, including the newly created faculty profile. Publish the page to verify that the page looks as expected on production as well. Page 16 of 16

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

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

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

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

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

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

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

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

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

Creating a MultiEdit Template

Creating a MultiEdit Template The MultiEdit editor allows form-controlled editing for XML and other structured content. Administrators can create forms-based templates that present users with an easy-to-follow guide for adding content

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Term selector datatype

Term selector datatype Term selector datatype Installation Guide Xuntos B.V. www.xuntos.nl Oktober 2012 Table of Contents Introduction... 3 XML Data save example... 3 Revision History... 3 Before installing this package... 4

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

Understanding Page Template Components. Brandon Scheirman Instructional Designer, OmniUpdate

Understanding Page Template Components. Brandon Scheirman Instructional Designer, OmniUpdate Understanding Page Template Components Brandon Scheirman Instructional Designer, OmniUpdate Where do PCFs come from??.pcf .PCF Agenda Implementation Process Terminology used in Template Development Hands-on

More information

Oracle Application Server 10g Oracle XML Developer s Kit Frequently Asked Questions September, 2005

Oracle Application Server 10g Oracle XML Developer s Kit Frequently Asked Questions September, 2005 Oracle Application Server 10g Oracle XML Developer s Kit Frequently Asked Questions September, 2005 This FAQ addresses frequently asked questions relating to the XML features of Oracle XML Developer's

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

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

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

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

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

Presentation Component Troubleshooting

Presentation Component Troubleshooting Sitecore CMS 6.0-6.4 Presentation Component Troubleshooting Rev: 2011-02-16 Sitecore CMS 6.0-6.4 Presentation Component Troubleshooting Problem solving techniques for CMS Administrators and Developers

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

Registering Search Interface to SAS Content as Google OneBox Module

Registering Search Interface to SAS Content as Google OneBox Module Registering Search Interface to SAS Content as Google OneBox Module Search Interface to SAS Content supports two kinds of search results: Reports search supports searching of SAS BI Dashboard 4.3 (and

More information

Oracle Cloud Using the Oracle Mapper with Oracle Integration E

Oracle Cloud Using the Oracle Mapper with Oracle Integration E Oracle Cloud Using the Oracle Mapper with Oracle Integration E85415-05 Oracle Cloud Using the Oracle Mapper with Oracle Integration, E85415-05 Copyright 2017, 2019, Oracle and/or its affiliates. All rights

More information

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

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

XSL API for Tag Management

XSL API for Tag Management XSL API for Tag Management Overview With the release of Tag Management in OU Campus version 10.4, the CMS has the ability to store tag data for any file on the staging server. While other portions of the

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

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

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

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

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

Section A: Multiple Choice

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

Model Querying with Graphical Notation of QVT Relations

Model Querying with Graphical Notation of QVT Relations Model Querying with Graphical Notation of QVT Relations Dan LI, Xiaoshan LI Faculty of Science and Technology, University of Macau Volker Stolz University of Oslo, Norway Agenda! Motivation! QVT Relations

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

Web Services Week 3. Fall Emrullah SONUÇ. Department of Computer Engineering Karabuk University

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

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

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

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

6/3/2016 8:44 PM 1 of 35

6/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 information

For personnal use only

For personnal use only XSLT 1.0 Multiple Namespace Issues Finnbarr P. Murphy (fpm@fpmurphy.com) XSLT and XPath assume that XML documents conform to the XML Namespaces recommendation whereby XML namespaces are identified by a

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

Creating the Initial PCF

Creating the Initial PCF Overview When creating new page templates, it is very common to begin creation from an HTML page. The HTML page contains the full structure of the content, as well as the data. Deconstructing the HTML

More information

DHANALAKSHMI COLLEGE OF ENGINEERING, CHENNAI

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

XML. XML Namespaces, XML Schema, XSLT

XML. XML Namespaces, XML Schema, XSLT XML XML Namespaces, XML Schema, XSLT Contents XML Namespaces... 2 Namespace Prefixes and Declaration... 3 Multiple Namespace Declarations... 4 Declaring Namespaces in the Root Element... 5 Default Namespaces...

More information

Chapter 2 XML, XML Schema, XSLT, and XPath

Chapter 2 XML, XML Schema, XSLT, and XPath Summary Chapter 2 XML, XML Schema, XSLT, and XPath Ryan McAlister XML stands for Extensible Markup Language, meaning it uses tags to denote data much like HTML. Unlike HTML though it was designed to carry

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

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

PASS4TEST. IT Certification Guaranteed, The Easy Way! We offer free update service for one year

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

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

XML, XPath, and XSLT. Jim Fawcett Software Modeling Copyright

XML, 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 information

Mirroring - Configuration and Operation

Mirroring - Configuration and Operation Mirroring - Configuration and Operation Product version: 4.60 Document version: 1.0 Document creation date: 31-03-2006 Purpose This document contains a description of content mirroring and explains how

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

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

Enhancing Digital Library Documents by A Posteriori Cross Linking Using XSLT

Enhancing Digital Library Documents by A Posteriori Cross Linking Using XSLT Enhancing Digital Library Documents by A Posteriori Cross Linking Using XSLT Michael G. Bauer 1 and Günther Specht 2 1 Institut für Informatik, TU München Orleansstraße 34, D-81667 München, Germany bauermi@in.tum.de

More information

Content Mirroring Configuration

Content Mirroring Configuration Content Mirroring Configuration Product version: 4.51 Document version: 1.1 Document creation date: 02-01-2006 Purpose This document describes how to configure mirroring in EPiServer and contains information

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

3. NetBeans IDE 6.0. Java. Fall 2009 Instructor: Dr. Masoud Yaghini

3. NetBeans IDE 6.0. Java. Fall 2009 Instructor: Dr. Masoud Yaghini 3. NetBeans IDE 6.0 Java Fall 2009 Instructor: Dr. Masoud Yaghini Outline Installing the NetBeans IDE First NetBeans IDE Project IDE Windows Source Editor Customizing the IDE References Installing the

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

Copyright 2008 Pearson Education, Inc. Publishing as Pearson Addison-Wesley. Chapter 7 XML

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

XML: Introduction. !important Declaration... 9:11 #FIXED... 7:5 #IMPLIED... 7:5 #REQUIRED... Directive... 9:11

XML: Introduction. !important Declaration... 9:11 #FIXED... 7:5 #IMPLIED... 7:5 #REQUIRED... Directive... 9:11 !important Declaration... 9:11 #FIXED... 7:5 #IMPLIED... 7:5 #REQUIRED... 7:4 @import Directive... 9:11 A Absolute Units of Length... 9:14 Addressing the First Line... 9:6 Assigning Meaning to XML Tags...

More information

MarkLogic Server. Content Processing Framework Guide. MarkLogic 9 May, Copyright 2018 MarkLogic Corporation. All rights reserved.

MarkLogic Server. Content Processing Framework Guide. MarkLogic 9 May, Copyright 2018 MarkLogic Corporation. All rights reserved. Content Processing Framework Guide 1 MarkLogic 9 May, 2017 Last Revised: 9.0-4, January, 2018 Copyright 2018 MarkLogic Corporation. All rights reserved. Table of Contents Table of Contents Content Processing

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

Oracle 11g: XML Fundamentals

Oracle 11g: XML Fundamentals Oracle 11g: XML Fundamentals Student Guide D52500GC10 Edition 1.0 December 2007 D53762 Authors Chaitanya Koratamaddi Salome Clement Technical Contributors and Reviewers Bijoy Choudhury Isabelle Cornu Ken

More information

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

IBM Research Report. Using XSLT to Detect Cycles in a Directed Graph

IBM Research Report. Using XSLT to Detect Cycles in a Directed Graph RC23144 (W0403-066) March 9, 2004 Computer Science IBM Research Report Using XSLT to Detect Cycles in a Directed Graph David Marston IBM Research Division Thomas J. Watson Research Center One Rogers Street

More information

Quick Start Guide. CodeGenerator v1.5.0

Quick Start Guide. CodeGenerator v1.5.0 Contents Revision History... 2 Summary... 3 How It Works... 4 Database Schema... 4 Customization... 4 APIs... 4 Annotations... 4 Attributes... 5 Transformation & Output... 5 Creating a Project... 6 General

More information

StreamServe Persuasion SP5 XMLIN

StreamServe Persuasion SP5 XMLIN StreamServe Persuasion SP5 XMLIN User Guide Rev A StreamServe Persuasion SP5 XMLIN User Guide Rev A 2001-2010 STREAMSERVE, INC. ALL RIGHTS RESERVED United States patent #7,127,520 No part of this document

More information

Copyright 2007 Ramez Elmasri and Shamkant B. Navathe. Slide 27-1

Copyright 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

An Introduction to Web Content Publisher Authoring Templates

An Introduction to Web Content Publisher Authoring Templates By Gregory Melahn (melahn@us.ibm.com) Software Engineer, IBM Corp. July 2002 An Introduction to Web Content Publisher Authoring Templates Abstract Web Content Publisher (WCP) uses templates to author content.

More information

XML. COSC Dr. Ramon Lawrence. An attribute is a name-value pair declared inside an element. Comments. Page 3. COSC Dr.

XML. COSC Dr. Ramon Lawrence. An attribute is a name-value pair declared inside an element. Comments. Page 3. COSC Dr. COSC 304 Introduction to Database Systems XML Dr. Ramon Lawrence University of British Columbia Okanagan ramon.lawrence@ubc.ca XML Extensible Markup Language (XML) is a markup language that allows for

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

xmlns:gu="http://www.gu.au/empdtd" xmlns:uky="http://www.uky.edu/empdtd">

xmlns: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 information

Quark XML Author October 2017 Update for Platform with Business Documents

Quark XML Author October 2017 Update for Platform with Business Documents Quark XML Author 05 - October 07 Update for Platform with Business Documents Contents Getting started... About Quark XML Author... Working with the Platform repository...3 Creating a new document from

More information

DP Interview Q&A. 1. What are the different services that have you used in Datapower? WebService Proxy, Multiprotocol gateway and XML Firewall

DP Interview Q&A. 1. What are the different services that have you used in Datapower? WebService Proxy, Multiprotocol gateway and XML Firewall DP Interview Q&A 1. What are the different services that have you used in Datapower? WebService Proxy, Multiprotocol gateway and XML Firewall 2. Difference between WSP and MPGW? WSP Web Service Proxy is

More information