
Silverston c04.tex V2 - 11/21/2008 3:02am Page 164
164 Chapter 4 ■ Hierarchies, Aggregations, and Peer-to-Peer Relationships
knowledge (such as specifying one-to-many recursive relationships); how-
ever, the real strength of this pattern is that it maintains a level of flexibility
that allows multiple different ways of creating hierarchies, aggregations or
peer-to-peer relationships. The significance of this pattern is that it explicitly
addresses resolving many-to-many recursive re lationships. The pattern sup-
ports hierarchies, aggregates, and peer-to-peer relationships. In this section we
described why it is important to understand the underlying rules that support
peer-to-peer relationships, such as transitive dependency. Finally, this pattern
is also significant because we show how you can mix both many-to-many and
one-to-many r elationships.
This pattern helps you when you need to support a complex environment
where you need to capture many different ways that an entity is related to
itself. This approach often provides a good basis for implementing databases in
fairly dynamic environments with the exception of not easily accommodating
new types of recursive relationships that may emerge (we will address this in
the next pattern). If you need the flexibility of having multiple many-to-many
recursive relationships and you know all of the different recursive relationships
that you wish to capture, ...