2 days

Course Overview

Programming systems these days are working on many different machines and using many different technologies and programming languages. XML is a modern effort employed to allow communication between all these different systems.

XML Introduction/Intermediate training class provides a comprehensive introduction to Extensible Mark-up Language (XML). XML is a new technology and is a powerful language used to encapsulate data into XML files. XML is particularly  useful for integrating and passing data between business-to-business applications or between disparate systems.


There are no prerequisites for this course. Previous use of HTML would be an advantage but is not essential.

Course Outline

XML Basics

  • What is XML?
  • XML Benefits
  • XML Documents
  • The Prolog
  • Elements
  • Attributes
  • Whitespace
  • XML Syntax Rules
  • Special Characters
  • Creating a Simple XML File

Quick Introduction to XHTML

  • The DOCTYPE Declaration
  • XHTML Strict
  • XHTML Transitional
  • XHTML Frameset
  • The Document Element
  • A Sample XHTML Document


  • Well-formed vs Valid
  • The Purpose of DTDs
  • Creating DTDs
  • The Document Element
  • Other Elements
  • Choice of Elements
  • Empty Elements
  • Mixed Content
  • Location of Modifier
  • Using Parentheses for Complex Declarations
  • Declaring Attributes
  • Validating an XML Document with a DTD

XML Schema

  • The Purpose of XML Schema
  • The Power of XML Schema
  • A Simple XML Schema
  • Validating an XML Instance Document

Simple-Type Elements

  • 19 Primitive Data Types
  • Built-in Derived Data Types
  • Defining a Simple-type Element
  • User-derived Simple Types
  • Applying Facets
  • Controlling Length
  • Specifying Patterns
  • Working with Numbers
  • Enumerations
  • Whitespace-handling
  • Specifying Element Type Locally
  • Declaring Global Simple-Type Elements
  • Default Values
  • Fixed Values

Complex-Type Elements

  • Content Models
  • xs:sequence
  • xs:all
  • xs:choice
  • Complex Model Groups
  • Occurrence Constraints
  • Declaring Global Complex-Type Elements
  • Mixed Content
  • Defining Complex Types Globally


  • Empty Elements
  • Adding Attributes to Elements with Complex Content
  • Adding Attributes to Elements with Simple Content
  • Restricting Attribute Values
  • Default and Fixed Values
  • Requiring Attributes