É possível utilizar um RecursiveIteratorIterator para fazer a iteração sobre uma árvore de mensagens inteira utilizando-o para quebrar um MbsElementIterator.
$it = new MbsElementIterator($input_assembly->XMLNSC->getFirstChild());
$rii = new RecursiveIteratorIterator($it, RecursiveIteratorIterator::CHILD_FIRST);
foreach($rii as $key=>$value)
{
echo $key.'='.$value."\n";
}
Para obter informações adicionais sobre a classe MbsElementIterator, consulte MbsElementIterator.