Is it correct to represent a foreign key on a conceptual data model, or should I only introduce foreign keys when I am doing the relational model?
Foreign keys are entirely (and exclusively) part of the relational model.
Object models don't rely on foreign keys; they have direct object references not based on keys.
Experts are divided on this one. Here's my opinion.
The classic ER (Entity-Relationship) model identifies relationships, but does not implement them as foreign keys. In an ER diagram, relationships appear as lines between boxes. Extra marks classify them as many-many or many-one, and as mandatory or optional. A relational model always uses foreign keys to identify and implement relationships. A relational model diagram will use lines between boxes for visual purposes, but a complete attribute list will include these foreign keys.
Another difference between ER modeling and relational modeling is that in relational modeling, a many-many relationship will be diagrammed as a box with two (or more) lines leading up to it. In ER modeling, a binary many-many relationship is modeled without a box of its own.
I always used to construct the conceptual model using ER modeling, and leave the foreign keys out. Then, at logical design time, I would switch over to the relational model and plug in the foreign keys. At this time, many-many relationships would acquire extra boxes of their own, to hold a pair (or a tuple) of foreign keys.
Many experts don't follow my practice. They opine that the ER model is superfluous for conceptual modeling, and that it's best to begin with a relational model at the conceptual level, while you are still doing the requirements analysis. Then you don't have to switch modeling conventions in mid stream. From a theoretical point of view they are right.
Where the ER model has served me well is in explaining the model to unsophisticated clients. Some of them have a quicker intuitive grasp of the ER model than of the relational model.