I suspect that the solution is a “floatingRateSpreadCalculation” containing (at least) two floating rate indices with independent multipliers. This would be a member of the rateCalculation substitution group, enabling it to be used in place of floatingRateCalculation.