[DCAEGEN2] Release dcaegen2-services-kpi-computation-ms container
[dcaegen2/services.git] / components / pm-subscription-handler / pmsh_service / mod / sub_schema.json
1 {
2    "type":"object",
3    "properties":{
4       "subscriptionName":{
5          "type":"string"
6       },
7       "administrativeState":{
8          "allOf":[
9             {
10                "type":"string"
11             },
12             {
13                "enum":[
14                   "UNLOCKED",
15                   "LOCKED"
16                ]
17             }
18          ]
19       },
20       "fileBasedGP":{
21          "type":"integer"
22       },
23       "fileLocation":{
24          "type":"string"
25       },
26       "nfFilter":{
27          "type":"object",
28          "properties":{
29             "nfNames":{
30                "type":"array",
31                "items":{
32                   "type":"string"
33                }
34             },
35             "modelInvariantIDs":{
36                "type":"array",
37                "items":{
38                   "type":"string"
39                }
40             },
41             "modelVersionIDs":{
42                "type":"array",
43                "items":{
44                   "type":"string"
45                }
46             },
47             "modelNames":{
48                "type":"array",
49                "items":{
50                   "type":"string"
51                }
52             }
53          },
54          "additionalProperties": false,
55          "anyOf": [
56             {"required" :  ["nfNames"]},
57             {"required" :  ["modelInvariantIDs"]},
58             {"required" :  ["modelVersionIDs"]},
59             {"required" :  ["modelNames"]}
60          ]
61       },
62       "measurementGroups":{
63          "type":"array",
64          "minItems": 1,
65          "items":{
66             "type":"object",
67             "properties":{
68                "measurementGroup":{
69                   "type":"object",
70                   "properties":{
71                      "measurementTypes":{
72                         "type":"array",
73                         "minItems": 1,
74                         "items":{
75                            "type":"object",
76                            "properties":{
77                               "measurementType":{
78                                  "type":"string"
79                               }
80                            },
81                            "required":[
82                               "measurementType"
83                            ]
84                         }
85                      },
86                      "managedObjectDNsBasic":{
87                         "type":"array",
88                         "minItems": 1,
89                         "items":{
90                            "type":"object",
91                            "properties":{
92                               "DN":{
93                                  "type":"string"
94                               }
95                            },
96                            "required":[
97                               "DN"
98                            ]
99                         }
100                      }
101                   },
102                   "required":[
103                      "measurementTypes",
104                      "managedObjectDNsBasic"
105                   ]
106                }
107             },
108             "required":[
109                "measurementGroup"
110             ]
111          }
112       }
113    },
114    "required":[
115       "subscriptionName",
116       "administrativeState",
117       "fileBasedGP",
118       "fileLocation",
119       "nfFilter",
120       "measurementGroups"
121    ]
122
123 }