Reports requiring DBMS support will be cached to prevent swamping the server during peak access times; whereas sports news current to within a minute is acceptable, sports events quite often cause the public to rush into a site in bursts.
Generated report pages are also cached as static pages by the CBC web servers, introducing a second layer of currency lag; since the caching system operates according to HTTP proxy rules, all pages will contain cache expiry information appropriate to the specific report.
Sportwire II must support all of the existing Sportwire reports. These reports include:
For the archived sports leagues, list daily schedule of games, showing the teams, game status, current score, and the presence of previews, boxscores, updates and/or recaps. This report is sensitive to the sport, for example to render the period value in innings vs ends vs periods, or to provide the list as a daily schedule, or, in the case of CFL/AFL, to list games over the current week.
Single page text reports of previews, recaps and boxscores.
Chronological text reports listing all updates for a game in progress.
Standings reports for a given team, listing the final score in all past games in the current season. Also sensitive to the data interpretations for the current sport.
Standings and schedule pages must be generic, populated on the fly from the key information in the path_info of the webpage request. From the perspective of the web browser, the URL will have a human semantics of the form http://cbc.ca/olympics.jsp/sport/player-or-team. This URL will access cached statistics for that sport, and create a team/player page from a generic template. The following reports will follow this general access pattern:
Calendar of events, event results and standings for a given sport. Standings values must be interpreted specific to the sport, for example, to accommodate the difference between team sports and individuals events.
Calendar of events, event results and standings for a given althlete.
Calendar of events and standings for a given country.
Medal count report to show the top five medal countries, plus or including Canada (ie the webserver host country). A full count report will show results for all countries ordered by winnings..
Calendar of general events such as weather, Olympic history, locations and other items which may affect many different events.
Event, standings and results reports must also link to summary pages such as boxscores and recaps. Calendars must include a daily list of events (timespan configurable up to the full length of the Olympics.)
The Olympics system must also provide reports on internally generated data such as the schedule of CBC coverage. This data is maintained outside of the sportwire system, for example, it can be imported via ODBC.
Note | |
---|---|
The AFP Winter Olympic service is delivered in IPTC NewsML format; unfortunately, NewsML has no defined schema for detailed sports results, so AFP inserts its own XML as a namespace within a NewsML envelope. |
In the 2002 ESPN Sportswire feed, news documents are distinguished by the XML DocType where each sport contains a list of types for each of the possible messages. The body of text messages are contained in MESSAGETEXT tags and delivered in plain fixed-font ASCII; the Sportwire system needs to parse this text data and render it in a delimited format (XML or HTML) suitable for webpage presentation.
Sportswire must log all error events such as unparsable stories, duplicate entries, and database connection errors.