package module.webserviceutils.domain; valueType pt.utl.ist.fenix.tools.util.Strings as Strings { externalizeWith { String exportAsString(); } internalizeWith importFromString(); } class HostSystem { } class Host { String name (REQUIRED); String username (REQUIRED); String password (REQUIRED); Boolean enabled (REQUIRED); } class ClientHost extends Host { String serverUrl; } class ServerHost extends Host { Strings clientAddresses; } relation MyOrgHostSystem { .pt.ist.bennu.core.domain.MyOrg playsRole myOrg; HostSystem playsRole hostSystem; } relation HostSystemServerHosts { HostSystem playsRole serverHostSystem { multiplicity 1..1; } ServerHost playsRole serverHosts { multiplicity *; } } relation HostSystemClientHosts { HostSystem playsRole clientHostSystem { multiplicity 1..1; } ClientHost playsRole clientHosts { multiplicity *; } }