/** * @param DOMDocument $documentXml * @param DOMDocument $parent */ public function generateXML($documentXml, $parent) { if ($this->isNode()) { $element = $documentXml->createElement($this->getXMLTag()); /** @var TreeViewerNode $leaf */ foreach ($this->getChildren() as $leaf) { if ($leaf->isLeaf()) { $leaf->generateXML($documentXml, $element); } } $parent->appendChild($element); // On parcours les fils. /** @var EiNodeDataSet $child */ foreach ($this->getChildren() as $child) { // On génère l'élément XSD relatif au noeud fils. if ($child->isNode()) { $child->generateXML($documentXml, $element); } } } elseif ($this->isLeaf()) { $element = $documentXml->createElement($this->getXMLTag(), MyFunction::xml_entities($this->value)); $parent->appendChild($element); } }