Event Feed 2016
This page describes the event feed format that will be used at WF 2016
Getting the feed
Connect to port 4713 and the entire feed for the contest will be sent to you. When the contest is finalized, the contest tag will be closed and the connection closed.
Connect to port 4714 and the entire feed for the contest will be sent to you, with the exception that no judgement information will be sent for runs submitted during the last hour. When the contest is finalized, the contest tag will be closed and the connection closed (but you will still not get judgements for runs submitted the last hour).
The event feed is structured as an xml document within the root element <contest>.
All events are separate elements at the top level.
Some extra tags beyond what is documented here may also be sent, these should be ignored.
Event types are:
- contest information and updates
- submission language information
- super region information
- judgement information
- problem information
- team information
- submitted clarification information and updates
- submitted run information and updates
- judgement of individual test cases for a run
Most elements are identified by an id. Timestamped events all have a timestamp element in decimal seconds. Submission events have a time element in decimal seconds relative to the contest start when it was submitted.
Events have time attributes identical to the timestamp element.
Sample events with inner element descriptions:
<info> <length>05:00:00</length> <scoreboard-freeze-length>01:00:00</scoreboard-freeze-length> <penalty>20</penalty> <started>False</started> <starttime>1265335138.26</starttime> <title>The 2016 World Finals of the ACM International Collegiate Programming Contest</title> </info>
- Length of contest in HH:MM:SS format.
- Length of time at the end of the contest when scoreboard is frozen in HH:MM:SS format.
- Penalty time in minutes.
- Started flag.
- Starttime as a timestamp in decimal seconds, or <starttime>undefined</starttime> if the start time is not defined.
- Contest title string.
<language> <id>1</id> <name>C++</name> </language>
- Language identifier.
- Language name.
<region> <external-id>3012</external-id> <name>Europe</name> </region>
- Identidier from the registration system.
- Super region name.
<judgement> <acronym>CE</acronym> <name>Compile Error</name> </judgement>
- Short name
- descriptive name
<problem> <id>1</id> <name>A - APL Lives!</name> </problem>
- Problem identifier
- descriptive name
<team> <id>1</id> <name>American University of Beirut</name> <nationality>LBN</nationality> <university>American University of Beirut</university> <region>Europe</region> <external-id>23412</external-id> </team>
- Team identifier
- Team name
- nationality as ISO 3166-1 alpha-3
- university affiliation.
- super region name.
- team id from registration system.
Additional information may be provided.
<clar> <answer>The number of pieces will fit in a signed 32-bit integer.</answer> <answered>True</answered> <id>1</id> <question>What is the upper limit on the number of pieces of chocolate requested by the friends?</question> <team>0</team> <problem>1</problem> <timestamp>1265335256.74</timestamp> <to-all>True</to-all> </clar>
- Answered flag
- Clarification identifier
- Team ID
- Problem ID
- to-all flag
<run> <id>1410</id> <judged>True</judged> <language>C++</language> <penalty>True</penalty> <problem>4</problem> <result>WA</result> <solved>False</solved> <team>74</team> <timestamp>1265353100.29</timestamp> </run>
- Run identifier
- Judged flag
- language name
- penalty flag
- problem ID
- result short name
- solved flag
- team ID
- official submission time used for scoring.
<testcase> <i>1</i> <judged>True</judged> <judgement>WA</judgement> <n>1</n> <run-id>1</run-id> <solved>False</solved> <timestamp>1265336078.01</timestamp> </testcase>
- testcase number
- Judgement acronym
- Total number of testcases
<finalized> <timestamp>1265336078.01</timestamp> <last-gold>4</last-gold> <last-silver>8</last-silver> <last-bronze>12</last-bronze> <comment>Finalized by John Doe and Jane Doe</comment> </finalized>
- integer, last rank to receive a gold (should always be 4 for a compliant system)
- integer, last rank to receive a silver (should always be 8 for a compliant system)
- integer, last rank to receive a bronze (should often be 12 but could very possibly be something else)