code: function ExtensibleFilter(options) {
    assert.optionalObject(options);
    options = options || {};
    assert.optionalString(options.rule, 'options.rule');
    assert.optionalString(options.matchType, 'options.matchType');
    assert.optionalString(options.attribute, 'options.attribute');
    assert.optionalString(options.value, 'options.value');
  
    if (options.matchType !== undefined) {
      this.matchType = options.matchType;
    } else {
      this.matchType = options.attribute;
    }
    this.dnAttributes = options.dnAttributes || false;
    this.rule = options.rule;
    this.value = (options.value !== undefined) ? options.value : '';
  }
docs: /--- API