[See also http://forum.aws.chdev.org/t/personid-relation-xmlgateway-vs-rest-api/486/2]
Could you clarify how the officer_id is calculated, and in particular whether it is scoped to address? For the bulk data, it seems fairly clear:
"Each person within the Companies House system is allocated a unique 12 digit Person Number. A change to an individual’s Usual Residential Address (URA) or Name (but not Service Address) will generally result in a new increment of the Person Number being created.
An example of a scenario where a new Person Number would be created is where a director with multiple appointments introduces a new Usual Residential Address (URA) for only one of those appointments; whilst a new Person Number would be created, the first 8 digits would remain the same so that a relationship with the original number would still be apparent (e.g. if John Smith had number 123456780001 and had the same details for all his appointments, and he then changes his URA for one of those appointments, he would be given new number 123456780002 in relation to that appointment; if he were to subsequently move all of his appointments to that URA then they will all merge on 123456780002).
A similar incrementation would take place if “Miss Jane Harris” changed her name to “Mrs Jane Smith”.
However it doesn't appear to be documented whether the same logic applies with officer id. In particular:
* Does it change if the URA changes, meaning that the same person may be linked to two companies, then the URA for one of the companies changes, and so the connection is broken
* If it can change, is there any way to use part of the officer_id as you can the Person Number, so it's persistent, irrespective of such changes?