Friends:
Hang on a sec. Not so fast. You may want to spare yourself the effort.
After long debate, we have converged on a solution how to reflect race and ethnicity: Dealing with multiple races and other exceptions - #65 by Mark.
As part of it, no races or ethnicities get mapped, unless they are originated in the same coding system. But certainly we are not mapping “White Irish” to “White” (American). These categories do not work across country and societal borders. Fractions of races are even less supported by any definition allowing for a rational mapping. So, keep all the whites, blacks, greys and whatever colors in parallel., together with the ethnicities. An analyst pursuing some use case will have to make the right selection based on the location of the database and source of the data.
I think folks are planning a hackathon to create one big happy global pot of all of them. Stay tuned.