In most systems IDs identify resources and are unique in the system i.e.no other resource has the same ID.
Unique IDs make it possible for example to create databases and build relations so that data is not replicated to manage resources such as devices.
IDs are NOT unique in AMDs OpenCL implementation.
Why not URI = Unique Resouce Identification for resourced such as platforms and devices ?
Note: object attributes such as type should not be needed for identification purposes nor any complicated heuristics to detect a device!