The conventional wisdom in the RDF community seems to be that
all objects should be identified by URIs. That's sometimes appropriate, but I'm
not a great fan of that either. Most of the time "real world" identifiers
(country names, ISO country codes, national insurance numbers etc) work just
fine.
I think the true problem here, as in so many things RDF-related, is in overstatement. I think it's useful for people to have shared conventions for turning simpler names into URIs. What I find overstated is the idea that URIs are the only identifiers you should ever share. I agree with you that simpler names work fine in many cases, but what I think is more important is that the ability to map things is more important than the ability to share identifiers. In the case of XML namespaces to convey naming authority, I agree with you that inherent shallowness of this mechanisms is one problem. Again I think the trick is to avoid genericizing such problems and rather focus on: what works for modeling in the given domain, to solve the given problem? One criteria in answering that question should be that the modeling mechanisms allows you to express semantics and authority of names as richly as the problem requires. RDF is one option. There are other possibilities.
--