Summary

If you take nothing else away from this chapter, remember the principles of partial decomposition:

  • XML instances are stored whole somewhere (I recommend in the database itself).

  • Selected information that's important for your application is extracted from the XML into relational tables.

  • The relational tables are updated whenever (and only when) an XML file is updated (or inserted), thereby keeping XML in the driver's seat.

  • By enforcing relational constraints, the database enforces data integrity in and between your XML files.

  • Your application will generally use the information in the relational tables to answer requests about your data (like “list all reviews by a certain author”). Because integrity has been enforced, your application can ...

Get XML and SQL: Developing Web Applications now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.