Hola, logre hacer que el siguiente codigo me agregue la primera vez pero la siguente me lo reemplaza:
   Código PHP:
    $bloqueI = $doc->create_element("bloqueI");
$root->append_child($bloqueI);
$pos_tmp=$pos;
$pos="categoria".$pos_tmp;
$nodo = $doc->create_element($pos);            
$nodo = $bloqueI->append_child($nodo);
$text = $doc->create_text_node(strip_tags($categoria));
$text = $nodo->append_child($text);
 
$pos="especialistas".$pos_tmp;
$nodo = $doc->create_element($pos);            
$nodo = $bloqueI->append_child($nodo);                
$text = $doc->create_text_node(strip_tags($especialistas));
$text = $nodo->append_child($text); 
    
  me crea: 
Código:
 <bloqueI>
    <categoria0>especialidad</categoria0>
    <especialistas0>especial</especialistas0>
  </bloqueI>
  pero al llamarlo de nuevo me lo cambia: 
Código:
 <bloqueI>
    <categoria1>especialidad</categoria1>
    <especialistas1>jjj</especialistas1>
  </bloqueI>
  Ya le di vueltas asl asunto he tratado creando un if en caso de que $pos sea diferente de 0 y cambiar $bloqueI = $doc->getElementsByTagName("bloqueI");, pero no funciona, no conosco mucho de php.