xAPI spec. has only guaranteed data structure interoperability. To guarantee semantic interoperability for xAPI data sent by different systems, there should not be multiple ids for one semantic meaning. There are a lot of considerations in vocab. id, including naming appropriateness, naming structure, id persistence, both human-readable and machine-readable required, and CoP management... these are all documented in ADL's publications as below. It seems to me there is no enough awareness about all these, and people just choose whatever others used (for example, what you get when you google tin can api), or just create their own. Even we spent the efforts to work with ADL (Jason Haag, thanks!!!) for building AcrossX vocab. (https://w3id.org/xapi/acrossx) We still need to handle multiple ids issue in Visca (http://www.visualcatch.org/) .
Vocab Spec. from ADL – gitbook: http://bit.ly/read-vocab-spec
Vocab Primer from ADL – gitbook: http://bit.ly/read-vocab-primer
xAPI Chinese CoP Lead
ID, Verb, Activity