Effective XML
Part I: Syntax
Item 1: Include an XML declaration
Item 3: Stay with XML 1.0
Part II: Structure
The XML Stack
Item 14: Allow All XML syntax
Item 9: Distinguish text from markup
The reverse problem.
Item 10: White space matters
Item 11: Make structure explicit through markup
Item 12: Store metadata in attributes
Item 13: Remember mixed content
What you really want is this:
What people do is this:
Item 16: Prefer URLs to unparsed entities and notations
Part III: Semantics
Item 17: Use processing instructions for process-specific content
Processing instructions are not appropriate when:
Item 18: Include all information in instance documents
Item 19: Encode binary data using quoted printable and/or Base64
Item 20-22: Use namespaces for modularity and extensibility
Item 23: Reuse XHTML for generic narrative content
Item 24: Choose the right schema language for the job
Item 25: Pretend there's no such thing as the PSVI
Item 27: Markup according to meaning
Item 28: Use only what you need
Item 29: Always use a parser
Item 30: Layer Functionality
Item 31: Program to standard APIs
Item 32: Choose SAX for computer efficiency
Item 33: Choose DOM for standards support
Item 34: Read the complete DTD
Item 35: Navigate with XPath
Item 36: Serialize XML with XML
Item 37: Validate inside your program with schemas
Part IV:Implementation
Item 38: Write documents in Unicode
Item 40: Avoid Vendor Lockin; Beware
Item 41: Hang on to your relational database
Item 42: Document Namespaces with RDDL
Preprocess XSLT on the server side
Part IV: Implementation
Item 44: Serve XML+CSS to the client
Item 45: Pick the correct MIME media type
Item 46: Tidy Up Your HTML
Item 47: Catalog common resources
Item 48: Verify documents with XML digital signatures
Item 49: Hide confidential data with XML encryption
Item 50: Compress if space is a problem
To Learn More
Author: Elliotte Rusty Harold
E-mail: elharo@metalab.unc.edu
Homepage: http://www.elharo.com/