introduce DOMDocument wrapper