This is the written version of an interactive, slide-by-slide deck. The live diagrams, worked examples and practice quiz are in the interactive deck.
In this lesson
- Composite attrs
- Partial
- Total
- Activities + answers
Composite Attributes & Participation Constraints
ER Chen's Notation — Lesson 4 of 5
Flashcards
What is a composite attribute?
An attribute made up of multiple sub-attributes, each holding a distinct piece of information. Example: Address = StreetNumber + StreetName + City + PostCode.
How is a composite attribute drawn in Chen's notation?
An outer ellipse (the composite parent, drawn with a thicker teal border) with smaller sub-attribute ellipses connected to it by lines — like branches.
Give an example of a composite attribute in a booking system.
GuestName (FirstName, LastName), CheckInAddress (StreetName, Suburb, City, PostCode), or ContactDetails (PhoneNumber, Email).
Why break an attribute into composite sub-attributes?
To allow querying or processing individual parts — e.g., sorting by LastName, filtering by City, or extracting PostCode for delivery routing.
What is the difference between composite and multivalued?
Composite: ONE value split into parts (Name = First + Last). Multivalued: MULTIPLE separate values ({PhoneNumber} = 021…, 09…). Different notations and SQL mappings.
How does a composite attribute map to SQL?
Each sub-attribute becomes its own column. The composite parent itself does NOT become a column. E.g., Address → street_name, city, post_code columns.
What is a participation constraint?
A rule specifying whether ALL entities in an entity set (total participation) or just SOME (partial participation) must participate in at least one instance of a relationship.
What does total participation mean and how is it drawn?
Every entity instance MUST participate in at least one relationship instance. Drawn as a DOUBLE LINE (══) between the entity and the relationship diamond.
What does partial participation mean and how is it drawn?
Some entity instances do NOT have to participate in any relationship instance. Drawn as a SINGLE LINE (──) — the default notation.
A business rule says "Every ORDER must belong to a CUSTOMER". What participation does ORDER have?
Total participation — drawn as a double line from ORDER to the places/belongs_to relationship diamond. Maps to NOT NULL FK in SQL.
A business rule says "A CUSTOMER may or may not have placed an ORDER". What participation does CUSTOMER have?
Partial participation — drawn as a single line (default) from CUSTOMER to the relationship diamond. The FK column in ORDER allows NULL.
How do you identify total vs. partial participation from a business rule?
Total: key words are "must", "every", "all", "required", "always". Partial: key words are "may", "can", "optional", "might", "not necessarily".


