Online
Classroom

Mastering XML Schemas

Part of our "Other" courses

2 days


Course Overview

This course covers all details of the W3C XML Schema specification

Course Prerequisites

Students should be experienced with XML and Software development.

Outline

XML Schema Overview and Fundamentals

  • Introduce the concepts of schemas
  • Introduce W3C XML Schema and understand the structure of the recommendation
  • Understand the process of validity assessment
  • Understand the concept and role of the Post Schema Validation Infoset (PSVI)
  • Understand the structure of an XML Document
  • List and explain the 12 different Schema components
  • Understand the difference in local and global definitions and declarations
  • Discuss different schema styles (russian doll, salami slice etc)
  • Understand the concept of names for definitions and declarations
  • Introduce the concept of symbol spaces
  • Understand the relation with XML Namespaces
  • Be able to make basic element and attribute declarations
  • Understand the difference between simple types and complex types
  • List the predefined types
  • Be able to define basic simple types using different derivations (atomic/restriction, list and union)
  • Be able to define basic complex types
  • Understand the different content models of complex types
  • Introduce complex type extension and restriction
  • Introduce compositors (all, sequence and choice)
  • Introduce particles
  • Understand how to control namespace of local declarations (attributeFormDefault and elementFormDefault)
  • Understand how to refer to schema documents from XML documents (and the potential problems with that)
  • Understand how to specify type information inside your XML Document using xsi:type
  • Understand nil values
  • Understand how to include, redefine and import other schemas

Simple Type Definitions

  • Understand the difference between value space and lexical space
  • Understand the details of the built-in datatypes
  • Understand how to derive by restricting to create your own types
  • Understand facets
  • Explain the different string types
  • Explain how to derive string types
  • Explain the different number types
  • Explain how to number string types
  • Explain the different date, time and duration types
  • Explain how to derive from different date, time and duration types
  • Understand the semantics of the constraining facets per type

The pattern facet

  • Explain regular expressions in XML Schema
  • List some important differences with other Perl like regular expression languages
  • Understand the exact syntax of a regular expression (branches, pieces, quantifiers)
  • Explain the different atom types (characters, escape classes, expression classes etc)
  • Explain the different quantifiers to control atom occurrence
  • List the different character classes and understand the difference between them
  • List the escape character classes
  • List the multi-character escape classes (Perl groups)
  • Understand the wildcard multi-character escape class
  • Understand the category escape
  • Explain Unicode categories and blocks
  • Explain how to define you own classes using character class expressions
  • Understand how these relate to set-theory
  • Explain positive classes, negative classes and character class subtraction
  • Understand how to combine these to create other models

Complex type Definitions

  • Understand the details of creating complex types
  • Understand the possible derivations per content type model
  • Understand the details of extending simple content models
  • Understand the details of restricting simple content models and the rules
  • Understand the details of extending complex content models
  • Understand the details of restricting complex content models
  • Understand the consistent particle rule
  • Understand the unique particle attribution (UPA)
  • Understand the semantics and differences of the different compositors (all, choice etc)
  • Understand different compositor combinations
  • Understand particles
  • Understand element and attribute group definitions
  • Understand how to redefine them in a different schema
  • Understand substitution groups
  • Understand how to block the use of substitution groups
  • Understand element and attribute wildcards (xs:any and xs:anyAttribute)
  • Understand uniqueness, keys and references
  • Introduce the basics of XPath 1.0 needed for identity constraints

Private Events

Is your team in need of a a Mastering XML Schemas course?

Send us a message, and we'll get in touch, without any obligation.

Quote

Request a free quote

Upcoming Public Events

Currently we have no public courses planned for Mastering XML Schemas

This Mastering XML Schemas course looks very interesting, I do however have a question