{
    "format": "csv",
    "definitions": {},
    "$schema": "http://json-schema.org/draft-07/schema#",
    "$id": "http://example.com/product_version_schema.json",
    "type": "object",
    "title": "Product Version Schema",
    "required": [
        "prod_vers_no",
        "country_key",
        "client_key",
        "log_mod_stamp",
        "log_mod_user",
        "is_confidential",
        "omit_from_flor_updates",
        "mod_stamp",
        "mod_flag",
        "mod_user"
    ],
    "properties": {
        "prod_vers_no": {
            "$id": "#/properties/prod_vers_no",
            "type": "integer",
            "title": "Product Version Number"
        },
        "country_key": {
            "$id": "#/properties/country_key",
            "type": "string",
            "title": "Country Key",
            "pattern": "^[A-Z]{3}$"
        },
        "client_key": {
            "$id": "#/properties/client_key",
            "type": "string",
            "title": "Client Key",
            "pattern": "^[A-Z0-9]{4}$"
        },
        "loc_prod_title": {
            "$id": "#/properties/loc_prod_title",
            "type": "string",
            "title": "Local Product Title",
            "maxLength": 250
        },
        "loc_prod_match": {
            "$id": "#/properties/loc_prod_match",
            "type": "string",
            "title": "Local Product Match",
            "maxLength": 250
        },
        "log_mod_stamp": {
            "$id": "#/properties/log_mod_stamp",
            "type": "string",
            "title": "Log Modification Timestamp",
            "pattern": "^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}(\\.\\d+)?Z$",
            "description": "The timestamp when the record was last logged, in UTC."
        },
        "log_mod_user": {
            "$id": "#/properties/log_mod_user",
            "type": "string",
            "title": "Log Modification User",
            "pattern": "^[A-Z0-9]{8}$"
        },
        "loc_genre_key": {
            "$id": "#/properties/loc_genre_key",
            "type": "integer",
            "title": "Local Genre Key"
        },
        "financ_label_key": {
            "$id": "#/properties/financ_label_key",
            "type": "string",
            "title": "Financial Label Key",
            "pattern": "^[A-Z0-9]{4}$"
        },
        "strategic_rep_grp_key": {
            "$id": "#/properties/strategic_rep_grp_key",
            "type": "integer",
            "title": "Strategic Representative Group Key"
        },
        "label_key": {
            "$id": "#/properties/label_key",
            "type": "string",
            "title": "Label Key",
            "pattern": "^[A-Z0-9]{4}$"
        },
        "label_ext": {
            "$id": "#/properties/label_ext",
            "type": "string",
            "title": "Label Extension",
            "pattern": "^[A-Z0-9]{4}$"
        },
        "is_confidential": {
            "$id": "#/properties/is_confidential",
            "type": "string",
            "title": "Is Confidential",
            "enum": ["Y", "N"]
        },
        "omit_from_flor_updates": {
            "$id": "#/properties/omit_from_flor_updates",
            "type": "string",
            "title": "Omit from FLOR Updates",
            "enum": ["Y", "N"]
        },
        "effective_date_from": {
            "$id": "#/properties/effective_date_from",
            "type": "string",
            "title": "Effective Date From",
            "pattern": "^\\d{8}$",
            "description": "Date format YYYYMMDD"
        },
        "mod_stamp": {
            "$id": "#/properties/mod_stamp",
            "type": "string",
            "title": "Modification Timestamp",
            "pattern": "^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}(\\.\\d+)?Z$",
            "description": "The timestamp when the record was last modified, in UTC."
        },
        "mod_flag": {
            "$id": "#/properties/mod_flag",
            "type": "string",
            "title": "Modification Flag",
            "enum": ["I", "U", "D"],
            "description": "A flag indicating the type of modification. 'I' for Insert, 'U' for Update, and 'D' for Delete."
        },
        "mod_user": {
            "$id": "#/properties/mod_user",
            "type": "string",
            "title": "Modification User",
            "pattern": "^[A-Z0-9]{8}$"
        }
    }
}
