In Qt the schema-validator will check if the <name>-tag exists and give an error-message otherwise. In boost we cannot check this easily as there is no validator available in boost. 
*If* the tag exists, the method checks if the name is empty and if so, it will be assigned the name "[NN]". This is of course a problem if you want to access the geometry but the underlying reason is, that the file had a formal error to begin with.
If we don't insert a name here (in this case "[NN]"), the string is empty and will cause problems in GeoLib.

I would vote against using a "default"-name as this makes it easier to mis-use the xml format (although "[NN]" technically *is* a default name). We could discuss aborting the read-process if the name is empty if that makes more sense?
Does this answer your question?