Opleiding: XML Schema
In the course XML Schema you will gain extensive knowledge on the syntax and usage of the XML Schema language, as successor to Document Type Definitions (DTDs).XML Schema Intro
XML Schema is used to define XML vocabulaires that define the structure, element names and contents of XML documents.
Design Models
Several XML Schema design models are discussed like Russian Doll, Salami Slice and Venetian Blind. Attention is given to declaring simple and complex elements and types and imposing constraints on the content of elements.
Simple Types
Also the creation of user defined simple data types using facets and regular expressions is among the subjects discussed. Namespaces are an important part in the XML Schema specification and is given a lot of attention.
Complex Types
Also the creation of complex derived data types and the difference between derivation by restriction and derivation by extension are discussed.
Import en Include
Further attention is paid to modularization of schemas and the usage of the include and import mechanisms.
Advanced Topics
Finally some advanced topics like Open Content Models and the XML Schema handling of keys and references and the removing of redundancy by identity constraints are addressed.
Audience Course XML Schema
The course XML Schema is designed for developers of XML data structures and XML applications and project managers who want to use XML schemas to validate the contents of XML documents.
Prerequisites Course XML Schema
To join this course knowledge of the basic syntax of XML is required.
Realization Training XML Schema
The theory is discussed on the basis of presentation slides. Demos are used to illustrate the theory. There is ample opportunity to practice. The course material is in English. The course time are from 9.30 up and to 16.30.
Certification Course XML Schema
Participants receive an official certificate XML Schema after successful completion of the course.
Modules
Module 1 : XML-Schema Intro
- Why XML Schema?
- What is XML Schema?
- Markup Languages
- Well Formed versus Valid
- Document Type Definition (DTD)
- DTD Limitations
- XML Schema as DTD Successor
- XML Schema Features
- Typical Use of XML Schema
- Use of XML Schema
- Other Uses of XML Schema
- Schema Validators
Module 2 : XML Schema Basics
- XML Schema Components
- DTD to XML Schema Conversion
- DTD Vocabulary
- XML Schema Vocabulary
- Target Vocabulary
- Referencing XML Schema
- XMLSchema-instance
- Multiple Levels of Checking
- Element Cardinality
- Simple and Complex Types
- Simple Type Restricted to Integer
- Complex Type with Attribute
Module 3 : XML Schema Models
- Declaration versus Definition
- Global versus Local
- Element Declarations
- Global and Local Declarations
- Referencing Global Declarations
- Anonymous and Named Types
- Three Design Approaches
- Salami Slice Design
- Russian Doll Design
- Venetian Blind Design
- Combined Design
- Design Comparisons
Module 4 : XML Schema Data Types
- XML Schema Data Types
- String Data Types
- Language Data Type
- Name Types
- ID Types
- Qualified Names and URI's
- Binary String Encoded Types
- Primitive Numeric Data Types
- Derived Numeric Data Types
- Boolean Data Type
- Date Data Types
- ur-type and anyType
Module 5 : Derived Simple Types
- Creating Simple Types
- Derived Numeric Simple Types
- Simple Types by Restriction
- Available Facets
- Enumerations and Patterns
- Fixing Facet Values
- Regular Expressions
- Meta Characters
- Quantifiers
- Character Classes
- List Type and simpleTypes
- Union type and simpleTypes
Module 6 : Schema Documentation
- Annotating Schema's
- Annotation Element
- Meta Data
- Allowed Locations
- Annotation Location
- Inlining Annotation
- Documentation Element
- Appinfo Element
- Optional Attributes
- source Attribute
- xml:lang Attribute
- Defining Semantics
Module 7 : Namespaces
- Namespaces of XML Schema
- XML Schema Namespace
- TargetNamespace
- Referencing XML Schema
- Namespace Scope
- Default Namespace
- Symbol Spaces
- Name Conflicts
- What is in the Namespace?
- Namespace Qualification
- elementFormDefault
- attributeFormDefault
- Rules for using Namespaces
Module 8 : Complex Types
- Simple Content and Attributes
- Local Attribute Declarations
- use Attribute
- Grouping Attributes
- Grouping Elements
- Global Group Definition
- Choice Element
- Fixed Element Values
- Default Element Values
- Sequence and Choice
- Any order with all
- Empty element
- nil and Mixed content
Module 9 : Derived Complex Types
- Derived Complex Types
- Deriving by Extension
- Deriving by Restriction
- Prohibiting Derivations
- Element Substitution
- Substitutable Elements
- International Clients
- substitutionGroup Features
- Substitution with Derived Types
- Blocking Element Substitution
- Transitive and Non-Symmetric
- Abstract Elements
- Abstract complexType
Module 10 : Schema Modules
- Schema Modularization
- Including Schema Documents
- Using include
- Chameleon Effect
- Namespace Coercion
- Redefining Types
- Using redefine
- Redefine no targetNamespace
- Importing Schema Documents
- Using import
Module 11 : Schema Extensions
- any Element
- Extension Element
- Instance with any
- Namespace Extension Elements
- anyAttribute Element
- Extension Attribute
- Instance with anyAttribute
- Namespace Extension Attributes
- Open Content
- Global and Local Openness
Module 12 : Uniqueness and Keys
- Uniqueness and Keys
- Unique versus Key
- Key Requirements
- Combination Key
- Unique
- Unique Elements
- Key Referencing
- IDREF
- key Element
- keyref Element