| | | 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 |