“Design Patterns are idioms that recur frequently, and that can be represented explicitly in some way that will be easily understood both by people and software. When many people face a similar problem or situation repeatedly, a common solution can often be found. A Design Pattern represents such common solutions… Each pattern is written up in a similar way, with a Synopsis, a list of actors that participate in the pattern, a section describing the XML Markup used to represent the pattern, notes on Processing information marked up in this way, and any Variations on the pattern. We also include cross references to other related patterns.”