mah la suddivisione sta tutto a come vuoi che appaia, e cmq c'entra abbastanza poco nella programmazione perchè, nella forma piu semplice, avrai una tabella categorie con id/parent_id/name e un pannellino di controllo per inserire/modificare queste categorie. Quindi immagino dei record messi a questo modo:

codice:
- root
  - professionisti
       - avvocati
       - dottori
       - becchini
       - .....
  - attivita commerciali
       - ristorazione
       - alberghiera
       - ....
  - uffici
       - studi professionali
       - ....
  - enti pubblici 
       - ospedali
       - polizia
       - ....
poi insomma se ti guardi magari siti analoghi (come quello delle pagine gialle) vedi loro piu o meno che suddivisione danno. per permettere all'utente di trovare piu facilmente quello che cerca, dovrai metterci un "cerca" possibilmente con l'autocompletamento