A foreign key is used in physical and sometimes logical relational data modeling schemes to represent a relationship. A foreign key may be created implicitly when a relationship is defined between two entities, depending on the database technology or data modeling tool, and whether the two entities involved have mutual dependencies.
In the example shown in the Foreign Keys figure, Registration contains two foreign keys, Student Number from Student and Course Code from Course. Foreign keys appear in the entity on the many side of the relationship, often called the child entity. Student and Course are parent entities and Registration is the child entity.
An attribute is a property that identifies, describes or measure an entity. Attributes may have domains. The physical correspondent of an attribute in an entity is a column, field, tag, or node in a table, view, document, graph or file.
In data models, attributes are generally depicted as a list within the entity rectangle, as shown in the Attributes figure, where the attributes of the entity Student include Student Number, Student First Name, Student Last Name and Student Birth Date.
DAMA Data Management Body of Knowledge 2nd Edition, 2017, Print.