Code Monkey home page Code Monkey logo

activity-list-old's Introduction

OpenActive Activity List Google Drive

This repository holds the data and documentation for the OpenActive list of physical activities.

A Physical Activity is an exercise, sport or other form of bodily movement that involves physical effort. Physical activities include not just sports, but also a variety of forms of exercise and fitness classes. An Activity List defines a list of physical activities.

A standardised activity list, that provides unique identifiers, labels and descriptions for physical activities can:

  • support integration of data published by multiple activity providers
  • improve user experience across applications through use of a standard set of activity names and definitions
  • enable better discovery and recommendation tools to enable participants to find more opportunities to be active

The list is publicly available at https://www.openactive.io/activity-list/.

View the open data certificate for this dataset.

Dataset Documentation

The dataset is structured according to the SKOS standard for publishing controlled vocabularies.

It consists of:

  • a list of terms with an identifier (a URI) and a preferred label (skos:prefLabel)
  • relationships between terms (skos:broader, skos:narrower and skos:related)
  • alternative labels / synonyms (skos:altLabel)

Identifiers

Terms in the list have been assigned a UUID to generate a unique identifier. The URIs for each terms are Patterned URIs that combine these UUIDs with a common prefix:

E.g. Fencing has been assigned a UUID of 92808e60-820c-4ee2-89ec-ea8d99d3f528. It's URI is http://openactive.io/activity-list#92808e60-820c-4ee2-89ec-ea8d99d3f528

JSON-LD

The JSON-LD version of the list provides a simple JSON version of the list that conforms to the JSON-LD specification.

The JSON-LD version of this controlled vocabulary SHOULD be retrieved frequently using an HTTP GET and cached within an application, to ensure that the most up-to-date version is displayed to the user, while also protecting against network failure when accessing the underlying resource. To access this controlled vocabulary the application MUST GET the URL "https://openactive.io/activity-list/activity-list.jsonld" (note there is no www in the URL) which does not require a specific Accept header, and is cached via CDN. The controlled vocabulary is also available via a GET of the URL "https://openactive.io/activity-list" using an Accept header of application/ld+json, for completeness, however this shorter URL MUST NOT be used in production.

Publication process

The master ('canonical') version of the Activity List is that found at https://www.openactive.io/activity-list/. That list is stored within iQvoc, and the list editor can choose to trigger an update to the unvalidated_activity_list.jsonld found in this repository. The commit triggers Travis CI to validate the unvalidated_activity_list.jsonld with JSON Schema, and when validation is successful the live list activity-list.jsonld is updated and served at https://openactive.io/activity-list/activity-list.jsonld via GitHub pages.

Note that new Concepts will not be validated unless a machine-readable (no spaces, all lowercase) notation is provided with them, and this notation value must be unique within the List.

Licence

The documentation and data in this repository is published under the Creative Commons CC-BY 4.0 license.

The Ruby code and templates are placed into the public domain under the Unlicense waiver.

activity-list-old's People

Contributors

jadecation avatar ldodds avatar nickevansuk avatar openactive-bot avatar thill-odi avatar timbot22 avatar

Stargazers

 avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

activity-list-old's Issues

Clean up repo

We in fact only need contents related to display of the site and editor.

The old-style 'spec' content can be removed.

Annotate with NGBs

Some sports are covered by governing bodies. We should consider annotating our list to indicate the organisation that governs them.

Might be best to include a new property in the OA namespace, e.g. oa:governs to relate an Organisation to a physical activity (skos:Concept) that it governs.

Updates to Cycling

Confirmed with British Cycling we need to update the list as follows:

  1. Move Mountain Biking under Cycling
  2. Add BMX and Freestyle BMX
  3. Move BMX racing and Freestyle BMX under BMX
  4. Add Recreational Cycling (id: "https://openactive.io/activity-list#be4762de-b26c-4bd2-bcf2-4e54b58e7830") under Cycling
  5. Add Disability Cycling under Cycling

The result of the should be:

  • Cycling
    • BMX
      • BMX racing
      • Freestyle BMX
    • Commuter Cycling
    • Cyclo-Cross
    • Disability Cycling
    • Handcycling
    • Mountain Biking
    • Racing
    • Recreational Cycling
    • Road Cycling
    • Track Cycling

Yoga should be a top-level term?

The current editors draft doesn't list the majority of varieties of Yoga. Currently Yoga is primarily organised under "Holistic Classes".

It may be better to:

  • Promote Yoga to be a top-level term, along with the other items under Holistic Classes
  • Add additional forms of Yoga as narrower terms
  • Turn Holistic Classes into a Collection (see #1).

Proposal: Add expected attendee count to Activity list

Something that may help the taxonomy when searching or building systems is adding an 'expected attendee count' parameter to the activities. This would enable brokers which are unfamiliar with all of the sporting activities to provide simple validation prompts or suggested values when Customers are filling out 'number of attendees' forms for example.

e.g.

  {
    "@type": "Concept",
    "@id": "https://openactive.io/activity-list#ab4a33f2-dc13-4f7f-afa4-a3184dc00eab",
    "prefLabel": "Baseball",
    "inScheme": "https://openactive.io/activity-list",
    "expectedAttendeeCount": {
      "min": 10,
      "max": 18
    }
  }

Chinese Martial Arts should be a top-level term?

Currently there is no grouping for Chinese Martial Arts (CMA) or, more broadly, all forms of Martial Arts. However the Sport England recognised sport list does use (CMA) as a category.

We should consider:

  • Adding Chinese Martial Arts as a top-level term
  • Moving the appropriate martial arts to be narrower terms
  • Add Martial Arts as a Collection, as suggested in #1.

Agree handling of "formats"

Currently the initial editors draft does not include any "formats". For example while we include Football, we don't currently include 5 a-side, 6 a-side, 7 a-side, etc.

Should these variations be included within the list?

What other variations are there?

Incorporate AiT Activity List

The AiT Activity List has been shared with the the OpenActive CG under an open licence.

We should review the detail of this list and consider including it in the current draft. The list includes:

  • around 300 terms
  • organises activities into broader categories (top term) and types
  • has a well-organised list of Yoga, Martial Arts, Individual and Team Sports (as the main top level categories)
  • a set of top-level categories that could be used to inform discussion of #1.

Add a column for Wikidata IDs

By linking the terms to their Wikidata equivalents, it opens up an easy way to access additional information such as:

  • OSM keys
  • Wikipedia pages and categories
  • Alternative categorisations, e.g. whether team sports, winter sports, etc
  • Links to related organisations where present (this might be something to enter into Wikidata instead of as part of this taxonomy? Could help with #11?)

prefSlug and altSlug for readable URI

It could be interesting adding a prefSlug and altSlug for prefLabel and altLabel to make URI readble.

In our case, for example, activity is our entry point (e.g.: soccer.sportsopendata.net): it could be difficult to deliver a service by using UUID.

Using slug (pref or alt) it could be a good solution instead of RESTful way.

Agree on basic set of Collections to help organise the list

Collections allow grouping together of activities that aren't directly related to one another. E.g. ball sports, or olympic sports, or SportEngland recognised sports.

Grouping makes it easier:

  • for reusers to subset the list to just those activities they're interested in using
  • for reusers to use the list to drive navigation, browsing, and discovery
  • to reflect the variety of relationships between sports, e.g. based on type of activity, equipment, setting, etc.

In the working document we have a number of collections that have been proposed. We need to define a basic set of collections that are useful to developers, and then include those in the list.

Existing suggestions include (majority are taken from the SportSuite list):

  • Sports
  • Physical Activities (anything that is not formally a sport)
  • SE Recognised Sports
  • Combat Sports
  • Martial Arts (of all forms)
  • Team Sports
  • Individual Sports
  • Ball Games
  • Throwing Sports
  • Water Sports
  • Olympic/Paralympic Sports
  • Precision Sports
  • Athletic Sports
  • Endurance Sports
  • Indoor Sports
  • Outdoor Sports
  • Racquet Sports
  • Traditional Sports
  • Street Sports
  • Disability/Disabled Sports
  • Acrobatic Sports
  • Exercise, Movement and Dance
  • Hybrid Sports
  • Winter Sports
  • Summer Sports
  • Extreme Sports
  • Board Sports

Soccer as Alternative Label for Football

Hi Guys,
i've seen the activity list feed in json.

Just a question about "Soccer": is it valid to consider it as alternative of "Football" activity?

Really thanks a lot.
Rgds.
Paolo.

Add Run/Bike

Afraid this is a bit more niche so it doesn't really exist, for example, on Wikipedia yet but we do have some run and bike events within multisport. Duathlons (run/bike/run) are much more popular but without a run/bike listing on the activity list we have no value to return for the few such events that we do have.

Level 1 (TOP TERMS) = Triathlon
Level 2 (BROADER TERM) = Run/Bike

Review categorisation of disabled sports

In the initial editors draft, the merged activity list includes disabled sports as variants of another sport, e.g. wheelchair football is a narrower term than football. This has been applied more or less consistently across the list. But is this the right way to organise the list?

Disabled sports and activities can be highlighted as a Collection (see #1) which would provide an alternative way to highlight those activities for relevant audiences.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.