Skip to content
Brendan Quinn edited this page Aug 21, 2018 · 3 revisions

SportsJS 1.0

SportsJS is an open and highly flexible standard for the interchange of sports data in JSON, created by the International Press Telecommunications Council (IPTC).

It is designed to be easy to understand and implement, and to cover a wide variety of sports competitions. It is based on a direct translation to JSON Schema from the SportsML 3.0 XML Schema and the aim is to keep it semantically consistent with SportsML (although the structure has been changed in a few places where JSON Schema can't represent the same structure that works in SportsML XML Schema).

Background and useful information

Structure

All SportsJS instances are valid JSON objects. The top-level objects contained in a SportsJS instance must be any of the following properties:

  • sportsMetadata - metadata describing the content in the rest of the SportsJS document, such as publishing advice, publish dates and times, languages used, and references to external controlled vocabularies used in the document.
  • sportsEvents - a set of sports events, which will each be represented with a sportsEvent object.
  • tournament - a structured series of competitions within one sport.
  • schedule - a series of games, usually grouped by date.
  • standing - a ranked list of team or individual records, also known as a table or league table.
  • statistic - a table that generally compares the performance of teams or players. Also appropriate for rosters (squad listings).
  • article - holds either an article or a reference to an article. The recommended article format is NITF. Each of these objects is described in the pages linked above.

Examples

a minimal SportsJS alert

{
  "sportsMetadata": {
    "fixtureKey": "spfixt:alert",
    "featureName": {
      "full": "Generic Alert",
      "short": "Alert"
    },
    "documentClass": "spfixt:alert",
    "dateTime": "2016-12-21T00:00:00-04:00",
    "docId": "iptc.alert.a2a204ad-db35-41d4-837d-cded49226292"
  }
}

a golf tournament

{
    "sportsMetadata": {
        "docId": "sample_123456",
        "dateTime": "2011-02-01T18:00:00+01:00",
        "language": "en",
        "sportsTitle": {
            "full": "PGA tour: Bob Hope Classic"
        }
    },
    "tournament": {
        "tournamentMetadata": {
            "startDateTime": "2011-01-19",
            "endDateTime": "2011-01-23",
            "name": {
                "full": "FedExCup"
            }
        },
        "tournamentDivision": {
          "tournamentDivisionMetadata": {
            [ ... ]
          },
          "standing": {
            [ ... ]
          },
          "tournamentParts": [
            {
              "tournamentPartMetadata": {
                "startDateTime": "2011-01-19",
                "type": "vendtourpart:preliminary",
                "name": "Preliminary"
              },
              "tournamentPart": [
                [ ... ]
              ]
            },
            {
              "tournamentPartMetadata": {
                "type": "vendtourpart:playoff",
                "name": "Playoff"
              },
              "tournamentPart": [
                [ ... ]
              ]
            }
          ]
        }