Decomposing bond’s return

I understand a bond’s return consists of coupon and price return. But how should we think of total return in term of yield or credit spread? For instance, is the following expression the correct way to think about this? Note that this is just an illustration, mathematically it might not be exact. Thanks.

TR = coupon + price return = coupon + inverse of yield = coupon + inverse of (risk free + credit spread)

Do you mind price return as the change in the initial bond price due changes in the yield curve? (market price volatility to be simple) or the portion of profitability you attribute to price below or above par when the bond is bought? Because you sum _ coupon _ + price return. Coupon rate could be above or below the yield.

To be clearer, I would say yield return (with its assumptions)* + price return = Total return

The yield itself considers the risk free rate and multiple spreads, and price return could be an exogenous impact on total return (can be positive or negative). Those exogenous impacts could be attributed to the market (macro) and to the issuer company (micro).

* As CFA Institute states in its books, the return a bond yields is assuming the coupon cash flows are reinvested at the same return / yield. So if it is not, then the yield will differ from the calculated at purchase.