Use Cases
To manage scope, these use cases are restricted to team sports for now. The questions are for data directly available within the samples, not derivative post-processing or analysis.
Use cases are divided among scope (event, season, all-time) and sub-divided by entity (player, team, league).
- Career stats (Goals, assists, etc.)
- Biographical details (Height, weight, nationality, place and date of birth, etc.)
- Which teams did this player play for during their career?
- Overall record
- Championships/Competitions won
- Which players were on this team at this particular time (including "right now")?
- Handling teams that move cities and change names - e.g. New Orleans Jazz became Utah Jazz - all players were the same, it was the same legals entity, but the name and home stadium changed
- Season stats (Goals, assists, etc.)
- Who plays for the team? (Includes jersey number, position, etc.)
- What is the team's record so far? (Games played, wins, losses, ties, clean sheets/shutouts, etc.)
- What is the team record broken down into home and away events?
- Scoring for and against in current season?
- How many penalty shots against and allowed?
- Infractions committed, broken down by type (yellow/red, fouls, TK, particular for other sports)
- What are the current standings? (Includes games played, wins, losses, ties, etc.)
- Who is the scoring leader?
- Who are the top 20 scorers?
- What is the full league schedule (including fixtures and results)?
- What are the teams in a competition or league?
- Infractions leaders
- What is the structure of the seasonal competition? (league competition, regular and post-season, groups/knockout, etc.)
-
Was this player in the starting line up?
-
Which players scored goals and when? (requires Actions)
-
How many minutes did this player play?
-
Did this player score a goal?
-
What type of goal? (Penalty, freekick, power-play, three-pointer, field goal, etc.)
-
What method of goal? (Header, left foot, rush, pass, etc.)
-
Did the player assist a goal?
-
Was the player substituted? - Y/N and time they went off (NB: this is same as "1. Who were the subs for each team in this match?" Right?
-
Was this player penalized and what for? (Includes penalty level: straight red, major, minor, etc. Includes time)
-
How many sets was the tennis match?
-
What is the starting lineup? (including position slated) IN PROGRESSlink to live query
-
Which team won the game? IN PROGRESS link to live query
-
What was the score of the game? IN PROGRESS live link to query
-
Who were the substitutes and positions played? (baseball, soccer, American football)
-
Who got penalized?
-
What are the stats for each team? IN PROGRESS link to live query
-
What was the score at half-time of the soccer match? or What was the inning-by-inning score of the baseball game?
- What are the current scores? (Scoreboard) DONE link to live query
- What is the current status of an event (pre-, mid-, post-, postponed, suspended, canceled, etc.) DONE link to live query
- What was the result the last time these two teams met? Across all competitions this season - MORE DATA NEEDED
- Where are today's matches being played? DONE link to live query
- What time does the game begin? DONE link to live query
- Who are the referees? DONE link to live query
- What was the attendance for this match? DONE link to live query
- Show linking from event action to description, article, photo and video.
- How does the model cope, if the data supplier makes a mistake and sends through a correction several minutes after the original data was published? + This happens frequently - either a goalscorer was named incorrectly in football or the wrong person was named as a substitute etc
- Eg Harry Kane was named as the goalscorer in the 85th minute of a Spurs v West Ham EPL match + After a VAR review in the 87th minute, a correction is sent through from Opta saying it has been designated an own goal.
- As a Football Editor, I need the data model to cope with multiple corrections to data sent to us from external suppliers, during the course of a match and post match. + So I can ensure we are showing the correct information to users
- Real world example - December 2020 PSG v Istanbul Basaksehir Champions league match was abandoned 14 mins into the match and then rescheduled for the next day: https://www.bbc.co.uk/sport/football/55242656 https://www.bbc.co.uk/sport/football/55219529 The incident happened just 14 minutes into the Group H tie, which was still goalless. The match recommenced from the 14th minute the following day's kick-off at 17:55 GMT. Opta reused the same match ID (g2170557) over both days with different kick off times, the status moved from mid-event through abandoned then pre-event when rescheduled.
- Disciplinary action before event started. Real world example - 2017-11-02 Vitória Guimarães v Marseille in Europa League. Evra, starting on the bench for Marseille, received red card ejection before the soccer match started.
- Score recorded after the event concluded. Real world example - 2020-10-26 Brighton and Hove Albion v Manchester United, English Premier League. Bruno Fernandes scored a penalty that was awarded (by the video assistant referee) after the final whistle.
- Where is player X at time Y?
- Where is the hockey puck at time Y?
- What horse was jockey X riding?