Advanced XML: Transformations and Schema Design

Course:   XMLADV
Duration:   2 Days
Level:   II
On our website at:   http://www.verhoef-training.com/courses/XMLADV.html
 
Course Summary

The XSLT specification is maintained by the W3C (World Wide Web Consortium) and is a core part of the growing family of XML technologies. A related XML technology is the XPath language, which is required for using XSLT stylesheets. Students in this course will therefore learn the basic elements of the XSLT language, as well as the syntax of XPath. The numerous built-in XPath functions are also covered thoroughly. Using XSLT and XPath, students will transform XML documents into other XML documents, and into HTML for display in a browser. The MSXML parser is used in conjunction with the Internet Explorer browser for data examples.

This course then introduces XML Schemas, the new and preferred way to design and validate XML documents and data. The XML Schemas specification is maintained by the W3C (World Wide Web Consortium) and achieved full Recommendation status in the spring of 2001. It is a core part of the growing family of XML technologies. Students in this course will learn all the basic components of the XML Schemas recommendation, including its elements, attributes, data types, and facets. They will also learn techniques for XML document and data modeling, an essential aspect of Schema design. The MSXML 4.0 parser is used for document validation. A simple text editor, such as Notepad, is used for editing.

Topics Covered In This Course

Introduction to XML Output

  • What is a Stylesheet?
    • Viewing XML Formatted with Various Stylesheets
    • Exploring an XSLT Stylesheet
    • Exploring the Differences in XSLT Versions

Basic XSLT Templates

  • XSLT Basics
    • Creating the Outline Foundation of an XSLT Stylesheet
    • XPath Practice
    • Outputting Element Content
    • Outputting Attribute Values
  • Using HTML with XSLT
    • Formatting XSLT Output With HTML
    • Using a Simplified Stylesheet
    • Output Other Than HTML
    • Transforming XML to XML

Basic XSLT Templates, Part 2

  • The Nature of XSLT Templates
    • Using <xsl:apply-templates> To Control Processing Flow
    • Comparing <xsl:apply-templates> and <xsl:call-template>
    • Sorting Elements in and Contexts
    • Elements, Attributes, Comments, and Text
    • Using <xsl:element> Elements
    • Using<xsl:attribute> Elements
    • Exploring the uses of XSLT Comments and Text

XSLT Conditional Elements

  • If/Then Conditionals
    • Using the <xsl:if> Element
  • Testing Multiple Conditions
    • Using <xsl:choose> Elements
  • Using <xsl:foreach> as a Conditional
    • Filtering and Order Control with <xsl:foreach>

XPath Node-Set and Boolean Functions

  • XPath Node-Set Functions
    • Using last(), count(), and position()
    • Retrieving Element Names and Their Text Values
  • XPath Boolean Functions
    • Using Simple Boolean Functions
    • Using the lang() Function

XPath String and Number Functions

  • XPath String Functions +Using Simple String Functions
    • Using contains() and starts-with()
    • Using Substring Functions With Date Strings
  • XPath Number Functions
    • Using XPath Number Functions

Advanced XSLT Elements, Part 1

  • The Structure of XSLT Stylesheets Reconsidered
    • The Structure of an XSLT Stylesheet
  • Importing and Including Stylesheets
    • Using the <xsl:include> Element
    • Using the <xsl:import> Element
  • Variables and Parameters
    • Using the <xsl:variable> Element
    • Using the <xsl:param> and <xsl:with-param> Elements

Advanced XSLT Elements, Part 2

  • Output Options
    • Using the <xsl:output> Element
  • Copying XML Directly to the Output Tree
    • Using the <xsl:copy> and <xsl:copy-of> Elements
  • Using Other Advanced XSLT Elements
    • Using <xsl:number> to Create Ordered Lists
    • Generating a Processing-Instruction

The Built-in XSLT Functions

  • General Purpose Functions
    • The Difference Between Current() and (.)
    • Using key(), generate-id() and format-number()
    • Using the system-property(), function-available(), and element-available()Functions
  • The document() Function
    • Combining XML Documents

XPath Axes and Location Paths

  • The Current Context Reconsidered
    • Considering Context Properties
  • XPath Axes and Unabbreviated XPath Syntax
    • Using XPath Axes Explicitly

XML and the Rise of Schemas

  • The World of XML
  • DTDs and the Role of Validation
  • The Rise of XML Schemas

XML Document and Data Modeling

  • The Planning Stage
  • Modeling Documents, Data, and the World

Elements, Attributes, and Complex Types

  • Schema Namespaces and Documentation
  • Complex Type Definitions
  • Element Declarations
  • Attribute Declarations

Occurrence and Identity Constraints

  • Minimum and Maximum Occurrence Constraints
  • Schema Keys and Data Uniqueness

Data Types and Facets

  • Data Typing and its Importance
  • Explicit Simple Type Definitions
  • XSD Facets

Schema Modularity

  • Schema Modularity

XSD Schemas Reference

  • Elements
What You Can Expect

Upon successful completion of this course, students will be able to:

Who Should Take This Course

This course is for anyone already introduced to the basics of XML and its related technologies, and who is interested in advanced XML programming and data/document modeling. Knowledge of and experience with XML XSLT and DTD design is preferable.

Recommended Prerequisites

This course was designed for the student who already has a general knowledge of the concepts and technologies involved in XML programming including XSLT and Schemas. Prior knowledge of XML DTDs is very helpful for this course. Prior knowledge of traditional Web development technologies, such as HTML and Web scripting, is helpful but not required.

Training Style

Instructor-led, group-paced, classroom-delivery learning model with structured hands-on activities.

Related Courses
Code Course Title Duration Level
XML
XML Fundamentals
3 Days
I
Details
XMLFT
XML: FastTrack to Application Development
5 Days
I
Details
XMLSP
Advanced XML with SOAP
2 Days
II
Details

Every student attending a Verhoef Training class will receive a certificate good for $100 toward their next public class taken within a year.

You can also buy "Verhoef Vouchers" to get a discounted rate for a single student in any of our public or web-based classes. Contact your account manager or our sales office for details.