This specification, developed by [W3C OpenTrack Community Group](http://www.w3.org/community/opentrack/), introduces a data model to support the publication of Athletics data on the Web. This document defines the main concepts and relations of Athletics competitions, including competitors and their results, enabling a common representation of information in this sector.

The OpenTrack model is mapped to existing standards, including BBC Sports Ontology [[SPORT-ONT]], Schema.org [[SCHEMA-ORG]], [[QUDT-SPACETIME]] types and properties. The resulting OpenTrack Vocabulary is a lightweight schema aiming at identifying, defining and exposing data on the Web.

This model and vocabulary is in process of development.

## Introduction
This section describes the conceptual model for OpenTrack. As described in [the charter](https://w3c.github.io/opentrack-cg/charter.html), this model describes data related to Athletics competitions including: Track and Field; Road Running; Race Walking; Cross-Country Running; Mountain Running; and trail Running disciplines.
This model will be focus on Athletics competitions, having into account: events; athletes and teams; results; performances; management of start lists; results; and facilities.
This document specifies the model in an abstract way and its implementation using the concrete vocabulary, a lightweight schema, based on RDF Schema [[RDF-SCHEMA]] and Schema.org [[SCHEMA-ORG]]. Opentrack vocabulary defines the main concepts and relations about Athletics competitions and competitors, enabling a common representation of information in this realm. Data should be available in a standard format, reachable and manageable by Semantic Web tools.
With the objective of a wide use of this model, the schema is very flexible and all examples will be expressed in JSON-LD format. Along with the vocabulary, there is a specific JSON-LD context that will ease the adoption of the vocabulary, even for those who don not have deep knowledge of the Semantic Web.
No section should be considered final, and the absence of any content does not imply that such content is out of scope, or may not appear in the future. If you feel something should be covered, please [tell us](https://github.com/w3c/opentrack-cg/issues).
## Structure of this document
This specification is divided into two main sections:
1. **Introduction** - this introductory part;
2. **How to** - How to use the model and describe resources using OpenTrack and JSON-LD;
3. **Concepts** - describes the key entities and their attributes, including the concrete data model;
4. **Classification Schemas** - lists of taxonomies and value schemas related to Athletics.
## Background
OpenTrack descriptions need homogeneous classes, properties and data types to specify values of properties. This work is based [on existing requirements](http://opentrack.run/standards/), and the rules set up by the IAAF [[IAAF-RULES]] and by WMA [[WMA-RULES]].
OpenTrack vocabulary is aligned with other existing schemas and ontologies focused on sports, such as: Sport Ontology [[SPORT-ONT]], IPTC SportsML [[SPORTSML]] and Schema.org [[SCHEMA-ORG]].
This specification makes use of the compact IRI Syntax; please refer to the [Compact IRIs](http://www.w3.org/TR/json-ld/#compact-iris) from [[JSON-LD]].
This specification makes use of the following namespaces:
* `rdf`: `http://www.w3.org/1999/02/22-rdf-syntax-ns#`
* `rdfs`: `http://www.w3.org/2000/01/rdf-schema#`
* `ath` : `http://purl.org/athletics/`
* `schema` : `http://schema.org/`
* `skos` : `http://www.w3.org/2004/02/skos/core#`
* `dct` : `http://purl.org/dc/terms/`
* `xsd`: `http://www.w3.org/2001/XMLSchema#`
* `qudt` : `http://qudt.org/2.0/schema/qudt`
* `unit` : `http://qudt.org/vocab/unit/`
The domain of this specification is Athletics ([http://dbpedia.org/resource/Sport_of_athletics](http://dbpedia.org/resource/Sport_of_athletics)).
## Typographical Conventions
The following typographic conventions are used in this specification:

A definition of a term, to be used elsewhere in this or other specifications, is in bold and italics.

[hyperlink]()

A hyperlink is underlined and in blue.

[[reference]]()

A document reference (normative or informative) is enclosed in square brackets and links to the references section.

Notes are in light green boxes with a green left border and with a "Note" header in green. Notes are normative or informative depending on the whether they are in a normative or informative section, respectively.

Examples are in light khaki boxes, with khaki left border, and with a
numbered "Example" header in khaki. Examples are always informative.
The content of the example is in monospace font and may be syntax colored.

## How to use OpenTrack with JSON-LD
With the objective of a wide use of this model, the schema is very flexible and all examples will be expressed in [[JSON-LD]] format. Along with the vocabulary, there is a specific [[JSON-LD]] context that will ease the adoption of the vocabulary, even for those who don not have deep knowledge of the Semantic Web.
This section includes introductory information for those who are not familiar with the semantic technologies.
The Opentrack model is expressed under the [RDF](https://www.w3.org/RDF/) paradigm (a graph-oriented representation), so there is more than one format to represent (serialize) the graph of information: RDF/XML, turtle, RDFa, etc. Examples will be represented in [JSON-LD](https://www.w3.org/TR/json-ld/), a JSON-based syntax easy to adopt.
In order to ease the adoption of this set of technologies, this document includes several recipes to help developers publish and reuse Athletics information through these mechanisms.
### Terminology
* **JSON-LD**. JSON-LD is a lightweight Linked Data format. It is easy for humans to read and write. It is based on the already successful JSON format and provides a way to help JSON data interoperate at Web-scale. JSON-LD is an ideal data format for programming environments, REST Web services, and unstructured databases such as CouchDB and MongoDB.
* **JSON-LD Context**. In JSON-LD, a context is used to map terms, i.e., properties with associated values in an JSON document, to URLs. A term is a short word that expands to a URL. Terms may be defined as any valid JSON string other than a JSON-LD keyword.
* **Linked Data**. Linked Data is a way to create a network of standards-based machine interpretable data across different documents and Web sites. It allows an application to start at one piece of Linked Data, and follow embedded links to other pieces of Linked Data that are hosted on different sites across the Web.
* **IRI (Internationalized Resource Identifier)**. An IRI is something like a unique web address (http://example.org/resource001) that serves for identifying resources.
See [JSON-LD Best Practices](https://json-ld.org/spec/latest/json-ld-api-best-practices/#terminology) for more information.
### Filename extension, MIME type and encoding
* Recommended document extension: `.jsonld`
* MIME Type: `application/ld+json`
* Encoding: `UTF-8`
### Basic JSON-LD concepts
To illustrate the basic concepts of this Opentrack JSON-LD representation we will use a simple example with the description of an athlete:

There are there keywords that should be always included in our documents: `@context`, `@type` and `@id`. The rest of the **properties are optional**.
In case a property value is unknown, the pair key:value will be omitted.
#### @context
RDF resources (concepts, classes, properties, etc.) are identified by IRIs. For instance, the property `name` used in the example above is identified by `http://schema.org/name`. JSON-LD contexts define keys used within the document can have unambigious meaning, as they bind to the IRIs which describe their meaning.
By specifying

we indicate the context of the document, that is defined in [the linked document](http://w3c.github.io/opentrack-cg/contexts/opentrack.jsonld). So we can use the keys of the context as a simplification for the representation.
#### @type
`@type` indicates the class of the resource being described. In this example, the resource is an `Athlete` (the context maps `Athlete` to the IRI `http://purl.org/athletics#Athlete`, but we don't care about this now).
* We should include always the type to the object we are describing.
* In case the resource would have more than a type, several types may be specified within an array:

"@type" : [ "Athlete", "Coach" ]

#### @id
`@id` is used to uniquely identify entities or resources through IRIs.
When dereferencing an entity related via a URL, the location should provide a representation of that entity.

This example describes an `Athlete` that is identified as [http://w3c.github.io/opentrack-cg/examples/athlete/001Farah.jsonld](http://w3c.github.io/opentrack-cg/examples/athlete/001Farah.jsonld"). The web address will provide information about the entity (the same that is being described in the example). Having these identifiers we will be able to refer this entity from other entity descriptions or documents.
Using this mechanism, we can enrich descriptions just linking our descriptions with other IRIs that already identify resources. For instance, the athlete is affiliated to a club:

That club (identified by [http://w3c.github.io/opentrack-cg/examples/club/NEB.jsonld](http://w3c.github.io/opentrack-cg/examples/club/NEB.jsonld)) is described in the same way.
There may be exceptions of JSON-LD objects that **do not** have `@id`s associated. We should avoid this case unless we are sure the object defined is useful only in the context of the current description (i.e., no reusable in future descriptions).
#### Property values
Properties that describe resources may have values of different nature:
##### Literals
Some properties only may have **Literals** as value:
Texts:

"alternateName" : "Mo Farah"

Dates:

"birthDate" : "1983-04-23"

Integers:

"age" : 25

###### Predefined Values (enumerations)
Some properties may have **Enumerations** as value:
For instance, `gender` should only take one possible value (either `Male` or `Female`).

"gender" : "Male"

In this case, the potential values are expressed in the context as aliases, so we can use `Male` instead of `http://schema.org/Male`.
##### Objects
As shown above, a resource identified by an IRI may be used as value of a property.
In case [the resource](http://w3c.github.io/opentrack-cg/examples/club/NEB.jsonld) is already identified (and described) we can link it directly:

See in the previous example that we can include descriptions of other entities nested (i.e., postal address).
##### Arrays
Most of the properties may be repeated to describe the same resource. For instance, the athlete may be affiliated to two clubs:

### Multilingual Descriptions
String properties may include information about its language, so we can include several representations of the same information in different languages.
The property will include information about the textual information using a complex object with two keys: `@value` and `@language`. `@value` contains the string, and `@language` the tag identifying the language (using [Lenguage Tags](https://tools.ietf.org/html/bcp47)).

### Typed Objects
All JSON-LD objects should have a `@type` explicitly indicating the class of the resource. The Opentrack vocabulary includes several classes that can be used, but also other external vocabularies may be used.
Classes may be described hierarchically to express differences in the model. For instance, Opentrack defines different types of competitions, with [Competition](#competition) as the core entity that defines a generic competitive sports event. [Competition](#competition) has several subclasses: [Multi Stage Competition](#multi-stage-competition), [Divisional Competition](#divisional-competition), [Multi Round Competition](#multi-round-competition), [Multidiscipline Competition](#multidiscipline-competition) and [Unit Competition](#unit-competition). This means that instances of these subclasses will be also considered a [Competition](#competition).
* In case the author does not know the nature of the competition, by default they should use the most generic class (i.e., [Competition](#competition)).
* A competition may categorized with more than a type. For instance 2016 Olympic Games is a [MultidisciplineCompetition](#multidisciplinecompetition) (100m, 200m, Throws, basketball, tennis, etc.) and a [DivisionalCompetition](#divisionalcompetition) (divisions are disciplines and categories).
## Overview of the model
The model is related to the competition management in Athletics. By using this model systems will be able to describe, collect, process, store and publish Athletics information.
In order to represent properly the model, the work was divided in two parts:
1. **Competitors**, athletes and organizations that take part in the competition; and
2. **Competitions** (scheduling and results).
### Competitors
![Competitor Conceptual Model](images/competitor_model.svg)
Competitor Conceptual Model

[Athlete](#athlete)

Person who takes part in Athletics events as individual competitor. Athletes are defined by gender, age, nationality, and other personal information.

[Sports Team](#sports-team)

A group of people who takes part in a competition as a whole, competing against other groups of people. Both athletes and teams can be affiliated to [Organizations](#organizations) such as clubs, schools, university, and/or federations.

[Governing Body](#governing-body)

Sports Governing Bodies in charge of governing and rule Athletics in specific territories. Athletics Federations are Sports Governing Bodies that may be attached to other higher-level federations. **[Athletes](#athlete)**, **[Teams](#teams)**, **[Clubs](#clubs)** and other [Organizations](#organization) may be attached to Governing Bodies.

Competitions are organized occasions where Athletics events are planed and take place at a specific location during a period of time. Most Athletics events are part of a bigger meeting, or competition (sub events and super events). These competitions can be organized periodically ([Competition Series](#competition-series)), such as the Summer Olympic Games. These events may have of different nature, depending on the disciplines, schedule, competitors, and scope (e.g., championships tournaments, leagues, fund-raising road races, etc.). Athletics competitions may divided in several (sub)events such as in [Summer Olympic Games](https://en.wikipedia.org/wiki/Athletics_at_the_Summer_Olympics) that include 24 independent event disciplines for men and 23 for women); they may include several stages like the Diamond League); also competitions may be composed of several disciplines.

Competitor is the action of taking part in a competition. Competitor is either an athletes or a team that take part in an Athletics event, identified by specific information such as bib number, and best performance for the specific discipline of the event. This entry information is relative to the competition and relevant for **[Results](#results)**.

[Results](#results)

Results is a list of competitors (entries in the competition) with their [Performances](#performance) after an event or a concrete round. It serves as ranking for each stage of the competition. Result list items will include information about the impact of the performance in the competition (i.e., records, disqualifications, competition 'under protest', etc.).

[Performance](#performance)

Resulting competitor's accomplishment recognized by judges after a competition round. Measurements depend on the type of discipline (i.e., running performances are measured as time, jumps and throws are measured in centimetres). It may include information about the conditions in which competitor got the performance (e.g., wind speed).

See below all the concepts and their attributes explained in detail, including the specific class and properties that serve to describe Athletics resources. Concepts include examples of implementation.

### Sports Team
A Sports Team is a group of [Athletes](#athlete) who play a particular sport or game together against other similar groups of people. In Athletics there are certain events designed for teams competition (e.g., relay races). Teams in those competitions may be composed of [Athletes](#athlete) affiliated to the same or different organization, representing a federation (national, regional team), or just a joint of independent athletes.
* class: `Team` (`schema:SportsTeam`)
| Key | Property | Description | Value Type |
|:--- |:-------- |:----------- |:---------- |
| `identifier` | `schema:identifier` | Unique character string to identify a team. | Text |
| `name` | `schema:name` | Descriptive name of a team. | Text |
| `alternateName` | `schema:alternateName` | An alias to name a team. | Text |
| `image` | `schema:image` | Picture of a team. | URL |
| `logo` | `schema:logo` | Logo or flag of a team. | URL |
| `url` | `schema:url` | Webpage URL about a team. | URL |
| `memberOf` | `schema:memberOf` | Organization (federation, club, school, etc.) which a team is attached to. | [Organization](#organization) |
| `nationality` | `schema:location` | Teams's location represented by its country. | [Country](#country) |
| `sponsor` | `schema:sponsor` | Sponsor of a team. | [Person](#persons) or [Organization](#organization) |
| `coach` | `schema:coach` | Person who acts as coach for a team. | [Person](#person) |
| `sportsPerformance` | `ath:sportsPerformance` | Record and/or best performance of a team (e.g., relay competition best). | [Performance](#performance) |
| `captain` | `ath:captain` | Athlete, leader of a team. | [Athlete](#athlete) |
| `athlete` | `schema:athlete` | Athlete affiliated to a team. | [Athlete](#athlete) |
![Netherlands national team as 4x100 competitor](images/instances_national_team.png)
Definition of a national team as competitor in a 4x100
![Team of a club with several athletes](images/instances_club_team.png)
Definition of a club forming a team for Ekiden
Description of a national team:

#### Sports Governing Body
A Sports Governing Body is a special type of organization in charge of governing and rule the sport of athletics. These **sports governing bodies**, sometimes referred as Federations, may be attached to other higher-level federations, and have other sports organizations (clubs or other governing bodies) attached to them.
* class: `Federation` (`ath:SportsGoverningBody`)
* subClassOf: `schema:SportsOrganization`

### Competition
A Competition, Athletics Competition or Sports Competition is an event in which [Athletes](#athlete) or [Teams](#team) take part in order to find out who is best at a particular sports activity.
Athletics [Competitions](#competition) may be of different nature, depending on disciplines (e.g., 100m, marathon, pole vault, etc.), schedule (e.g. one-day meetings, World championships, etc.), competitors (e.g., U23, Masters, etc.), and scope (e.g., regional, national, supranational championships, leagues, etc.). Other amateur competitions such as fund-raising road races or school races are also considered as [Competitions](#competition).

class: `Competition` (`pending:CompetitionEvent`)

subClassOf: `schema:SportsEvent`

superClasses:

`ath:UnitCompetitionEvent`

| Key | Property | Description | Value Type |
|:--- |:-------- |:----------- |:---------- |
| `identifier` | `schema:identifier` | Unique character string to identify a competition. | Text |
| `name` | `schema:name` | Descriptive name of a competition. | Text |
| `alternateName` | `schema:alternateName` | An alias to name the competition. It could be an acronym or abbreviation. | Text |
| `description` | `schema:description` | Descriptive text about a competition. | Text |
| `location` | `schema:location` | Venue where a competition is held (for instance, Berlin Olympic Stadium). | [Place](#place) or Text |
| `url` | `schema:url` | Webpage URL about a competition. | URL |
| `image` | `schema:image` | Picture about a competition. | URL |
| `startDate` | `schema:startDate` | Date and time when a competition starts. | [Date](#date) or [DateTime](#datetime) |
| `endDate` | `schema:endDate` | Date and time when a competition ends. | [Date](#date) or [DateTime](#datetime) |
| `eventStatus` | `schema:eventStatus` | Status of a competition according to a enumeration of potential values (i.e., scheduled, completed, etc.) | [Event Status Type](#competition-status) |
| `organizer` | `schema:organizer` | Person(s) or organization(s) that organizes a competition. | [Person](#persons) or [Organization](#organizations) |
| `contributor` | `schema:contributor` | Person(s) or organization(s) that collaborates in the organization of a competition. | [Person](#person) or [Organization](#organization) |
| `starter` | `schema:competitor` | Athletes(s) or teams(s) taking part in the competition at the beginning of the event to compete in the event. | [Competitor](#competitor) |
| `participation` | `ath:competitionAction` | Action of Athletes(s) or teams(s) taking part of the competition. | [Competitor](#competitor) |
| `sponsor` | `schema:sponsor` | Person(s) or organization(s) that sponsors a competition. | [Person](#person) or [Organization](#organization) |
| `attendee` | `schema:attendee` | Person(s) who attends a competition. | [Person](#person) |
| `sportsDiscipline` | `ath:sportsDiscipline` | Type of an Athletics competition according to specific rules set by governing bodies (e.g., `Outdoor Sprint Relays`). | [Discipline](#discipline) |
| `category` | `ath:sportsCategory` | The specific category for a competition (e.g., *M35*, *U18 Male*, *local competitors*, etc). | [Category](#category) |
| `entryRequirements` | `ath:entryRequirements` | Requirements to take part in a competition. | Text |
| `results` | `pending:resultDecision` | List with the results of the participation in a competition. There may be different results during the competition (start list, intermediate results, partial results, final results, etc.) . | [Results](#results) |
| `unitCompetition` | `ath:unitCompetition` | Unit competition that is part of a parent competition (e.g. every heat of a semifinal round in a 200m event). | [Unit Competition](#unit-competition) |
| `competitionStage` | `ath:competitionStage` | A stage within a multi stage competition. | [Competition](#competition) |
| `round` | `ath:round` | Round in an athletic event organised as a sequence of rounds. For instance, track and field events are usually structured in qualification rounds (i.e, preliminary rounds, qualification rounds, semifinals and final). Competition rounds aims at qualifying athletes to next round until the final. There are competitions that only have one final round such as Marathon or Cross Country races. Examples of Competition Rounds: 110m Hurdles Men Preliminary Round Heat 1, 10,000m Men Final, and 110 Hurdles Man Semifinal 1. | [Competition](#competition) |
| `qualificationCriteria` | `ath:qualificationCriteria` | Requirements for a competitor to get to the next round in a multi round competition (e.g., a preliminary round of qualification in track events may select a number of athletes by their performance and others by heat ranking). | [Qualification Criteria](#qualification-criteria) |
Competitions may be part of [Competition Series](#competition-series), this is, competitions that have events periodically (e.g., [2016 Summer Olympic Games in Rio](https://www.olympic.org/rio-2016/athletics) as part of the Olympic Games held every four years);
Graphical examples of competitions:
![Model of a 100m competition within the European Championships](images/instances_competition_european_champs_100.svg)
Example of competition model: 2016 European Championships, 100m Men
![Model of a heptathlon competition within the European Championships](images/instances_competition_european_champs_heptathlon.svg)
Example of competition model: 2016 European Championships Heptathlon (simplified with only five combined events)
![Ekiden race instances with two categories](images/instances_relays_ekiden.svg)
Example of instances of the [Jaffa Ekiden Relay Race](http://events.ipswichjaffa.org.uk/ekiden-relays/), representing two different categories (senior and junior), including individual results for each relay leg and the overall results (for teams)
See a complete [example of divisional competition (European Championships with detail of 100m event)](http://w3c.github.io/opentrack-cg/examples/competition/Euro2016.jsonld).
#### Competition Series
Competition Series are competitive events held periodically (for instance, the Summer Olympic Games have recurring events organized every four years).
* class: `CompetitionSeries` (`schema:EventSeries`)
| Key | Property | Description | Value Type |
|:--- |:-------- |:----------- |:---------- |
| `identifier` | `schema:identifier` | Unique character string to identify a recurring competition. | Text |
| `name` | `schema:name` | Descriptive name of a recurring competition. | Text |
| `alternateName` | `schema:alternateName` | An alias to name a recurring competition. | Text |
| `description` | `schema:description` | About a recurring competition. | Text |
| `subEvent` | `schema:subEvent` | A competition that happens as a recurring event within a series of competitions (e.g., *London 2012* *Olympic Games*) | [Competition](#competitions) |

#### Unit Competition
A Unit Competition is a unitary competition defined by specific sports rules (for instance, the Heat 1 race at the semifinals of 100m event in the Olympic Games). [Competition Rounds](#competition-round) have one or more [Unit Competitions](#unit-competition).

class: `UnitCompetitionEvent` (`ath:UnitCompetitionEvent`)

subClassOf: `ath:Competition`

superclasses:

`ath:UnitRace`

`ath:UnitFieldCompetition`

Unit Competitions may vary, depending on the type of the Athletics event:
* [Unit Race](#unit-race), in the case of races (timed events inside or outside stadia), and
* [Unit Field Competition](#unit-field-competition), in the case of field events.
##### Unit Race
A Unit Race is a competitive event where performances are measured as time (i.e., races and legs in relay races). Timed events have specific information about timekeeping. This kind of events may have information about the start/finish point and the course of the race.
* class: `UnitRace` (`ath:UnitRace`)
* subClassOf: `ath:UnitCompetitionEvent`
| Key | Property | Description | Value Type |
|:--- |:-------- |:----------- |:---------- |
| `fromLocation` | `schema:fromLocation` | Place where a race starts. | [Place](#place) |
| `toLocation` | `schema:toLocation` | Place where a race finishes. | [Place](#place) |
| `course` | `schema:exerciseCourse` | Course track of a race. | `schema:GeoShape` |
| `timekeeping` | `ath:timekeeping` | Type of timekeeping used to control a competition. | [Timekeeping](#timekeeping) |
##### Unit Field Competition
A Unit Field Competition is a unitary competition in field events (for instance, one group of the semifinals in a High Jump event). These competitions have a specific structure based on rounds of trials or attempts. Depending on the type of the field event trials are performed in a different way.

class: `UnitFieldCompetition` (`ath:UnitFieldCompetition`)

subClassOf: `ath:UnitCompetitionEvent`

superclasses:

´ath:UnitHeightCompetition´

´ath:UnitDistanceCompetition´

There are two different types of Unit Field Competitions depending on the nature of the field event:
* [Unit Height Competition](#unit-height-competition); and
* [Unit Distance Competition](#unit-distance-competition).
###### Unit Height Competition
A Unit Height Competition is a unitary competition for height disciplines (**Vertical Jumps**). Officials in Unit Height Competitions must specify specific information about the height of the bar before the competition starts.
![Example of height card](images/example_height_card_concepts.png)
Example of rounds of trials and attempts highlighted on a control card for a Height Competition (Pole Vault)
* class: `UnitHeightCompetition` (`ath:UnitHeightCompetition`)
* subClassOf: `ath:UnitFieldCompetition`
| Key | Property | Description | Value Type |
|:--- |:-------- |:----------- |:---------- |
| `startingHeight` | `ath:startingHeight` | The starting height the bar is raised at the start of a vertical jumps unit competition. | [Distance](#distance) |
| `increasingHeight` | `ath:increasingHeight` | The subsequent heights to which the bar will be raised at the end of each round of trials within a vertical jumps unit competition. | Text |
Example of description of height card, simplified with an athlete's participation:

### Field Trial
A Field Trial is an individual, unitary athlete's attempt in a field competition.
Except for Vertical Jumps, each athlete only will have no more than one trial recorded in any one round of trials of the competition. Anyway, all trials belonging to rounds of trials will have the same structure, independently of the discipline.
Except in Vertical Jumps, a valid trial shall be indicated by the measurement taken. For the standard abbreviations and symbols to be used in all other cases see the possible [Competition Features](#competition-feature-type). A *substitute* trial is given in case an athlete is hampered in a trial or it cannot be correctly recorded.
* class: `Trial` (`ath:FieldTrial`)
* superclasses:
* `ath:DistanceTrial`
* `ath:HeighTrial`
| Key | Property | Description | Value Type |
|:--- |:-------- |:----------- |:---------- |
| `identifier` | `schema:identifier` | Unique character string to identify an attempt. | Text |
| `competitionFeature` | `ath:competitionFeature` | Feature or note included by officials in the result of a field trial (e.g., 'Passed', 'clear') | [Competition Feature Type](#competition-feature-type) |
| `attemptNumber` | `ath:attemptNumber` | Integer indicating the correlative number of an athlete's attempts in a round of trials. | Integer |
| `performance` | `ath:performance` | Performance achieved in case a trial was valid. | [Performance](#performance) |
| `startTime` | `schema:startTime` | Time and date when a trial starts. | [DateTime](#datetime) |
| `endTime` | `schema:endTime` | Time and date when a trial ends. | [DateTime](#datetime) |
| `trialFeature` | `ath:trialFeature` | Feature of a trial (i.e. if it is a substitute trial, if it is valid, etc.). | [Trial Feature Type](#trial-feature-type) |
There are two specific classes depending on the nature of the field event:
* [Distance Trial](#distance-trial); and
* [Height Trial](#height-trial)
#### Distance Trial
A Distance Trial is an individual, unitary athlete's attempt in a distance field competition (i.e., Throws and Horizontal Jumps).
* class: `DistanceTrial` (`ath:DistanceTrial`)
* subClassOf: `ath:FieldTrial`
Example of trial in a throws event:

### Performance
Performance represents the resulting competitor's accomplishment measured and recognized by officials after a competition. Measurements depend on the type of discipline (i.e., running performances are measured as time, jumps and throws are measured in centimetres). It may include information about the conditions in which competitor got the performance (e.g., wind assistance).
_Using the previous example of result list, Shelly-Ann Fraser-Pryce's performance is: **11.09 (seconds), +0.6 (m/s wind assistance), setting a new CR record** at 100m Women Final._

### Record or Best
Record or Best is an athlete's best performance according to specific criteria set by a [Sports Governing Body](#sports-governing-body). For instance, World Records are ratified by the IAAF.
Both official and unofficial records may be kept by statisticians.
* class: `ath:RecordOrBest`
* subClassOf: `schema:Intangible`
| Key | Property | Description | Value Type |
|:--- |:-------- |:----------- |:---------- |
| `name` | `schema:name` | Descriptive text naming a record or best. | Text |
| `identifier` | `schema:identifier` | Unique character string to identify a record or best. | Text |
| `spatialCoverage` | `schema:spatialCoverage` | Spatial coverage of the record or best (e.g. in the case of area records, the country, continent or region). | [Country](#country), [Continent](#continent) or [AdministrativeArea](http://schema.org/AdministrativeArea) |
| `temporalCoverage` | `schema:temporalCoverage` | Temporal coverage of the record or best (e.g., a 2016-2017 season best) | [PeriodOfTime](http://purl.org/dc/terms/PeriodOfTime) |
| `recognizingAuthority` | `ath:recognizingAuthority` | Governing body or organization that recognizes a record. | [Person](#person) or [Organization](#organization) |
| `category` | `ath:sportsCategory` | The specific category for this record or best (e.g., *M35*, *U18 Male*, etc). | [Category](#category) |

Records or bests can be defined on demand. There is a predefined list of [common record or best types](#record-or-best-type).
### Qualification Criteria
Qualification Criteria are the requirements for the competitor to pass a qualification round. Qualification may be based on the *standard or finishing position*, or by *performance*.
* class: `ath:QualificationCriteria`
| Key | Property | Description | Value Type |
|:--- |:-------- |:----------- |:---------- |
| `description` | `schema:description` | Descriptive text of the qualification criteria. | Text |
| `byPlaceOrStandard` | `ath:qualifiedByPerformance` | Number of competitors that are qualified in a round by rank (track events) or standard (field events). | Integer |
| `byPerformance` | `ath:qualifiedByPerformance` | Number of competitors that are qualified in a round by best performance. | Integer |

### Discipline
An Athletics Discipline is a particular type of Athletics event defined by specific rules.
[According to IAAF](https://www.iaaf.org/disciplines), Athletics events may be classified into: _Sprints_, _Middle/long distance_, _Hurdles_, _Road Running_, _Jumps_, _Throws_, _Combined Events_, _Race Walks_, _Relays_, _Cross Country_, _Mountain Running_ and _Ultra Running_. IOC ODF [[IOC-ODF]] uses: _Races (track and road) and relays_, _Throws_, _Horizontal Jumps_ and _Vertical Jumps_. [Athlib proposes codes](http://opentrack.run/athlib/build/html/eventcodes.html) to represent disciplines.
Disciplines are described by specific features (i.e., throws disciplines, such as shot put, are defined by *weight*). So, having into account the features related to the competition, disciplines are modelled in this taxonomy of concepts:
![Taxonomy for Athletics Disciplines](images/disciplines.svg)
Athletics Discipline Taxonomy
This hierarchical taxonomy enables the definition of any type of Athletic event.
![Example of model of indoor pentathlon](images/instances_disciplines_pentathlon.png)
Example of an instance of Master Female indoor Pentathlon using the current model

##### Long Jump
Long Jump (or broad jump) is a track and field event in which athletes combine speed, strength and agility in an attempt to leap as far as possible from a take off point.
* class: `LongJumpDiscipline` (`ath:LongJumpDiscipline`)
* subClassOf: `ath:HorizontalJumpsDiscipline`
##### Triple Jump
Triple Jump (sometimes referred to as the hop, step and jump or the hop, skip and jump), is a track and field event, where competitors run down the track and perform a hop, a bound and then a jump into the sand pit.
* class: `TripleJumpDiscipline` (`ath:TripleJumpDiscipline`)
* subClassOf: `ath:HorizontalJumpsDiscipline`
#### VerticalJumps
Vertical Jumps are track and field events in which competitors must jump or vault over a horizontal bar placed at measured heights without dislodging it.

class: `VerticalJumpsDiscipline` (`ath:VerticalJumpsDiscipline`)

subClassOf: `ath:AthleticsDiscipline`

superClasses:

`ath:HighJumpDiscipline`

`ath:PoleVaultDiscipline`

##### High Jump
High Jump is a track and field event in which competitors must jump unaided over a horizontal bar placed at measured heights without dislodging it.
* class: `HighJumpDiscipline` (`ath:HighJumpDiscipline`)
* subClassOf: `ath:VerticalJumpsDiscipline`
##### Pole Vault
Pole Vault is a track and field event in which a person uses a long, flexible pole as an aid to jump over a bar.
* class: `PoleVaultDiscipline` (`ath:PoleVaultDiscipline`)
* subClassOf: `ath:VerticalJumpsDiscipline`
#### Combined Discipline
Combined Discipline is a competition where athletes participate in a number of track and field events, earning points for their performance in each event, which adds to a total points score.

class: `CombinedDiscipline` (`ath:CombinedDiscipline`)

subClassOf: `ath:AthleticsDiscipline`

| Key | Property | Description | Value Type |
|:--- |:-------- |:----------- |:---------- |
| `sportsDiscipline` | `ath:sportsDiscipline` | Combined sub-disciplines for this event. | [Discipline](#discipline) |
| `scorePointsReference` | `ath:scorePointsReference` | Reference to the score table used for this competition. | URL |
## Classification Schemas and Data Types
Most of the following definitions and values for this set of value schemas are extracted from the official [Technical Competition Rules](https://www.iaaf.org/about-iaaf/documents/rules-regulations) published by IAAF.
### Date
Date is represented using the [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) standard: `[YYYY][MM][DD]` or `[YYYY]-[MM]-[DD]`
For instance, 7th April 2017:

2017-04-07

### Time
Time is represented using the [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) standard: `[hh][mm][ss].sss` or `[hh]:[mm]:[ss].sss`
Example, 2 hours 5 minutes 34 seconds:

02:05:34.000

Example, 10 seconds, 345 milliseconds:

00:00:10.345

#### High Resolution Time
Milliseconds should be enough to represent all time measurements in Athletics according to IAAF's rules [[IAAF-RULES]]. In the case of timing systems capturing higher resolution of time, values must be represented as quantified values using the Space and Time Units Vocabulary [[QUDT-SPACETIME]]. Editors may indicate the magnitude as a numeric value and the kind of the quantity (unit). Any unit of measurement may be used (hour, second, millisecond, etc.), but *it is recommended using the 'second'* (s), as it is the base unit of time in the International System of Units (SI).
Example, 10 seconds, 3454 microseconds:

### DateTime
DateTime is represented using the [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) standard: `<date>T<time>`
Time can include the timezone `<time>±[hh]:[mm]`.
For instance, 7th April 2017 at 4:45 am (UTC+1):

2017-04-07T04:45:00.000+01:00

### Distance
Distances and heights must be represented by a quantified value, expressing the magnitude and kind of a quantity (unit). Values will be expressed as a numeric value (decimal or integer) and a measurement code. It is recommended using the UN/CEFACT Common Codes [[UNECE-CODES]] for Codes for Units of Measurement used in the International Trade.
*It is recommended using the 'metre'* (m), as it is the base unit of time in the International System of Units (SI). Exceptionally, distance and height may be also represented using other units such as 'mile' (statute mile).
* Metre: `MTR`
* Mile: `SMI`

Other unit codes may be used if needed. Check and select the correspondent code from the [UN/CEFACT Common Codes](../references/rec20_Rev9e_2014.xls).
### Mass
Mass must be represented by a quantified value, expressing the magnitude and kind of a quantity (unit). Values will be expressed as a numeric value (decimal or integer) and a measurement code. It is recommended using the UN/CEFACT Common Codes [[UNECE-CODES]] for Codes for Units of Measurement used in the International Trade.
*It is recommended using the 'kilogram'* (kg), as it is the base unit of mass in the International System of Units (SI).
* Kilogram (kg): `KGM`
* Pound (lb): `LBR`

For instance: `countrycode:ZWE` for *Zimbabwe*, `countrycode:ZAF` for *South Africa* and `countrycode:TGO` for *Togo*.
Check the full list of authority country codes at [http://publications.europa.eu/mdr/resource/authority/country/html/countries-eng.html](http://publications.europa.eu/mdr/resource/authority/country/html/countries-eng.html).
### Continent
If we need to represent a supranational spatial coverage (for instance, when defining the `areaServed` of organisations), it is recommended using the EU [Named Authority List (NAL) of Continents](http://publications.europa.eu/mdr/resource/authority/continent/html/continents-eng.html). These are be represented in a similar way than countries.
The IRI scheme of continents is `http://publications.europa.eu/resource/authority/continent/{continentcode}`. The JSON-LD context enables a `continent` prefix to simplify usage, allowing the use of the following form:

continent:{continentcode}

Examples: `continent:AFRICA` for *Africa*, `continent:AMERICA` for *America*, `continent:ANTARCTICA` for *Antarctica*, `continent:ASIA` for *Asia*, `continent:EUROPE` for *Europe* and `continent:OCEANIA` for *Oceania*.
### Competition Status
Status of a competition.
| Code | Status |
| ---- | ------ |
| `event:Unscheduled` | Competition is not confirmed. |
| `event:Scheduled` | Competition is scheduled. |
| `event:Postponed` | Competition will be postponed without being rescheduled yet. |
| `event:Rescheduled` | Competition is rescheduled. |
| `event:Delayed` | An event is held up, for example by inclement weather. Can happen before or during an event.
| `event:ScheduledBreak` | Competition has a scheduled break (`intermission` in SportsML). |
| `event:Running` | Competition in progress (`mid-event` in SportsML). |
| `event:Interrupted` | Competition interrupted once in progress (`halted` in SportsML). |
| `event:GettingReady` | The start of the competition is imminent |
| `event:Finished` | Competition is over and no more action will happen on the field of play (last competitor finished). (`post-event` in SportsML) |
| `event:Cancelled` | Competition will not take place (`suspended`, `cancelled`, `discarded` in SportsML) |
### Record or Best Type
Types of record of best achieved by competitors in competitions.
| Code | Record Type |
| ---- | ----------- |
| `best:WR` | World Record |
| `best:=WR` | Equal World Record |
| `best:PR` | Paralympic Record |
| `best:AF` | African Record |
| `best:=AF` | Equal African Record |
| `best:AS` | Asian Record |
| `best:=AS` | Equal Asian Record |
| `best:ER` | European Record |
| `best:=ER` | Equal European Record |
| `best:AM` | American Record |
| `best:=AM` | Equal American Record |
| `best:OC` | Oceania Record |
| `best:=OC` | Equal Oceania Record |
| `best:AR` | Area (or continental) Record |
| `best:=AR` | Equal Area (or continental) Record |
| `best:NR` | National Record (for a specific country) |
| `best:=NR` | Equal National Record |
| `best:RR` | Regional Record |
| `best:=RR` | Equal Regional Record |
| `best:OR` | Olympic Record |
| `best:=OR` | Equal Olympic Record |
| `best:CR` | Championship Record |
| `best:=CR` | Equal Championship Record |
| `best:GR` | Games Record |
| `best:=GR` | Equal Games Record |
| `best:MR` | Meet Record |
| `best:=MR` | Equal Meet Record |
| `best:DLR` | Diamond League Record |
| `best:=DLR` | Equal Diamond League Record |
| `best:#` | indicates a record has not been accepted. The same mark is also used to indicate some sort of irregularity with a result. |
| `best:X` | indicates the athlete has been disqualified after the performance |
| `best:ClubR` | Club Record |
Records can be described by the type of record and the age-range category.
| Code | Record Type |
| ---- | ----------- |
| `best:AJR` | Area (or continental) Junior Record |
| `best:=AJR` | Equal Area (or continental) Junior Record |
| `best:EUR` | European U23 Record |
| `best:=EUR` | Equal European U23 Record |
| `best:WJR` | World Junior Record |
| `best:=WJR` | Equal World Junior Record |
| `best:EJR` | European Junior Record |
| `best:=EJR` | Equal European Junior Record |
| `best:NUR` | National U23 Record |
| `best:=NUR` | Equal National U23 Record |
| `best:NJR` | National Junior Record |
| `best:=NJR` | Equal National Junior Record |
The concept of 'best' refers to athlete's personal achievements, without setting official records.
| Code | Best Type |
| ---- | ----------- |
| `best:WYB` | World Youth Best (the best mark achieved by an athlete in the youth age category) |
| `best:=WYB` | Equal World Youth Best |
| `best:WB` | World Best (the best mark recorded for a non-IAAF world record event) |
| `best:=WB` | Equal World Best |
| `best:PB` | Personal Best (the best mark achieved by an athlete on a personal level) |
| `best:=PB` | Equal Personal Best |
| `best:SB` | Seasonal Best (the best mark achieved by an athlete on a personal level within a given season) |
| `best:=SB` | Equal Seasonal Best |
| `best:WL` | World Leader (the best mark achieved worldwide within a given season) |
| `best:=WL` | Equal World Lead |
| `best:EL` | European Lead |
| `best:=EL` | Equal European Lead |
| `best:EB` | European Best |
| `best:=EB` | Equal European Best |
| `best:CB` | Championship Best Performance |
| `best:=CB` | Equal Championship Best Performance |
### Results Status
Possible status types for results within a competition.
| Code | Status |
| ---- | ------ |
| `results:startList` | Before competition, Start List |
| `results:live` | For live updates during competition |
| `results:intermediate` | When competition is stopped, used at pre-defined points |
| `results:unconfirmed` | When the unit is over but not yet unofficial or official. Only used if other statuses do not come quickly. |
| `results:unofficial` | Results of the competition released as soon as the event is over, not waiting any official decision of the International Federation. The correctness of data must be assured. |
| `results:official` | Results of the competition released as soon as the event is officially confirmed taking into account the resolution of the protests, etc. |
| `results:partial` | Incomplete list, Final Ranking. |
| `results:protested` | After the competition is no longer LIVE and a protest has been lodged. |
### Protest Status
Status of a protest process in a competition.
| Code | Status |
| ---- | ---- |
| `protest:CLS` | Closed |
| `protest:OPN` | Open |
| `protest:PND` | Pending |
| `protest:ROPN` | Re Open |
### Competition Type
Type of competition in races, defined by the way of how competitors take part in the competition (against the clock, relays or individual).
| Code | Type |
| ---- | ---- |
| `race:IndividualCompetition` | Individual Competition |
| `race:RelayCompetition` | Relay Competition |
| `race:TimeTrialCompetition` | Time Trial Competition |
Multiple types can be specified (e.g., relays time trial races).
### Venue Type
Type of stadium, track and/or field where a competition take places.
| Code | Type |
| ---- | ---- |
| `venue:VenueIndoor` | Indoor venue |
| `venue:VenueOutdoor` | Outdoor venue |
### Wind Speed
Like distance, wind speed must be represented by a quantified value, expressing the magnitude and kind of a quantity (unit). Values will be expressed as a numeric value (decimal or integer) and a measurement code. It is recommended using the UN/CEFACT Common Codes [[UNECE-CODES]] for Codes for Units of Measurement used in the International Trade. Typically, in Athletics wind speed assistance is represented in *metres per second (m/s)*, recognized by the International System of Units (SI).
* Metre per second (m/s): `MTS`