Background/Motivation: Inspired by an interesting question by Joel, I've been wondering about the relationship between two very natural ways to define the category of ''all models of T'' where T is a first-order theory.
Let us assume that T is a complete theory with infinite models. Then on the one hand we can define the category Mod(T) whose objects are all the models of T and whose morphisms are all homomorphisms in the sense of model theory -- i.e. functions $\varphi: M \rightarrow N$ such that
For any $n$-ary relation $R$ in the language of $T$, if $M \models R^M(a_1, \ldots, a_n)$, then $N \models R^N(\varphi(a_1), \ldots, \varphi(a_n))$;
$\varphi(f^M(a_1, \ldots, a_n)) = f^N(\varphi(a_1), \ldots, \varphi(a_n))$ for any $n$-ary function symbol $f$ in the language of $T$.
Also, one can define another category Elem(T) whose objects are also all the models of T, but whose morphisms are only the elementary embeddings, that is, functions which preserve the truth of all first-order formulas. As a model theorist, I'm more used to thinking about the category Elem(T), and this latter category arises naturally if one cares about which sets are definable but one does not particularly care about which sets are definable by positive quantifier-free formulas.
Question: What sorts of category-theoretic properties automatically transfer from Mod(T) to Elem(T), or from Elem(T) to Mod(T)?
To be clear, by a ``category-theoretic property'' I mean something that is preserved by an equivalence of categories.
Another related question is:
Question: Suppose we have a set of category-theoretic properties which we know characterize all the categories C which are equivalent to Mod(T) for some T [or to Elem(T) for some T]. Can we use this to characterize the categories which are equivalent to Elem(T) [respectively, Mod(T)] for some T?
Here are a couple of basic facts I know, which may or may not be useful here. First of all, every category Elem(T) is equivalent to a category Mod(T') for some other theory T' -- namely, the "Morleyization'' T' of T, where we expand the language by adding new predicates for every definable set (and iterating $\omega$ times), thereby forcing T' to have quantifier elimination. However, it is certainly not true that every category Mod(T) is equivalent to a category of the form Elem(T') -- for instance, Mod(T) might not have colimits of $\omega$-directed chains, but Elem(T) always will (by Tarski's elementary chain theorem).
Addendum: As Joel pointed out, there is a third possible notion of ''morphism'' for this category: the ``strong homomorphisms'' $\varphi: M \rightarrow N$ which commute with the interpretations of function symbols and have the property that for any $n$-ary relation $R$ in the language of $T$, $$M \models R^M(a_1, \ldots, a_n) \Leftrightarrow N \models R^N(\varphi(a_1), \ldots, \varphi(a_n)).$$
I'd also be interested to learn about any relationships between the category of models with strong homomorphisms and the other two categories above.