184.108.40.206.1.3.1 Search Filters
Active Directory does not support the extensible match rules defined in [RFC2252] section 8, [RFC2256] section 8, and [RFC2798] section 9. Active Directory exposes three extensible match rules that are defined in section 220.127.116.11.4.4. Other than these three rules, the rules that Active Directory uses for comparing values (for example, comparing two String(Unicode) attributes for equality or ordering) are not exposed as extensible match rules. These comparison rules are documented for each syntax type in section 18.104.22.168.2.4. When performing an extensible match search against Active Directory, if the type field of the MatchingRuleAssertion is not specified ([RFC2251] section 4.5.1), the extensible match filter clause is evaluated to "Undefined". The dnAttributes field of the MatchingRuleAssertion is ignored and always treated as if set to false.
Active Directory supports the approxMatch filter clause of [RFC2251] section 4.5.1. However, it is implemented identically to equalityMatch; for example, the filter is true if the values are equal. No approximation is performed. Filter clauses of the form "(X=Y)" and "(X~=Y)" may be freely substituted for each other.
Active Directory in Windows 2000 operating system does not implement three-value logic for search filter evaluation as defined in [RFC2251] section 4.5.1. In Windows 2000, filters evaluate to either "true" or "false". Filters that would evaluate to "Undefined", as per the RFC, are instead evaluated to "false". Active Directory in Windows Server 2003 operating system, Windows Server 2008 operating system, Windows Server 2008 R2 operating system, Windows Server 2012 operating system, and Windows Server 2012 R2 operating system uses three-value logic for evaluating search filters, in conformance with the RFC.
Active Directory does not support constructed attributes (defined in section 22.214.171.124.5) in search filters. When a search operation is performed with such a search filter, Active Directory fails with inappropriateMatching ([RFC2251] section 4.1.10).