161847f8eSopenharmony_ci{
261847f8eSopenharmony_ci  "title": "JSON schema for syscap.json",
361847f8eSopenharmony_ci  "$schema": "http://json-schema.org/draft-07/schema#",
461847f8eSopenharmony_ci  "type": "object",
561847f8eSopenharmony_ci  "additionalProperties": true,
661847f8eSopenharmony_ci  "required": [
761847f8eSopenharmony_ci    "devices"
861847f8eSopenharmony_ci  ],
961847f8eSopenharmony_ci  "propertyNames": {
1061847f8eSopenharmony_ci    "enum": [
1161847f8eSopenharmony_ci      "devices",
1261847f8eSopenharmony_ci      "development",
1361847f8eSopenharmony_ci      "production"
1461847f8eSopenharmony_ci    ]
1561847f8eSopenharmony_ci  },
1661847f8eSopenharmony_ci  "properties": {
1761847f8eSopenharmony_ci    "devices": {
1861847f8eSopenharmony_ci      "description": "Basic system capability",
1961847f8eSopenharmony_ci      "type": "object",
2061847f8eSopenharmony_ci      "propertyNames": {
2161847f8eSopenharmony_ci        "enum": [
2261847f8eSopenharmony_ci          "general",
2361847f8eSopenharmony_ci          "custom"
2461847f8eSopenharmony_ci        ]
2561847f8eSopenharmony_ci      },
2661847f8eSopenharmony_ci      "properties": {
2761847f8eSopenharmony_ci        "general": {
2861847f8eSopenharmony_ci          "description": "core equipment",
2961847f8eSopenharmony_ci          "type": "array",
3061847f8eSopenharmony_ci          "items": {
3161847f8eSopenharmony_ci            "type": "string",
3261847f8eSopenharmony_ci            "enum": [
3361847f8eSopenharmony_ci              "default",
3461847f8eSopenharmony_ci              "tv",
3561847f8eSopenharmony_ci              "tablet",
3661847f8eSopenharmony_ci              "wearable",
3761847f8eSopenharmony_ci              "liteWearable",
3861847f8eSopenharmony_ci              "car",
3961847f8eSopenharmony_ci              "smartVision",
4061847f8eSopenharmony_ci              "router"
4161847f8eSopenharmony_ci            ]
4261847f8eSopenharmony_ci          }
4361847f8eSopenharmony_ci        },
4461847f8eSopenharmony_ci        "custom": {
4561847f8eSopenharmony_ci          "description": "N equipment",
4661847f8eSopenharmony_ci          "type":"array",
4761847f8eSopenharmony_ci          "items": {
4861847f8eSopenharmony_ci            "maxProperties": 1,
4961847f8eSopenharmony_ci            "minProperties": 1,
5061847f8eSopenharmony_ci            "type": "object",
5161847f8eSopenharmony_ci            "patternProperties": {
5261847f8eSopenharmony_ci              ".+": {
5361847f8eSopenharmony_ci                "type": "array",
5461847f8eSopenharmony_ci                "items": {
5561847f8eSopenharmony_ci                  "type": "string",
5661847f8eSopenharmony_ci                  "pattern": "^SystemCapability(?:\\.[a-zA-Z0-9]+)+$"
5761847f8eSopenharmony_ci                }
5861847f8eSopenharmony_ci              }
5961847f8eSopenharmony_ci            }
6061847f8eSopenharmony_ci          }
6161847f8eSopenharmony_ci        }
6261847f8eSopenharmony_ci      }
6361847f8eSopenharmony_ci    },
6461847f8eSopenharmony_ci    "development": {
6561847f8eSopenharmony_ci      "description": "extra system capability",
6661847f8eSopenharmony_ci      "type": "object",
6761847f8eSopenharmony_ci      "propertyNames": {
6861847f8eSopenharmony_ci        "enum": [
6961847f8eSopenharmony_ci          "addedSysCaps"
7061847f8eSopenharmony_ci        ]
7161847f8eSopenharmony_ci      },
7261847f8eSopenharmony_ci      "properties": {
7361847f8eSopenharmony_ci        "addedSysCaps": {
7461847f8eSopenharmony_ci          "type": "array",
7561847f8eSopenharmony_ci          "items": {
7661847f8eSopenharmony_ci            "type": "string",
7761847f8eSopenharmony_ci            "pattern": "^SystemCapability(?:\\.[a-zA-Z0-9]+)+$"
7861847f8eSopenharmony_ci          }
7961847f8eSopenharmony_ci        }
8061847f8eSopenharmony_ci      }
8161847f8eSopenharmony_ci    },
8261847f8eSopenharmony_ci    "production": {
8361847f8eSopenharmony_ci      "description": "generate RCPID",
8461847f8eSopenharmony_ci      "type": "object",
8561847f8eSopenharmony_ci      "propertyNames": {
8661847f8eSopenharmony_ci        "enum": [
8761847f8eSopenharmony_ci          "addedSysCaps",
8861847f8eSopenharmony_ci          "removedSysCaps"
8961847f8eSopenharmony_ci        ]
9061847f8eSopenharmony_ci      },
9161847f8eSopenharmony_ci      "properties": {
9261847f8eSopenharmony_ci        "addedSysCaps": {
9361847f8eSopenharmony_ci          "type": "array",
9461847f8eSopenharmony_ci          "items": {
9561847f8eSopenharmony_ci            "type": "string",
9661847f8eSopenharmony_ci            "pattern": "^SystemCapability(?:\\.[a-zA-Z0-9]+)+$"
9761847f8eSopenharmony_ci          }
9861847f8eSopenharmony_ci        },
9961847f8eSopenharmony_ci        "removedSysCaps": {
10061847f8eSopenharmony_ci          "type": "array",
10161847f8eSopenharmony_ci          "items": {
10261847f8eSopenharmony_ci            "type": "string",
10361847f8eSopenharmony_ci            "pattern": "^SystemCapability(?:\\.[a-zA-Z0-9]+)+$"
10461847f8eSopenharmony_ci          }
10561847f8eSopenharmony_ci        }
10661847f8eSopenharmony_ci      }
10761847f8eSopenharmony_ci    }
10861847f8eSopenharmony_ci  }
10961847f8eSopenharmony_ci}