Yes, a little incorrect(:
Ok, I'll explain more detail. Imagine that I'm developer of some view server. I'd like to create view server which covers most of CouchDB releases. Each new CouchDB release brings new features, improvements and API changes, some times backward-incompatible (as for 0.9->0.10->0.11->0.11.1) . However, I couldn't solve this task due to there is not way to know about CouchDB version and API that I have to implement. So there are three ways that I have:
1. develop only "bleeding edge" view server that support only latest version
2. make separate branch per version
3. keep "all in one" and pass version as command line argument.
First one makes to forgot about old releases, second is supporting hell. Last one is more effective, but requires to keep in mind changing argument on server update.
So CouchDB tells view server about his version, not view server about his.
Sorry for offtopic, just thoughts about similar idea(: or may be improvement of yours:
CouchDB pass "version" command to view server with additional value of his version and excepts that view server return his version back. Something like "version exchange".