FIG. 10 depicts an illustrative set of scoring scenarios 1000 for a fantasy football scoring system. In FIG. 10, positions list 1010 includes eleven positions placed in a list of 5 scoring roles 1020. The set of scoring scenarios include a list of 21 scoring actions 1030 with corresponding point values 1040. The relationship between positions, scoring roles, scoring rules, and points is demonstrated by the set of scoring scenarios 1000. For example, the data structures that define a scoring rule for rushing per 10 yards is demonstrated in FIG. 11.
FIG. 11 depicts a set of data structures for defining a scoring rule for a running rule in a fantasy football scoring system. In FIG. 11, a scoring rule 1100 defines a rule for the action “run ball” that is a “dynamic” score type. The point value for scoring rule 1100 is 1 point and is modified by the equation “point value*yards/10”, i.e., the user receives 1 point for every ten yards when the ball is run by a player. The scoring role is “rushing.” The scoring role 1110 defines the “rushing” role in a “offense” playing category. Position role link 1115 links the “running back” position to the “rushing” scoring role 1110. FIG. 11 also depicts a player data structure 1120 for player ID “032149682”. Player 1120 is named “Jerick McKinnon,” plays for the “San Francisco 49ers,” and wears jersey number 28. The player is listed as having one position: “running back.” The player 1120 data structure may also include a list of statistics.