'id' vs 'name' vs ' type'
In current SDT model, '@id:ID', '@id:Name' and '@name:Text' are all used as sort of identifiers for 'Device', 'ModuleClass', 'Module', 'Property', 'Action', 'DataPoint', 'Event' etc.
In my understanding, all of them are supposed to be unique (in its given context, e.g. two ModuleClasses in the same Domain shouldn't use the same 'name'). And many of them are more like a 'type' definition (in JSON schema).
Shouldn't we align the terms into just one (id, name, or type)?
I understand the datatypes of those attributes are defined differently (xs:ID, xs:Name for @id, while undefined for '@name'?), but is that necessary? Even though the types are different, the terms could be aligned I guess.