I see the problem here, that is that composer and provider are somehow a pre coordinated participation, where the attribute name itself tells us the type of participation. On the other hand, the other_participations navigates through the PARTICIPATION class, building a data structure closer to the RIM approach. So that’s a problem for adding additional info in those cases.
That said, a different problem is what you have perfectly explained about storing in the CDR an extract of some PARTY_IDENTIFIED information. In that case, I agree that the most generic approach (accepting a change to the RM) would be to add a PARTY_IDENTIFIED.other_details::List< ITEM >, so you can add any structure (even an archetyped one) to the PARTY. That would be better than adding specific role, specialty, etc. attributes.
