Returns the unique ID.
The uniqueID is an identifier for this object, is unique within the current window, and remains the same for the lifetime of the accessible object. This is the same value that is passed in the idChild parameter of the WinEventProc callback function for any events that occur on the object, and is typically a negative number. Using negative numbers prevents the ID from conflicting with the use of positive numbers that might possibly be used to indicate a direct child N of the window's root accessible object, and thus the implementation of get_accChild() can differentiate between requests for direct child N vs. a descendant lower in the hierarchy with a given uniqueID. This is important because get_accChild() is used by AccessibleObjectFromEvent() to retrieve the accessible object which fired the event by starting from the window's root accessible object.
This value is provided so the AT can have access to it even when not handling an event for the object.
An example of when this value is useful if the AT wants to build a cache. The AT could cache the uniqueIDs in addition to other data being cached. When an event is fired the AT could map that to its internal model. Thus, if there's a REORDER/SHOW/HIDE event the AT knows which part of the internal structure has been invalidated and can refetch just that part.
This value can also be used by and AT to determine when the current control has changed. If the role is the same for two controls that are adjacent in the tab order, this can be used to detect the new control.
Another use of this value by an AT is to identify when a grouping object has changed, e.g. when moving from a radio button in one group to a radio button in a different group.