﻿{ "$schema":                  "https://json-schema.org/draft/2020-12/schema",
  "$id":                      "https://schemas.mpai.community/PAF/V1.6/data/FaceDescriptorsObject.json",
  "title":                    "Face Descriptors Object V1.6", "type": "object", "additionalProperties": false, "unevaluatedProperties":    false, "required": [ "Header", "FaceDescriptorsID", "FaceDescriptorsData" ], "properties": {

    "Header":                 { "type": "string", "pattern": "^PAF-FDO-V[0-9]{1,2}[.][0-9]{1,2}$" },

    "MInstanceID":            { "type": "string" },

    "FaceDescriptorsID":      { "type": "string" },

    "FaceDescriptorsData":    { "type": "array", "minItems": 1, "items": { "oneOf": [

                                  { "type": "object", "additionalProperties": false, "required": [ "DataLength", "DataURI" ],
                                    "properties": {
                                      "DataLength": { "type": "integer", "minimum": 0 },
                                      "DataURI":    { "type": "string", "format": "uri" } } },

                                  { "type": "object", "additionalProperties": false, "required": [ "Data" ], "properties": {
                                      "Data": { "type": "string" } } },

                                  { "type": "object", "additionalProperties": false, "required": [ "DataID" ], "properties": {
                                      "DataID": { "type": "string" } } } ] } },

    "FaceDescriptorsQualifier": { "$ref": "https://schemas.mpai.community/TFA/V1.5/data/FaceDescriptorsQualifier.json" },

      "DescrMetadata":          { "type": "string", "maxLength": 2048 }
    }
}