Volume 1: Introduction to XML
(1 day)
1. A Brief History of XML
Birth
of XML
Content vs. Presentation
Self-Describing Data
A Standard Document Format
XML and Relational Data
XML and Object Models
The Need for Validation
Programmatic Use of XML
XML Transformations
XML for Messaging
Web Services
2. XML Grammar
Structure of an XML
Document
Handling Whitespace
Character and Entity References
Well-Formed XML
Elements
Attributes
Processing Instructions
Comments
CDATA Sections
3. Document Type Descriptors
Document
Types
Internal and External Subsets
PUBLIC vs. SYSTEM
DTD Structure
Defining Elements
Cardinality
Attributes
Required, Implied, Default, and Fixed Attributes
Enumerations
IDs and IDREFs
Entities
Conditional Sections
Limitations of DTDs
Techniques Using Entities
XML Schema
XML Namespaces
Volume 2, Module 1: Introduction
to XML Transformations (1 day)
1. Xpath
Use of XPath in Other XML
Technologies
XPath Expressions
The Axis
The Node Test
The Predicate
XPath Types
XPath Functions
Implied Context
Querying with XPath
2. XSLT: Templates and Production
XSL
and XSLT
Rule-Based Transformations
Output Methods
Templates and Template Matching
Built-In Template Rules
Recursion Through Templates
Controlling Whitespace
Template Context
Literal Replacement Elements
Formalizing Text, Elements and Attributes
3. XSLT: Dynamic
Content and Flow Control
Deriving Source Content
Getting Source Values
Attribute Value Templates
Copying Source Elements and Trees
Defining Target Vocabulary
Generating Processing Instructions
Variables
Result Tree Fragments
Looping
Conditionals
Calling Templates as Functions
Sorting
Number Formatting
Volume 2, Module 2: Advanced XML
Transformations (1 day)
1. Gathering Data
Common Transformation
Problems
XSLT Techniques
Filtering and Sorting
Data Type for Sorting
Grouping
Using the Preceding-Sibling Axis
Using XSLT Keys
Restructuring the Source Document
2. Decorating, Calculating,
and Restructuring
Extrapolating Information
from the Source Document
Adding Static Content
Auto-Numbering
Computing Aggregate Values
Using Tail Recursion
Forging New Document Structures
Defining Structure Algorithmically
3. Multiple Source
Documents
Merging Multiple Source
Documents
The XSLT Document Function
Forging New Structures,
Redux
Using Template Documents
Parameterizing Transformations
XML Documents as Instruction
Sets
Reusing Transformation
Logic
Including Transforms
Importing Transforms
Multiple Template Modes
Buffering Template Output
for Secondary Analysis
Volume
3, Module 1: Introduction to XML Schema (1 day)
1. Getting
Started with XML Schema
What is an XML schema?
Schemas vs. DTDs
Structure of a Schema
Associating Schema with
Documents
Types of Types
Defining Elements
Defining Complex Types
Validation
2. Simple Types
Simple and Atomic
Types
Built-In Types
Primitives
Numeric Derived Types
String Derived Types
Simple Type Restriction
Facets
Value Ranges
Enumerations
Patterns
Lists
Unions
Nillable Values
3. Complex Types
Model Groups
Sequences, Conjunctions,
and Disjunctions
Particles
Occurrence
Constraints
Global and
Local Definitions
Defining Attributes
Empty, Any,
and Mixed Content
Model Group
Definitions
Attribute Group
Definitions
Annotations
Volume 3, Module
2: Advanced
XML Schema
(1 day)
1. Keys
and Key References
Schema as Object
Models
UML for XML
Composition
Association
Identity
Constraints
Asserting
Uniqueness
Keys
Key References
Controlling
Association
Cardinality
2.
Complex-Type Extension
Type Specialization
Extending
Complex
Types
Using Extended
Types
Derivation
by Restriction
Abstract
Types
Substitution
Groups
“
Complete” Specialization (The final Attribute)
Derivation Without Polymorphism (The block Attribute)
3.
Namespaces and Schema
Using Namespaces in Documents
Populating a Namespace
Qualified and Unqualified Locals
Multiple Namespaces in Schema
Importing and Inlcuding Schema
Multiple Schema per Namespace
Type Redefinition
Validating by Namespace (Wildcards)
4. Using Schema in
XML Applications
Schema Design Issues
Type Granularity
Ease of Parsing, Transformation, Presentation and
Maintenance
Mapping
from Object
Models
Mapping
from Database
Schema
Foreign-Key
Relationships
XSLT
for Validation
Application
Validation
|