About three weeks ago I read over a specification for an XML policy file. Information was stored as the values of the various tags. I gave it my stamp of blessing and so it was implemented.
Today, I discovered that was a sub-optimal decision. Mel the real programmer might even call it most-pessimum. LibXML provides nice functionality for working with documents where the information tends to be stored as attributes of the various tags. It might be great for working with value oriented data (if that's what it's called.) It sure didn't seem to be today.
After spending 4 or 5 hours working around the results of this particular design decision, I made a new decision: we're changing the design. Either that, or I'm just going to slice and dice the data out with perl.