couchdb-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Damien Katz <>
Subject Re: Changing rev to _rev in view results (Was: Re: newbie question #1)
Date Tue, 30 Dec 2008 00:01:29 GMT

On Dec 29, 2008, at 6:38 PM, Antony Blakey wrote:

> On 30/12/2008, at 12:51 AM, Damien Katz wrote:
>> The current rule maybe not the most intuitive to a newbie, but it  
>> is far more consistent and easier to work with then when using the  
>> deeper APIs.
> How is it 'far more consistent'. What measure of consistency are you  
> using? Name identity is more cognitively fundamental than name  
> contextuality. The consistency guaranteed by the asserting that a  
> name is a name is a name is of a more fundamental form than the  
> application of a different rule.
> How is it 'easier to work with'? How does using _id and _rev  
> everywhere make it not easy? Surely it's not the difficulty of  
> writing code?
>> The only 2 other workable solutions I see is to either stuff  
>> everything special into a _meta structure or only use HTTP headers  
>> for all CouchDB meta information. But after having spent much time  
>> thinking about this issue, I think the current rule is the better  
>> compromise.
> A simple rule is that every couch-domain value has a leading  
> underscore. All technical issues disappear. Consistency ensues. Any  
> objection to this must be aesthetic.

The current rule is that every couch-domain value has a leading  
underscore when it appears in the root of a document. Your rule would  
mean that throughout the API, everything that has special significance  
should have an underscore. In views (key -> _key, value -> _value) in  
urls ( GET /db/doc?_rev="...") and design docs (views -> _views, map - 
 > _map). That rule is simpler, but I think all the leading  
underscores are ugly (aethetics) and require more unnecessary typing  
(efficiency) and gain you no additional behaviors (functionality), and  
all for the sake of consistency to a slightly simpler rule.


View raw message