I have read recommendations (I don't remember where, or I'd give a link) that your namespace should start out generic and get more specific. That makes sense to me -- that way, similar modules tend to get grouped together in similar namespaces (assuming people use the same generic words, but that's a different matter). Following this advice, you might consider something like Document::Writer::MSWord. This would allow, say, Document::Writer::WordPerfect, or even Document::Writer::HTML, to coexist in a happy little world.