You are previewing XML Unleashed.
O'Reilly logo
XML Unleashed

Book Description

XML Unleashed is a complete and comprehensive reference for sophisticated Web developers that covers every possible use of XML, from creating Web documents to building sophisticated Web applications. It covers all aspects of XML technology, from DTDs, XSL, and X Pointers to manipulating XML with Java and JavaScript. See hundreds of professional programming techniques as well as code for more than 15 real-world XML applications involving e-commerce, database access, Web management, real estate, and healthcare. This book also includes reference material on SMIL, the XML-based language for Web multimedia.

Table of Contents

  1. Copyright
  2. About the Lead Author
  3. About the Contributing Authors
  4. Acknowledgments
  5. Tell Us What You Think!
  6. Introduction
  7. Defining XML Documents
    1. An XML Refresher
      1. A Brief History Lesson
      2. Pondering XML
      3. XML Syntax Fundamentals
      4. The State of XML
      5. Summary
    2. Modeling Data: Document Type Definitions (DTD) and Schemas
      1. XML Data Modeling Basics
      2. Modeling Data with DTDs
      3. Modeling Data with XML Schemas
      4. Comparing the Two Data Modeling Approaches
      5. Summary
    3. DTD Fundamentals
      1. DTDs and Document Structure
      2. Understanding Elements and Attributes
      3. Working with Elements
      4. Working with Attributes
      5. Creating a Valid Document from a DTD
      6. Summary
    4. Digging Deeper into DTDs
      1. Entities and Document Structure
      2. Characters and Entities
      3. Working with Entities
      4. External Entities
      5. Declaring Notations
      6. Referencing Entities in Documents
      7. Using Conditional Sections
      8. Summary
    5. XML Schema Basics
      1. Getting to Know XML Schema
      2. Inside the XML Schema Vocabulary
      3. XML Schema Data Types
      4. Creating Documents from XML Schemas
      5. Summary
    6. XML Schema Construction Techniques
      1. Converting DTDs to Schemas
      2. Validating Documents Against Schemas
      3. Generating Schemas with XML Authority
      4. Understanding Content Models
      5. The Future of XML Schema
      6. Summary
    7. Utilizing XML Namespaces
      1. Namespace Basics
      2. Declaring Namespaces
      3. Referencing Schemas as Namespaces
      4. Using Namespaces in Schemas
      5. Namespaces and the Document Object Model
      6. Summary
  8. Formatting XML Documents
    1. Debating Style: eXtensible Style Language (XSL) and Cascading Style Sheets (CSS)
      1. Style Sheet Basics
      2. The Evolution of CSS and XSL
      3. Comparing XSL and CSS
      4. Using XSL and CSS Together
      5. Summary
    2. Formatting XML with Cascading Style Sheets (CSS)
      1. A CSS Primer
      2. Inside a CSS Style Sheet
      3. CSS Style Properties
      4. Creating CSS Style Sheets
      5. Summary
    3. Understanding the eXtensible Style Language (XSL)
      1. Processing an XSL Style Sheet
      2. The Architecture of XSL
      3. Summary
    4. Creating XSL Style Sheets
      1. XSL and Internet Explorer 5.0
      2. Inside XSL Style Sheets
      3. XSLT Template Constructs
      4. Developing XSL Style Sheets
      5. Summary
  9. Processing XML Documents
    1. XML Processing Basics
      1. Processing an XML Document
      2. Why Parse XML?
      3. Why Validate an XML Document?
      4. Inside an XML Parser
      5. Comparing the Two Approaches to Parsing XML
      6. Parsers as Objects
      7. Summary
    2. Parsing XML with Java
      1. The Anatomy of XML Parser Libraries in Java
      2. Tools of the Trade
      3. Parsing an XML Document with Java
      4. Summary
    3. Parsing XML with C++
      1. Why a Parser in C?
      2. The Expat Parser
      3. IBM's XML Parser for C++
      4. Microsoft Parsers for C
      5. The MSXML Parser
      6. Building a Parser Interface with MSXML
      7. Bugs in the MSXML Parser
      8. Using C Parsers in Document and DTD Design
      9. Summary
    4. Utilizing the Document Object Model (DOM)
      1. W3C and the XML DOM
      2. Document Object Models
      3. Document Trees and Parse Trees
      4. W3C DOM Basics
      5. DOM Interfaces
      6. Nodes and Objects
      7. Accessing Nodes in DOM
      8. Data Types Returned by DOM Methods
      9. The Document Interface
      10. The DocumentFragment Interface
      11. The Node Interface
      12. The NodeList Interface
      13. The NamedNodeMap Interface
      14. The CharacterData Interface
      15. The Attr Interface
      16. The Element Interface
      17. The Minor DOM Interfaces
      18. Implementing DOM
      19. Adding DOM Support to Applications
      20. Scripting and DOM
      21. DOM Support in Gecko
      22. Saving Documents Persistently
      23. Summary
    5. Working with the SAX API in Java
      1. The Structure of SAX 1.0
      2. The Basics of the SAX 1.0 Package
      3. Example SAX Applications
      4. Other Core Features of SAX
      5. Advanced Features of SAX
      6. SAX 2.0
      7. Summary
  10. XML and the WEB
    1. Browsing XML
      1. XML and the State of Web Browsers
      2. Microsoft Internet Explorer
      3. Netscape Navigator (Mozilla)
      4. Other Browsers
      5. Summary
    2. XHTML: When XML and HTML Collide
      1. Why XHTML?
      2. Differences Between XHTML and HTML 4.0
      3. XHTML and Document Validity
      4. Creating XHTML Documents
      5. Converting HTML Documents to XHTML
      6. Summary
    3. Linking Documents with XLink and XPointer
      1. Linking the HTML Way
      2. Beyond HTML Linking
      3. The W3C's Linking Specifications
      4. Inside XLink
      5. Inside XPointer
      6. Summary
    4. Scripting XML
      1. Why Script XML?
      2. XML Scripting Options
      3. A JavaScript Primer
      4. Revisiting the XML DOM
      5. Developing XML Scripts
      6. Summary
  11. Manipulating Data with XML
    1. The XML Data Source Object (DSO)
      1. Databases and Remote Data Access
      2. Remote Data Services and DSOs
      3. Understanding the Tabular Data Control (TDC)
      4. XML DSOs
      5. The XML Java DSO
      6. The XML C++ DSO
      7. Using XML Islands
      8. Scripting the XML DSO
      9. XML Data Binding
      10. Data Binding with Complex XML
      11. Summary
    2. Using XSL Patterns and XQL
      1. Requirements of a Query Language
      2. XML Query Language (XQL)
      3. The Syntax of XQL
      4. XQL: Implementations and Other Resources
      5. XSLT Patterns
      6. Using DOM
      7. Hand-Rolled Functions
      8. Summary
    3. Accessing Databases with XML and ASP
      1. Uses of XML in Database Management Systems
      2. Personal Web Server (PWS) and Active Server Pages (ASP)
      3. The Native ASP Objects
      4. The Scripting Objects
      5. ActiveX and DOM Objects
      6. Understanding Databases
      7. Connecting to a Database with ASP
      8. Reading Data into an XML Stream
      9. Using XML as a Data Store
      10. Accessing Data from an XML Data Store
      11. XML vs. RDBMS
      12. Summary
    4. Linking Business Data with WIDL
      1. A Business Use of WIDL
      2. Introduction to WIDL Version 2.0
      3. WIDL Version 3.0
      4. Summary
    5. EDI and XML
      1. An EDI Primer
      2. What's Wrong with EDI?
      3. XML Approaches to EDI
      4. Summary
  12. XML Tools
    1. XML Authoring and Content Management Tools
      1. Types of XML Tools
      2. XML Authoring Tools
      3. XML Content Management Tools
      4. Other XML Tools
      5. Summary
    2. Migrating Legacy Data with XML Generator
      1. XML Generator Fundamentals
      2. Using the XML Generator Application
      3. Generating XML Documents
      4. Summary
    3. The XFA Scripting System
      1. XFA Scripting Basics
      2. The Relationship Between XFA and XML
      3. XFA Data Types
      4. The XFA Vocabulary
      5. Writing XFA Scripts
      6. XFA and DTDs
      7. Summary
    4. Generating DTDs with DDbE
      1. Understanding DDbE
      2. Inside the DDbE Command-Line Tool
      3. Generating DTDs
      4. Using the DDbE Library
      5. Summary
    5. Getting to Know IBM's XML Toolset
      1. Peering Inside the Tool Chest
      2. Using Xplorer and XML Viewer
      3. Using the XML Translator Generator
      4. Using the XML Diff and Merge Tool
      5. Summary
  13. Exploring XML Vocabularies
    1. Making Headlines with XMLNews
      1. Understanding XMLNews
      2. Inside the XMLNews-Story Vocabulary
      3. Creating News Stories with XMLNews
      4. Summary
    2. Integrating Multimedia Objects with SMIL
      1. SMIL Basics
      2. Inside the SMIL Vocabulary
      3. Creating SMIL Content
      4. SMIL Players and Authoring Tools
      5. SMIL and HTML+TIME
      6. Summary
    3. Pushing Web Content with CDF
      1. Active Channels Basics
      2. Using Active Channels
      3. Inside the CDF Vocabulary
      4. Creating Channels with CDF
      5. The CDF Generator Tool
      6. Summary
    4. Describing Vector Graphics with VML and SVG
      1. The Significance of Structured Vector Graphics
      2. XML Vector Graphics Offerings
      3. Inside the VML Vocabulary
      4. Inside the SVG Vocabulary
      5. Summary
    5. Virtual Reality and 3DML
      1. 3DML Basics
      2. Inside the 3DML Vocabulary
      3. Creating a 3DML World
      4. Embedding 3DML Worlds in Web Pages
      5. The Spotnik 3DML Spot Builder Tool
      6. Summary
    6. Mathematically Speaking with MathML
      1. MathML Basics
      2. Inside the MathML Vocabulary
      3. Creating MathML Content
      4. MathML Tools
      5. Summary
    7. Managing Privacy with P3P
      1. P3P Basics
      2. Getting Up to Speed with RDF
      3. Inside the P3P Harmonized Vocabulary
      4. Creating a Privacy Policy with P3P
      5. The Privacy Wizard
      6. Summary
    8. Listing Real Estate with RELML
      1. RELML Basics
      2. Inside the RELML Vocabulary
      3. Creating RELML Content
      4. RELML and OpenMLS
      5. Summary
    9. Managing Human Resources with HRMML
      1. HRMML Basics
      2. Inside the HRMML Vocabulary
      3. Assessing the Structure of HRMML Resumés
      4. Creating Resumés with HRMML
      5. Viewing HRMML Resumés
      6. Summary
    10. Interactive Speech and VoxML
      1. VoxML Basics
      2. Inside the VoxML Vocabulary
      3. VoxML Tools
      4. Creating a Voice Application with VoxML
      5. Summary
  14. Appendixes
    1. A Guide to XML Acronyms
      1. Glossary
    2. XML Resources
      1. General XML Resources
      2. XML Specifications
      3. XML Browsers
      4. XML Tools
      5. XML Vocabularies
      6. Other Resources
  15. Index