What i understand is that you are not able to get Specific events while selecting "John Smith" as athlete name.
There are many ways to accomplish this , one such way is ,described below.
Let say , in Editor table , name = field for athletes , event = field to edit event name , video = field for the video
Viewer Table , name1 = to select name for athlete , event1 = field for selected event.
Create a portal for Viewer , by relation Viewer--------name1=name-----------Editor , in Viewer table.
In portal , you can show specific events ,when a name is selected in name1 field (name1 field will have valuelist data coming from Editor's table name field) .
Create another relationship from View to an occurance of editor , like Viewer---------name1=name , event1=event ---------viewer_EDITOR__specificEvent (Occurance for Editor) .
In Viewer field , on the portal , append a button script , when a specfic event is selected , a script will run ,which will set field Viewer::event1=Editor:event
On the side on the portal ,show a container field as viewer_EDITOR__specificEvent::video.
Conclusion :- In Viewer table layout . Select an athlete name from a valuelist , a portal will show number of events attached to it ,Then ,select an event from from the portal , runs a script . Then at the side ,there will be a container field ,which will show specific video for the event selected and athlete name.