trigger_error('You have used a reserved name as the name of an XML tag. Please consult the documentation (http://www.criticaldevelopment.net/xml/) and rename the tag named "'.$name.'" to something other than a reserved name.', E_USER_ERROR);
trigger_error('Your tag named "'.$name.'" contains either a dash or a colon. Neither of these characters are friendly with PHP variable names, and, as such, you may have difficulty accessing them. You might want to think about enabling the cleanTagName feature (pass true as the second argument of the XMLParser constructor). For more details, see http://www.criticaldevelopment.net/xml/', E_USER_NOTICE);
//If there is no array already set for the tag name being added,
//create an empty array for it
if(!isset($this->$name))
$this->$name = array();
//Add the reference of it to the end of an array member named for the tag's name
$this->{$name}[] = &$child;
//Add the reference to the children array member
$this->tagChildren[] = &$child;
//Return a reference to this object for the stack
return $this;
}
/**
* Returns the string of the XML document which would be generated from this object
*
* This function works recursively, so it gets the XML of itself and all of its children, which
* in turn gets the XML of all their children, which in turn gets the XML of all thier children,
* and so on. So, if you call GetXML from the document root object, it will return a string for
* the XML of the entire document.
*
* This function does not, however, return a DTD or an XML version/encoding tag. That should be