{
    "$schema": "http://json-schema.org/draft-06/schema#",
    "title": "IGF samplesheet validation schema",
    "description": "Schema for validation of samplesheet data",
    "type": "array",
    "version": "1.0.1",
    "minItems": 1,
    "_uniqueItems": true,
    "items": {
        "type": "object",
        "properties": {
            "Lane": {
                "type": "string",
                "enum": [
                    "1",
                    "2",
                    "3",
                    "4",
                    "5",
                    "6",
                    "7",
                    "8"
                ]
            },
            "Sample_ID": {
                "type": "string",
                "pattern": "^IGF[a-zA-Z0-9-_]+$"
            },
            "Sample_Name": {
                "type": "string",
                "pattern": "^[a-zA-Z0-9-]+$"
            },
            "Sample_Project": {
                "type": "string",
                "pattern": "^IGF[a-zA-Z0-9-_]+$"
            },
            "I7_Index_ID": {
                "type": "string"
            },
            "index": {
                "type": "string",
                "pattern": "^[ATCG]+$|^SI-[GN]A-[A-Z][0-9]+$"
            },
            "I5_Index_ID": {
                "type": "string"
            },
            "index2": {
                "type": "string",
                "pattern": "^[ATCG]+$|^$"
            },
            "Sample_Plate": {
                "type": "string"
            },
            "Sample_Well": {
                "type": "string"
            },
            "Description": {
                "type": "string",
                "pattern": "^10[Xx]$|^$"
            }
        },
        "required": [
            "Sample_ID",
            "Sample_Name",
            "Sample_Project",
            "I7_Index_ID",
            "index"
        ]
    }
}