script/shell/modulecheck/customUtds.json
2025-01-21 11:30:03 +08:00

165 lines
4.5 KiB
JSON
Executable File

{
"title": "JSON schema for utd.json5",
"$schema": "http://json-schema.org/draft-07/schema#",
"type": "object",
"additionalProperties": false,
"required": [
],
"propertyNames": {
"enum": [
"UniformDataTypeDeclarations",
"ReferenceUniformDataTypeDeclarations"
]
},
"properties": {
"UniformDataTypeDeclarations": {
"description": "Indicates the configuration of UniformDataTypeDeclarations.",
"type": "array",
"minItems": 1,
"maxItems": 32,
"uniqueItems": true,
"items": {
"type": "object",
"propertyNames": {
"enum": [
"TypeId",
"BelongingToTypes",
"FilenameExtensions",
"MIMETypes",
"Description",
"ReferenceURL"
]
},
"required": [
"TypeId",
"BelongingToTypes",
"Description"
],
"properties": {
"TypeId": {
"description": "Indicates the name of utd type.",
"type": "string",
"pattern": "[a-zA-Z0-9/.-]+$",
"maxLength": 127
},
"BelongingToTypes": {
"description": "Indicates the utd type that this type depends on.",
"type": "array",
"uniqueItems": true,
"items": {
"type": "string",
"maxLength": 127,
"minLength": 1
}
},
"FilenameExtensions": {
"description": "Indicates the file name extensions of utd type.",
"type": "array",
"uniqueItems": false,
"items": {
"type": "string",
"pattern": "^[/.].*",
"maxLength": 127
}
},
"MIMETypes": {
"description": "Indicates the mime types of utd type.",
"type": "array",
"uniqueItems": false,
"items": {
"type": "string",
"maxLength": 127,
"minLength": 1
}
},
"Description": {
"description": "Indicates the description of utd type.",
"type": "string",
"maxLength": 255,
"minLength": 1
},
"ReferenceURL": {
"description": "Indicates the referenceURL of utd type.",
"type": "string",
"maxLength": 255
}
}
}
},
"ReferenceUniformDataTypeDeclarations": {
"description": "Indicates the configuration of ReferenceUniformDataTypeDeclarations.",
"type": "array",
"minItems": 1,
"maxItems": 32,
"uniqueItems": true,
"items": {
"type": "object",
"propertyNames": {
"enum": [
"TypeId",
"BelongingToTypes",
"FilenameExtensions",
"MIMETypes",
"Description",
"ReferenceURL"
]
},
"required": [
"TypeId",
"BelongingToTypes",
"Description"
],
"properties": {
"TypeId": {
"description": "Indicates the name of utd type.",
"type": "string",
"pattern": "[a-zA-Z0-9/.-]+$",
"maxLength": 127
},
"BelongingToTypes": {
"description": "Indicates the utd type that this type depends on.",
"type": "array",
"uniqueItems": true,
"items": {
"type": "string",
"maxLength": 127,
"minLength": 1
}
},
"FilenameExtensions": {
"description": "Indicates the file name extensions of utd type.",
"type": "array",
"uniqueItems": false,
"items": {
"type": "string",
"pattern": "^[/.].*",
"maxLength": 127
}
},
"MIMETypes": {
"description": "Indicates the mime types of utd type.",
"type": "array",
"uniqueItems": false,
"items": {
"type": "string",
"maxLength": 127,
"minLength": 1
}
},
"Description": {
"description": "Indicates the description of utd type.",
"type": "string",
"maxLength": 255,
"minLength": 1
},
"ReferenceURL": {
"description": "Indicates the referenceURL of utd type.",
"type": "string",
"maxLength": 255
}
}
}
}
}
}