[Howson mentions this in Chapter 5, under 'mixed domains'.]
[These might help, you need only scan them.]
K.H.Blasius et al. eds. Sorts and Types in Artificial Intelligence
Maria Manzano  Extensions of First-Order Logic
John Sowa  Knowledge Representation
Extending the notation
At first site, having an equivalence between types (lower case letters a..v) and monadic predicates (upper case A..V) might seem limiting. But it can be extending to a degree by introducing definitions for more complex single variable predicates. For example, say you have
(Mx∧Dx)⊃Nx (*notice the free variable x*)
as a fancier category (those things which if they are M and D are also N), then you could introduce a monadic predicate definition for this, via an equivalence eg
12/13/09 under construction
Order Sorted Logic
A Oberschelp  'Order-Sorted Predicate Logic' in K.H.Blasius et al. eds. Sorts and Types in Artificial Intelligence
We have seen that sorted logic is more natural in most settings (for example, we don't want to be concerning ourselves with whether Julius Caesar is or is not a prime number).
And the sorts may well be disjoint: people are one sort, numbers are another sort, and nothing is both.
(Many) sorted logic, with sorts or sort labels, is very similar in concept and execution to the types and type labels just discussed (in fact, many texts use the two terms interchangeably). There is, though, a conceptual difference. It is that whereas both ordinary logic and logic with type labels use one (homogenous) domain or universe, sorted logic uses a (usually stratified, heterogenous) domain which consists of two or more sub-domains.
An example will help.
Type labels are one way to approach what seem to be different domains in use in the same reasoning. What we are going to do here is to tag the variables with a type to indicate that they are subject to a particular monadic (one-place) predicate applying to what they pick out. An example will help, say 'All men die' is symbolized