511. XML for the Enterprise Version 1.1 This comprehensive course provides a full tour of the most prevalent XML standards, and introductory-to-intermediate training in each: XML itself, XML Schema, XSLT, and XSLFO. This is a great fit for students who are planning to work extensively with XML in the near future, as it gives a good grounding in how to manage XML information, define XML models (using XML Schema), transform XML information to text, HTML, or other XML formats (using XSLT), or to print-ready PDFs (using XSLFO). Prerequisites Learning Objectives * Understand the broad influence of XML on emerging software architectures. * Understand the roles of XML Schema, XPath, XSLT, XSLFO, parsing APIs, and Web services in the broader scope of XML technology in software applications. * Write well-formed XML documents to express simple or complex document content. * Write DTDs to set rules for XML document validation. * Read and write XML using namespaces to import type information and to partition the XML namespace. * Use XML Schema to validate XML documents. * Define simple types, and use value restrictions and enumerations to constrain values. * Create complex types, including simple types and other complex types, and empty- and mixed-content types. * Write simple and complex queries into XML document content using XPath. * Transform XML data into plain text, HTML, or XML formats. * Describe the relationship between XSLT and XSLFO, and their roles in the typical XML-to-print production process. * Transform XML data into FO documents, and format those into PDFs. Timeline: 5 days. Module 1. Introduction to XML Chapter 1. A Brief History of XML Birth of XML Content vs. Presentation Self-Describing Data A Standard Document Format Uses for XML Chapter 2. XML Grammar Structure of an XML Document Handling Whitespace Character and Entity References Well-Formed XML Elements Attributes Processing Instructions Comments CDATA Sections Chapter 3. Valid XML Document Types DTD Structure Defining Elements Cardinality Attributes Required, Implied, Default, and Fixed Attributes Enumerations XML Namespaces Limitations of DTDs XML Schema Advantages of XML Schema Data Types Chapter 4. Using XML in Applications SAX and DOM Parsing XSLT XPath XSL-FO Web Services SOAP Module 2. XML Schema Chapter 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 Chapter 2. Simple Types Simple and Atomic Types Built-In Types Primitives Numeric Derived Types String Derived Types Simple Type Restriction Facets Enumerations Patterns Lists Unions Nillable Values Chapter 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 Module 3. XSLT Chapter 1. Getting Started with XSLT XSL and XSLT Rule-Based Transformations Templates Producing Text, HTML, and XML Chapter 2. XPath Addressing XML Content XPath in XSLT Tree Structure XPath Expressions Type Model Context Axis, Node Test, and Predicate Abbreviations Proximity Position XPath Functions Comparisons Between Various Types Chapter 3. Templates and Production Template Matching Built-In Template Rules Recursion Through Templates Template Context Output Methods Controlling Whitespace Literal Replacement Elements Formalizing Text, Elements and Attributes Defining Target Vocabulary Generating Processing Instructions Chapter 4. Dynamic Content and Flow Control Deriving Source Content Getting Source Values Attribute Value Templates Copying Source Elements and Trees Looping Conditionals Chapter 5. Variables and Template Management Variables Using Variables to Capture Context Information Result Tree Fragments Parameters Calling Templates Explicitly Global Variables and Stylesheet Parameters Template Modes Module 4. XSLFO Chapter 1. Getting Started Formatting XML XSLT and XSLFO Flow of Information Formatting Objects Properties Chapter 2. Page Masters Pages and Areas The Page-Master Model Regions Writing Mode and Orientation The Page-Sequence Model Flows Page-Sequence Masters Properties and the Inheritance Model Chapter 3. Formatting Flows Blocks and Layout Options Inlines and Layout Options Lists Tables Controlling Pagination Chapter 4. Formatting Page Numbering Identifying Content Page-Number Citations Links Tables of Contents Appendix A. Learning Resources Appendix B. Quick Reference: W3C Namespaces System Requirements Hardware, Minimum: 500 MHz, 128 meg RAM, 50 meg disk space. Hardware, Recommended: 1.0 GHz, 256 meg RAM, 50 meg disk space. Operating System: Tested on Windows 2000 Professional. Course software should be viable on all systems which support W3C-compliant XML tools. Software Requirements: All free downloadable tools.