-
Notifications
You must be signed in to change notification settings - Fork 15
Patch v2.1.1 #39
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Patch v2.1.1 #39
Changes from 10 commits
4d54e03
2e86eb3
10841db
17000df
905bff0
1175168
4cafcfc
6f0c124
3e19ace
9881790
350c9e2
6974170
8b956c8
1b8c41f
705864c
e1871f8
26358f1
2cffbd2
89aa1a2
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change |
|---|---|---|
|
|
@@ -4,7 +4,7 @@ WCIF stands for WCA Competition Interchange Format and is a specification of com | |
| It's designed as a way for many applications to exchange data in a standardized manner. | ||
|
|
||
| ## Version | ||
| - Number: 2.0.0 | ||
| - Number: 2.1.1 | ||
| - Status: Latest | ||
| - Next Status: Stable | ||
| - Status Advancement Date: N/A | ||
|
|
@@ -327,7 +327,7 @@ Represents an official personal record. | |
| ```json | ||
| { | ||
| "eventId": "333", | ||
| "best": 790, | ||
| "value": 790, | ||
| "type": "single", | ||
| "worldRanking": 995, | ||
| "continentalRanking": 105, | ||
|
|
@@ -366,7 +366,7 @@ Represents data of a round held at the competition. | |
| | Attribute | Type | Description | | ||
| | --- | --- | --- | | ||
| | `id` | `String` | The round identifier of the form `{eventId}-r{roundNumber}`. *Note: this is a valid [`ActivityCode`](#activitycode).* | | ||
| | `linkedRounds` | [`String`] | A list of round ID's indicating the rounds which this round is linked to, for the purposes of implementing [Dual Rounds](https://www.worldcubeassociation.org/regulations/#9v). LinkedRounds have their results considered together for the purpose of participation in subsequent rounds in the competition. | | ||
| | `linkedRounds` | [`String`] \| `null` | A list of round ID's indicating the rounds which this round is linked to, for the purposes of implementing [Dual Rounds](https://www.worldcubeassociation.org/regulations/#9v). LinkedRounds have their results considered together for the purpose of participation in subsequent rounds in the competition. | | ||
| | `format` | `"1"\|"2"\|"3"\|"5"\|"a"\|"m"\|"h"` | The round format. Look [here](https://github.com/thewca/worldcubeassociation.org/blob/main/lib/static_data/formats.json) for the list of all the WCA formats. | | ||
| | `timeLimit` | [`TimeLimit`](#timelimit)\|`null` | The time limit in this round. For events with unchangeable time limit (3x3x3 MBLD, 3x3x3 FM) the value is `null`. | | ||
| | `cutoff` | [`Cutoff`](#cutoff)\|`null` | The cutoff in this round. | | ||
|
|
@@ -381,6 +381,7 @@ Represents data of a round held at the competition. | |
| ```json | ||
| { | ||
| "id": "333-r1", | ||
| "linkedRounds": ["333-r1", "333-r2"], | ||
| "format": "a", | ||
| "timeLimit": {...}, | ||
| "cutoff": {...}, | ||
|
|
@@ -436,8 +437,8 @@ Regardless of the participation ruleset type, [regulation 9p1](https://www.world | |
|
|
||
| | Attribute | Type | Description | | ||
| | --- | --- | --- | | ||
| | `participationSource` | [`ParticipationSource`](#participationsource) | The type of participation ruleset. Either of `registrations` (all registered competitors) `ranking` (top N competitors), `percent` (top X% of competitors) or `resultValue` (competitors with result better than Y - either single or average as per [9p2+](https://www.worldcubeassociation.org/regulations/guidelines.html#9p2+)). | | ||
| | `reservedPlaces` | [`ReservedPlaces`](#reservedplaces) | Places in a finals reserved for competitors from a particular nationality or continent, as defined in [9p2b](https://www.worldcubeassociation.org/regulations/#9p2b). | | ||
| | `participationSource` | [`ParticipationSource`](#participationsource)\|`null` | The type of participation ruleset. Either of `registrations` (all registered competitors) `ranking` (top N competitors), `percent` (top X% of competitors) or `resultValue` (competitors with result better than Y - either single or average as per [9p2+](https://www.worldcubeassociation.org/regulations/guidelines.html#9p2+)). May only be `null` for competitions from 2021 and before. | | ||
| | `reservedPlaces` | [`ReservedPlaces`](#reservedplaces)\|`null` | Places in a finals reserved for competitors from a particular nationality or continent, as defined in [9p2b](https://www.worldcubeassociation.org/regulations/#9p2b). | | ||
|
|
||
| ### ParticipationSource | ||
|
|
||
|
|
@@ -537,7 +538,7 @@ See "Announcement Criteria" paragraph 5.1 in the [WCA Competition Requirements P | |
| | --- | --- | --- | | ||
| | `earliestResultDate` | [`Date`](#date)\|`null` | An optional field indicating a date from which a result must have been achieved in order to meet the qualification. In practice, this would be to ensure that qualification spots are taken by active, in-form competitors. | | ||
| | `latestResultDate` | [`Date`](#date) | The date by which the qualification requirement must be satisfied. If a result is set in a multiple-day competition which ends before this date, that is considered to have been set by this date. | | ||
| | `resultCondition` | [`ResultCondition`](#resultcondition) | Specifies the requirement a competitor must satisfy to register. Only ResultCondition types `resultValue` and `ranking` are used for Qualification. | | ||
| | `resultCondition` | [`ResultCondition`](#resultcondition) | Specifies the requirement a competitor must satisfy to register. Only ResultCondition types `resultAchieved` and `ranking` are used for Qualification. | | ||
|
|
||
| #### Examples | ||
|
|
||
|
|
@@ -586,7 +587,7 @@ Represents one of attempts a competitor got during the given round. | |
|
|
||
| ```json | ||
| { | ||
| "result": 650, | ||
| "value": 650, | ||
| "reconstruction": "z y2 U Rw' D2 L F' L' D' ..." | ||
| } | ||
| ``` | ||
|
|
@@ -599,9 +600,9 @@ An object representing the criteria a competitor needs to meet to satisfy a [Qua | |
|
|
||
| | Attribute | Type | Description | | ||
| | --- | --- | --- | | ||
| | `type` | `String` | Always `resultAchieved` | ||
| | `scope` | `"single"\|"average""` | Specifies if the result should be a `single` or `average`. | ||
| | `value` | `ResultValue`\|`null` | Species the `ResultValue` necessary to meet the ResultCondition. `null` indicates that any non-DNF/DNS result achieved in the given `scope` will meet the ResultCondition. | ||
| | `type` | `String` | Always `resultAchieved` | | ||
| | `scope` | `"single"\|"average""` | Specifies if the result should be a `single` or `average`. | | ||
| | `value` | `ResultValue`\|`null` | Species the `ResultValue` necessary to meet the ResultCondition. `null` indicates that any non-DNF/DNS result achieved in the given `scope` will meet the ResultCondition. | | ||
|
|
||
| ##### Example | ||
| ```json | ||
|
|
@@ -626,14 +627,16 @@ An object representing the criteria a competitor needs to meet to satisfy a [Qua | |
|
|
||
| | Attribute | Type | Description | | ||
| | --- | --- | --- | | ||
| | `type` | `String` | Always `ranking` | ||
| | `type` | `String` | Always `ranking` | | ||
| | `scope` | `"single"\|"average""` | Specifies if the result should be a `single` or `average`. For ParticipationRuleset, this will always be determined by the event format, and cannot be changed via a WCIF patch.. | | ||
|
Member
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Same as my other comment
Contributor
Author
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Addressed |
||
| | `value` |`Integer` | Top-N (inclusive) competitors who meet the ResultCondition - ranked by world ranking (Qualification) or results of rounds considered in the `participationSource` (ParticipationRuleset) | ||
|
|
||
| ##### Example | ||
| ```json | ||
| // Top 16 competitors meet the ResultCondition | ||
| { | ||
| "type": "percent", | ||
| "type": "ranking", | ||
| "scope": "average", | ||
| "value": 16 | ||
| } | ||
| ``` | ||
|
|
@@ -643,6 +646,7 @@ An object representing the criteria a competitor needs to meet to satisfy a [Qua | |
| | Attribute | Type | Description | | ||
| | --- | --- | --- | | ||
| | `type` | `String` | Always `percent` | ||
| | `scope` | `"single"\|"average""` | Specifies if the result should be a `single` or `average`. For ParticipationRuleset, this will always be determined by the event format, and cannot be changed via a WCIF patch.. | | ||
|
Member
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. by the round format.
Contributor
Author
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Addressed |
||
| | `value` | `Integer` | The top n-% of competitors who meet the ResultCondition (70% will be expressed as `70`) | ||
|
|
||
| ##### Example | ||
|
|
@@ -651,6 +655,7 @@ An object representing the criteria a competitor needs to meet to satisfy a [Qua | |
| // Top 70% of competitors meet the ResultCondition | ||
| { | ||
| "type": "percent", | ||
| "scope": "single", | ||
| "value": 70 | ||
| } | ||
| ``` | ||
|
|
||
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Hmm, will wca website ever request data for wcif 2.0.0 and 2.1.1?
Maybe we just support different versions based on what we intend to return from the wca website?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Hmm, I don't quite understand this - how do you mean "Maybe we just support different versions based on what we intend to return from the wca website?"
Gregor and I chatted about this the other day - we'll basically only ever return the
latestandcurrent- so if2.0.0gets superceded by2.1.1incurrent, we'll cease to serve2.0.0- except in exceptional circumstances where we might continues to serve adeprecatedversion for some period of time.