couchdb-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Jan Lehnardt <>
Subject Re: CouchDB Next
Date Tue, 04 Oct 2016 08:32:56 GMT

> On 02 Oct 2016, at 14:29, Filippo Fadda <> wrote:
> Well, that's not what I meant. What I want is a query parameter to get only the specified
document’s fields on a simple GET /{db}/{docid}. CouchDB should parse the JSON and returns
only the required fields, because in a real scenario there are times you don’t need the
entire document, but just some fields. Lazy Loading is a well known pattern and it’s really

Re-post from my original email ;)

## Sub-Document Operations

Currently a doc update needs the whole doc body sent to the server. There are some obvious
performance improvements possible. For the longest time, I wanted to see if we can model sub-document
operations via JSON Pointers[2]. These would roughly allow pointing to a JSON value via a

For example in this doc:

 "_id": "123abc",
 "_rev": "zyx987",
 "contact": {
   "name": "",
   "address": {
     "street": "Long Street",
     "nr": 123
     "zip": "12345"

An update to the zip code could look like this:

curl -X POST $SERVER/db/123abc/_jsonpointer/contact/address/zip?rev=zyx987 -d '54321'

GET/DELETE accordingly. We could shortcut the `_jsonpointer` to just `_` if we like the short

JSONPointer can deal with nested objects and lists and works fairly well for this type of
stuff, and it is rather simple to implement (even I could do it:
— This idea is literally 5 years old, it looks like, no need to use my code if there is
anything better).

This is just a raw idea, and I’m happy to solve this any other way, if somebody has a good



>> On 30 Sep 2016, at 20:23, Nick Vatamaniuc <> wrote:
>> Hi Filippo,
>>> Lazy Loading
>>> ——————
>>> I don’t know if CouchDB 2.0 comes with such a feature, but I would like to
have a mechanism to get just some document’s fields. Sometime I just need the title or whatever,
but I have to get the entire document. I would like to request just a set of fields when I
retrieve a document from the database.
>> There is  pr to do something like this with _change feeds and mango
>> selectors. It adds an additional fields parameters to return only some
>> fields from the doc. So if the doc is 10MB and you just want to return
>> 1 field:
>> Cheers,
>> -Nick

Professional Support for Apache CouchDB:

View raw message