you can do this by using parentheses around the combinations. Your example can be introduced as follows in AIMMS:
DECLARATION SECTION
SET:
identifier : Countries
index : c
definition : data { jamaica , haiti , guyana , brazil } ;
SET:
identifier : Ports
index : p
definition : data { kingston , s-domingo , georgetown ,belem } ;
SET:
identifier : PortToCountry
subset of : (Ports,Countries)
definition : data { ( kingston, jamaica ), ( s-domingo, haiti ), ( georgetown, guyana ), ( belem, brazil ) } ;
ENDSECTION ;
So instead of using the . in between, you just use ( ) around the combination.