Web Development

Exchanging and Transforming Data Using XML and XSLT
(Microsoft Training Course: 1913) - 5 days - £2640 exc VAT

> Target Audience
The goal of this course is to teach developers techniques for exchanging and transforming data by using the Extensible Markup Language (XML) and Extensible Stylesheet Language Transformations (XSLT). The course describes best practices for XML and XSLT and gives compelling examples of the best ways to solve real-world problems
> Course outline
  1. Overview of XML and XSLT
  2. Selecting and Navigating Nodes Using XPath
  3. Introducing XSLT
  4. Refining and Combining Style Sheets
  5. Programming with XSLT
  6. Defining XML Grammar and Data Types
  7. Creating and Changing XML Structure with XSLT
  8. Cross-Referencing Documents Using XSLT
  9. Manipulating XML Documents Using SAX
  10. Putting It All Together

Module 1: Overview of XML and XSLT
  • Representing Data with XML
  • Transforming XML Documents with XSLT
  • Using XML and XSLT to Build Solutions
  • Describe the syntax of XML documents.
  • Describe the purpose of XSLT style sheets
  • Describe typical problems that XSLT style sheets are used to solve.
Module 2: Selecting and Navigating Nodes Using XPath
  • Introducing XPath
  • Accessing Node Information
  • Navigating a Document Using Location Paths
  • Using Operators and Functions in Location Paths
  • Lab 2.1: Accessing Node Information
  • Lab 2.2: Selecting and Navigating Nodes Using XPath
  • Using XPath expressions within the Document Object Model (DOM) methods selectNodes() and selectSingleNode().
  • Writing XPath location paths to select specific nodes from an XML document.
  • Writing conditional expressions in XPath.
  • Using XPath operators and functions to write more sophisticated expressions.
Module 3: Introducing XSLT
  • Introducing XSLT
  • Template Rules
  • Enhancing Template Rules
  • Lab: Defining and Using Template Rules
  • Applying an XSLT style sheet to an XML document, both statically and dynamically.
  • Defining and instantiating template rules to make use of the transformation capabilities of XSLT.
Module 4: Refining and Combining Style Sheets
  • Sorting Document Content
  • Controlling Document Output
  • Including and Importing Style Sheets
  • Lab: Refining and Combining XSLT Style Sheets
  • Specifying a sort order for the result document, alphabetically or numerically, in ascending or descending order.
  • Specifing number formats for the result document.
  • Specifing whether white space in the result document is stripped or preserved.
  • Including one style sheet inside another.
  • Importing one style sheet into another.
  • Overriding imported template rules in the main style sheet.
Module 5: Programming with XSLT
  • Named Templates
  • Variables and Parameters
  • Performing Repetition and Conditional Processing
  • Using XSLT Extension Elements and Functions
  • Lab: Programming with XSLT
  • Defining and calling named templates.
  • Using named templates to organize a style sheet effectively.
  • Defining variables to represent complex expressions.
  • Defining parameters for a template rule or a style sheet.
  • Performing repetition and conditional logic within a template.
  • Using extension elements and extension functions.
Module 6: Defining XML Grammar and Data Types
  • Defining and Using XML Schemas
  • Defining Elements in an XML Schema
  • Defining Attributes in an XML Schema
  • Defining Data Types in an XML Schema
  • XML Schemas and ADO
  • Lab: Defining XML Grammar and Data Types
  • Creating an XML Schema definition.
  • Applying an XML Schema to an XML document.
  • Using an XML Schema to define the grammar of an XML document.
  • Using an XML Schema to describe the content data types in an XML document.
Module 7: Creating and Changing XML Structure with XSLT
  • Creating New Structure Using XSLT
  • Creating new elements in a result document.
  • Defining attributes and namespaces for new elements.
  • Inserting numbered text into a result document.
  • Adding processing instructions and comments to a result document as necessary.
Module 8: Cross-Referencing Documents Using XSLT
  • Accessing Multiple XML Documents in a Style Sheet
  • Introducing Cross-References
  • Generating Cross-References in Result Documents
  • Lab: Cross-Referencing Documents Using XSLT
  • Writing XSLT style sheets that access and transform multiple XML documents.
  • Defining keys to identify nodes in an XML document.
  • Using keys to access nodes in the same XML document or a different XML document.
  • Generating cross-references in the result document of an XSLT transformation.
Module 9: Manipulating XML Documents Using SAX
  • Overview of SAX
  • Using SAX Interfaces
  • Lab: Manipulating XML Documents Using Sax
  • Identifying situations where it is more useful to manipulate XML documents by using SAX than by using the DOM.
  • Choosing the correct SAX COM interface and methods to handle typical programming tasks associated with manipulating an XML document.
  • Creating an application with Visual Basic that uses SAX to manipulate an XML document.
Module 10: Putting It All Together
  • Scope and Purpose of the Northwind Traders Web Site
  • Lab: Northwind Traders Web Site
  • Making appropriate use of XSLT and XML technical features.
  • Creating XML documents from a database by using Microsoft ActiveX Data Objects (ADO) in an ASP page.
  • Writing style sheets to transform XML into HTML or another XML grammar.
  • Applying a style sheet dynamically at the Web browser or the Web server.
  • Embedding XML documents and XSLT style sheets as data islands in HTML.
  • Using the DOM to modify an XSLT style sheet dynamically.
  • Using the DOM to create new XML content dynamically.
  • Integrating ASP pages and XSLT style sheets with COM.
  • Posting XML data from a Web browser to a Web server.
  • Designing and using XML Schemas to validate XML structure and content.
> Pre-Requisites
This course requires that students meet the following prerequisites:
  • A moderate degree of Web development experience using HTML and XML.
  • A moderate degree of experience scripting with Visual Basic for Applications, VBScript, or JavaScript.
  • Some prior experience using COM objects, Active Server Pages (ASP pages), and either Visual Basic or Microsoft Visual C++®.
  • Taking one or more of the following courses will help the students meet the prerequisites and get more out of the course:
  • Course 1905, Building XML-Based Web Applications
  • Course 1013, Mastering Microsoft Visual Basic 6 Development
  • Course 1017, Mastering Web Application Development Using Microsoft Visual InterDev 6
> Purpose
After completing this course, students will be able to define XML Path Language (XPath) expressions to locate and filter the content of an XML document; define XSLT style sheets to transform XML documents at the Web browser and Web server; create and change XML structure by using XSLT; use XSLT to merge different XML documents and generate cross-references between them; and create a Visual Basic application that uses the Simple API for XML (SAX) to access large XML documents