docs: function (operator) {
              var name = operator.operator,
                  ret = {},
                  field;
              if (name === "and" || name === "or" || name === "not") {
                  ret["$" + name] = this.translateExpressions(operator.expressions);
              } else if (name === "eql") {
                  field = operator.field;
                  ret[field] = operator.value;
              } else if (QuerytoMongoMap.hasOwnProperty(name)) {
                  field = operator.field;
  
                  ret[field] = {};
                  ret[field][QuerytoMongoMap[name]] = operator.value;
              } else if (name === "between") {
                  field = operator.field;
                  ret[field].$gt = operator.value[0];
                  ret[field].$lt = operator.value[1];
              } else if (name === "like") {
                  field = operator.field;
                  ret[field] = {};
                  ret[field].$regex = new RegExp(".*" + operator.value + ".*", "i");
              } else {
                  throw new Error("Query Operator '" + name + "' is not supported!");
              }
  
              return ret;
          }