All namespace interactions are centered around ParserNamespace, which is an interface and its concretizations, which are also interfaces, hence it is not clear what is an abstract concept and what is a real namespace.
Furthermore we ParserNamespace.class equivalents in API calls, which leads to inscrutable interactions, as it looking for users of a particular namespace means searching for Namespace.class references.
This is an artifact of the proof-of-concept design and a few unfortunate entanglements of ParserNamespaces with other constructs.
Refactor these to the point where we only have ParserNamespace and SchemaTreeNamespace classes and all other identifiers being singleton objects. To that effect ParserNamespace needs to become a proper yang.concepts.Identifier and needs to be used as such.