I dont think it was the 'namespace working group' that 'allowed' qnames in data. Xml Schemas Datatypes added qnames as a simple datatype, and therefore PSVI inherited it.
An issue is that qnames are not consistently resolved: xsd's targetNamespace provides a different resolution strategy than XMLNamespace/XSLT (or Schematron) for default namespaces. So knowing that some data has the type of qname does not necessarily mean you know how to resolve it.
So it is not always the XML parser that resolves qnames in data. The PSVI has them resolved, but it is "Implementation defined" what strategy to use to resolve default. In fact, it is not the document that always sets the default namespace, you need to also know what application (or 'document type') is being used.
(And actually qnames are not so useful as simple datatypes because typically you want to do something with them: put them in an expression like Xpath for example. If your code has to proovide its own resolution for expressions containing qnames, there is not any bang per buck in having built-in resolution of qnames by the parser, it seems to me. )
cheers
Rick