Question: You are to design a Java application using the list data structure to manage your contact information. Each contact may have the subsequent data:
- name
- addresses
- e-mails
- phones
- group
Each contact may have multiple addresses, e-mails and phones, and may belong to a group.
The subsequent operations are required on the contact information:
- add
- delete
- update
- search (by name/phone/e-mail/group)
All the data must be input from and saved/updated in an XML file. You must design your own XML parser. Any imported/copied XML parser is not allowed. Prepare an exception for any error.