CouchDBにおけるアプリケーションとは何なのか?
CouchDB自体にjquery.couch.js に答えがあった。
allApps: function(options) { .... }
これを見ていくと
var index, appPath, appName = ddoc._id.split('/'); appName.shift(); appName = appName.join('/');
アプリケーションとは、デザインドキュメントのことである。
index = ddoc.couchapp && ddoc.couchapp.index; if (index) { appPath = ['', name, ddoc._id, index].join('/'); } else if (ddoc._attachments && ddoc._attachments["index.html"]) { appPath = ['', name, ddoc._id, "index.html"].join('/'); }
アプリケーションとして定義されたデザインドキュメントにはcouchappというメンバーがあり、couchapp.index によりインデックスページが取得できるか、couchapp.index がなければ、_attachments/index.html をインデックスページとする。
となると、「CouchDBは、1つのデータベース上に複数のアプリケーションをホストすることができる」という言明は正しそうだ。