Enfrocing Uniqueness: You are describing a way to imitate "primary keys", not unique indexes. There may be more than one unique index per table/document. You need to give examples for this requirement, too.
SQL allows composite unique (and primary) keys. In CouchDB, _id is a literal string.
In SQL, the parts of an unique key may allow NULL. In CouchDB, _id is mandatory.
In SQL, tables allow an arbitrary number of unique key constraints. In CouchDB, there is only one _id per document (selcuk mentioned that 3 years ago ...)
So enforcing uniqueness in CouchDB is far from being "an easy one". Uniqueness actually is one of the weaknesses of CouchDB.
Enfrocing Uniqueness: You are describing a way to imitate "primary keys", not unique indexes. There may be more than one unique index per table/document. You need to give examples for this requirement, too.