The former is how NSAttributedString works in the Apple ecosystem. It’s a plain string with attributes attached to certain character ranges.

https://developer.apple.com/documentation/foundation/nsattri...