CouchDB, version 0.10.0, using native erlang views.
I have a simple document of the form:
{ \"_id\": \"user-1\", \"_rev\": \"1-9ccf63b66b62d15d
If you like experimental features (that still work...), you might want to have a look to Erlang exprecs.
I found it extremely helpful in creating a sort of dynamic records for Erlang.