1{
2    "$id": "http://redfish.dmtf.org/schemas/v1/CoolingLoop.v1_0_3.json",
3    "$ref": "#/definitions/CoolingLoop",
4    "$schema": "http://redfish.dmtf.org/schemas/v1/redfish-schema-v1.json",
5    "copyright": "Copyright 2014-2024 DMTF. For the full DMTF copyright policy, see http://www.dmtf.org/about/policies/copyright",
6    "definitions": {
7        "Actions": {
8            "additionalProperties": false,
9            "description": "The available actions for this resource.",
10            "longDescription": "This type shall contain the available actions for this resource.",
11            "patternProperties": {
12                "^([a-zA-Z_][a-zA-Z0-9_]*)?@(odata|Redfish|Message)\\.[a-zA-Z_][a-zA-Z0-9_]*$": {
13                    "description": "This property shall specify a valid odata or Redfish property.",
14                    "type": [
15                        "array",
16                        "boolean",
17                        "integer",
18                        "number",
19                        "null",
20                        "object",
21                        "string"
22                    ]
23                }
24            },
25            "properties": {
26                "Oem": {
27                    "$ref": "#/definitions/OemActions",
28                    "description": "The available OEM-specific actions for this resource.",
29                    "longDescription": "This property shall contain the available OEM-specific actions for this resource."
30                }
31            },
32            "type": "object"
33        },
34        "Coolant": {
35            "additionalProperties": false,
36            "description": "This type describes coolant.",
37            "longDescription": "This type shall describe the coolant used with a device.",
38            "patternProperties": {
39                "^([a-zA-Z_][a-zA-Z0-9_]*)?@(odata|Redfish|Message)\\.[a-zA-Z_][a-zA-Z0-9_]*$": {
40                    "description": "This property shall specify a valid odata or Redfish property.",
41                    "type": [
42                        "array",
43                        "boolean",
44                        "integer",
45                        "number",
46                        "null",
47                        "object",
48                        "string"
49                    ]
50                }
51            },
52            "properties": {
53                "AdditiveName": {
54                    "description": "The name of the additive.",
55                    "longDescription": "This property shall contain the name of the additive contained in the coolant.",
56                    "readonly": false,
57                    "type": [
58                        "string",
59                        "null"
60                    ]
61                },
62                "AdditivePercent": {
63                    "description": "The percent additives contained in the coolant.",
64                    "longDescription": "This property shall contain the percent of additives, `0` to `100`, by volume, contained in the coolant mixture.",
65                    "maximum": 100,
66                    "minimum": 0,
67                    "readonly": false,
68                    "type": [
69                        "number",
70                        "null"
71                    ],
72                    "units": "%"
73                },
74                "CoolantType": {
75                    "anyOf": [
76                        {
77                            "$ref": "#/definitions/CoolantType"
78                        },
79                        {
80                            "type": "null"
81                        }
82                    ],
83                    "description": "The type of coolant.",
84                    "longDescription": "This property shall contain the type of coolant used by this resource.",
85                    "readonly": false
86                },
87                "DensityKgPerCubicMeter": {
88                    "description": "The density (kg/m^3) of the coolant.",
89                    "longDescription": "This property shall contain the density of the coolant, in kilograms per cubic meter units, as measured at room temperature (20-25 degrees C) and atmospheric pressure.",
90                    "readonly": false,
91                    "type": [
92                        "number",
93                        "null"
94                    ],
95                    "units": "kg/m3"
96                },
97                "RatedServiceHours": {
98                    "description": "The rated hours of service life for this coolant.",
99                    "longDescription": "This property shall contain the number of hours of service that the coolant is rated to provide before servicing or replacement is necessary.",
100                    "readonly": false,
101                    "type": [
102                        "number",
103                        "null"
104                    ]
105                },
106                "ServiceHours": {
107                    "description": "The hours of service this coolant has provided.",
108                    "longDescription": "This property shall contain the number of hours of service that the coolant has provided.",
109                    "readonly": false,
110                    "type": [
111                        "number",
112                        "null"
113                    ]
114                },
115                "ServicedDate": {
116                    "description": "The date the coolant was last serviced.",
117                    "format": "date-time",
118                    "longDescription": "This property shall contain the date the coolant was last serviced or tested for quality.",
119                    "readonly": false,
120                    "type": [
121                        "string",
122                        "null"
123                    ]
124                },
125                "SpecificHeatkJoulesPerKgK": {
126                    "description": "The specific heat capacity (kJ/(kg*K)) of the coolant.",
127                    "longDescription": "This property shall contain the specific heat capacity of the coolant, in kilojoules per kilogram per degree kelvin units, as measured at room temperature (20-25 degrees C) and atmospheric pressure.",
128                    "readonly": false,
129                    "type": [
130                        "number",
131                        "null"
132                    ],
133                    "units": "kJ/kg/K"
134                }
135            },
136            "type": "object"
137        },
138        "CoolantType": {
139            "enum": [
140                "Water",
141                "Hydrocarbon",
142                "Fluorocarbon",
143                "Dielectric"
144            ],
145            "enumDescriptions": {
146                "Dielectric": "Dielectric fluid.",
147                "Fluorocarbon": "Fluorocarbon-based.",
148                "Hydrocarbon": "Hydrocarbon-based.",
149                "Water": "Water or glycol mixture, including additives."
150            },
151            "type": "string"
152        },
153        "CoolingLoop": {
154            "additionalProperties": false,
155            "description": "The `CoolingLoop` schema describes a cooling loop.  A cooling loop might be any coolant-carrying vessel, such as facility-level pipework, an immersion cooling tank, or a manifold.  A loop might describe its connectors and instrumentation but does not generally include active cooling components or subsystems.",
156            "longDescription": "This resource shall represent a cooling loop for a Redfish implementation.",
157            "patternProperties": {
158                "^([a-zA-Z_][a-zA-Z0-9_]*)?@(odata|Redfish|Message)\\.[a-zA-Z_][a-zA-Z0-9_]*$": {
159                    "description": "This property shall specify a valid odata or Redfish property.",
160                    "type": [
161                        "array",
162                        "boolean",
163                        "integer",
164                        "number",
165                        "null",
166                        "object",
167                        "string"
168                    ]
169                }
170            },
171            "properties": {
172                "@odata.context": {
173                    "$ref": "http://redfish.dmtf.org/schemas/v1/odata-v4.json#/definitions/context"
174                },
175                "@odata.etag": {
176                    "$ref": "http://redfish.dmtf.org/schemas/v1/odata-v4.json#/definitions/etag"
177                },
178                "@odata.id": {
179                    "$ref": "http://redfish.dmtf.org/schemas/v1/odata-v4.json#/definitions/id"
180                },
181                "@odata.type": {
182                    "$ref": "http://redfish.dmtf.org/schemas/v1/odata-v4.json#/definitions/type"
183                },
184                "Actions": {
185                    "$ref": "#/definitions/Actions",
186                    "description": "The available actions for this resource.",
187                    "longDescription": "This property shall contain the available actions for this resource."
188                },
189                "ConsumingEquipmentNames": {
190                    "description": "An array of names of downstream devices that receive coolant from this cooling loop.",
191                    "items": {
192                        "type": [
193                            "string",
194                            "null"
195                        ]
196                    },
197                    "longDescription": "This property shall contain an array of user-assigned identifying strings that describe downstream devices that receive coolant from this cooling loop.",
198                    "readonly": false,
199                    "type": "array"
200                },
201                "Coolant": {
202                    "$ref": "#/definitions/Coolant",
203                    "description": "The coolant details for this cooling loop.",
204                    "longDescription": "This property shall contain the details about the coolant contained in this cooling loop."
205                },
206                "CoolantLevelPercent": {
207                    "anyOf": [
208                        {
209                            "$ref": "http://redfish.dmtf.org/schemas/v1/Sensor.json#/definitions/SensorExcerpt"
210                        },
211                        {
212                            "type": "null"
213                        }
214                    ],
215                    "description": "The coolant capacity filled (percent).",
216                    "excerptCopy": "SensorExcerpt",
217                    "longDescription": "This property shall contain the amount of coolant capacity, in percent units, filled in this cooling loop.  The value of the `DataSourceUri` property, if present, shall reference a resource of type `Sensor` with the `ReadingType` property containing the value `Percent`.  Services that support this property shall also return the `CoolantLevelStatus` property.",
218                    "readonly": true
219                },
220                "CoolantLevelStatus": {
221                    "anyOf": [
222                        {
223                            "$ref": "http://redfish.dmtf.org/schemas/v1/Resource.json#/definitions/Health"
224                        },
225                        {
226                            "type": "null"
227                        }
228                    ],
229                    "description": "The status of the coolant level in this cooling loop.",
230                    "longDescription": "This property shall indicate the status of the coolant level in this cooling loop.",
231                    "readonly": true
232                },
233                "CoolantQuality": {
234                    "anyOf": [
235                        {
236                            "$ref": "http://redfish.dmtf.org/schemas/v1/Resource.json#/definitions/Health"
237                        },
238                        {
239                            "type": "null"
240                        }
241                    ],
242                    "description": "The quality of the coolant.",
243                    "longDescription": "This property shall indicate the quality of the coolant contained in this cooling loop.",
244                    "readonly": true
245                },
246                "CoolingManagerURI": {
247                    "description": "The link to the application that manages the cooling loop.",
248                    "format": "uri-reference",
249                    "longDescription": "This property shall contain a URI to the application or device that provides administration or management of the cooling loop associated with this interface.",
250                    "readonly": false,
251                    "type": [
252                        "string",
253                        "null"
254                    ]
255                },
256                "Description": {
257                    "anyOf": [
258                        {
259                            "$ref": "http://redfish.dmtf.org/schemas/v1/Resource.json#/definitions/Description"
260                        },
261                        {
262                            "type": "null"
263                        }
264                    ],
265                    "readonly": true
266                },
267                "Id": {
268                    "$ref": "http://redfish.dmtf.org/schemas/v1/Resource.json#/definitions/Id",
269                    "readonly": true
270                },
271                "Links": {
272                    "$ref": "#/definitions/Links",
273                    "description": "The links to other resources that are related to this resource.",
274                    "longDescription": "This property shall contain links to resources that are related to but are not contained by, or subordinate to, this resource."
275                },
276                "LocationIndicatorActive": {
277                    "description": "An indicator allowing an operator to physically locate this resource.",
278                    "longDescription": "This property shall contain the state of the indicator used to physically identify or locate this resource.",
279                    "readonly": false,
280                    "type": [
281                        "boolean",
282                        "null"
283                    ]
284                },
285                "Name": {
286                    "$ref": "http://redfish.dmtf.org/schemas/v1/Resource.json#/definitions/Name",
287                    "readonly": true
288                },
289                "Oem": {
290                    "$ref": "http://redfish.dmtf.org/schemas/v1/Resource.json#/definitions/Oem",
291                    "description": "The OEM extension property.",
292                    "longDescription": "This property shall contain the OEM extensions.  All values for properties that this object contains shall conform to the Redfish Specification-described requirements."
293                },
294                "PrimaryCoolantConnectors": {
295                    "$ref": "http://redfish.dmtf.org/schemas/v1/CoolantConnectorCollection.json#/definitions/CoolantConnectorCollection",
296                    "description": "A link to the primary coolant connectors for this equipment.",
297                    "longDescription": "This property shall contain a link to a resource collection of type `CoolantConnectorCollection` that contains the primary coolant connectors for this equipment.",
298                    "readonly": true
299                },
300                "RatedFlowLitersPerMinute": {
301                    "description": "The rated liquid flow (L/min) for this cooling loop.",
302                    "longDescription": "This property shall contain the rated liquid flow, in liters per minute units, for this cooling loop.",
303                    "minimum": 0,
304                    "readonly": true,
305                    "type": [
306                        "number",
307                        "null"
308                    ],
309                    "units": "L/min"
310                },
311                "RatedPressurekPa": {
312                    "description": "The rated pressure (kPa) for this cooling loop.",
313                    "longDescription": "This property shall contain the rated maximum pressure, in kilopascal units, for this cooling loop.",
314                    "minimum": 0,
315                    "readonly": true,
316                    "type": [
317                        "number",
318                        "null"
319                    ],
320                    "units": "kPa"
321                },
322                "SecondaryCoolantConnectors": {
323                    "$ref": "http://redfish.dmtf.org/schemas/v1/CoolantConnectorCollection.json#/definitions/CoolantConnectorCollection",
324                    "description": "A link to the secondary coolant connectors for this equipment.",
325                    "longDescription": "This property shall contain a link to a resource collection of type `CoolantConnectorCollection` that contains the secondary coolant connectors for this equipment.",
326                    "readonly": true
327                },
328                "Status": {
329                    "$ref": "http://redfish.dmtf.org/schemas/v1/Resource.json#/definitions/Status",
330                    "description": "The status and health of the resource and its subordinate or dependent resources.",
331                    "longDescription": "This property shall contain any status or health properties of the resource."
332                },
333                "SupplyEquipmentNames": {
334                    "description": "An array of names of upstream devices that supply coolant to this cooling loop.",
335                    "items": {
336                        "type": [
337                            "string",
338                            "null"
339                        ]
340                    },
341                    "longDescription": "This property shall contain an array of user-assigned identifying strings that describe upstream devices that supply coolant to this cooling loop.",
342                    "readonly": false,
343                    "type": "array"
344                },
345                "UserLabel": {
346                    "description": "A user-assigned label.",
347                    "longDescription": "This property shall contain a user-assigned label used to identify this resource.  If a value has not been assigned by a user, the value of this property shall be an empty string.",
348                    "readonly": false,
349                    "type": "string"
350                }
351            },
352            "required": [
353                "@odata.id",
354                "@odata.type",
355                "Id",
356                "Name"
357            ],
358            "type": "object"
359        },
360        "Links": {
361            "additionalProperties": false,
362            "description": "The links to other resources that are related to this resource.",
363            "longDescription": "This Redfish Specification-described type shall contain links to resources that are related to but are not contained by, or subordinate to, this resource.",
364            "patternProperties": {
365                "^([a-zA-Z_][a-zA-Z0-9_]*)?@(odata|Redfish|Message)\\.[a-zA-Z_][a-zA-Z0-9_]*$": {
366                    "description": "This property shall specify a valid odata or Redfish property.",
367                    "type": [
368                        "array",
369                        "boolean",
370                        "integer",
371                        "number",
372                        "null",
373                        "object",
374                        "string"
375                    ]
376                }
377            },
378            "properties": {
379                "Chassis": {
380                    "anyOf": [
381                        {
382                            "$ref": "http://redfish.dmtf.org/schemas/v1/Chassis.json#/definitions/Chassis"
383                        },
384                        {
385                            "type": "null"
386                        }
387                    ],
388                    "description": "A link to the chassis that contains this equipment.",
389                    "longDescription": "This property shall contain a link to resources of type `Chassis` that represent the physical container that contains this resource.",
390                    "readonly": true
391                },
392                "Facility": {
393                    "$ref": "http://redfish.dmtf.org/schemas/v1/Facility.json#/definitions/Facility",
394                    "description": "A link to the facility that contains this equipment.",
395                    "longDescription": "This property shall contain a link to a resource of type `Facility` that represents the facility that contains this equipment.",
396                    "readonly": true
397                },
398                "ManagedBy": {
399                    "description": "An array of links to the managers responsible for managing this equipment.",
400                    "items": {
401                        "$ref": "http://redfish.dmtf.org/schemas/v1/Manager.json#/definitions/Manager"
402                    },
403                    "longDescription": "This property shall contain an array of links to resources of type `Manager` that represent the managers that manage this equipment.",
404                    "readonly": true,
405                    "type": "array"
406                },
407                "ManagedBy@odata.count": {
408                    "$ref": "http://redfish.dmtf.org/schemas/v1/odata-v4.json#/definitions/count"
409                },
410                "Oem": {
411                    "$ref": "http://redfish.dmtf.org/schemas/v1/Resource.json#/definitions/Oem",
412                    "description": "The OEM extension property.",
413                    "longDescription": "This property shall contain the OEM extensions.  All values for properties contained in this object shall conform to the Redfish Specification-described requirements."
414                }
415            },
416            "type": "object"
417        },
418        "OemActions": {
419            "additionalProperties": true,
420            "description": "The available OEM-specific actions for this resource.",
421            "longDescription": "This type shall contain the available OEM-specific actions for this resource.",
422            "patternProperties": {
423                "^([a-zA-Z_][a-zA-Z0-9_]*)?@(odata|Redfish|Message)\\.[a-zA-Z_][a-zA-Z0-9_]*$": {
424                    "description": "This property shall specify a valid odata or Redfish property.",
425                    "type": [
426                        "array",
427                        "boolean",
428                        "integer",
429                        "number",
430                        "null",
431                        "object",
432                        "string"
433                    ]
434                }
435            },
436            "properties": {},
437            "type": "object"
438        }
439    },
440    "language": "en",
441    "owningEntity": "DMTF",
442    "release": "2023.1",
443    "title": "#CoolingLoop.v1_0_3.CoolingLoop"
444}