Semantics in Business Systems: The Savvy Manager's Guide

In this chapter we begin the exploration of how to bring semantics into systems design. The primary mechanism for enterprise applications is in the design of databases, and the primary tool is the modeling of these databases. As mentioned in Chapter 3, semantics is a combination of data and behavior, and this chapter covers a modeling domain in which data and behavior are tightly interlinked: object-oriented modeling.
Although data modeling and object modeling are both well-established fields, the vast majority of practitioners conduct their modeling implicitly, following semantic leads, without being aware that they are doing so. To make this modeling more explicit, and thus more accessible, we begin this discussion by examining the semantic differences between documents and databases. From there we investigate where the semantics in a database application reside. We review what schemas are and how they are defined, and then discuss how semantics relate to normalization. We conclude by looking at the normalization of logic and how object-oriented modeling has shaped semantic understanding.
At one semantic level, documents and databases are alike. Both contain information, not physical objects or events. (By "document" I mean the information content and not the rendering onto paper, which, once rendered, is a physical object.) Once you get past this abstract similarity, though, databases and documents appear to be very different. Let's explore this with a thought experiment.
Imagine a simple document such as the letter in Figure 5.1.
August 1, 2002Mr. SmithPerpetual...