You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@couchdb.apache.org by Apache Wiki <wi...@apache.org> on 2008/10/07 04:47:10 UTC

[Couchdb Wiki] Update of "TagsInsideDocuments" by MartinCzura

Dear Wiki user,

You have subscribed to a wiki page or wiki category on "Couchdb Wiki" for change notification.

The following page has been changed by MartinCzura:
http://wiki.apache.org/couchdb/TagsInsideDocuments

The comment on the change is:
page creation

New page:
Tags are stored as a list of strings inside the document:

{{{
{
 "_id":"123BAC",
 "_rev":"946B7D1C",
 "type":"post",
 "subject":"I like Planktion",
 "author":"Rusty",
 "created":"2006-08-15T17:30:12Z-04:00",
 "body":"I decided today that I don't like baseball. I like plankton.",
 "tags":["plankton", "baseball", "decisions"]
}
}}}

== CouchDB Views ==

'''Retrieve all tags with their counts:'''

''map''

{{{
function(doc) {
  if (doc.type == 'post' && doc.tags) {
    doc.tags.forEach(function(tag) {
      emit(tag, 1);
    });
  }
}
}}}

''reduce''

{{{
function(keys, values) {
  return sum(values);
}
}}}

'''Retrieve documents by a specific tag:'''

''map''

{{{
function(doc) {
  if (doc.type == 'post' && doc.tags) {
    doc.tags.forEach(function(tag) {
      emit(tag, doc);
    });
  }
}
}}}