docs: function(value, params, property, fields, object) {
              var that = this;
  
              if (!_.isSimpleObject(value)) {
                  throw new Error('Value of property "' +
                      [property].concat(fields).join('.') +'" must be a simple object!');
              }
  
              if ('keys' in params) {
                  _.each(params.keys, function(key) {
                      if (-1 === params.keys.indexOf(key)) {
                          throw new Error('Unsupported hash key "' + key +
                              '" for property "' + [property].concat(fields).join('.') + '"!');
                      }
                  });
              }
              if ('element' in params) {
                  _.each(value, function(key) {
                      value[key] = that.apply(value[key], params.element, property, fields.concat(key), object);
                  }) ;
              }
  
              return value;
          }