Skoro tak, to inaczej diagram wygląda

Jesli miało by wyglądać to tak jak mówisz, to:
Klasa Hotel posiada jedną instancję klasy Adres i jedną instancję klasy Kontakty, zawierającą listy: emaili, telefonów, faxów, stron www.
Klasa Hotel wiąże się z wieloma instancjami klasy Osoba, która posiada brak, jedną lub więcej instancji klasy Adres i brak lub jedną instancję klasy Kontakty zawierającą listy: emaili, telefonów, faxów, stron www.
Popatrz na zależności ile do ilu

W ostatecznym rozrachunku w bazie będziesz miał:
a) X - rekordy Hoteli

Y - rekordy Osób
c) X + (losowa ilość gości którzy podali conajmniej jeden adres) - rekordy Adresów
d) X + (losowa ilość gości którzy podali jakikolwiek kontakt) - rekordy Kontaktów
e) zmienna liczba zależna od ilości pokoi w każdym Hotelu
Zauważ, że adresy to liczba zmienna ale minimum to dane adresowe wszystkich hoteli (widzialeś hotel bez adresu lub z dwoma? ja nie) oraz adresy klientów. Oczywiście klient może podać kilka (główny, do biura lub inny kontaktowy).
Kontakty z kolei to zawsze dane kontaktowe hoteli i znów adresy klientów. Teraz z kolei klient może mieć tylko jeden taki obiekt, bo przechowuje on listę danych. Jaki z tego wniosek?
Ano taki, że... możesz Adres przesunąć do Kontaktów. Jest on bowiem tak samo tablicą danych jak email, telefon czy strona www.
Jak to może wyglądać od strony bazy danych?
Tabele:
Hotel (id, nazwa, kategoria),
Pokój (id, typ, cena) + klucz_obcy:id_hotelu
Osoba (id, imie, nazwisko)
Adres (id, tu_lista_pól, typ(osoba lub hotel) ) + łącznik( id_hotelu lub id_osoby)
Fax ( numer, typ(osoba lub hotel) ) + łącznik( id_hotelu lub id_osoby)
Telefon ( numer, typ(osoba lub hotel) ) + łącznik( id_hotelu lub id_osoby)
Email ( adres, typ(osoba lub hotel) ) + łącznik( id_hotelu lub id_osoby)
Www ( adres, typ(osoba lub hotel) ) + łącznik( id_hotelu lub id_osoby)
Ale te 4 ostatnie nie różnią się niemal niczym! Więc można pchnąć do jednej tabeli jako:
Kontakt ( pole, rodzaj(www, email, telefon, fax), typ(osoba lub hotel) ) + łącznik( id_hotelu lub id_osoby)
Oczywiście to tylko jedna z możliwych implementacji. Wszystko jest kwestią przemyślenia co z czym i jak. Bez zaplanowania wszystko Ci się rozwali przy zmianach gdy coś zechcesz przerabiać.
EDIT: I zobacz co w UML oznaczają odpowiednie końcówki linii, a nie wal wszędzie romb, bo Cię ktoś kiedyś ochrzani za rysowanie głupot.