GD 2000

GD2000: Graph Drawing Contest

Graph C

Contributed by John V. Carlis, University of Minnesota


This is a real, in-use data model. However, all names in the model have been changed to Xs to protect the intellectual investment. We are grateful to John Carlis of the University of Minnesota and John Hanna of US West in Minneapolis, for posing the problem.

A data model is a technology-independent statement of the kinds of data to be remembered by a database management system. For this contest we have simplified the drawing to include just entities, attributes, and binary relationships. Graphically, each entity appears as a box (a rectangle), each attribute appears as text within an entity's box, and each relationship appears as a line between two (not necessarily distinct) entities.

Figure 1. A Tiny Data Model.(Source: "Mastering Data Modeling: A User-Driven Approach", John Carlis and Joseph Maguire, Addison-Wesley-Longman, 2000.)

A data model (Figure 1 shows a tiny model) is read by users and modelers during a design process. For example, about each Creature 6 things can be remembered: 3 attributes and 3 links to other entities. As users make decisions, the model evolves.

The quality of the graph significantly impacts the design process. A poorly drawn graph means an unreadable model.


You should produce one or more graph drawings that depict the data model.


  1. An entity box must be big enough to contain the entity name plus its attribute names. However, it can be bigger.
  2. A line can attach to a box anywhere on its perimeter.


Graph C in GML-format. The label the node consists of several lines. The first line is the name of the entity and the others are its attributes (one per line).