Any OID-valued quantity stored on an object is stored as an ATTRTYP ([MS-DRSR] section 5.14), a 32-bit unsigned integer. The ATTRTYP space is 32 bits wide and is divided into the following ranges.




ATTRTYPs that map to OIDs via the prefix table.


ATTRTYPs used as values of msDS-IntId attribute.


Reserved for future use.

[0xFFFF0000.. 0xFFFFFFFF]

Reserved for internal use (never appear on the wire).

The mapping from ATTRTYPs A to OID O works as follows:

  • If A in [0x00000000..0x7FFFFFFF], A maps to O via a prefix table as specified in [MS-DRSR] section 5.16.4 (the OidFromAttid procedure).

  • If A in [0x80000000..0xBFFFFFFF], let X be the object such that X!msDS-IntId equals A. If X is an attributeSchema object, O is X!attributeID; otherwise X is an classSchema object, and O is X!governsID.

Given an OID O, the schema object X representing the class or attribute identified by O is the object X such that either X!attributeID equals O or X!governsID equals O.