ObjectType is a common superclass of all midPoint objects. It defines the basic properties that all the objects have.
All objects are identified by OID. The OID is an immutable identifier (usually UUID). Except the OID all the objects have human-readable name. The name is usually unique for each object type, but this is not a strict requirement.
Note: object type is fixed, it cannot be changed. The object retains its type from the time it was created to the end of its life.
Following links can be used to get full an authoritative description of the object schema:
User object contains following frequently used items:
Human-readable, mutable name of the object. It may also be an identifier (login name, group name). It is usually unique in the respective context of interpretation. E.g. the name of the UserType subtype is usually unique in the whole system. The name of the ShadowType subtype is usually unique in the scope of resource (target system) that it belongs to.
Free-form textual description of the object. This is meant to be displayed in the user interface.
Extension container that provides generic extensibility mechanism. Almost any extension property can be placed in this container. This mechanism is used to extend objects with new properties.
Set of the orgs (organizational units, projects, teams) that the object relates to. This usually means that the object belongs to them but it may have other meanings as well (e.g. user manages an organizational unit). See OrgType.
Full list of items can be found by using the SchemaDoc links above.