The ADSI object model defines properties or attributes of an ADSI object for use in the housekeeping functions associated with directory services, all defined on the IADs interface. These properties include the fully qualified path name ADsPath, the unique identifier GUID, the Parent container object, the Schema object, and the Class or type of the object. These properties, along with the properties defined for this type of object that have also been defined in the underlying directory service, are cached in a property cache for each object.
The Class definition, found in the schema, specifies certain attributes that can be filled in from the underlying directory-service schema or namespace as available. The MandatoryProperties attribute supplies a list of property names that must be supplied before the object can be saved in persistent storage. The OptionalProperties list the properties that may be set for an object of this type.