1{
2    "$id": "http://redfish.dmtf.org/schemas/v1/Fan.v1_5_2.json",
3    "$ref": "#/definitions/Fan",
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        "Fan": {
35            "additionalProperties": false,
36            "description": "The `Fan` schema describes a cooling fan unit for a computer system or similar devices contained within a chassis.  It also describes the location, such as a slot, socket, or bay, where a unit can be installed, by populating a resource instance with an absent state if a unit is not present.",
37            "longDescription": "This resource shall represent a cooling fan for a Redfish implementation.  It may also represent a location, such as a slot, socket, or bay, where a unit may be installed, but the `State` property within the `Status` property contains `Absent`.",
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                "@odata.context": {
54                    "$ref": "http://redfish.dmtf.org/schemas/v1/odata-v4.json#/definitions/context"
55                },
56                "@odata.etag": {
57                    "$ref": "http://redfish.dmtf.org/schemas/v1/odata-v4.json#/definitions/etag"
58                },
59                "@odata.id": {
60                    "$ref": "http://redfish.dmtf.org/schemas/v1/odata-v4.json#/definitions/id"
61                },
62                "@odata.type": {
63                    "$ref": "http://redfish.dmtf.org/schemas/v1/odata-v4.json#/definitions/type"
64                },
65                "Actions": {
66                    "$ref": "#/definitions/Actions",
67                    "description": "The available actions for this resource.",
68                    "longDescription": "This property shall contain the available actions for this resource."
69                },
70                "Assembly": {
71                    "$ref": "http://redfish.dmtf.org/schemas/v1/Assembly.json#/definitions/Assembly",
72                    "description": "The link to the assembly associated with this fan.",
73                    "longDescription": "This property shall contain a link to a resource of type `Assembly`.",
74                    "readonly": true
75                },
76                "Description": {
77                    "anyOf": [
78                        {
79                            "$ref": "http://redfish.dmtf.org/schemas/v1/Resource.json#/definitions/Description"
80                        },
81                        {
82                            "type": "null"
83                        }
84                    ],
85                    "readonly": true
86                },
87                "FanDiameterMm": {
88                    "description": "The diameter of the fan assembly in millimeter units.",
89                    "longDescription": "This property shall contain the diameter of the fan assembly in millimeter units.",
90                    "minimum": 0,
91                    "readonly": true,
92                    "type": [
93                        "integer",
94                        "null"
95                    ],
96                    "units": "mm",
97                    "versionAdded": "v1_4_0"
98                },
99                "HotPluggable": {
100                    "description": "An indication of whether this device can be inserted or removed while the equipment is in operation.",
101                    "longDescription": "This property shall indicate whether the device can be inserted or removed while the underlying equipment otherwise remains in its current operational state.  Hot-pluggable devices can become operable without altering the operational state of the underlying equipment.  Devices that cannot be inserted or removed from equipment in operation, or devices that cannot become operable without affecting the operational state of that equipment, shall not be hot-pluggable.",
102                    "readonly": true,
103                    "type": [
104                        "boolean",
105                        "null"
106                    ]
107                },
108                "Id": {
109                    "$ref": "http://redfish.dmtf.org/schemas/v1/Resource.json#/definitions/Id",
110                    "readonly": true
111                },
112                "Links": {
113                    "$ref": "#/definitions/Links",
114                    "description": "The links to other resources that are related to this resource.",
115                    "longDescription": "This property shall contain links to resources that are related to but are not contained by, or subordinate to, this resource.",
116                    "versionAdded": "v1_2_0"
117                },
118                "Location": {
119                    "$ref": "http://redfish.dmtf.org/schemas/v1/Resource.json#/definitions/Location",
120                    "description": "The location of the fan.",
121                    "longDescription": "This property shall contain the location information of this fan."
122                },
123                "LocationIndicatorActive": {
124                    "description": "An indicator allowing an operator to physically locate this resource.",
125                    "longDescription": "This property shall contain the state of the indicator used to physically identify or locate this resource.",
126                    "readonly": false,
127                    "type": [
128                        "boolean",
129                        "null"
130                    ]
131                },
132                "Manufacturer": {
133                    "description": "The manufacturer of this fan.",
134                    "longDescription": "This property shall contain the name of the organization responsible for producing the fan.  This organization may be the entity from whom the fan is purchased, but this is not necessarily true.",
135                    "readonly": true,
136                    "type": [
137                        "string",
138                        "null"
139                    ]
140                },
141                "Model": {
142                    "description": "The model number for this fan.",
143                    "longDescription": "This property shall contain the model information as defined by the manufacturer for this fan.",
144                    "readonly": true,
145                    "type": [
146                        "string",
147                        "null"
148                    ]
149                },
150                "Name": {
151                    "$ref": "http://redfish.dmtf.org/schemas/v1/Resource.json#/definitions/Name",
152                    "readonly": true
153                },
154                "Oem": {
155                    "$ref": "http://redfish.dmtf.org/schemas/v1/Resource.json#/definitions/Oem",
156                    "description": "The OEM extension property.",
157                    "longDescription": "This property shall contain the OEM extensions.  All values for properties that this object contains shall conform to the Redfish Specification-described requirements."
158                },
159                "PartNumber": {
160                    "description": "The part number for this fan.",
161                    "longDescription": "This property shall contain the part number as defined by the manufacturer for this fan.",
162                    "readonly": true,
163                    "type": [
164                        "string",
165                        "null"
166                    ]
167                },
168                "PhysicalContext": {
169                    "$ref": "http://redfish.dmtf.org/schemas/v1/PhysicalContext.json#/definitions/PhysicalContext",
170                    "description": "The area or device associated with this fan.",
171                    "longDescription": "This property shall contain a description of the affected device or region within the chassis with which this fan is associated.",
172                    "readonly": true
173                },
174                "PowerWatts": {
175                    "anyOf": [
176                        {
177                            "$ref": "http://redfish.dmtf.org/schemas/v1/Sensor.json#/definitions/SensorPowerExcerpt"
178                        },
179                        {
180                            "type": "null"
181                        }
182                    ],
183                    "description": "Power consumption (W).",
184                    "excerptCopy": "SensorPowerExcerpt",
185                    "longDescription": "This property shall contain the total power, in watt units, for this resource.  The value of the `DataSourceUri` property, if present, shall reference a resource of type `Sensor` with the `ReadingType` property containing the value `Power`.",
186                    "versionAdded": "v1_1_0"
187                },
188                "Replaceable": {
189                    "description": "An indication of whether this component can be independently replaced as allowed by the vendor's replacement policy.",
190                    "longDescription": "This property shall indicate whether this component can be independently replaced as allowed by the vendor's replacement policy.  A value of `false` indicates the component needs to be replaced by policy as part of another component.  If the `LocationType` property of this component contains `Embedded`, this property shall contain `false`.",
191                    "readonly": true,
192                    "type": [
193                        "boolean",
194                        "null"
195                    ],
196                    "versionAdded": "v1_3_0"
197                },
198                "SecondarySpeedPercent": {
199                    "anyOf": [
200                        {
201                            "$ref": "http://redfish.dmtf.org/schemas/v1/Sensor.json#/definitions/SensorFanExcerpt"
202                        },
203                        {
204                            "type": "null"
205                        }
206                    ],
207                    "description": "The fan speed (percent) of the second rotor in a multi-rotor fan.",
208                    "excerptCopy": "SensorFanExcerpt",
209                    "longDescription": "This property shall contain the fan speed, in percent units, for the secondary rotor of this resource.  The value of the `DataSourceUri` property, if present, shall reference a resource of type `Sensor` with the `ReadingType` property containing the value `Percent`.",
210                    "versionAdded": "v1_5_0"
211                },
212                "SerialNumber": {
213                    "description": "The serial number for this fan.",
214                    "longDescription": "This property shall contain the serial number as defined by the manufacturer for this fan.",
215                    "readonly": true,
216                    "type": [
217                        "string",
218                        "null"
219                    ]
220                },
221                "SparePartNumber": {
222                    "description": "The spare part number for this fan.",
223                    "longDescription": "This property shall contain the spare or replacement part number as defined by the manufacturer for this fan.",
224                    "readonly": true,
225                    "type": [
226                        "string",
227                        "null"
228                    ]
229                },
230                "SpeedPercent": {
231                    "anyOf": [
232                        {
233                            "$ref": "http://redfish.dmtf.org/schemas/v1/Sensor.json#/definitions/SensorFanExcerpt"
234                        },
235                        {
236                            "type": "null"
237                        }
238                    ],
239                    "description": "The fan speed (percent).",
240                    "excerptCopy": "SensorFanExcerpt",
241                    "longDescription": "This property shall contain the fan speed, in percent units, for this resource.  The value of the `DataSourceUri` property, if present, shall reference a resource of type `Sensor` with the `ReadingType` property containing the value `Percent`."
242                },
243                "Status": {
244                    "$ref": "http://redfish.dmtf.org/schemas/v1/Resource.json#/definitions/Status",
245                    "description": "The status and health of the resource and its subordinate or dependent resources.",
246                    "longDescription": "This property shall contain any status or health properties of the resource."
247                }
248            },
249            "required": [
250                "@odata.id",
251                "@odata.type",
252                "Id",
253                "Name"
254            ],
255            "type": "object"
256        },
257        "Links": {
258            "additionalProperties": false,
259            "description": "The links to other resources that are related to this resource.",
260            "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.",
261            "patternProperties": {
262                "^([a-zA-Z_][a-zA-Z0-9_]*)?@(odata|Redfish|Message)\\.[a-zA-Z_][a-zA-Z0-9_]*$": {
263                    "description": "This property shall specify a valid odata or Redfish property.",
264                    "type": [
265                        "array",
266                        "boolean",
267                        "integer",
268                        "number",
269                        "null",
270                        "object",
271                        "string"
272                    ]
273                }
274            },
275            "properties": {
276                "CoolingChassis": {
277                    "description": "An array of links to the chassis that are directly cooled by this fan.",
278                    "items": {
279                        "$ref": "http://redfish.dmtf.org/schemas/v1/Chassis.json#/definitions/Chassis"
280                    },
281                    "longDescription": "This property shall contain an array of links to resources of type `Chassis` that represent the chassis directly cooled by this fan.  This property shall not be present if the fan is only providing cooling to its containing chassis.",
282                    "readonly": true,
283                    "type": "array",
284                    "versionAdded": "v1_2_0"
285                },
286                "CoolingChassis@odata.count": {
287                    "$ref": "http://redfish.dmtf.org/schemas/v1/odata-v4.json#/definitions/count"
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 contained in this object shall conform to the Redfish Specification-described requirements."
293                }
294            },
295            "type": "object"
296        },
297        "OemActions": {
298            "additionalProperties": true,
299            "description": "The available OEM-specific actions for this resource.",
300            "longDescription": "This type shall contain the available OEM-specific actions for this resource.",
301            "patternProperties": {
302                "^([a-zA-Z_][a-zA-Z0-9_]*)?@(odata|Redfish|Message)\\.[a-zA-Z_][a-zA-Z0-9_]*$": {
303                    "description": "This property shall specify a valid odata or Redfish property.",
304                    "type": [
305                        "array",
306                        "boolean",
307                        "integer",
308                        "number",
309                        "null",
310                        "object",
311                        "string"
312                    ]
313                }
314            },
315            "properties": {},
316            "type": "object"
317        }
318    },
319    "language": "en",
320    "owningEntity": "DMTF",
321    "release": "2023.2",
322    "title": "#Fan.v1_5_2.Fan"
323}