Formal Patterns