165 lines
		
	
	
		
			4.5 KiB
		
	
	
	
		
			JSON
		
	
	
		
			Executable File
		
	
	
	
	
			
		
		
	
	
			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
 | |
|           }
 | |
|         }
 | |
|       }
 | |
|     }
 | |
|   }
 | |
| }
 |