How to Obtain Attribution Information for Media Assets in the Exercises-Dataset Repository
You can obtain attribution information for media assets by reading the attribution field from any exercise record in data/exercises.json, which is guaranteed to exist by the JSON schema and contains the credit text required for redistribution.
The hasaneyldrm/exercises-dataset repository distributes fitness exercises complete with thumbnail images and animated GIFs sourced from Gym Visual. To obtain attribution information for media assets, developers and data scientists simply query the structured JSON dataset where every record explicitly contains the required credit string.
Where Attribution Data Is Stored
Inside the Exercise Records (data/exercises.json)
The primary dataset file data/exercises.json stores complete attribution data for every media asset directly inside each exercise record. Each entry contains an attribution string, such as "© Gym visual — https://gymvisual.com/", ensuring downstream users know exactly how to credit the source when displaying thumbnails or animation GIFs.
Schema Validation (data/exercises.schema.json)
The JSON schema defined in data/exercises.schema.json marks the attribution field as required, guaranteeing that every exercise in the dataset includes this critical metadata. This schema enforcement prevents incomplete records from entering the dataset.
Repository Documentation Files
Beyond the structured data, the repository reiterates attribution requirements in human-readable documentation. The NOTICE.md file explicitly states the media attribution and license terms, while README.md contains sections describing the media license. The LICENSE file provides the MIT license for code and dataset structure while referencing the separate media license terms.
Retrieving Attribution Programmatically
To obtain attribution information for media assets in your applications, parse data/exercises.json and access the attribution field.
Load a single exercise and print its attribution using Python:
import json
with open("data/exercises.json", "r", encoding="utf-8") as f:
exercises = json.load(f)
# Example: get attribution for the first exercise
first = exercises[0]
print(f"Exercise: {first['name']}")
print(f"Attribution: {first['attribution']}")
List distinct attribution strings across the entire dataset:
import json
with open("data/exercises.json", "r", encoding="utf-8") as f:
exercises = json.load(f)
attributions = {ex["attribution"] for ex in exercises}
print("Unique attributions:", attributions)
Retrieve attribution for a specific exercise ID using JavaScript:
const exercises = require("./data/exercises.json");
// Find exercise with ID "0001"
const ex = exercises.find(e => e.id === "0001");
console.log(`Exercise: ${ex.name}`);
console.log(`Attribution: ${ex.attribution}`);
Collect all unique attributions in JavaScript:
const exercises = require("./data/exercises.json");
const unique = [...new Set(exercises.map(e => e.attribution))];
console.log("Distinct attributions:", unique);
Media File Organization and License Requirements
All media files stored in the images/ and videos/ directories ship with the same attribution label defined in the dataset records. When redistributing these assets, you must preserve the attribution text unchanged. The NOTICE.md file provides the exact legal text required for compliance, ensuring that downstream users display the correct credit (© Gym visual — https://gymvisual.com/) alongside any thumbnails or animation GIFs.
Summary
- Primary source: The
attributionfield indata/exercises.jsoncontains the required credit text for every exercise. - Schema guarantee:
data/exercises.schema.jsonvalidates that theattributionfield is present in every record. - Legal documentation:
NOTICE.mdandREADME.mdprovide human-readable attribution statements and license terms. - Programmatic access: Use standard JSON parsing in Python or JavaScript to extract attribution strings by reading the
attributionkey. - Compliance requirement: You must retain the original attribution text when redistributing media files from the
images/orvideos/directories.
Frequently Asked Questions
Where is the attribution field located in the dataset?
The attribution field is located within each exercise object in data/exercises.json. Every exercise record includes this field at the top level of the JSON object, containing a string like "© Gym visual — https://gymvisual.com/".
Is the attribution field required for all exercises?
Yes, the attribution field is mandatory. The JSON schema in data/exercises.schema.json lists attribution as a required field, ensuring that every exercise entry in the dataset includes proper credit information for its associated media assets.
Can I redistribute the media assets without attribution?
No, you cannot redistribute the media assets without maintaining the attribution. The NOTICE.md file explicitly states the license terms requiring the attribution text to remain intact when displaying or distributing the thumbnail images and animation GIFs from the images/ and videos/ directories.
What is the fastest way to check attribution for all media in the dataset?
The fastest method is to aggregate distinct values from the attribution field across all exercise records. Currently, the dataset contains only one unique attribution value (© Gym visual — https://gymvisual.com/), which you can verify using a Python set comprehension or JavaScript Set operation as shown in the code examples above.
Have a question about this repo?
These articles cover the highlights, but your codebase questions are specific. Give your agent direct access to the source. Share this with your agent to get started:
curl -s "https://instagit.com/install.md" Maintain an open-source project? Get it listed too →