code: def create_contact(self, attrs, members=None, folder_id=None, tags=None):
          
          cn = {}
          if folder_id:
              cn['l'] = str(folder_id)
          if tags:
              tags = self._return_comma_list(tags)
              cn['tn'] = tags
          if members:
              cn['m'] = members
  
          attrs = [{'n': k, '_content': v} for k, v in attrs.items()]
          cn['a'] = attrs
          resp = self.request_single('CreateContact', {'cn': cn})
  
          return zobjects.Contact.from_dict(resp)
docs: Create a contact
  
          Does not include VCARD nor group membership yet
  
          XML example :
          <cn l="7> ## ContactSpec
              <a n="lastName">MARTIN</a>
              <a n="firstName">Pierre</a>
              <a n="email">pmartin@example.com</a>
          </cn>
          Which would be in zimsoap : attrs = { 'lastname': 'MARTIN',
                                          'firstname': 'Pierre',
                                          'email': 'pmartin@example.com' }
                                      folder_id = 7
  
          :param folder_id: a string of the ID's folder where to create
          contact. Default '7'
          :param tags:     comma-separated list of tag names
          :param attrs:   a dictionary of attributes to set ({key:value,...}). At
          least one attr is required
          :returns:       the created zobjects.Contact