Abstract. Although design patterns have become increasingly popular, most of them are presented in an informal way. Patterns, proposed by the SOA design pattern community, are described with a proprietary informal notation, which can raise ambiguity and may lead to their incorrect usage. Modeling SOA design patterns with a standard formal notation avoids misunderstanding by software architects and helps endow design methods. In this paper, we present an approach that aims, first, to model message-oriented SOA design patterns with the SoaML language, and second to transform them to Event-B specifications. These two steps are performed before undertaking the effective coding of a design pattern providing correct by construction pattern-based software architectures. Our approach is enhanced with a tool supporting it. Specification results are imported under the Rodin platform which we use to prove model consistency.