/
schema.json
169 lines (169 loc) · 8.81 KB
/
schema.json
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
{
"$schema": "http://json-schema.org/schema#",
"modelTags": "FIWARE4WATER",
"$schemaVersion": "0.0.1",
"$id": "https://smart-data-models.github.io/dataModel.WaterDistributionManagementEPANET/Pump/schema.json",
"title": "Smart Data Models. WaterNetworkManagementEPANET - Pump",
"description": "This entity contains a harmonised description of a generic pump made for the Water Network Management domain. This entity is primarily associated with the water management vertical and related IoT applications.",
"type": "object",
"allOf": [
{
"$ref": "https://smart-data-models.github.io/data-models/common-schema.json#/definitions/GSMA-Commons"
},
{
"$ref": "https://smart-data-models.github.io/data-models/common-schema.json#/definitions/Location-Commons"
},
{
"properties": {
"type": {
"type": "string",
"enum": [
"Pump"
],
"description": "Property. NGSI-LD Entity Type. It must be equal to Pump"
},
"tag": {
"$ref": "https://raw.githubusercontent.com/smart-data-models/dataModel.WaterDistributionManagementEPANET/master/WaterNetworkManagement-schema.json#/definitions/tag"
},
"status": {
"$ref": "https://raw.githubusercontent.com/smart-data-models/dataModel.WaterDistributionManagementEPANET/master/WaterNetworkManagement-schema.json#/definitions/status"
},
"initialStatus": {
"$ref": "https://raw.githubusercontent.com/smart-data-models/dataModel.WaterDistributionManagementEPANET/master/WaterNetworkManagement-schema.json#/definitions/initialStatus"
},
"power": {
"type": "number",
"description": "Property. Model:'https://schema.org/Number'. Units:'KiloWatt'. The power supplied by the pump. All units are accepted in [CEFACT](https://www.unece.org/cefact.html) code"
},
"speed": {
"type": "number",
"description": "Property. Model:'https://schema.org/Number'. Units:'Metre per Second'. The relative speed setting of the Pump. All units are accepted in [CEFACT](https://www.unece.org/cefact.html) code"
},
"startsAt": {
"anyOf": [
{
"type": "string",
"minLength": 1,
"maxLength": 256,
"pattern": "^[\\w\\-\\.\\{\\}\\$\\+\\*\\[\\]`|~^@!,:\\\\]+$",
"description": "Property. Identifier format of any NGSI entity"
},
{
"type": "string",
"format": "uri",
"description": "Property. Identifier format of any NGSI entity"
}
],
"description": "Relationship. The ID of the node on the suction side of the pump"
},
"endsAt": {
"anyOf": [
{
"type": "string",
"minLength": 1,
"maxLength": 256,
"pattern": "^[\\w\\-\\.\\{\\}\\$\\+\\*\\[\\]`|~^@!,:\\\\]+$",
"description": "Property. Identifier format of any NGSI entity"
},
{
"type": "string",
"format": "uri",
"description": "Property. Identifier format of any NGSI entity"
}
],
"description": "Relationship. The ID of the node on the discharge side of the pump"
},
"vertices": {
"description": "Geoproperty. Coordinates of all vertices in the pump, ordered from the startsAt node to the endsAt node and encoded as a GeoJSON ",
"oneOf": [
{
"$ref": "https://geojson.org/schema/MultiPoint.json"
},
{
"$ref": "https://geojson.org/schema/Point.json"
}
]
},
"headCurve": {
"type": "string",
"format": "uri",
"description": "Relationship. The ID label of the pump curve used to describe the relationship between the head delivered by the pump and the flow through the Pump"
},
"pumpPattern": {
"anyOf": [
{
"type": "string",
"minLength": 1,
"maxLength": 256,
"pattern": "^[\\w\\-\\.\\{\\}\\$\\+\\*\\[\\]`|~^@!,:\\\\]+$",
"description": "Property. Identifier format of any NGSI entity"
},
{
"type": "string",
"format": "uri",
"description": "Property. Identifier format of any NGSI entity"
}
],
"description": "Relationship. The ID label of a time pattern used to control the pump's operation. The multipliers of the pattern are equivalent to speed settings. A multiplier of zero implies that the pump will be shut off during the corresponding time period"
},
"efficCurve": {
"anyOf": [
{
"type": "string",
"minLength": 1,
"maxLength": 256,
"pattern": "^[\\w\\-\\.\\{\\}\\$\\+\\*\\[\\]`|~^@!,:\\\\]+$",
"description": "Property. Identifier format of any NGSI entity"
},
{
"type": "string",
"format": "uri",
"description": "Property. Identifier format of any NGSI entity"
}
],
"description": "Relationship. The ID label of the curve that represents the pump's wire-to-water efficiency as a function of flow rate"
},
"energyPrice": {
"type": "number",
"description": "Property. Units:'No unit'. The average or nominal price of energy in monetary units. All units are accepted in [CEFACT](https://www.unece.org/cefact.html) code"
},
"energyPattern": {
"anyOf": [
{
"type": "string",
"minLength": 1,
"maxLength": 256,
"pattern": "^[\\w\\-\\.\\{\\}\\$\\+\\*\\[\\]`|~^@!,:\\\\]+$",
"description": "Property. Identifier format of any NGSI entity"
},
{
"type": "string",
"format": "uri",
"description": "Property. Identifier format of any NGSI entity"
}
],
"description": "Relationship. The ID label of the time pattern used to describe the variation in energy price throughout the day"
},
"flow": {
"$ref": "https://raw.githubusercontent.com/smart-data-models/dataModel.WaterDistributionManagementEPANET/master/WaterNetworkManagement-schema.json#/definitions/flow"
},
"velocity": {
"$ref": "https://raw.githubusercontent.com/smart-data-models/dataModel.WaterDistributionManagementEPANET/master/WaterNetworkManagement-schema.json#/definitions/velocity"
},
"quality": {
"$ref": "https://raw.githubusercontent.com/smart-data-models/dataModel.WaterDistributionManagementEPANET/master/WaterNetworkManagement-schema.json#/definitions/quality"
},
"energyUse": {
"$ref": "https://raw.githubusercontent.com/smart-data-models/dataModel.WaterDistributionManagementEPANET/master/WaterNetworkManagement-schema.json#/definitions/energyUse"
}
}
}
],
"required": [
"id",
"type",
"initialStatus",
"startsAt",
"endsAt"
]
}