multiple profile type values I have following requirement

I have user with multiple profile type like main profile, personal profile, and role profile

A role profile has fields like  

role paid
role status
role start date
role subscription date


A single user can have multiple role profiles and above fields associated with each role profile

I heard about field collection per field which means we can have multiple values per field , But how can we have set of  multiple profile values 

Example :

Role name : Moderator
   role paid : yes
   role status : yes 
   role start date : xxxxxx
   role subscription date : xxxxxx


Role name : testrole
   role paid : yes
   role status : no 
   role start date : xxxxxx
   role subscription date : xxxxxx


and continues...
I think usage of profile2 module works only with 1 -1 relationship with user to each profile type. Node or custom entity might work better for your use case. Field collection is one way of creating such entity. This article (Creating your own entities) might help, if you replace task -> role_licence and task_type -> role_licence_template.