So far things are going well and the result should be complete on schedule and perform better than an equivalent SOAP system due to the lack of network overhead. Plus, the OO system I'm working on this time is much less complicated than Bricolage, so I've got less complexity to squeeze into XML. I also expect that not using SOAP initially will make the system easier to debug and easier for the system administrators to use. (I can dream, can't I?)
Another advantage is that Xerces C++ is now ready for runtime use as an XML Schema validator. For Bricolage I ended up only running the validator during testing since the only usable copy was in Xerces C++ CVS. Now, I still can't compile XML::Xerces, but the C API is working great. I really like how accurate the error messages for broken XML are. If I have the wrong element order or miss a tag the validator tells me exactly what's wrong and which line to look at. Of course, without XML Spy I would never have the time to actually write the schemas. I just wish they had a Linux version.