It's also wrong/limited to US-manufactured cars. The 2nd and 3rd letter outside of the North America doesn't follow the convention of country, and manufacturer.
For example Alfa Romeo has Z, followed by AR; Fiat has ZFA. German-made BMWs (as opposed to US-made ones) have WB...
I happen to work in this world, and it is much much worse than this.
CAP codes are white space sensitive, they often have leading whitespaces. So you need to store " PINGPONG", but if you store "PINGPONG" then you are going to be a in world of hurt.
Then each manufacturer has their own code (e.g BMW has IVS, Stellantis has titre and so on).
Then there are mapping files between CAP and manufacturer specific code.
Then manufacturers often need to quickly react to new models being available so you get things like overrides, which is literally a string replace "OO" with "XX" and that makes it into a "electric diesel".
Then along side CAP codes, you other industry codes (e.g. Glasses, HPI).
And they _ALL_ need to interact with each other.
It sounds like a fun problem to solve, it isn't. You basically become a glorified data mangler.
8 comments
[ 2.6 ms ] story [ 18.9 ms ] threadFor example Alfa Romeo has Z, followed by AR; Fiat has ZFA. German-made BMWs (as opposed to US-made ones) have WB...
CAP codes are white space sensitive, they often have leading whitespaces. So you need to store " PINGPONG", but if you store "PINGPONG" then you are going to be a in world of hurt.
Then each manufacturer has their own code (e.g BMW has IVS, Stellantis has titre and so on).
Then there are mapping files between CAP and manufacturer specific code.
Then manufacturers often need to quickly react to new models being available so you get things like overrides, which is literally a string replace "OO" with "XX" and that makes it into a "electric diesel".
Then along side CAP codes, you other industry codes (e.g. Glasses, HPI).
And they _ALL_ need to interact with each other.
It sounds like a fun problem to solve, it isn't. You basically become a glorified data mangler.