I experinced that DOMText, given a integer as only value to the constructor failed to return valid data. I had to typecast the input to a string first:
$intValue = 3252; // Post/Zip-code
$some_element->appendChild( new DOMText( (string) $intValue) );
When not typecasting using "(string)" the XML output from $root->saveXML() would not validate.