Das abstrakte Schema
Der Schemacontainer enthält alle classSchema - und attributeSchema-Objekte , die die Klassen und Attribute definieren, die in einer Verzeichnisgesamtstruktur vorhanden sein können. Der Schemacontainer enthält auch ein Objekt mit dem Namen Aggregate of class subSchema. Dieses subSchema-Objekt wird als abstraktes Schema bezeichnet.
Das abstrakte Schema enthält eine Teilmenge der Daten, die in den Objekten classSchema und attributeSchema gespeichert sind. Der Zweck besteht darin, einen einfachen und effizienten Mechanismus zum Abrufen der häufig verwendeten Elemente der Klassen- und Attributdefinitionen bereitzustellen. Um beispielsweise die optionalen und obligatorischen Attribute einer Objektklasse abzurufen, binden Sie an mehrere Objekte, um die Werte mayContain, mustContain, systemMayContain und systemMustContain aus der Klasse und all ihren Superklassen sowie von allen Hilfsklassen der Klasse und ihrer Superklassen zu sammeln. Das abstrakte Schema sammelt alle diese Daten bequem in einem einzelnen Objekt.
Wie bei jedem Objekt in Active Directory Domain Services können Sie an das subSchema-Objekt binden und dessen Attribute lesen, indem Sie die Zeichenfolgenwerte analysieren, um die gewünschten Daten abzurufen. ADSI bietet jedoch eine Reihe von Schnittstellen, die das Lesen des abstrakten Schemas erheblich erleichtern. Weitere Informationen finden Sie unter Lesen des abstrakten Schemas.
In der folgenden Tabelle sind wichtige Attribute eines subSchema-Objekts aufgeführt.
attribute | BESCHREIBUNG |
---|---|
attributeTypes | Ein mehrwertiges Attribut, das Zeichenfolgen enthält, die jedes Attribut im Schema darstellen. Jeder Wert enthält die attributeID, lDAPDisplayName, attributeSyntax, rangeLower, rangeUpper und ein Element, das angibt, ob das Attribut mehrere Werte haben kann. |
extendedAttributeInfo | Ein mehrwertiges Attribut, das Zeichenfolgen enthält, die zusätzliche Daten für jedes Attribut darstellen. Jeder Wert enthält die attributeID, lDAPDisplayName, schemaIDGUID und attributeSecurityGUID. |
extendedClassInfo | Ein mehrwertiges Attribut, das Zeichenfolgen enthält, die zusätzliche Daten für jede Klasse darstellen. Jeder Wert enthält die governsID, lDAPDisplayName und schemaIDGUID der -Klasse. |
objectClasses | Ein mehrwertiges Attribut, das Zeichenfolgen enthält, die jede Klasse im Schema darstellen. Jeder Wert enthält die governsID, lDAPDisplayName, mustContain, mayContain usw. |