{
    "$schema": "http://json-schema.org/draft-04/schema#",
    "title": "Transitland Datastore Feed",
    "type": "object",
    "required": [
        "onestopId"
    ],
    "properties": {
        "onestopId": {
            "type": "string",
            "format": "feed-onestop-id"
        },
        "newOnestopId": {
            "type": "string",
            "format": "feed-onestop-id"
        },
        "onestopIdsToMerge": {
            "type": "array",
            "minItems": 1,
            "_uniqueItems": true,
            "items": {
                "type": "string",
                "format": "feed-onestop-id"
            }
        },
        "geometry": {
            "type": "object"
        },
        "name": {
            "type": "string"
        },
        "tags": {
            "type": "object"
        },
        "url": {
            "type": "string"
        },
        "feedFormat": {
            "type": "string"
        },
        "licenseName": {
            "type": "string"
        },
        "licenseUrl": {
            "type": "string"
        },
        "licenseUseWithoutAttribution": {
            "type": "string"
        },
        "licenseAttributionText": {
            "type": "string"
        },
        "licenseCreateDerivedProduct": {
            "type": "string"
        },
        "licenseRedistribute": {
            "type": "string"
        },
        "includesOperators": {
            "type": "array",
            "minItems": 1,
            "items": {
                "type": "object",
                "required": [
                    "operatorOnestopId",
                    "gtfsAgencyId"
                ],
                "operatorOnestopId": {
                    "type": "string",
                    "format": "operator-onestop-id"
                },
                "gtfsAgencyId": {
                    "type": "string"
                }
            }
        },
        "doesNotIncludeOperators": {
            "type": "array",
            "minItems": 1,
            "items": {
                "type": "object",
                "required": [
                    "operatorOnestopId",
                    "gtfsAgencyId"
                ],
                "operatorOnestopId": {
                    "type": "string",
                    "format": "operator-onestop-id"
                },
                "gtfsAgencyId": {
                    "type": "string"
                }
            }
        }
    }
}