>> Another reason not to use the standard libs.
I'm not trying to advocate using the STL implementation, just its semantics. But my path to see if I could do it was to temporarily redefine DOMString as std::basic_string<XMLCh>, find what breaks (where I'm at now), test it with STL's implementation, then modify the DOMString implementation to match the a subset of the semantics of std::basic_string and test again (with language extensions back off)