| | Copyright |
| | About the Author |
| | Acknowledgments |
| | We Want to Hear from You! |
| | Introduction |
| | | How This Book Is Structured |
| | | What You'll Need |
| | | How to Use This Book |
| | Part I: XML Essentials |
| | | Hour 1. Getting to Know XML |
| | | The What and Why of XML |
| | | XML and Web Browsers |
| | | Real-World XML |
| | | Summary |
| | | Q&A |
| | | Workshop |
| | | Hour 2. Creating XML Documents |
| | | A Quick XML Primer |
| | | Selecting an XML Editor |
| | | Constructing Your First XML Document |
| | | Viewing Your XML Document |
| | | Summary |
| | | Q&A |
| | | Workshop |
| | Part II: Defining XML Data |
| | | Hour 3. Defining Data with DTD Schemas |
| | | Creating Your Own Markup Languages |
| | | Schemas and XML Data Modeling |
| | | Comparing Schema Technologies |
| | | The Importance of Document Validation |
| | | DTD Construction Basics |
| | | Digging Deeper into Elements |
| | | Putting Attributes to Work |
| | | A Complete DTD Example |
| | | Summary |
| | | Q&A |
| | | Workshop |
| | | Hour 4. Digging Deeper into XML Documents |
| | | Leaving a Trail with Comments |
| | | Characters of Text in XML |
| | | The Wonderful World of Entities |
| | | The Significance of Notations |
| | | Working with CDATA |
| | | Using XML to Create an Online Radio |
| | | Summary |
| | | Q&A |
| | | Workshop |
| | | Hour 5. Putting Namespaces to Use |
| | | Understanding Namespaces |
| | | Naming Namespaces |
| | | Declaring and Using Namespaces |
| | | Summary |
| | | Q&A |
| | | Workshop |
| | | Hour 6. Using SVG to Draw Scalable Graphics |
| | | What Is SVG? |
| | | SVG and Related Technologies |
| | | Inside the SVG Language |
| | | Creating an SVG Drawing |
| | | Embedding an SVG Drawing in a Web Page |
| | | Summary |
| | | Q&A |
| | | Workshop |
| | | Hour 7. Using XML Schema |
| | | XML Schema Construction Basics |
| | | Working with Simple Types |
| | | Digging into Complex Types |
| | | Namespaces and XSD Schemas |
| | | A Complete XML Schema Example |
| | | RELAX NG and the Future of XML Schema |
| | | Summary |
| | | Q&A |
| | | Workshop |
| | | Hour 8. Validating XML Documents |
| | | Document Validation Revisited |
| | | Validation Tools |
| | | Repairing Invalid Documents |
| | | Summary |
| | | Q&A |
| | | Workshop |
| | Part III: Formatting and Displaying XML Documents |
| | | Hour 9. XML Formatting Strategies |
| | | Style Sheets and XML Formatting |
| | | Leveraging CSS, XSLT, and XSL-FO |
| | | Style Sheets in Action |
| | | Summary |
| | | Q&A |
| | | Workshop |
| | | Hour 10. Styling XML Content with CSS |
| | | Getting to Know CSS |
| | | Wiring a Style Sheet to an XML Document |
| | | Your First CSS Style Sheet |
| | | Inside CSS Positioning |
| | | The Ins and Outs of Text Formatting |
| | | Your Second Complete Style Sheet |
| | | Summary |
| | | Q&A |
| | | Workshop |
| | | Hour 11. Getting Started with XSL |
| | | XSL Basics |
| | | The Pieces and Parts of XSL |
| | | An XSLT Primer |
| | | Wiring an XSL Style Sheet to an XML Document |
| | | Your First XSLT Style Sheet |
| | | Summary |
| | | Q&A |
| | | Workshop |
| | | Hour 12. Transforming XML with XSLT |
| | | A Closer Look at XSLT |
| | | Pattern Essentials |
| | | Putting Expressions to Work |
| | | A Complete XSLT Example |
| | | Yet Another XSLT Example |
| | | Summary |
| | | Q&A |
| | | Workshop |
| | | Hour 13. Access Your iTunes Music Library via XML |
| | | The Role of XML in iTunes |
| | | Digging Into the iTunes Library File |
| | | Linking to Tracks in the iTunes Store |
| | | Building an iTunes Web Viewer |
| | | Summary |
| | | Q&A |
| | | Workshop |
| | | Hour 14. Formatting XML with XSL-FO |
| | | What Is XSL-FO? |
| | | Working with the XSL-FO Language |
| | | Validating an XSL-FO Document |
| | | Converting an XSL-FO Document to PDF |
| | | A More Complete XSL-FO Example |
| | | Summary |
| | | Q&A |
| | | Workshop |
| | | Hour 15. Using XML to Hack Google Maps |
| | | Getting to Know Google Maps |
| | | Google Maps Customization Basics |
| | | Brainstorming a Custom Mapping Application |
| | | Developing a Custom Map Document |
| | | Hacking Together a Custom Google Map |
| | | Summary |
| | | Q&A |
| | | Workshop |
| | Part IV: Processing and Managing XML Data |
| | | Hour 16. Parsing XML with the DOM |
| | | What Is the DOM? |
| | | How the DOM Works |
| | | DOM Interfaces |
| | | Binding XML Data to a Web Page |
| | | Using the DOM to Access XML Data |
| | | A Complete DOM Example |
| | | Updating the DOM Tree |
| | | Summary |
| | | Q&A |
| | | Workshop |
| | | Hour 17. SAX: The Simple API for XML |
| | | What Is SAX? |
| | | Writing Programs That Use SAX Parsers |
| | | Obtaining a SAX Parser |
| | | Using SAX with Java |
| | | Inside the SAX Sample Program |
| | | Summary |
| | | Q&A |
| | | Workshop |
| | | Hour 18. Querying XML Data with XQuery |
| | | What Is XQuery? |
| | | XML Data Querying 101 |
| | | Processing XQuery Results |
| | | Getting to Know Saxon |
| | | Practical XML Querying with XQuery and Saxon |
| | | Summary |
| | | Q&A |
| | | Workshop |
| | | Hour 19. Using XML with Databases |
| | | A Quick Relational Database Primer |
| | | The World's Shortest Guide to SQL |
| | | Databases and XML |
| | | Exporting an XML Document from a Database |
| | | Accessing Data from a Database as XML |
| | | Summary |
| | | Q&A |
| | | Workshop |
| | | Hour 20. Using XML to Assist Search Engines |
| | | Web Crawling Basics |
| | | Getting to Know Google Sitemaps |
| | | Inside the Google Sitemap Protocol |
| | | Creating Your Own Sitemap |
| | | Validating Your Sitemap |
| | | Submitting Your Sitemap to Google |
| | | Using an Automated Sitemap Tool |
| | | Summary |
| | | Q&A |
| | | Workshop |
| | Part V: XML's Impact on HTML |
| | | Hour 21. Adding Structure to the Web with XHTML |
| | | XHTML: A Logical Merger |
| | | Comparing XHTML and HTML |
| | | Creating and Validating XHTML Documents |
| | | Migrating HTML to XHTML |
| | | Summary |
| | | Q&A |
| | | Workshop |
| | | Hour 22. Addressing and Linking XML Documents |
| | | Understanding XPath |
| | | Navigating a Document with XPath Patterns |
| | | Using XPath Functions |
| | | The Role of XPath |
| | | HTML, XML, and Linking |
| | | Addressing with XPointer |
| | | Linking with XLink |
| | | A Complete XLink Example |
| | | Summary |
| | | Q&A |
| | | Workshop |
| | | Hour 23. Going Wireless with WML and XHTML Mobile |
| | | XML and the Wireless Web |
| | | WML Essentials |
| | | Creating WML Documents |
| | | Blending WML with XHTML Mobile |
| | | Summary |
| | | Q&A |
| | | Workshop |
| | | Hour 24. Syndicating the Web with RSS News Feeds |
| | | A Brief History of RSS |
| | | Using an RSS News Aggregator |
| | | Inside the RSS 2.0 Language |
| | | Creating and Validating a News Feed |
| | | Displaying a News Feed |
| | | Summary |
| | | Q&A |
| | | Workshop |
| | Part VI: Appendix |
| | | Appendix A. XML Resources |
| | | General XML Resources |
| | | XML Tools |
| | | XML-Based Languages |
| | | XML Specifications |
| | Index |