Quello che dici è un po in contrasto con quello che dice PHP.

Richiamare il metodo load fa restituire il messaggio
"Warning: DOMDocument::load() [domdocument.load]: Document is empty in file"

Che vuol dire che il file xml è vuoto quando lui effettua il caricamento: ovviamente non vuol dire che è vuoto sempre ma in quel momento lo è.

Il secondo errore si lamenta di un errore di sintassi del file XML e quindi il file XML non viene caricato con il risultato che è vuoto inizialmente.

Per finire, se stai provando su linux il file file.xml ha i permessi 666 (anche se sbagliato va bene anche 777)?