That it a good solution, and in the case of the ST Micro chips the i2c lines can be pulled to 5V without issue, but in terms of compatibility Arduino shields which use i2c rarely pull them to 5V with weak pullups, expecting you to do that with the chip instead.