SimpleXMLElement->children Finds children of given node Description object SimpleXMLElementsimplexml_element->children This method finds the children of the element of which it is a member. The result follows normal iteration rules. &simplexml.iteration; Traversing a <literal>children()</literal> pseudo-array '); foreach ($xml->children() as $second_gen) { echo ' The person begot a ' . $second_gen['role']; foreach ($second_gen->children() as $third_gen) { echo ' who begot a ' . $third_gen['role'] . ';'; foreach ($third_gen->children() as $fourth_gen) { echo ' and that ' . $third_gen['role'] . ' begot a ' . $fourth_gen['role']; } } } ?> ]]> This script will output: