In §3.2 they distinguish between the following four grammatical categories, with some examples:
Predicates: Woman, Rich, Beautiful, Bankrupt
Relations: LivesAt, HadAnAffairWith, Loves
Functions: fatherOf, bestFriendOf, ceoOf
Individual constants: maryJones, johnQSmith, tomsHouse
In the background they have first-order logic with identity, which means they allow for quantification only over individual variables. Within this machinery, in §§ 3.3–5 they introduce the three types of facts.
Basic facts are the atomic sentences and their negations.
The atomic sentences are those sentences which are made of:
- a [predicate] + an [individual]. E.g.: Woman(maryJones)
- an n-ary [relation] + n [individual]s. E.g.: Loves(maryJones, tomsHouse)
- an [individual] + "=" + an [individual]. E.g.: maryJones = marySmith
Note that functions applied to individual constants also denote individuals (e.g., fatherOf(maryJones) is some individual), that's why clauses (1–3) include the word 'individual' rather than 'individual constant' so as to allow also for functional expressions denoting individuals. The negations of atomic sentences are defined as follows: a sentence ¬S is a negation of an atomic sentence iff S is an atomic sentence.
Complex facts are the basic facts closed under boolean connectives and quantifiers.
That's just a fancy way of saying that: (i) basic facts are complex facts, and (ii) if φ and ψ are complex facts, then ¬φ, (φ ∧ ψ), (φ ∨ ψ), (φ → ψ), and ∀xφ are also complex facts. They give the following example of a complex fact on p. 34: ∀y[Rich(y) ∧ Man(y) → Loves(y, jane)] (every rich man loves Jane).
Beware that on p. 36 they list sentences like "jane ¬= john" among complex facts, suggesting that they're not basic facts. But they are. I suspect that's why you've been having hard time seeing the difference between the types. By the definition of basic facts (see above), sentences like "jane ¬= john" are considered basic, because they're the negations of atomic sentences such as "jane = john".
Terminological facts are complex facts taken to be axiomatically or definitionally true.
A better term for them would be "definitional facts" or "meaning postulates" (as Rudolf Carnap calls them). Consider the predicate Man. If someone is a man, we know, without having to see this person, that he is not a woman; it's definitionally true! We capture that logical relationship between predicates Man and Woman with the terminological fact: ∀x[Man(x) → ¬Woman(x)]. That is only one example of a terminological fact; more can be found on pages 36–7. They're pretty straightforward to understand.
Hope this helps clarify the distinction.