A pattern is a common solution to a common problem.
A pattern catalog is an organized collection of patterns.
A typical catalog entry has some form of the problem-solution format:
Name: The name of this pattern
Problem: The common problem solved by this pattern
Solution: The common solution expressed as a template
There are pattern catalogs for every phase of software development.
An analysis pattern is a common solution to a common analysis problem.
A design pattern is a common solution to a common design problem.
An implementation pattern is a common solution to a common implementation problem.
There are pattern catalogs for business, engineering, manufacturing, and other disciplines.
The original pattern catalog contained solutions for design problems in architecture, and was developed by Christopher Alexander.
Canonical Form can be regarded as an implementation pattern.