{
  "$id":                    "https://schemas.mpai.community/TFA/V1.5/data/TextQualifier.json",
  "$schema":                "https://json-schema.org/draft/2020-12/schema",

  "title":                  "Text Qualifier V1.5",
  "description":            "Qualifier describing the structure, metadata, and linguistic properties of text data.", 
                            "type": "object", "required": [ "Header", "TextQualifierID", "SubType", "Format", "Trace" ], 
                            "additionalProperties": false, "properties": {

    "Header":               { "type": "string", "pattern": "^TFA-TXQ-V[0-9]{1,2}[.][0-9]{1,2}$" },

    "TextQualifierID":      { "type": "string" },

    "SubType":              { "type": "string" },

    "Format":               { "type": "object", "additionalProperties": false, "properties": {
        "ContentFormat":    { "type": "object", "additionalProperties": false, "properties": {

        "Static":           { "$ref": "https://schemas.mpai.community/TFA/V1.5/formats/TextStaticFormats.json" },

        "Dynamic":          { "$ref": "https://schemas.mpai.community/TFA/V1.5/formats/TextDynamicFormats.json" } } } } },

    "Attributes":           { "type": "object", "additionalProperties": false, "properties": {

      "ObjectIdentifier":   { "$ref": "https://schemas.mpai.community/OSD/V1.5/data/InstanceIdentifier.json" },

      "Language":           { "type": "object", "additionalProperties": false, "properties": {

        "LanguageCode":     { "type": "string" },

        "LanguageFormat":   { "$ref": "https://schemas.mpai.community/TFA/V1.5/formats/LanguageFormats.json" } } } } },

    "DataExchangeMetadata": { "$ref": "https://schemas.mpai.community/AIF/V3.0/data/DataExchangeMetadata.json" },
    "Trace":                { "$ref": "https://schemas.mpai.community/AIF/V3.0/data/Trace.json" },
    "DescrMetadata":        { "type": "string", "maxLength": 2048 } } }