Löwenheim-Skolem for many-sorted theories Let $L$ be a many-sorted first order language, and let $\kappa$ be an infinite cardinal which is greater than or equal to the number of function and relation symbols in $L$.  Let $T$ be a complete theory over $L$ for which every sort is infinite.  Let $S$ be the set of sorts of $L$ and let $Card_{\geq\kappa}$ be the class of cardinals which are $\geq\kappa$.  Given a function $\pi:S\to Card_{\geq\kappa}$ (which I will call a profile), say that $\pi$ is $T$-realizable if there is a model $M$ of $T$ such that for each $s\in S$, $\pi(s)$ is the cardinality of the sort $s$ in the model $M$ (in which case I will say $\pi$ is the profile of $M$).
If there is only one sort, the Löwenheim-Skolem theorem says that every profile is realizable.  However, when you have multiple sorts, there are theories for which not every profile is realizable.  In particular, it is possible to have sorts $s$ and $t$ such that for every model, $|s|\leq|t|$ (e.g., if there is a definable injection from $s$ to $t$).  More generally, if $F$ and $G$ are finite sets of sorts, it is possible that in every model, $\max_{s\in F} |s|\leq \max_{t\in G} |t|$ (e.g., if there is a definable injection from $\prod_F s$ to $\prod_G t$).  More complicated kinds of restrictions are also possible (see Goldstern's comment below, for instance).
My question is:

What collections of functions $S\to Card_{\geq\kappa}$ can be the the collection of profiles of models of some theory?  Given a particular theory $T$, is there a (relatively) easy way to determine which profiles are $T$-realizable?

 A: The context you describe is identical to the context in multi-cardinal theorems. Since it is already complicated for two cardinals, this is the most studied case. Here one fixes a countable theory $T$ and a formula $\phi(x)$. Now we say that they admit (or often abusing the notation we simply say $T$ admits) a $(\kappa, \lambda)$ model if there is a model $M$ where $|M| = \kappa$ and $\phi(M) = \lambda$. Then we denote $(\kappa, \lambda) \to (\kappa', \lambda')$ if every countable theory that admits a $(\kappa, \lambda)$ model also admits a $(\kappa', \lambda')$ model. Now the question is for what $\kappa, \lambda, \kappa', \lambda'$ does $(\kappa, \lambda) \to (\kappa', \lambda')$ hold?
There are several known results:
Theorem (Vaught). If $\kappa > \lambda$, then $(\kappa, \lambda) \to (\aleph_1, \aleph_0)$.
Theorem (Chang). If $\kappa > \lambda$ and $\mu$ is a regular uncountable cardinal such that $2^\rho \le \mu$ for every $\rho < \mu$, then $(\kappa, \lambda) \to (\mu^+, \mu)$.
Theorem (Vaught). $(\beth_\omega(\mu), \mu) \to (\kappa, \lambda)$ for every $\kappa \ge \lambda$. The gap $(\beth_\omega(\mu), \mu)$ cannot be reduced in general. The idea of the counterexample is given in the comment of Goldstern.
Theorem (Shelah). $(\aleph_\omega, \aleph_0) \to (2^{\aleph_0}, \aleph_0)$.
These all has been done in 60s and early 70s. And this is pretty much all that can be proved in ZFC. Other statements are either trivially false or are independent of ZFC. If one looks at only stable or o-minimal theories, stronger statements can be proved.
