JSON Schema验证:验证对象数组

I get following JSON and would like to validate it.

[
    {
        "remindAt": "2015-08-23T18:53:00+02:00",
        "comment": "Postman Comment"
    },
    {
        "remindAt": "2015-08-24T18:53:00+02:00",
        "comment": "Postman Comment"
    }
]

My schema looks currently as following

{
    "type": "array",
    "required": true,
    "properties": {
        "type": "object",
        "required": false,
        "additionalProperties": false,
        "properties": {
            "remindAt": {
                "required": true,
                "type": "string",
                "format": "date-time"
            },
            "comment": {
                "required": true,
                "type": "string"
            }
        }
    }
}

This is not working. It validates to true even if I remove comment from JSON ddata. I guess structure of my schema file is wrong.

For validating I use following library https://packagist.org/packages/justinrainbow/json-schema

Can please someone explain to me what I do wrong and how I properly validate given JSON data?

Thanks in advance

There are some errors in your schema. First, you are using properties for an array object. properties is a clause for objects, not arrays, so it will be ignored.

From json-schema v4, required is an array.

The following schema will require remindAt and comment properties for all items in the array:

{
    "type": "array",
    "items": {
        "additionalProperties": false,
        "properties": {
            "remindAt": {
                "type": "string",
                "format": "date-time"
            },
            "comment": {
                "type": "string"
            }
        },
        "required": ["remindAt", "comment"]
    }
}