In plain English what do the proposed 2 FKs represent?
eg. Can you have more than 1WorkActivity in a WorkLocation at the same time?
Can more than 1 Person be the Contact for a WorkActivity?
I think you have to define Work more precisely for readers to understand your setup.
You could consider "Units of Work" as Tasks or Projects.
A Project can have 1 or many WorkSessions.
A Project can have 1 or Many Contacts.
If yes to these, then I think your table structures may be an issue.
Code:
Project--+-->WorkSession---->Worker
| |
| |
| V
V WorkLocation
Contact