Document Type

Technical Report

Publication Date



Computer software -- Development, Programming languages (Electronic computers), Exemplar (Computer program language)


A relationship pattern is an abstraction of a recurring need when establishing relationships among information elements in specific contexts. By developing or leveraging a relationship pattern, modelers can solve a class of problems once and describe many relationship types at once. We have developed a framework for specifying relationship patterns and pattern languages (sets of patterns) in both modeling-language-independent and modeling-language-specific ways. We describe this framework both informally and formally. We provide examples of some commonly observed relationship patterns and show how to use them in ER with the help of a relationship pattern language called Exemplar. We also provide notes on using relationship patterns in UML.


Portland State University Computer Science Department Technical Report #08-03, 2008.

Persistent Identifier