Please can someone explain the following error and why the one specific XML input fails?
It turns out that a single node <node/> is not accepted by the core whereas others are ok.

This is the error message in the log, first line from my debug statement: 
HVDM-VOC        > load vocabulary from buffer "german"
xml             > core > load error in [buffer: german]: invalid xml file - parsed text

Minimal code to explain what is done:

% Loading from buffer.
\def\loadvocabularyfrombuffer#1{%
\writestatus{HVDM-VOC}{load vocabulary from buffer "#1"}%
\XMLProcessBuffer{#1}%
% simply does an \xmlprocessbuffer{}{}{}
}

The following buffer gives the error:
\startbuffer[german]
<vocabulary use="de"/>
\stopbuffer
\loadvocabularyfrombuffer{german}

But the others below are ok and load as expected.

\startbuffer[german]
<vocabulary use="de"></vocabulary>
\stopbuffer

and

\startbuffer[german]
<root><vocabulary use="de"/></root>
\stopbuffer

dr. Hans van der Meer