No entiendo la salida en las entidades XML y PHP SimpleXMLElement

Uso entidades en XML y no entiendo mis resultados.

Tengo un archivo XML que llama a una entidad externa, esto es config.xml:

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE config [
    <!ENTITY totalInstances SYSTEM "totalInstances.xml">
]>
<config>
    &totalInstances;
</config>

Aquí está el archivo totalInstances.xml:

<?xml version="1.0" encoding="UTF-8" ?>
<totalInstances>
    <nombre>45</nombre>
</totalInstances>

Así que en PHP cargo el archivo config.xml con la ayuda de Class SimpleXMLElement:

$config = simplexml_load_file('config.xml');

Luego imprimo la variable $ config con un var_dump, y aquí está la cosa que no entiendo:

object(SimpleXMLElement)[3]
  public 'totalInstances' => 
    object(SimpleXMLElement)[5]
      public 'totalInstances' => 
        object(SimpleXMLElement)[6]
          public 'totalInstances' => 
            object(SimpleXMLElement)[8]
              public 'nombre' => string '45' (length=2)

Esperaba tener un nodo simple "totalInstances" que contenga el nodo "nombre". Lo que pasa ? Gracias.

editar : Para más detalles, no entiendo por qué obtengo tres objetos llamados "totalInstances" mientras que solo hay uno en el archivo totalInstances.xml? Esperaba tener esta salida:

object(SimpleXMLElement)[3]
      public 'totalInstances' => 
            object(SimpleXMLElement)[8]
                public 'nombre' => string '45' (length=2)

Además, no estoy seguro de entender qué significa el número entre "[]" en la salida.

Respuestas a la pregunta(1)

Su respuesta a la pregunta