{
  "title": "Prestations",
  "definitions": {
    "ClsPrestations": {
      "type": [
        "object",
        "null"
      ],
      "properties": {
        "WorkerNumber": {
          "type": "integer",
          "minimum": 1.0,
          "maximum": 9999999.0
        },
        "Month": {
          "type": "integer",
          "minimum": 1.0,
          "maximum": 12.0
        },
        "Year": {
          "type": "integer",
          "minimum": 1900.0,
          "maximum": 2075.0
        },
        "EndOfPeriod": {
          "type": "string",
          "minLength": 8,
          "maxLength": 8,
          "pattern": "^[0-9]*$"
        },
        "Annotation": {
          "type": "string"
        },
        "Reset": {
          "type": "string",
          "enum": [
            "N",
            "Y"
          ]
        },
        "Prestations": {
          "type": "array",
          "items": {
            "$ref": "#/definitions/Prestation"
          }
        },
        "Costs": {
          "type": "array",
          "items": {
            "$ref": "#/definitions/Cost"
          }
        }
      },
      "required": [
        "WorkerNumber",
        "Month",
        "Year",
        "EndOfPeriod"
      ]
    },
    "Cost": {
      "type": [
        "object",
        "null"
      ],
      "properties": {
        "CostCentre": {
          "type": "string",
          "minLength": 0,
          "maxLength": 10
        },
        "Code": {
          "type": "integer",
          "minimum": 1.0,
          "maximum": 8999.0
        },
        "Shift": {
          "type": "integer",
          "minimum": 1.0,
          "maximum": 99.0
        },
        "Days": {
          "type": "integer",
          "minimum": 0.0,
          "maximum": 99.0
        },
        "Hours": {
          "type": "number",
          "minimum": 0.0,
          "maximum": 9999.0
        },
        "Unity": {
          "type": "number"
        },
        "Percentage": {
          "type": "number"
        },
        "Amount": {
          "type": "number"
        },
        "Supplement": {
          "type": "number"
        }
      },
      "required": [
        "Code"
      ]
    },
    "Prestation": {
      "type": [
        "object",
        "null"
      ],
      "properties": {
        "Day": {
          "type": "string",
          "minLength": 8,
          "maxLength": 8,
          "pattern": "^[0-9]*$"
        },
        "CostCentre": {
          "type": "string",
          "minLength": 0,
          "maxLength": 10
        },
        "Code": {
          "type": "integer",
          "minimum": 1.0,
          "maximum": 8999.0
        },
        "Shift": {
          "type": "integer",
          "minimum": 1.0,
          "maximum": 99.0
        },
        "Hours": {
          "type": "number",
          "minimum": -24.0,
          "maximum": 9999.0
        }
      },
      "required": [
        "Day",
        "Code"
      ]
    }
  },
  "type": "array",
  "items": {
    "$ref": "#/definitions/ClsPrestations"
  }
}