example xml with DOCTYPE containing PUBLIC and SYSTEM identifiers:
When this XML document is parsed by DOMParser, the resulting Document has both systemId and publicId values set(correctly). However, when DOMWriter is used to generate XML from the Document, the DOCTYPE is generated incorrectly(a spurious SYSTEM keyword).
This appears to be a bug in XMLWriter::startDTD(), which incorrectly adds the SYSTEM keyword regardless of whether or not PUBLIC exists.
fixed in 1.4.6p2 and develop