objectCategory im Vergleich zu objectClass

Sowohl das objectCategory-Attribut als auch das objectClass-Attribut können auf eine bestimmte Schemaklasse eines Verzeichnisobjekts verweisen. Es gibt jedoch einen wichtigen Unterschied in der Semantik zwischen den beiden. "objectClass=class" bezieht sich auf solche Verzeichnisobjekte, in denen "class" jede Klasse in der Objektklassenhierarchie darstellt. "objectCategory=class" bezieht sich hingegen auf die Verzeichnisobjekte, in denen "wild" eine bestimmte Klasse in der Objektklassenhierarchie identifiziert.

objectClass kann mehrere Werte verwenden, während objectCategory einen einzelnen Wert an sich nimmt. Daher eignet sich objectCategory besser für den Typabgleich von Objekten in einer Verzeichnissuche. ADSI verwendet dies als Standardabgleichskriterium. Suchvorgänge mit einer objectClass sind für große Datenbanken nicht skalierbar. ADSI unterstützt die Syntaxen "(objectCategory=SomeDN)" und "(objectCategory=Ldap _ Display _ Name of _ _ Class)".

Die Ausnahme ist, dass der LDAP-Suchfilter "(objectClass= )" keine Suche in der Objektklasse anknt, sondern lediglich testet, ob die * Objekte vorhanden sind.