{
	"$id": "datasheet.json",
	"$schema": "https://json-schema.org/draft/2020-12/schema",
	"type": "object",
	"required": ["name"],
	"unevaluatedProperties": false,
	"properties": {
		"name": {
			"type": "string"
		},
		"description": {
			"type": "string"
		},
		"created": {
			"type": "string",
			"format": "date-time"
		},
		"modified": {
			"type": "string",
			"format": "date-time"
		},
		"customFields": {
			"type": "array",
			"items": {
				"$ref": "https://graph.movelapse.com/1.0/schemas/custom-field.json"
			}
		},
		"reportTriggers": {
			"type": "array",
			"items": {
				"$ref": "#/$defs/reportTrigger"
			}
		},
		"tags": {
			"type": "array",
			"items": {
				"type": "string"
			}
		},
		"labels": {
			"type": "array",
			"items": {
				"$ref": "#/$defs/labelOrUriReference"
			}
		},
		"meta": {
			"type": "object"
		}
	},
	"$defs": {
		"activityTypeOrUriReference": {
			"anyOf": [
				{
					"$ref": "https://graph.movelapse.com/1.0/schemas/activity-type.json"
				},
				{
					"$ref": "#/$defs/uriReference"
				}
			]
		},
		"eventType": {
			"enum": ["beforeSession", "afterSession"]
		},
		"labelOrUriReference": {
			"anyOf": [
				{
					"$ref": "https://graph.movelapse.com/1.0/schemas/label.json"
				},
				{
					"$ref": "#/$defs/uriReference"
				}
			]
		},
		"reportTrigger": {
			"type": "object",
			"required": ["eventType", "activityType"],
			"unevaluatedProperties": false,
			"properties": {
				"eventType": {
					"$ref": "#/$defs/eventType"
				},
				"activityType": {
					"$ref": "#/$defs/activityTypeOrUriReference"
				},
				"meta": {
					"type": "object"
				}
			}
		},
		"uriReference": {
			"type": "string",
			"format": "uri-reference"
		}
	}
}