Sample chapter 5 from wrox book "Designing Distributed Applications". We've taken an informal approach to structure in our XML so far. We've assumed an implicit DTD and enforced it through carefully written code. In fact, we allowed a violation of an implicit DTD when the error didn't change the meaning of the document. You may be wondering by now if this is such a good idea. After all, haven't we said that the teams working on our applications are only loosely connected? Shouldn't there be some way for them to learn how a specific vocabulary is put together?