{
    "$schema": "http://json-schema.org/draft-04/schema",
    "required": [
        "reportdate",
        "scheduleid",
        "forumid",
        "datapoints_plain",
        "attachments",
        "subtype",
        "courseid",
        "datecreated",
        "notifications",
        "elements",
        "oldid",
        "datapoints",
        "date",
        "type",
        "id",
        "participantid"
    ],
    "type": "object",
    "properties": {
        "reportdate": {
            "type": "string"
        },
        "scheduleid": {
            "type": "number"
        },
        "forumid": {
            "type": "number"
        },
        "datapoints_plain": {
            "type": "array"
        },
        "attachments": {
            "type": "array"
        },
        "notifications": {
            "required": [
                "attributes",
                "type",
                "value"
            ],
            "type": "object",
            "properties": {
                "attributes": {
                    "required": [
                        "class",
                        "names",
                        "row.names"
                    ],
                    "type": "object",
                    "properties": {
                        "row.names": {
                            "required": [
                                "attributes",
                                "type",
                                "value"
                            ],
                            "type": "object",
                            "properties": {
                                "attributes": {
                                    "type": "object"
                                },
                                "type": {
                                    "type": "string"
                                },
                                "value": {
                                    "items": {
                                        "type": "number"
                                    },
                                    "type": "array"
                                }
                            }
                        },
                        "class": {
                            "required": [
                                "attributes",
                                "type",
                                "value"
                            ],
                            "type": "object",
                            "properties": {
                                "attributes": {
                                    "type": "object"
                                },
                                "type": {
                                    "type": "string"
                                },
                                "value": {
                                    "items": {
                                        "type": "string"
                                    },
                                    "type": "array"
                                }
                            }
                        },
                        "names": {
                            "required": [
                                "attributes",
                                "type",
                                "value"
                            ],
                            "type": "object",
                            "properties": {
                                "attributes": {
                                    "type": "object"
                                },
                                "type": {
                                    "type": "string"
                                },
                                "value": {
                                    "items": {
                                        "type": "string"
                                    },
                                    "type": "array"
                                }
                            }
                        }
                    }
                },
                "type": {
                    "type": "string"
                },
                "value": {
                    "items": {
                        "required": [
                            "attributes",
                            "type",
                            "value"
                        ],
                        "type": "object",
                        "properties": {
                            "attributes": {
                                "type": "object"
                            },
                            "type": {
                                "type": "string"
                            },
                            "value": {
                                "items": {
                                    "type": "string"
                                },
                                "type": "array"
                            }
                        }
                    },
                    "type": "array"
                }
            }
        },
        "courseid": {
            "type": "number"
        },
        "datecreated": {
            "type": "string"
        },
        "subtype": {
            "type": "string"
        },
        "elements": {
            "required": [
                "element1",
                "element3"
            ],
            "type": "object",
            "properties": {
                "element1": {
                    "required": [
                        "sectionLevel",
                        "elementName",
                        "title",
                        "courseName",
                        "instructors",
                        "date",
                        "elementType"
                    ],
                    "type": "object",
                    "properties": {
                        "sectionLevel": {
                            "type": "number"
                        },
                        "elementName": {
                            "type": "string"
                        },
                        "title": {
                            "type": "string"
                        },
                        "courseName": {
                            "type": "string"
                        },
                        "instructors": {
                            "items": {
                                "type": "string"
                            },
                            "type": "array"
                        },
                        "date": {
                            "type": "string"
                        },
                        "elementType": {
                            "type": "string"
                        }
                    }
                },
                "element3": {
                    "required": [
                        "comment",
                        "elementName",
                        "subtitle",
                        "uuid",
                        "title",
                        "items",
                        "tooltipOrder",
                        "elementType"
                    ],
                    "type": "object",
                    "properties": {
                        "comment": {
                            "type": "array"
                        },
                        "elementName": {
                            "type": "string"
                        },
                        "subtitle": {
                            "type": "array"
                        },
                        "uuid": {
                            "type": "string"
                        },
                        "title": {
                            "type": "string"
                        },
                        "items": {
                            "items": {
                                "required": [
                                    "comment",
                                    "code",
                                    "interpretation",
                                    "name",
                                    "expectedRange",
                                    "value",
                                    "help"
                                ],
                                "type": "object",
                                "properties": {
                                    "comment": {
                                        "type": "string"
                                    },
                                    "code": {
                                        "type": "string"
                                    },
                                    "interpretation": {
                                        "type": "string"
                                    },
                                    "name": {
                                        "type": "string"
                                    },
                                    "expectedRange": {
                                        "type": "string"
                                    },
                                    "value": {
                                        "type": "string"
                                    },
                                    "help": {
                                        "type": "string"
                                    }
                                }
                            },
                            "type": "array"
                        },
                        "tooltipOrder": {
                            "items": {
                                "type": "string"
                            },
                            "type": "array"
                        },
                        "elementType": {
                            "type": "string"
                        }
                    }
                }
            }
        },
        "oldid": {
            "type": "null"
        },
        "datapoints": {
            "required": [
                "attributes",
                "type",
                "value"
            ],
            "type": "object",
            "properties": {
                "attributes": {
                    "type": "object"
                },
                "type": {
                    "type": "string"
                },
                "value": {
                    "type": "array"
                }
            }
        },
        "date": {
            "type": "string"
        },
        "type": {
            "type": "string"
        },
        "id": {
            "type": "number"
        },
        "participantid": {
            "type": "number"
        }
    }
}