No se si entiendo bien lo que me comentas, por ejemplo si pongo:
 
Código:
 <struct>
 <segment name="seg1" tag="seg1">
  <camp name="c1" length="10">Hola</camp>
  <camp name="c2" length="3">150</camp>
  ...
 </segment>
 <segment name="seg2" tag="seg2">
  <camp name="c7" length="10">Adios</camp>
  <camp name="c8" length="3">185</camp>
  ...
 </segment>
 ...
</struct>
  Haciendo un get_element_by_id('seg2') me tendria que retornar el nodo? Correcto? 
Muchas gracias lo estoy probando, aunque debo tener algun otro error por ahi.