X -> r (A, B, ...), which means:
Within a context of type X, the parts A, B, ... are related by the relationship r.
Each pattern is a three-part rule r(P, X, S), which expresses a relation r between a certain context X, a problem P, and a solution S.
(The 'problem' part can be understood as the semantics of the pattern)