Filling out forms for XML
Just as television diminished theatre, and cars diminished the scenery through which we drive, XML -- certainly an important innovation -- will diminish an important part of our current experience: writing documents. Instead, we'll be filling in more and more forms.
Imagine that you are using XML to drive an application for lawyers so that they can write up their notes on client meetings in a way that will make the notes searchable and reusable. Right now, the lawyers are using Word and writing them up any way they want. But you want to make sure that all these notes start with a client number, the date, the time, the length of the meeting, whether it was billable, the case number, etc.
XML lets you do this because it is an SGML application, so you can write a Document Type Definition (DTD) that not only specifies the tags you need to capture this data, but also the rules for what will count as a valid -- acceptable -- meeting notes document.
But how are you going to get your lawyers to follow the dictates of the DTD? Even if you give them explicit instructions, some of them are going to decide that before they write in the client name, they need to insert a note that the client is a subsidiary of some other company. So, they do so whether or not you want them to. (By the way, if this happens a lot, you designed your DTD wrong.)
You could now start writing Word macros that keep the lawyers from doing the wrong thing. But you are now in effect writing your own SGML editor. You should first pluck out your own eyeballs and replace them with lemon-soaked golf balls before you agree to such an undertaking.
So, what do you do? Easy: You give your lawyers a form. You may design the form in Word or go with one of the dedicated forms packages (which are starting to output in XML). But a form makes it much harder for an author to stray.
Forms are the way we constrain writers. XML lets organizations benefit from structured, predictable documents. Thus, XML breeds forms.