• ...CounterpartyAccountKey and GenevaAccountKey ..

    If these do represent the source, think of the maintenance nightmare when the source changes, or another is added. This is not the way to design IMHO.

    Unless you know that an account can and will always be tied to one source, for all accounts... ( I would not think this is likely) then I would just use a separate source dimension instead of including the source in the account dimension. There is a gray area here as you could consider the source a slowly changing attribute in the account dimension, but I just dont think it strictly relates to the key despite the correlation. Hence why I would advocate a separate source dimension here.

    ----------------------------------------------------