160 lines
		
	
	
		
			4.3 KiB
		
	
	
	
		
			JSON
		
	
	
		
			Executable File
		
	
	
	
	
			
		
		
	
	
			160 lines
		
	
	
		
			4.3 KiB
		
	
	
	
		
			JSON
		
	
	
		
			Executable File
		
	
	
	
	
| {
 | |
|   "title": "JSON schema for insight_intent.json",
 | |
|   "$schema": "http://json-schema.org/draft-07/schema#",
 | |
|   "type": "object",
 | |
|   "additionalProperties": false,
 | |
|   "required": [
 | |
|     "insightIntents"
 | |
|   ],
 | |
|   "propertyNames": {
 | |
|     "enum": [
 | |
|       "insightIntents"
 | |
|     ]
 | |
|   },
 | |
|   "properties": {
 | |
|     "insightIntents": {
 | |
|       "description": "Indicates the configuration of insightIntents.",
 | |
|       "type": "array",
 | |
|       "minItems": 1,
 | |
|       "maxItems": 32,
 | |
|       "uniqueItems": true,
 | |
|       "items": {
 | |
|         "type": "object",
 | |
|         "propertyNames": {
 | |
|           "enum": [
 | |
|             "intentName",
 | |
|             "domain",
 | |
|             "intentVersion",
 | |
|             "srcEntry",
 | |
|             "uiAbility",
 | |
|             "serviceExtension",
 | |
|             "uiExtension",
 | |
|             "form"
 | |
|           ]
 | |
|         },
 | |
|         "required": [
 | |
|           "intentName",
 | |
|           "domain",
 | |
|           "intentVersion",
 | |
|           "srcEntry"
 | |
|         ],
 | |
|         "properties": {
 | |
|           "intentName": {
 | |
|             "description": "Indicates the name of insightIntent.It's also the intent interface to implement.",
 | |
|             "type": "string",
 | |
|             "pattern": "^[A-Z][a-zA-Z0-9]+$"
 | |
|           },
 | |
|           "domain": {
 | |
|             "description": "Indicates the domain of insightIntent.",
 | |
|             "type": "string"
 | |
|           },
 | |
|           "intentVersion": {
 | |
|             "description": "Indicates the version of insightIntent.",
 | |
|             "type": "string",
 | |
|             "pattern": "^(\\d+\\.){2}\\d+$"
 | |
|           },
 | |
|           "srcEntry": {
 | |
|             "description": "Indicates the js code path corresponding to the ability.",
 | |
|             "type": "string",
 | |
|             "maxLength": 127
 | |
|           },
 | |
|           "uiAbility": {
 | |
|             "type": "object",
 | |
|             "propertyNames": {
 | |
|               "enum": [
 | |
|                 "ability",
 | |
|                 "executeMode"
 | |
|               ]
 | |
|             },
 | |
|             "required": [
 | |
|               "ability",
 | |
|               "executeMode"
 | |
|             ],
 | |
|             "properties": {
 | |
|               "ability": {
 | |
|                 "description": "Indicates the name of the ability.",
 | |
|                 "type": "string",
 | |
|                 "pattern": "^[a-zA-Z][0-9a-zA-Z_.]+$",
 | |
|                 "maxLength": 127
 | |
|               },
 | |
|               "executeMode": {
 | |
|                 "type": "array",
 | |
|                 "items": {
 | |
|                     "type":"string",
 | |
|                     "enum": [
 | |
|                         "background",
 | |
|                         "foreground"
 | |
|                     ]
 | |
|                 }
 | |
|               }
 | |
|             }
 | |
|           },
 | |
|           "serviceExtension": {
 | |
|             "type": "object",
 | |
|             "propertyNames": {
 | |
|               "enum": [
 | |
|                 "ability"
 | |
|               ]
 | |
|             },
 | |
|             "required": [
 | |
|               "ability"
 | |
|             ],
 | |
|             "properties": {
 | |
|               "ability": {
 | |
|                 "description": "Indicates the name of the ability.",
 | |
|                 "type": "string",
 | |
|                 "pattern": "^[a-zA-Z][0-9a-zA-Z_.]+$",
 | |
|                 "maxLength": 127
 | |
|               }
 | |
|             }
 | |
|           },
 | |
|           "uiExtension": {
 | |
|             "type": "object",
 | |
|             "propertyNames": {
 | |
|               "enum": [
 | |
|                 "ability"
 | |
|               ]
 | |
|             },
 | |
|             "required": [
 | |
|               "ability"
 | |
|             ],
 | |
|             "properties": {
 | |
|               "ability": {
 | |
|                 "description": "Indicates the name of the ability.",
 | |
|                 "type": "string",
 | |
|                 "pattern": "^[a-zA-Z][0-9a-zA-Z_.]+$",
 | |
|                 "maxLength": 127
 | |
|               }
 | |
|             }
 | |
|           },
 | |
|           "form": {
 | |
|             "type": "object",
 | |
|             "propertyNames": {
 | |
|               "enum": [
 | |
|                 "ability",
 | |
|                 "formName"
 | |
|               ]
 | |
|             },
 | |
|             "required": [
 | |
|               "ability",
 | |
|               "formName"
 | |
|             ],
 | |
|             "properties": {
 | |
|               "ability": {
 | |
|                 "description": "Indicates the name of the ability.",
 | |
|                 "type": "string",
 | |
|                 "pattern": "^[a-zA-Z][0-9a-zA-Z_.]+$",
 | |
|                 "maxLength": 127
 | |
|               },
 | |
|               "formName": {
 | |
|                 "description": "Indicates the name of the form class. The tag value is a string of up to 127 bytes. The tag cannot be default.",
 | |
|                 "type": "string",
 | |
|                 "maxLength": 127
 | |
|               }
 | |
|             }
 | |
|           }
 | |
|         }
 | |
|       }
 | |
|     }
 | |
|   }
 | |
| } |