IDEF1X (Integration DEFinition for Information Modeling) is a method for designing relational databases with a syntax that supports constructs in developing conceptual schema.
Not everyone knows that this notation has an interesting history. Indeed, the need for semantic data models was first recognized by the U.S. Air Force in the mid-1970s. As a result, the ICAM Program came into being (It identified a need for better analysis and communication techniques for people involved in improving manufacturing productivity), that later developed a series of techniques known as the IDEF; IDEF1X being one of them.
Let's take a closer look at the syntax:
Entity type
- Weak entity (dependent) is represented by a round-cornered rectangle (instances of identifier-dependent entities are meaningless (by definition) without another associated entity instance)
- Strong entity (independent) is represented by a rectangle (Instances of identifier-independent entities can exist without any other entity instance)
Example: book as an independent entity and chapter as a dependent entity.
Attributes
To present attributes, the entity is divided into two parts. In the first one, there are primary key attributes, while the other contains attributes. What's more, the name of the entity is usually situated above the rectangle. Every attribute must have a value (No-Null Rule), and no attribute may have multiple values (No-Repeat Rule). Every entity has exactly one primary key displayed above the horizontal line in the entity box. Foreign keys are labeled (FK) and alternative keys are presented as (AK) to show that they are not owned by that entity.
Relationships
Solid or dashed lines with filled circles at one or both ends denote how entities relate to one another. The relationships are always between exactly two entities and are labeled with a verb phrase describing the relationship. Each connection relationship has an associated cardinality which specifies the number of instances of the dependent entity that are related to an instance of the independent entity. This is illustrated in the diagram below:
Also, it's common to come across models in IDEF1X notation with the exception that relations are rendered in IEEE notation (crow's foot, which is more universally recognized).
Now, having all the necessary information let’s go back to the previous example with book and chapter and present it in the IDEF1X diagram.