Suppose A, B, C have the keys id(A), id(B) and id(C). I want to represent the ternary relation in the relational model, i was following the algorithm from the book "Fundamentals of Database Systems (7th edition)" (Chapter 9.1.1, step 7):
The primary key of S (The ternary relation) is usually a combination of all the foreign keys that reference the relations representing the participating entity types. However, if the cardinality constraints on any of the entity types E participating in R is 1, then the primary key of S should not include the foreign key attribute that references the relation E′ corresponding to E.
This makes me doubt, the relation should be composed only by foreign keys(Im not sure if that is correct in the relational model?), should i create a new unique identifier for the relation (i.e. S = (id(s), id(A), id(B), id(C)), or any of the primary keys of the participating entities could be the primary key of the relation? (i.e. id(A))
I know that what i could is just create a relation A with key id(A) and the attirubutes id(B), id(C) and the remaining attributes, but i want to avoid this if possible.