Skip to main content

Extensions

Overview

Extensions are used to capture information necesary for the processing/mutation of tournament data while a tournamnet is in process, and to capture calculated results, for instance Round Robin group finishing positions, which are not defined in TODS. Extensions capture configuration parameters as part of the tournament "time capsule" to ensure that what happened during a tournament can be reconstructed.

Extensions can exist on any attribute within a TODS tournamentRecord. Each extension has { name, value } attributes and there should never be more than one extension with a given name in an .extensions array.

APPLIED_POLICIES

Regularly attached to tournamentRecords, events and drawDefinitions; can also be attached to structures. Many factory methods will check for policies which are "in scope", meaning within the object hierarchy. Policies can be attached at any time programmatically; they are attached automatically to drawDefinitions if any policyDefinitions are passed to generateDrawDefinition().

DELEGATED_OUTCOME

Used to capture matchUp outcomes which are not "official", meaning they may have been sourced from a third party application for the purposes of display prior to the entry of an official result.

DISABLED

The presence of this extension indicates that a resource (court or venue) has been disabled such that scheduling methods cannot use the resource.

In certain conditions, when allowed by positioning policies, participants may have their drawPositions swapped in non-MAIN structures. When this occurs the normal logic of participant progression is broken and links must be disabled to avoid data corruption.

DISABLE_AUTO_CALC

When manual scoring is enabled for TEAM matchUps, the automatic calculation of TEAM results is disabled by the presence of this extension.

DISPLAY

Specific to client applications. Storage of display preferences for e.g. an event, a drawDefinition, or a structure.

DRAW_DELETIONS

When no external auditing service is available, drawDefinitions which are deleted can be stored on the tournamentRecord.

ENTRY_PROFILE

Stores limitations set on the number of accepted entries for an event; can include number of qualifiers, number of allowed wildcards, and maximum drawSize

FACTORY

Used to capture version of factory that created/mutated the tournamentRecord.

FLIGHT_PROFILE

Captures flight names and draw entries when event entries are split into multiple flights before drawDefinitions are generated.

GROUPING_ATTRIBUTE

Stores the person or participant attribute that was used to generate TEAM participants.

LINEUPS

Stores the most recent lineUp for each TEAM progressing through a structure; enables default assignments to be presented in hydrated SINGLES/DOUBLES tieMatchUps prior to actual lineUps being saved to TEAM matchUps.

LINKED_TOURNAMENTS

When two or more tournaments are being run using shared venues the association between the tournaments is captured in this extension so that client applications can know to load multiple tournamentRecords when scheduling.

MATCHUP_HISTORY

Captures point-by-point score progression in a condensed format that can later be expanded to full TODS.

PARTICIPANT_REPRESENTATIVES

Stores a record of participant representatives present as witnesses during the making of a draw (old school, when manually drawing positions out of a 'hat').

PERSON_REQUESTS

Captures scheduling requests. Consumed by the scheduler to attempt to accommodate participants; can be used to simply capture and display scheduling requests.

POSITION_ACTIONS

When no external auditing service is available, positionAction telemetry can be stored on the tournamentRecord.

RANKING_POINTS

Add the ability to capture points generated by event outcomes to tournamentRecords for the purpose of displaying points awarded in real time as participants advance through draw structures.

ROUND_TARGET

Supports the generation of qualifying structures which feed in to different rounds of MAIN stage structures; also used to annotate event.entries to specify rounds at which a participant will enter a "staggered entry" structure.

SCHEDULE_LIMITS

Stores matchUp "daily limits"; overrides any policies that may be attached.

SCHEDULE_TIMING

Stores matchUpFormat timing; overrides any policies that may be attached.

SCHEDULING_PROFILE

A schuedulingProfile is used to run the Auto Scheduler. This extension allows for the iterative editing of a scheduling profile before the Auto Scheduler is run.

STATUS_DETAIL

Not used by the factory. Third party extension for annotating the entry status of participants.

SUB_ORDER

When there are ties in calculating of Round Robin groupOrder, the SUB_ORDER extension can be added to capture a manual determination of the order for tied positions.

TALLY

Stores calcualated participantResults on positionAssignments for a structure. Used to determine groupOrder in Round Robin structures.

TIE_FORMAT_MODIFICATIONS

When no external auditing service is available, modifications to tieFormats during the course of an event can be captured on the tournamentRecord.