{
  "type": "object",
  "properties": {
    "lineId": { "type": "string" },
    "factoryId": { "type": "string" },
    "operationArea": { "type": "string" },
    "processLine": { "type": "string" },
    "shiftName": { "type": "string" },
    "windowStart": { "type": "integer", "format": "int64" },
    "windowEnd": { "type": "integer", "format": "int64" },
    "produced": { "type": "integer" },
    "scrapped": { "type": "integer" },
    "reworked": { "type": "integer" },
    "scrapByReasonCode": { "type": "object", "additionalProperties": { "type": "integer" } },
    "scrapRate": { "type": "number", "format": "double" },
    "scrapVelocityPerHour": { "type": "number", "format": "double" },
    "shiftTargetPieces": { "type": "integer" },
    "hoursRemaining": { "type": "number", "format": "double" },
    "timestamp": { "type": "integer", "format": "int64" }
  },
  "required": ["lineId", "factoryId", "operationArea", "processLine", "shiftName", "produced", "scrapped", "reworked", "scrapRate", "scrapVelocityPerHour", "shiftTargetPieces", "hoursRemaining", "timestamp"]
}
