user-[host?:HOSTS]->event

is an optional match which results in host being non-null for a successful match and null for a non-existing relationship (like an outer join in SQL). And as both user and event are already bound it will not spread the result to more than this single user + single event.

For your second questions, this will fetch all the relationships of the type ITEMS_SIGNED_UP_FOR and for the end nodes (signedUpToBringToEvent) it will also do the "optional relationship" check.