I’'m not completly sure I understand your request so let me present an example to verify that we are talking about the same request.
Lets say that userA has 3 different email addresses and somehow your server knows that userB knows userA. So what you want to do is add the 3 different email addresses of userA in the roster of userB. Is that what you are trying to do?
If the answer is yes then my answer is that that idea won’'t work. The main reason for that is that email addresses and XMPP addresses may have the same form but they are not the same thing. In other words, an email address does not represent an XMPP address. E.g. john@hotmail.com does not mean that I can send an XMPP message to the XMPP user john@hotmail.com and that it will reach the user you want.
However, another approach to your requirement could be to just add userA to userB’‘s roster and then show the information contained in userA’‘s vCard in userB’'s roster. Each user has a vCard that contains business and personal information. A vCard may have zero, one or many email addresses. Your client can get that info and show it the best it can based on your needs.
I’‘m assuming that you are going to retrieve the users’’ vcards from your client. Which client are you using? If you are you using Smack then you can use its native support for vcards that will simplify your life a lot. If you are going to implement your own vcard solution then you will want to read the vCard specification to learn how it works.
BTW, vCards are stored in the database and not in a file. However, if you are integrated with LDAP then vCards will be retrieved from your LDAP server. In fact, you can create your own vCard provider that will get the vcards information from any source that you have. Read the documentation for more information.
If clients are going to retrieve the vCards then there is no need to do some server work. However, if you are going to build some extension or plugin then the answer is yes (to whatever question you have) since you can always access the vCard information and do whatever you have to.