You are previewing Special Edition Using XML, Second Edition.
O'Reilly logo
Special Edition Using XML, Second Edition

Book Description

Special Edition Using XML, Second Edition gives developers a formal introduction to XML technology, starting with in-depth coverage of basic syntax and fundamental "pieces" of XML, including DTDs, Schemas, and Namespaces. The authors then cover various applications of XML, including transforming and displaying XML documents using CSS and XSL, locating data within XML documents using Xpath, Xlink and Xpointer, programming XML with SAX or DOM, including XML in Java or .NET applications, XML Scripting with Perl, XHTML and WML for presentation on traditional and hand-held Web browsers, and querying data or documents with Xquery. The final chapters cover technologies related to XML such as SVG, SMIL, and RDF, focusing on the practical features developers can put to use today.

Table of Contents

  1. Copyright
  2. About the Author
  3. Acknowledgments
  4. We Want to Hear from You!
  5. Introduction
  6. XML Fundamentals
    1. The XML Jigsaw Puzzle
      1. XML and the W3C
      2. The Goals of XML
      3. Many Technologies Contribute to the Power of XML
      4. XML Family
      5. Programming and Modeling
      6. XML and Data
      7. The Related Technologies
      8. Roadmap
    2. The Basics of XML
      1. Overview of XML
      2. XML Is a Simple Technology
      3. Elements
      4. Attributes
      5. XML Document Structure
      6. An XML Document Example
      7. Additional Resources
      8. Roadmap
    3. XML Building Blocks: Elements and Attributes
      1. XML Elements
      2. Generic Identifiers
      3. Some Rules for Naming Elements
      4. Storing the Data in XML
      5. Parsed Character Data
      6. Bypassing Parsing with CDATA
      7. Attributes
      8. When to Use Attributes
      9. Classifying Attributes: Attribute Types
      10. Attribute Rules
      11. Well-Formedness Rules
      12. Creating a Well-Formed XML Document
      13. The Basics of Validation
      14. How Do Applications Use XML?
      15. An Overview of XML Tools
      16. Roadmap
      17. Additional Resources
    4. Structuring XML Documents with DTDs
      1. Well-Formed and Valid XML
      2. Document Type Definition Basics
      3. Why Use a DTD?
      4. DTD Structures
      5. DTDs and XML Documents
      6. Element Declarations in DTDs
      7. Element Content Basics
      8. Attribute Declarations
      9. Entity Declarations
      10. Parameter Entities
      11. Notations and Processing Instructions
      12. Notations
      13. Processing Instructions
      14. Comments
      15. Internal Versus External DTD
      16. A Valid XML Example: Constructing the DTD
      17. Additional Resources
      18. Roadmap
    5. Defining XML Document Structures with XML Schemas
      1. XML Schemas Are a Type of Schema
      2. XML Schemas Compared to DTDs
      3. Element Declarations in XML Schemas
      4. Content Models
      5. <simpleType>
      6. <complexType>
      7. Substitution Groups
      8. Attribute Declarations in XML Schemas
      9. attributeGroup
      10. Enumerations
      11. Associating Schemas with XML Documents
      12. Datatypes in XML Schemas
      13. Primitive Built-In Datatypes
      14. string
      15. boolean
      16. decimal
      17. date
      18. hexBinary
      19. base64Binary
      20. Deriving Simple Types
      21. Deriving Complex Types
      22. Schema Designs
      23. Schema Alternatives
      24. Additional Resources
      25. Roadmap
    6. Avoiding XML Confusion with XML Namespaces
      1. Introduction to Namespaces
      2. Specifying Namespaces
      3. Integrating Namespaces in XML Documents
      4. Namespaces and Schemas
      5. Namespaces with XML Vocabularies
      6. Additional Resources
      7. Roadmap
  7. XML Presentation Technologies
    1. Using XML with Existing Stylesheet Technologies (CSS)
      1. XML Display in the Browsers
      2. CSS Basics
      3. CSS Properties
      4. Margins and Padding
      5. Pseudo Elements
      6. Pseudo Classes
      7. Using CSS Formatting with XML
      8. Additional Resources
      9. Roadmap
    2. The New Wave of Stylesheets: XSL
      1. Introduction to XSL
      2. XSL As a Display Technology
      3. XSL As a Transformation Technology
      4. Stylesheet Processing
      5. Templates
      6. Area Models
      7. Formatting Objects and Properties
      8. Introducing XPath
      9. Additional Resources
      10. Roadmap
    3. Transforming XML Data into Other Formats with XSLT
      1. XSL Transformations
      2. Templates
      3. Generating XML
      4. Repetition
      5. Conditional Processing
      6. Sorting
      7. Numbering
      8. An XML-to-XML Transformation Example
      9. An XML-to-HTML Transformation Example
      10. Additional Resources
      11. Roadmap
    4. The Nuts and Bolts of XSL: Formatting Objects
      1. The Nuts and Bolts of XSL: Formatting Objects
      2. Basics of XSL-FO
      3. A Basic XSL-FO Document
      4. Areas
      5. Pages
      6. Content Areas
      7. Inline Objects
      8. Tables
      9. Lists
      10. Properties
      11. Background and Color Properties
      12. Borders and Padding
      13. Font Properties
      14. Text
      15. Integrating XSLT and XSL-FO
      16. Additional Resources
      17. Roadmap
  8. XML Location Technologies
    1. Locating Components in XML Documents with XPath
      1. What Is XPath?
      2. XPath Concepts
      3. XPath Node Types
      4. XPath Axes
      5. XPath Functions
      6. Extra: XPath 2.0
      7. Additional Resources
      8. Roadmap
    2. Extending the Power of XPath with XPointer
      1. What Is XPointer?
      2. XPointer Concepts
      3. XPointer Function Extensions to XPath
      4. Writing XPointers
      5. Additional Resources
      6. Roadmap
    3. Linking Information: XLink, XBase, and XInclude
      1. Expressing Document Relationships in XML
      2. XML Base
      3. XML Inclusion
      4. XLink
      5. Resources
      6. Roadmap
  9. XML Programming and Scripting
    1. XML and the Document Object Model
      1. Platform-Independent Interface for XML Documents
      2. DOM Specification Overview
      3. DOM Level 1
      4. DOM Level 2
      5. DOM Level 3
      6. Implementations of the DOM
      7. Additional Resources
      8. Roadmap
    2. Parsing XML Based on Events
      1. Event-Based Parsing of XML
      2. SAX Overview
      3. Java Interfaces and Classes
      4. Additional Resources
      5. Roadmap
    3. Working with XML and Java
      1. Introduction
      2. Preparation
      3. Java XML Concepts
      4. Java API for XML
      5. Choosing a Parser
      6. Event Based Parsing with SAX Under Java
      7. Document Based Parsing with DOM Under Java
      8. XML Transformations in Java
      9. Navigating the Document Via XPath in Java
      10. Other Java XML Standards
      11. Tools
      12. Additional Resources
      13. Roadmap
    4. Working with XML and .NET
      1. Preparation
      2. Introduction
      3. .NET XML Framework Concepts
      4. Choosing a Language for .NET
      5. Parsing with the .NET XmlReader Classes
      6. .NET Parsing with Validation in .NET with XmlValidatingReader
      7. Document-Based Parsing with DOM Under .NET
      8. Creating a DOM Implementation
      9. XML Transformations in .NET
      10. Navigating the Document Via XPath in .NET
      11. Additional Resources
      12. Roadmap
  10. Real World XML
    1. XML and Databases
      1. XML and Databases—Introduction to the History of Their Relationship
      2. Working with XML as Data
      3. XML and Relational Databases
      4. Native XML Databases
      5. Future Directions
      6. Additional Resources
      7. Roadmap
    2. XML and Document Repositories
      1. XML and Repositories—Introduction to XML Repositories
      2. The Internet as Global Storage for Information
      3. XML Repositories Versus Existing Solutions
      4. Repositories and Databases
      5. XML Repositories in Real-World Applications
      6. Conclusion
      7. Additional Resources
      8. Roadmap
    3. Querying Documents Using XQuery
      1. Introducing XQuery
      2. How XQuery Relates to XPath
      3. The XQuery Data Model
      4. The XQuery Query Languages
      5. Some Illustrative XQuery Use Cases
      6. Additional Resources
      7. Roadmap
  11. XML Related Technologies
    1. The Future of the Web: XHTML
      1. What Is XHTML?
      2. Types of XHTML
      3. XHTML 1.0
      4. Modularizing XHTML
      5. XHTML 1.1
      6. XHTML Basic
      7. The Ongoing Evolution of XHTML
      8. Additional Resources
      9. Roadmap
    2. XML and Wireless Technologies: WML
      1. XML and Wireless Technologies
      2. WML2 in Details
      3. Future Wireless Directions
      4. Additional Resources
      5. Roadmap
    3. Scalable Vector Graphics
      1. Vector Graphics Overview
      2. Vector Graphics on the Web
      3. The SVG Rendering Model
      4. SVG Document Structure
      5. SVG Basic Shapes
      6. Paths in SVG
      7. Text Handling in SVG
      8. Gradients in SVG
      9. Declarative SVG Animations
      10. Scripting SVG
      11. Linking in SVG
      12. Additional Resources
      13. Roadmap
    4. XML and Multimedia: SMIL—The Synchronized Multimedia Integration Language
      1. A First SMIL Document
      2. Multimedia and XML
      3. SMIL Modules
      4. The Structure Module
      5. Timing and Synchronization
      6. The Animation Modules
      7. Content Control Modules
      8. The Layout Modules
      9. The Linking Modules
      10. The Media Objects Modules
      11. The Transitions Modules
      12. The Metainformation Module
      13. SMIL Tools
      14. Additional Resources
      15. Roadmap
    5. Using XML to Create Forms: XForms
      1. Why XForms Are Needed
      2. XForms Concepts
      3. The XForms User Interface
      4. Another XForms Example
      5. Additional Resources
      6. Roadmap
    6. Future Directions and Technologies
      1. Web Services—Introduction
      2. The VoiceXML Markup Language
      3. XML and Security
      4. W3/OASIS Standard Development and Migration
      5. Additional Resources
      6. Roadmap
    7. The Semantic Web and W3C Activities
      1. What Is the Semantic Web?
      2. Semantics of Human Languages
      3. Knowledge and the Semantic Web
      4. Future Directions and the Semantic Web
      5. Additional Resources
      6. Roadmap
  12. Appendixes
    1. Recommendation Pointers
      1. XML 1.0
      2. XML Schemas
      3. Namespaces
      4. CSS
      5. XSL
      6. XSLT
      7. XPath
      8. XML Pointer, XML Base, and XML Linking
      9. XInclude
      10. DOM
      11. XQuery
      12. XML Infoset
      13. BizTalk
      14. ebXML
      15. Canonical XML
      16. XML Signatures
      17. XML Encryption
      18. XHTML
      19. WML
      20. SVG
      21. SMIL
      22. RDF
      23. XForms
      24. Semantic Web
    2. Guide to Reading the XML Recommendation
      1. Why Reference Is Important
      2. The W3C Recommendation Process
      3. Standards Relationships
      4. XML Design Goals
      5. Reading the Specification
      6. Discussion of XML 1.0 Recommendation
    3. XML Resources
      1. XML
      2. DTDs
      3. XML Schemas
      4. XML Namespaces
      5. XML and CSS
      6. XSL
      7. XSLT
      8. XSL-FO
      9. XPath and XPointer
      10. XLink, XBase, and XInclude
      11. DOM and SAX
      12. XML, Java, and .NET
      13. XML and Perl
      14. XML Databases and Document Repositories
      15. XQuery
      16. XHTML
      17. WML
      18. SVG
      19. SMIL
      20. RDF
      21. XForms
    4. XML Software and Applications
      1. XML
      2. DTDs
      3. XML Schemas
      4. XML and CSS
      5. XSL
      6. DOM and SAX
      7. XML, Java, and .NET
      8. XML and Perl
      9. XML Databases
      10. Document Repositories
      11. XHTML
      12. SVG
      13. SMIL
  13. Index