The solution should be generic. I'll use Amercian Football as a reference for examples, but the data could be almost anything from cars, business names, etc.
Page Type 1 - Create Support table (admins only)
A simple interface would be created to allow admins to create tables and fields in XF. Personally, I would be happy to skip this step but then admins would need to manually create tables and link each one with this add-on, along with ensuring the data types are mapped correctly. It would be best if the add-on performed this function to avoid a variety of issues.
Person - this table would offer two fields, id and type. It would be used to declare the type of "person" we are collecting information about. Possible selections: players, owners, trainers, coaches, officials,
Teams - this table would list of all teams. Miami Dolphins, Dallas Cowboys, etc. or it could be "none" for league officials and other support personnel.
Page Type 2 - Data Entry (admins and trusted members)
Person's Name - text field
Person Type - drop down box linked to the Person table mentioned above
Team - drop down box linked to the Teams table mentioned above
Date of birth - date field
Once the data is complete, it would be submitted as a single record in a table. Basic validation would need to occur to ensure no duplicates of certain fields or combinations. A new page would become immediately available on the site, based on this record.
This page, or another similar page, should allow admins to recall and modify existing records.
Page Type 3 - Web pages
Each record would then appear in a web page based on a template designed to display the data. This page should have a configurable URL based on the data. For example /dallas/troy-aikman could be a page for Troy Aikman from the Dallas Cowboys.
These pages would appear as static content to viewers.
Further enhancements and flexbility.
1. For the "Teams" table, the admin may later decide to add a 3rd field to the table offering abbreviations. It could be DC = Dallas Cowboys, or "Dallas" or "Dal", at the admins discretion.
2. The system could be expanded beyond the NFL. The desire to add the Canadian Football League could be presented. Then a "League" table would need to be created. This table would have two fields, league and id. The "Teams" table would then have a league field added which would be linked to the league table.
3. A historical record of pages could be kept in a similar manner to wikepedia. Records could be viewed before each alteration, and changes could be reverted by admins.
4. Add comments to web pages.