{
    "test_file_exists": {
        "test_name": "Checking if the mandatory files according to the contribution manual are present",
        "success": true,
        "message": [
            "The file 'schema.json' exists",
            "The file 'examples/example.json' exists",
            "The file 'examples/example-normalized.json' exists",
            "The file 'examples/example.jsonld' exists",
            "The file 'examples/example-normalized.jsonld' exists",
            "The file 'notes.yaml' exists",
            "The file 'ADOPTERS.yaml' exists"
        ]
    },
    "test_valid_json": {
        "test_name": "Checking that the mandatory json files are valid json files",
        "success": true,
        "message": [
            "file schema.json is a valid json",
            "file examples/example.json is a valid json",
            "file examples/example-normalized.json is a valid json",
            "file examples/example.jsonld is a valid json",
            "file examples/example-normalized.jsonld is a valid json"
        ]
    },
    "test_yaml_files": {
        "test_name": "Checking that ADOPTERS.yaml and notes.yaml are valid YAML files",
        "success": true,
        "message": [
            "The file 'ADOPTERS.yaml' is a valid YAML file.",
            "The file 'notes.yaml' is a valid YAML file."
        ]
    },
    "test_schema_descriptions": {
        "test_name": "Checking that the schema is properly described in all its attributes",
        "success": false,
        "message": [
            "The schema has a root description.",
            "The attribute 'allOf[0].id' is properly documented.",
            "The attribute 'allOf[0].dateCreated' is properly documented.",
            "The attribute 'allOf[0].dateModified' is properly documented.",
            "The attribute 'allOf[0].source' is properly documented.",
            "The attribute 'allOf[0].name' is properly documented.",
            "The attribute 'allOf[0].alternateName' is properly documented.",
            "The attribute 'allOf[0].description' is properly documented.",
            "The attribute 'allOf[0].dataProvider' is properly documented.",
            "The attribute 'allOf[0].owner' is properly documented.",
            "The attribute 'allOf[0].owner.items.anyOf[0]' is properly documented.",
            "The attribute 'allOf[0].owner.items.anyOf[1]' is properly documented.",
            "The attribute 'allOf[0].seeAlso' is properly documented.",
            "The attribute 'allOf[1].location' is properly documented.",
            "The attribute 'allOf[1].address' is properly documented.",
            "The attribute 'allOf[1].address.streetAddress' is properly documented.",
            "The attribute 'allOf[1].address.addressLocality' is properly documented.",
            "The attribute 'allOf[1].address.addressRegion' is properly documented.",
            "The attribute 'allOf[1].address.addressCountry' is properly documented.",
            "The attribute 'allOf[1].address.postalCode' is properly documented.",
            "The attribute 'allOf[1].address.postOfficeBoxNumber' is properly documented.",
            "The attribute 'allOf[1].address.streetNr' is properly documented.",
            "The attribute 'allOf[1].address.district' is properly documented.",
            "The attribute 'allOf[1].areaServed' is properly documented.",
            "The attribute 'allOf[2].type' is properly documented.",
            "The attribute 'allOf[2].cameraName' is properly documented.",
            "*** The attribute 'allOf[2].cameraUsage' has an invalid description: *** Invalid format for 'Enum:'. Expected format: Enum:'value'.",
            "The attribute 'allOf[2].streamURL' is properly documented.",
            "The attribute 'allOf[2].cameraType' is properly documented.",
            "The attribute 'allOf[2].endDateTime' is properly documented.",
            "The attribute 'allOf[2].cameraOrientation' is properly documented.",
            "*** The attribute 'allOf[2].cameraOrientation.comments' is missing a description.",
            "*** The attribute 'allOf[2].cameraOrientation.annotatedMap' is missing a description.",
            "The attribute 'allOf[2].cameraNum' is properly documented.",
            "The attribute 'allOf[2].mediaURL' is properly documented.",
            "The attribute 'allOf[2].streamName' is properly documented.",
            "The attribute 'allOf[2].startDateTime' is properly documented.",
            "The attribute 'allOf[2].on' is properly documented.",
            "The attribute 'allOf[2].imageSnapshot' is properly documented."
        ]
    },
    "test_schema_metadata": {
        "test_name": "Validating schema.json metadata",
        "success": true,
        "message": [
            "$schema is valid",
            "Warning: modelTags is empty",
            "$schemaVersion is valid",
            "title is valid",
            "*** description is too short (minimum 50 characters) (found: 48 characters)",
            "Warning the $id is  not pointing to a valid url. Check when publishing",
            "Warning: derivedFrom is missing",
            "required section is valid and contains 'id' and 'type'",
            "Warning: license is missing"
        ]
    },
    "test_string_incorrect": {
        "test_name": "Checking invalid string attributes",
        "success": true,
        "message": []
    },
    "test_valid_keyvalues_examples": {
        "test_name": "Checking that example files are valid against the schema",
        "success": true,
        "message": [
            "example.json: JSON data is valid against the schema.",
            "example.jsonld: JSON data is valid against the schema.",
            "All @context URLs are valid."
        ]
    },
    "test_valid_ngsiv2": {
        "test_name": "Validating example-normalized.json as NGSI v2 normalized format",
        "success": true,
        "message": []
    },
    "test_valid_ngsild": {
        "test_name": "Validating example-normalized.jsonld as NGSI-LD format",
        "success": true,
        "message": [
            "All @context URLs are valid."
        ]
    },
    "test_duplicated_attributes": {
        "test_name": "Checking that all payload attributes are defined in the schema",
        "success": true,
        "message": []
    },
    "test_array_object_structure": {
        "test_name": "Checking array and object attributes structure",
        "success": true,
        "message": []
    },
    "email": "pmesparza@itracasa.es"
}