xref: /openbmc/bmcweb/features/redfish/schema/dmtf/json-schema/Sensor.v1_11_0.json (revision c6d7a45d427f9a6d9e761afcf305761dca60d7cf)
1*c6d7a45dSGunnar Mills{
2*c6d7a45dSGunnar Mills    "$id": "http://redfish.dmtf.org/schemas/v1/Sensor.v1_11_0.json",
3*c6d7a45dSGunnar Mills    "$ref": "#/definitions/Sensor",
4*c6d7a45dSGunnar Mills    "$schema": "http://redfish.dmtf.org/schemas/v1/redfish-schema-v1.json",
5*c6d7a45dSGunnar Mills    "copyright": "Copyright 2014-2025 DMTF. For the full DMTF copyright policy, see http://www.dmtf.org/about/policies/copyright",
6*c6d7a45dSGunnar Mills    "definitions": {
7*c6d7a45dSGunnar Mills        "Actions": {
8*c6d7a45dSGunnar Mills            "additionalProperties": false,
9*c6d7a45dSGunnar Mills            "description": "The available actions for this resource.",
10*c6d7a45dSGunnar Mills            "longDescription": "This type shall contain the available actions for this resource.",
11*c6d7a45dSGunnar Mills            "patternProperties": {
12*c6d7a45dSGunnar Mills                "^([a-zA-Z_][a-zA-Z0-9_]*)?@(odata|Redfish|Message)\\.[a-zA-Z_][a-zA-Z0-9_]*$": {
13*c6d7a45dSGunnar Mills                    "description": "This property shall specify a valid odata or Redfish property.",
14*c6d7a45dSGunnar Mills                    "type": [
15*c6d7a45dSGunnar Mills                        "array",
16*c6d7a45dSGunnar Mills                        "boolean",
17*c6d7a45dSGunnar Mills                        "integer",
18*c6d7a45dSGunnar Mills                        "number",
19*c6d7a45dSGunnar Mills                        "null",
20*c6d7a45dSGunnar Mills                        "object",
21*c6d7a45dSGunnar Mills                        "string"
22*c6d7a45dSGunnar Mills                    ]
23*c6d7a45dSGunnar Mills                }
24*c6d7a45dSGunnar Mills            },
25*c6d7a45dSGunnar Mills            "properties": {
26*c6d7a45dSGunnar Mills                "#Sensor.ResetMetrics": {
27*c6d7a45dSGunnar Mills                    "$ref": "#/definitions/ResetMetrics"
28*c6d7a45dSGunnar Mills                },
29*c6d7a45dSGunnar Mills                "#Sensor.ResetToDefaults": {
30*c6d7a45dSGunnar Mills                    "$ref": "#/definitions/ResetToDefaults"
31*c6d7a45dSGunnar Mills                },
32*c6d7a45dSGunnar Mills                "Oem": {
33*c6d7a45dSGunnar Mills                    "$ref": "#/definitions/OemActions",
34*c6d7a45dSGunnar Mills                    "description": "The available OEM-specific actions for this resource.",
35*c6d7a45dSGunnar Mills                    "longDescription": "This property shall contain the available OEM-specific actions for this resource."
36*c6d7a45dSGunnar Mills                }
37*c6d7a45dSGunnar Mills            },
38*c6d7a45dSGunnar Mills            "type": "object"
39*c6d7a45dSGunnar Mills        },
40*c6d7a45dSGunnar Mills        "ImplementationType": {
41*c6d7a45dSGunnar Mills            "enum": [
42*c6d7a45dSGunnar Mills                "PhysicalSensor",
43*c6d7a45dSGunnar Mills                "Synthesized",
44*c6d7a45dSGunnar Mills                "Reported"
45*c6d7a45dSGunnar Mills            ],
46*c6d7a45dSGunnar Mills            "enumDescriptions": {
47*c6d7a45dSGunnar Mills                "PhysicalSensor": "The reading is acquired from a physical sensor.",
48*c6d7a45dSGunnar Mills                "Reported": "The reading is obtained from software or a device.",
49*c6d7a45dSGunnar Mills                "Synthesized": "The reading is obtained by applying a calculation on one or more properties or multiple sensors.  The calculation is not provided."
50*c6d7a45dSGunnar Mills            },
51*c6d7a45dSGunnar Mills            "type": "string"
52*c6d7a45dSGunnar Mills        },
53*c6d7a45dSGunnar Mills        "Links": {
54*c6d7a45dSGunnar Mills            "additionalProperties": false,
55*c6d7a45dSGunnar Mills            "description": "The links to other resources that are related to this resource.",
56*c6d7a45dSGunnar Mills            "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.",
57*c6d7a45dSGunnar Mills            "patternProperties": {
58*c6d7a45dSGunnar Mills                "^([a-zA-Z_][a-zA-Z0-9_]*)?@(odata|Redfish|Message)\\.[a-zA-Z_][a-zA-Z0-9_]*$": {
59*c6d7a45dSGunnar Mills                    "description": "This property shall specify a valid odata or Redfish property.",
60*c6d7a45dSGunnar Mills                    "type": [
61*c6d7a45dSGunnar Mills                        "array",
62*c6d7a45dSGunnar Mills                        "boolean",
63*c6d7a45dSGunnar Mills                        "integer",
64*c6d7a45dSGunnar Mills                        "number",
65*c6d7a45dSGunnar Mills                        "null",
66*c6d7a45dSGunnar Mills                        "object",
67*c6d7a45dSGunnar Mills                        "string"
68*c6d7a45dSGunnar Mills                    ]
69*c6d7a45dSGunnar Mills                }
70*c6d7a45dSGunnar Mills            },
71*c6d7a45dSGunnar Mills            "properties": {
72*c6d7a45dSGunnar Mills                "AssociatedControls": {
73*c6d7a45dSGunnar Mills                    "description": "An array of links to the controls that can affect this sensor.",
74*c6d7a45dSGunnar Mills                    "items": {
75*c6d7a45dSGunnar Mills                        "$ref": "http://redfish.dmtf.org/schemas/v1/Control.json#/definitions/Control"
76*c6d7a45dSGunnar Mills                    },
77*c6d7a45dSGunnar Mills                    "longDescription": "This property shall contain an array of links to resources of type `Control` that represent the controls that can affect this sensor.",
78*c6d7a45dSGunnar Mills                    "readonly": true,
79*c6d7a45dSGunnar Mills                    "type": "array",
80*c6d7a45dSGunnar Mills                    "versionAdded": "v1_4_0"
81*c6d7a45dSGunnar Mills                },
82*c6d7a45dSGunnar Mills                "AssociatedControls@odata.count": {
83*c6d7a45dSGunnar Mills                    "$ref": "http://redfish.dmtf.org/schemas/v1/odata-v4.json#/definitions/count"
84*c6d7a45dSGunnar Mills                },
85*c6d7a45dSGunnar Mills                "Oem": {
86*c6d7a45dSGunnar Mills                    "$ref": "http://redfish.dmtf.org/schemas/v1/Resource.json#/definitions/Oem",
87*c6d7a45dSGunnar Mills                    "description": "The OEM extension property.",
88*c6d7a45dSGunnar Mills                    "longDescription": "This property shall contain the OEM extensions.  All values for properties contained in this object shall conform to the Redfish Specification-described requirements."
89*c6d7a45dSGunnar Mills                }
90*c6d7a45dSGunnar Mills            },
91*c6d7a45dSGunnar Mills            "type": "object"
92*c6d7a45dSGunnar Mills        },
93*c6d7a45dSGunnar Mills        "OemActions": {
94*c6d7a45dSGunnar Mills            "additionalProperties": true,
95*c6d7a45dSGunnar Mills            "description": "The available OEM-specific actions for this resource.",
96*c6d7a45dSGunnar Mills            "longDescription": "This type shall contain the available OEM-specific actions for this resource.",
97*c6d7a45dSGunnar Mills            "patternProperties": {
98*c6d7a45dSGunnar Mills                "^([a-zA-Z_][a-zA-Z0-9_]*)?@(odata|Redfish|Message)\\.[a-zA-Z_][a-zA-Z0-9_]*$": {
99*c6d7a45dSGunnar Mills                    "description": "This property shall specify a valid odata or Redfish property.",
100*c6d7a45dSGunnar Mills                    "type": [
101*c6d7a45dSGunnar Mills                        "array",
102*c6d7a45dSGunnar Mills                        "boolean",
103*c6d7a45dSGunnar Mills                        "integer",
104*c6d7a45dSGunnar Mills                        "number",
105*c6d7a45dSGunnar Mills                        "null",
106*c6d7a45dSGunnar Mills                        "object",
107*c6d7a45dSGunnar Mills                        "string"
108*c6d7a45dSGunnar Mills                    ]
109*c6d7a45dSGunnar Mills                }
110*c6d7a45dSGunnar Mills            },
111*c6d7a45dSGunnar Mills            "properties": {},
112*c6d7a45dSGunnar Mills            "type": "object"
113*c6d7a45dSGunnar Mills        },
114*c6d7a45dSGunnar Mills        "ReadingBasisType": {
115*c6d7a45dSGunnar Mills            "enum": [
116*c6d7a45dSGunnar Mills                "Zero",
117*c6d7a45dSGunnar Mills                "Delta",
118*c6d7a45dSGunnar Mills                "Headroom"
119*c6d7a45dSGunnar Mills            ],
120*c6d7a45dSGunnar Mills            "enumDescriptions": {
121*c6d7a45dSGunnar Mills                "Delta": "A reading that reports the difference between two measurements.",
122*c6d7a45dSGunnar Mills                "Headroom": "A reading that decreases as it approaches a defined reference point.",
123*c6d7a45dSGunnar Mills                "Zero": "A zero-based reading."
124*c6d7a45dSGunnar Mills            },
125*c6d7a45dSGunnar Mills            "enumLongDescriptions": {
126*c6d7a45dSGunnar Mills                "Delta": "This value shall indicate a reading that reports the difference between two measurements.",
127*c6d7a45dSGunnar Mills                "Headroom": "This value shall indicate a reading that decreases in value as it approaches the reference point.  If the value crosses the reference point, the value may be reported as a negative number or may report a value of zero.",
128*c6d7a45dSGunnar Mills                "Zero": "This value shall indicate a reading with zero as its reference point."
129*c6d7a45dSGunnar Mills            },
130*c6d7a45dSGunnar Mills            "type": "string"
131*c6d7a45dSGunnar Mills        },
132*c6d7a45dSGunnar Mills        "ReadingType": {
133*c6d7a45dSGunnar Mills            "enum": [
134*c6d7a45dSGunnar Mills                "Temperature",
135*c6d7a45dSGunnar Mills                "Humidity",
136*c6d7a45dSGunnar Mills                "Power",
137*c6d7a45dSGunnar Mills                "EnergykWh",
138*c6d7a45dSGunnar Mills                "EnergyJoules",
139*c6d7a45dSGunnar Mills                "EnergyWh",
140*c6d7a45dSGunnar Mills                "ChargeAh",
141*c6d7a45dSGunnar Mills                "Voltage",
142*c6d7a45dSGunnar Mills                "Current",
143*c6d7a45dSGunnar Mills                "Frequency",
144*c6d7a45dSGunnar Mills                "Pressure",
145*c6d7a45dSGunnar Mills                "PressurekPa",
146*c6d7a45dSGunnar Mills                "PressurePa",
147*c6d7a45dSGunnar Mills                "LiquidLevel",
148*c6d7a45dSGunnar Mills                "Rotational",
149*c6d7a45dSGunnar Mills                "AirFlow",
150*c6d7a45dSGunnar Mills                "AirFlowCMM",
151*c6d7a45dSGunnar Mills                "LiquidFlow",
152*c6d7a45dSGunnar Mills                "LiquidFlowLPM",
153*c6d7a45dSGunnar Mills                "Barometric",
154*c6d7a45dSGunnar Mills                "Altitude",
155*c6d7a45dSGunnar Mills                "Percent",
156*c6d7a45dSGunnar Mills                "AbsoluteHumidity",
157*c6d7a45dSGunnar Mills                "Heat",
158*c6d7a45dSGunnar Mills                "LinearPosition",
159*c6d7a45dSGunnar Mills                "LinearVelocity",
160*c6d7a45dSGunnar Mills                "LinearAcceleration",
161*c6d7a45dSGunnar Mills                "RotationalPosition",
162*c6d7a45dSGunnar Mills                "RotationalVelocity",
163*c6d7a45dSGunnar Mills                "RotationalAcceleration",
164*c6d7a45dSGunnar Mills                "Valve"
165*c6d7a45dSGunnar Mills            ],
166*c6d7a45dSGunnar Mills            "enumDeprecated": {
167*c6d7a45dSGunnar Mills                "AirFlow": "This value has been deprecated in favor of `AirFlowCMM` for consistent use of SI units.",
168*c6d7a45dSGunnar Mills                "LiquidFlow": "This value has been deprecated in favor of `LiquidFlowLPM` for consistency of units typically expected or reported by `Sensor` and `Control` resources.",
169*c6d7a45dSGunnar Mills                "Pressure": "This value has been deprecated in favor of `PressurePa` or `PressurekPa` for consistency of units between `Sensor` and `Control` resources."
170*c6d7a45dSGunnar Mills            },
171*c6d7a45dSGunnar Mills            "enumDescriptions": {
172*c6d7a45dSGunnar Mills                "AbsoluteHumidity": "Absolute humidity (g/m^3).",
173*c6d7a45dSGunnar Mills                "AirFlow": "Air flow (cu ft/min).",
174*c6d7a45dSGunnar Mills                "AirFlowCMM": "Air flow (m^3/min).",
175*c6d7a45dSGunnar Mills                "Altitude": "Altitude (m).",
176*c6d7a45dSGunnar Mills                "Barometric": "Barometric pressure (mm).",
177*c6d7a45dSGunnar Mills                "ChargeAh": "Charge (Ah).",
178*c6d7a45dSGunnar Mills                "Current": "Current (A).",
179*c6d7a45dSGunnar Mills                "EnergyJoules": "Energy (J).",
180*c6d7a45dSGunnar Mills                "EnergyWh": "Energy (Wh).",
181*c6d7a45dSGunnar Mills                "EnergykWh": "Energy (kWh).",
182*c6d7a45dSGunnar Mills                "Frequency": "Frequency (Hz).",
183*c6d7a45dSGunnar Mills                "Heat": "Heat (kW).",
184*c6d7a45dSGunnar Mills                "Humidity": "Relative humidity (percent).",
185*c6d7a45dSGunnar Mills                "LinearAcceleration": "Linear acceleration (m/s^2).",
186*c6d7a45dSGunnar Mills                "LinearPosition": "Linear position or distance (m).",
187*c6d7a45dSGunnar Mills                "LinearVelocity": "Linear velocity (m/s).",
188*c6d7a45dSGunnar Mills                "LiquidFlow": "Liquid flow (L/s).",
189*c6d7a45dSGunnar Mills                "LiquidFlowLPM": "Liquid flow (L/min).",
190*c6d7a45dSGunnar Mills                "LiquidLevel": "Liquid level (cm).",
191*c6d7a45dSGunnar Mills                "Percent": "Percent (%).",
192*c6d7a45dSGunnar Mills                "Power": "Power (W).",
193*c6d7a45dSGunnar Mills                "Pressure": "Pressure (Pa).",
194*c6d7a45dSGunnar Mills                "PressurePa": "Pressure (Pa).",
195*c6d7a45dSGunnar Mills                "PressurekPa": "Pressure (kPa).",
196*c6d7a45dSGunnar Mills                "Rotational": "Rotational (RPM).",
197*c6d7a45dSGunnar Mills                "RotationalAcceleration": "Rotational acceleration (rad/s^2).",
198*c6d7a45dSGunnar Mills                "RotationalPosition": "Rotational position (rad).",
199*c6d7a45dSGunnar Mills                "RotationalVelocity": "Rotational velocity (rad/s).",
200*c6d7a45dSGunnar Mills                "Temperature": "Temperature (C).",
201*c6d7a45dSGunnar Mills                "Valve": "Valve (% open).",
202*c6d7a45dSGunnar Mills                "Voltage": "Voltage (VAC or VDC)."
203*c6d7a45dSGunnar Mills            },
204*c6d7a45dSGunnar Mills            "enumLongDescriptions": {
205*c6d7a45dSGunnar Mills                "AbsoluteHumidity": "This value shall indicate an absolute (volumetric) humidity measurement, in grams per cubic meter units.  The `ReadingUnits` property shall contain `g/m3`.",
206*c6d7a45dSGunnar Mills                "AirFlow": "This value shall indicate a measurement of a volume of gas per unit of time, in cubic feet per minute units, that flows through a particular junction.  The `ReadingUnits` property shall contain `[ft_i]3/min`.",
207*c6d7a45dSGunnar Mills                "AirFlowCMM": "This value shall indicate a measurement of a volume of gas per unit of time, in cubic meters per minute units, that flows through a particular junction.  The `ReadingUnits` property shall contain `m3/min`.",
208*c6d7a45dSGunnar Mills                "Altitude": "This value shall indicate a measurement of altitude, in meter units, defined as the elevation above sea level.  The `ReadingUnits` property shall contain `m`.",
209*c6d7a45dSGunnar Mills                "Barometric": "This value shall indicate a measurement of barometric pressure, in millimeters of a mercury column.  The `ReadingUnits` property shall contain `mm[Hg]`.",
210*c6d7a45dSGunnar Mills                "ChargeAh": "This value shall indicate the amount of charge, integral of current over time, of the monitored item.  If representing metered charge consumption the value shall reflect the charge consumption since the sensor metrics were last reset.  The value of the `Reading` property shall be in ampere-hour units and the `ReadingUnits` property shall contain `A.h`.",
211*c6d7a45dSGunnar Mills                "Current": "This value shall indicate a measurement of the root mean square (RMS) of instantaneous current calculated over an integer number of line cycles for a circuit.  Current is expressed in ampere units and the `ReadingUnits` property shall contain `A`.",
212*c6d7a45dSGunnar Mills                "EnergyJoules": "This value shall indicate the energy, integral of real power over time, of the monitored item.  If representing metered power consumption the value shall reflect the power consumption since the sensor metrics were last reset.  The value of the `Reading` property shall be in joule units and the `ReadingUnits` property shall contain `J`.  This value is used for device-level energy consumption measurements, while `EnergykWh` is used for large-scale consumption measurements.",
213*c6d7a45dSGunnar Mills                "EnergyWh": "This value shall indicate the energy, integral of real power over time, of the monitored item.  If representing metered power consumption the value shall reflect the power consumption since the sensor metrics were last reset.  The value of the `Reading` property shall be in watt-hour units and the `ReadingUnits` property shall contain `W.h`.  This value is used for device-level energy consumption measurements, while `EnergykWh` is used for large-scale consumption measurements.",
214*c6d7a45dSGunnar Mills                "EnergykWh": "This value shall indicate the energy, integral of real power over time, of the monitored item.  If representing metered power consumption the value shall reflect the power consumption since the sensor metrics were last reset.  The value of the `Reading` property shall be in kilowatt-hour units and the `ReadingUnits` property shall contain `kW.h`.  This value is used for large-scale energy consumption measurements, while `EnergyJoules` and `EnergyWh` are used for device-level consumption measurements.",
215*c6d7a45dSGunnar Mills                "Frequency": "This value shall indicate a frequency measurement, in hertz units.  The `ReadingUnits` property shall contain `Hz`.",
216*c6d7a45dSGunnar Mills                "Heat": "This value shall indicate a heat measurement, in kilowatt units.  The `ReadingUnits` property shall contain `kW`.",
217*c6d7a45dSGunnar Mills                "Humidity": "This value shall indicate a relative humidity measurement, in percent units.  The `ReadingUnits` property shall contain `%`.",
218*c6d7a45dSGunnar Mills                "LinearAcceleration": "This value shall indicate a linear acceleration, in meters per square second units.  The `ReadingUnits` property shall contain `m/s2`.",
219*c6d7a45dSGunnar Mills                "LinearPosition": "This value shall indicate a linear position or distance, in meter units.  The `ReadingUnits` property shall contain `m`.",
220*c6d7a45dSGunnar Mills                "LinearVelocity": "This value shall indicate a linear velocity, in meters per second units.  The `ReadingUnits` property shall contain `m/s`.",
221*c6d7a45dSGunnar Mills                "LiquidFlow": "This value shall indicate a measurement of a volume of liquid per unit of time, in liters per second units, that flows through a particular junction.  The `ReadingUnits` property shall contain `L/s`.",
222*c6d7a45dSGunnar Mills                "LiquidFlowLPM": "This value shall indicate a measurement of a volume of liquid per unit of time, in liters per minute units, that flows through a particular junction.  The `ReadingUnits` property shall contain `L/min`.",
223*c6d7a45dSGunnar Mills                "LiquidLevel": "This value shall indicate a measurement of fluid height, in centimeter units, relative to a specified vertical datum and the `ReadingUnits` property shall contain `cm`.",
224*c6d7a45dSGunnar Mills                "Percent": "This value shall indicate a percentage measurement, in percent units.  The `Reading` value, while typically `0` to `100`, may exceed `100` for rate-of-change or similar readings.  The `ReadingUnits` property shall contain `%`.",
225*c6d7a45dSGunnar Mills                "Power": "This value shall indicate the arithmetic mean of product terms of instantaneous voltage and current values measured over integer number of line cycles for a circuit, in watt units.  The `ReadingUnits` property shall contain `W`.",
226*c6d7a45dSGunnar Mills                "Pressure": "This value shall indicate a measurement of force, in pascal units, applied perpendicular to the surface of an object per unit area over which that force is distributed.  The `ReadingUnits` property shall contain `Pa`.",
227*c6d7a45dSGunnar Mills                "PressurePa": "This value shall indicate a measurement of pressure, in pascal units, relative to atmospheric pressure.  The `ReadingUnits` property shall contain `Pa`.",
228*c6d7a45dSGunnar Mills                "PressurekPa": "This value shall indicate a measurement of pressure, in kilopascal units, relative to atmospheric pressure.  The `ReadingUnits` property shall contain `kPa`.",
229*c6d7a45dSGunnar Mills                "Rotational": "This value shall indicate a measurement of rotational frequency, in revolutions per minute units.  The `ReadingUnits` property shall contain either `{rev}/min`, which is preferred, or `RPM`, which is a deprecated value.",
230*c6d7a45dSGunnar Mills                "RotationalAcceleration": "This value shall indicate a rotational acceleration, in radians per square second units.  The `ReadingUnits` property shall contain `rad/s2`.",
231*c6d7a45dSGunnar Mills                "RotationalPosition": "This value shall indicate a rotational position, in radian units.  The `ReadingUnits` property shall contain `rad`.",
232*c6d7a45dSGunnar Mills                "RotationalVelocity": "This value shall indicate a rotational velocity, in radians per second units.  The `ReadingUnits` property shall contain `rad/s`.",
233*c6d7a45dSGunnar Mills                "Temperature": "This value shall indicate a temperature measurement, in degree Celsius units.  The `ReadingUnits` property shall contain `Cel`.",
234*c6d7a45dSGunnar Mills                "Valve": "This value shall indicate a valve position, in percent units.  The `ReadingUnits` property shall contain `%`.  A value of `100` shall indicate the valve is completely open, and a value of `0` shall indicate the valve is completely closed.",
235*c6d7a45dSGunnar Mills                "Voltage": "This value shall indicate a measurement of the root mean square (RMS) of instantaneous voltage calculated over an integer number of line cycles for a circuit.  Voltage is expressed in volt units and the `ReadingUnits` property shall contain `V`."
236*c6d7a45dSGunnar Mills            },
237*c6d7a45dSGunnar Mills            "enumVersionAdded": {
238*c6d7a45dSGunnar Mills                "AbsoluteHumidity": "v1_5_0",
239*c6d7a45dSGunnar Mills                "AirFlowCMM": "v1_7_0",
240*c6d7a45dSGunnar Mills                "ChargeAh": "v1_4_0",
241*c6d7a45dSGunnar Mills                "EnergyWh": "v1_4_0",
242*c6d7a45dSGunnar Mills                "Heat": "v1_7_0",
243*c6d7a45dSGunnar Mills                "LinearAcceleration": "v1_11_0",
244*c6d7a45dSGunnar Mills                "LinearPosition": "v1_11_0",
245*c6d7a45dSGunnar Mills                "LinearVelocity": "v1_11_0",
246*c6d7a45dSGunnar Mills                "LiquidFlowLPM": "v1_7_0",
247*c6d7a45dSGunnar Mills                "Percent": "v1_1_0",
248*c6d7a45dSGunnar Mills                "PressurePa": "v1_7_0",
249*c6d7a45dSGunnar Mills                "PressurekPa": "v1_5_0",
250*c6d7a45dSGunnar Mills                "RotationalAcceleration": "v1_11_0",
251*c6d7a45dSGunnar Mills                "RotationalPosition": "v1_11_0",
252*c6d7a45dSGunnar Mills                "RotationalVelocity": "v1_11_0",
253*c6d7a45dSGunnar Mills                "Valve": "v1_11_0"
254*c6d7a45dSGunnar Mills            },
255*c6d7a45dSGunnar Mills            "enumVersionDeprecated": {
256*c6d7a45dSGunnar Mills                "AirFlow": "v1_7_0",
257*c6d7a45dSGunnar Mills                "LiquidFlow": "v1_7_0",
258*c6d7a45dSGunnar Mills                "Pressure": "v1_7_0"
259*c6d7a45dSGunnar Mills            },
260*c6d7a45dSGunnar Mills            "type": "string"
261*c6d7a45dSGunnar Mills        },
262*c6d7a45dSGunnar Mills        "ResetMetrics": {
263*c6d7a45dSGunnar Mills            "additionalProperties": false,
264*c6d7a45dSGunnar Mills            "description": "Resets metrics related to this sensor.",
265*c6d7a45dSGunnar Mills            "longDescription": "This action shall reset any time intervals or counted values for this sensor.  The `SensorResetTime` property shall be updated to reflect the time that this action was performed.",
266*c6d7a45dSGunnar Mills            "parameters": {},
267*c6d7a45dSGunnar Mills            "patternProperties": {
268*c6d7a45dSGunnar Mills                "^([a-zA-Z_][a-zA-Z0-9_]*)?@(odata|Redfish|Message)\\.[a-zA-Z_][a-zA-Z0-9_]*$": {
269*c6d7a45dSGunnar Mills                    "description": "This property shall specify a valid odata or Redfish property.",
270*c6d7a45dSGunnar Mills                    "type": [
271*c6d7a45dSGunnar Mills                        "array",
272*c6d7a45dSGunnar Mills                        "boolean",
273*c6d7a45dSGunnar Mills                        "integer",
274*c6d7a45dSGunnar Mills                        "number",
275*c6d7a45dSGunnar Mills                        "null",
276*c6d7a45dSGunnar Mills                        "object",
277*c6d7a45dSGunnar Mills                        "string"
278*c6d7a45dSGunnar Mills                    ]
279*c6d7a45dSGunnar Mills                }
280*c6d7a45dSGunnar Mills            },
281*c6d7a45dSGunnar Mills            "properties": {
282*c6d7a45dSGunnar Mills                "target": {
283*c6d7a45dSGunnar Mills                    "description": "Link to invoke action",
284*c6d7a45dSGunnar Mills                    "format": "uri-reference",
285*c6d7a45dSGunnar Mills                    "type": "string"
286*c6d7a45dSGunnar Mills                },
287*c6d7a45dSGunnar Mills                "title": {
288*c6d7a45dSGunnar Mills                    "description": "Friendly action name",
289*c6d7a45dSGunnar Mills                    "type": "string"
290*c6d7a45dSGunnar Mills                }
291*c6d7a45dSGunnar Mills            },
292*c6d7a45dSGunnar Mills            "type": "object"
293*c6d7a45dSGunnar Mills        },
294*c6d7a45dSGunnar Mills        "ResetToDefaults": {
295*c6d7a45dSGunnar Mills            "additionalProperties": false,
296*c6d7a45dSGunnar Mills            "description": "The action resets the values of writable properties to factory defaults.",
297*c6d7a45dSGunnar Mills            "longDescription": "This action shall reset the values of writable properties in this resource to their default values as specified by the manufacturer.",
298*c6d7a45dSGunnar Mills            "parameters": {},
299*c6d7a45dSGunnar Mills            "patternProperties": {
300*c6d7a45dSGunnar Mills                "^([a-zA-Z_][a-zA-Z0-9_]*)?@(odata|Redfish|Message)\\.[a-zA-Z_][a-zA-Z0-9_]*$": {
301*c6d7a45dSGunnar Mills                    "description": "This property shall specify a valid odata or Redfish property.",
302*c6d7a45dSGunnar Mills                    "type": [
303*c6d7a45dSGunnar Mills                        "array",
304*c6d7a45dSGunnar Mills                        "boolean",
305*c6d7a45dSGunnar Mills                        "integer",
306*c6d7a45dSGunnar Mills                        "number",
307*c6d7a45dSGunnar Mills                        "null",
308*c6d7a45dSGunnar Mills                        "object",
309*c6d7a45dSGunnar Mills                        "string"
310*c6d7a45dSGunnar Mills                    ]
311*c6d7a45dSGunnar Mills                }
312*c6d7a45dSGunnar Mills            },
313*c6d7a45dSGunnar Mills            "properties": {
314*c6d7a45dSGunnar Mills                "target": {
315*c6d7a45dSGunnar Mills                    "description": "Link to invoke action",
316*c6d7a45dSGunnar Mills                    "format": "uri-reference",
317*c6d7a45dSGunnar Mills                    "type": "string"
318*c6d7a45dSGunnar Mills                },
319*c6d7a45dSGunnar Mills                "title": {
320*c6d7a45dSGunnar Mills                    "description": "Friendly action name",
321*c6d7a45dSGunnar Mills                    "type": "string"
322*c6d7a45dSGunnar Mills                }
323*c6d7a45dSGunnar Mills            },
324*c6d7a45dSGunnar Mills            "type": "object",
325*c6d7a45dSGunnar Mills            "versionAdded": "v1_6_0"
326*c6d7a45dSGunnar Mills        },
327*c6d7a45dSGunnar Mills        "Sensor": {
328*c6d7a45dSGunnar Mills            "additionalProperties": false,
329*c6d7a45dSGunnar Mills            "description": "The `Sensor` schema describes a sensor and its properties.",
330*c6d7a45dSGunnar Mills            "longDescription": "This resource shall represent a sensor for a Redfish implementation.",
331*c6d7a45dSGunnar Mills            "patternProperties": {
332*c6d7a45dSGunnar Mills                "^([a-zA-Z_][a-zA-Z0-9_]*)?@(odata|Redfish|Message)\\.[a-zA-Z_][a-zA-Z0-9_]*$": {
333*c6d7a45dSGunnar Mills                    "description": "This property shall specify a valid odata or Redfish property.",
334*c6d7a45dSGunnar Mills                    "type": [
335*c6d7a45dSGunnar Mills                        "array",
336*c6d7a45dSGunnar Mills                        "boolean",
337*c6d7a45dSGunnar Mills                        "integer",
338*c6d7a45dSGunnar Mills                        "number",
339*c6d7a45dSGunnar Mills                        "null",
340*c6d7a45dSGunnar Mills                        "object",
341*c6d7a45dSGunnar Mills                        "string"
342*c6d7a45dSGunnar Mills                    ]
343*c6d7a45dSGunnar Mills                }
344*c6d7a45dSGunnar Mills            },
345*c6d7a45dSGunnar Mills            "properties": {
346*c6d7a45dSGunnar Mills                "@odata.context": {
347*c6d7a45dSGunnar Mills                    "$ref": "http://redfish.dmtf.org/schemas/v1/odata-v4.json#/definitions/context"
348*c6d7a45dSGunnar Mills                },
349*c6d7a45dSGunnar Mills                "@odata.etag": {
350*c6d7a45dSGunnar Mills                    "$ref": "http://redfish.dmtf.org/schemas/v1/odata-v4.json#/definitions/etag"
351*c6d7a45dSGunnar Mills                },
352*c6d7a45dSGunnar Mills                "@odata.id": {
353*c6d7a45dSGunnar Mills                    "$ref": "http://redfish.dmtf.org/schemas/v1/odata-v4.json#/definitions/id"
354*c6d7a45dSGunnar Mills                },
355*c6d7a45dSGunnar Mills                "@odata.type": {
356*c6d7a45dSGunnar Mills                    "$ref": "http://redfish.dmtf.org/schemas/v1/odata-v4.json#/definitions/type"
357*c6d7a45dSGunnar Mills                },
358*c6d7a45dSGunnar Mills                "Accuracy": {
359*c6d7a45dSGunnar Mills                    "deprecated": "This property has been deprecated in favor of ReadingAccuracy.",
360*c6d7a45dSGunnar Mills                    "description": "The estimated percent error of measured versus actual values.",
361*c6d7a45dSGunnar Mills                    "longDescription": "This property shall contain the percent error +/- of the measured versus actual values of the `Reading` property.",
362*c6d7a45dSGunnar Mills                    "readonly": true,
363*c6d7a45dSGunnar Mills                    "type": [
364*c6d7a45dSGunnar Mills                        "number",
365*c6d7a45dSGunnar Mills                        "null"
366*c6d7a45dSGunnar Mills                    ],
367*c6d7a45dSGunnar Mills                    "units": "%",
368*c6d7a45dSGunnar Mills                    "versionDeprecated": "v1_8_0"
369*c6d7a45dSGunnar Mills                },
370*c6d7a45dSGunnar Mills                "Actions": {
371*c6d7a45dSGunnar Mills                    "$ref": "#/definitions/Actions",
372*c6d7a45dSGunnar Mills                    "description": "The available actions for this resource.",
373*c6d7a45dSGunnar Mills                    "longDescription": "This property shall contain the available actions for this resource."
374*c6d7a45dSGunnar Mills                },
375*c6d7a45dSGunnar Mills                "AdjustedMaxAllowableOperatingValue": {
376*c6d7a45dSGunnar Mills                    "description": "The adjusted maximum allowable operating value for this equipment based on the environmental conditions.",
377*c6d7a45dSGunnar Mills                    "longDescription": "This property shall contain the adjusted maximum allowable operating value for the equipment that this sensor monitors, as specified by a standards body, manufacturer, or both.  The value is adjusted based on environmental conditions.  For example, liquid inlet temperature can be adjusted based on the available liquid pressure.",
378*c6d7a45dSGunnar Mills                    "readonly": true,
379*c6d7a45dSGunnar Mills                    "type": [
380*c6d7a45dSGunnar Mills                        "number",
381*c6d7a45dSGunnar Mills                        "null"
382*c6d7a45dSGunnar Mills                    ]
383*c6d7a45dSGunnar Mills                },
384*c6d7a45dSGunnar Mills                "AdjustedMinAllowableOperatingValue": {
385*c6d7a45dSGunnar Mills                    "description": "The adjusted minimum allowable operating value for this equipment based on the environmental conditions.",
386*c6d7a45dSGunnar Mills                    "longDescription": "This property shall contain the adjusted minimum allowable operating value for the equipment that this sensor monitors, as specified by a standards body, manufacturer, or both.  This value is adjusted based on environmental conditions.  For example, liquid inlet temperature can be adjusted based on the available liquid pressure.",
387*c6d7a45dSGunnar Mills                    "readonly": true,
388*c6d7a45dSGunnar Mills                    "type": [
389*c6d7a45dSGunnar Mills                        "number",
390*c6d7a45dSGunnar Mills                        "null"
391*c6d7a45dSGunnar Mills                    ]
392*c6d7a45dSGunnar Mills                },
393*c6d7a45dSGunnar Mills                "ApparentVA": {
394*c6d7a45dSGunnar Mills                    "description": "The product of voltage and current for an AC circuit, in volt-ampere units.",
395*c6d7a45dSGunnar Mills                    "excerpt": "SensorPower,SensorPowerArray",
396*c6d7a45dSGunnar Mills                    "longDescription": "This property shall contain the product of voltage (RMS) multiplied by current (RMS) for a circuit.  This property can appear in sensors of the `Power` `ReadingType`, and shall not appear in sensors of other `ReadingType` values.",
397*c6d7a45dSGunnar Mills                    "readonly": true,
398*c6d7a45dSGunnar Mills                    "type": [
399*c6d7a45dSGunnar Mills                        "number",
400*c6d7a45dSGunnar Mills                        "null"
401*c6d7a45dSGunnar Mills                    ],
402*c6d7a45dSGunnar Mills                    "units": "V.A"
403*c6d7a45dSGunnar Mills                },
404*c6d7a45dSGunnar Mills                "ApparentkVAh": {
405*c6d7a45dSGunnar Mills                    "description": "Apparent energy (kVAh).",
406*c6d7a45dSGunnar Mills                    "excerpt": "SensorEnergykWh",
407*c6d7a45dSGunnar Mills                    "longDescription": "This property shall contain the apparent energy, in kilovolt-ampere-hour units, for an electrical energy measurement.  This property can appear in sensors with a `ReadingType` containing `EnergykWh`, and shall not appear in sensors with other `ReadingType` values.",
408*c6d7a45dSGunnar Mills                    "readonly": true,
409*c6d7a45dSGunnar Mills                    "type": [
410*c6d7a45dSGunnar Mills                        "number",
411*c6d7a45dSGunnar Mills                        "null"
412*c6d7a45dSGunnar Mills                    ],
413*c6d7a45dSGunnar Mills                    "units": "kV.A.h",
414*c6d7a45dSGunnar Mills                    "versionAdded": "v1_5_0"
415*c6d7a45dSGunnar Mills                },
416*c6d7a45dSGunnar Mills                "AverageReading": {
417*c6d7a45dSGunnar Mills                    "description": "The average sensor value.",
418*c6d7a45dSGunnar Mills                    "longDescription": "This property shall contain the average sensor value over the time specified by the value of the `AveragingInterval` property.  The value shall be reset by the `ResetMetrics` action or by a service reset of time-based property values.",
419*c6d7a45dSGunnar Mills                    "readonly": true,
420*c6d7a45dSGunnar Mills                    "type": [
421*c6d7a45dSGunnar Mills                        "number",
422*c6d7a45dSGunnar Mills                        "null"
423*c6d7a45dSGunnar Mills                    ],
424*c6d7a45dSGunnar Mills                    "versionAdded": "v1_4_0"
425*c6d7a45dSGunnar Mills                },
426*c6d7a45dSGunnar Mills                "AveragingInterval": {
427*c6d7a45dSGunnar Mills                    "description": "The interval over which the average sensor value is calculated.",
428*c6d7a45dSGunnar Mills                    "longDescription": "This property shall contain the interval over which the sensor value is averaged to produce the value of the `AverageReading` property.  This property shall only be present if the `AverageReading` property is present.",
429*c6d7a45dSGunnar Mills                    "pattern": "^P(\\d+D)?(T(\\d+H)?(\\d+M)?(\\d+(.\\d+)?S)?)?$",
430*c6d7a45dSGunnar Mills                    "readonly": false,
431*c6d7a45dSGunnar Mills                    "type": [
432*c6d7a45dSGunnar Mills                        "string",
433*c6d7a45dSGunnar Mills                        "null"
434*c6d7a45dSGunnar Mills                    ],
435*c6d7a45dSGunnar Mills                    "versionAdded": "v1_4_0"
436*c6d7a45dSGunnar Mills                },
437*c6d7a45dSGunnar Mills                "AveragingIntervalAchieved": {
438*c6d7a45dSGunnar Mills                    "description": "Indicates that enough readings were collected to calculate the average sensor reading over the averaging interval time.",
439*c6d7a45dSGunnar Mills                    "longDescription": "This property shall indicate that enough readings were collected to calculate the `AverageReading` value over the interval specified by the `AveragingInterval` property.  The value shall be reset by the `ResetMetrics` action.  This property shall only be present if the `AveragingInterval` property is present.",
440*c6d7a45dSGunnar Mills                    "readonly": true,
441*c6d7a45dSGunnar Mills                    "type": [
442*c6d7a45dSGunnar Mills                        "boolean",
443*c6d7a45dSGunnar Mills                        "null"
444*c6d7a45dSGunnar Mills                    ],
445*c6d7a45dSGunnar Mills                    "versionAdded": "v1_4_0"
446*c6d7a45dSGunnar Mills                },
447*c6d7a45dSGunnar Mills                "Calibration": {
448*c6d7a45dSGunnar Mills                    "description": "The calibration offset applied to the Reading.",
449*c6d7a45dSGunnar Mills                    "longDescription": "This property shall contain the offset applied to the raw sensor value to provide a calibrated value for the sensor as returned by the `Reading` property.  The value of this property shall follow the units of the `Reading` property for this sensor instance.  Updating the value of this property shall not affect the value of the `CalibrationTime` property.",
450*c6d7a45dSGunnar Mills                    "readonly": false,
451*c6d7a45dSGunnar Mills                    "type": [
452*c6d7a45dSGunnar Mills                        "number",
453*c6d7a45dSGunnar Mills                        "null"
454*c6d7a45dSGunnar Mills                    ],
455*c6d7a45dSGunnar Mills                    "versionAdded": "v1_4_0"
456*c6d7a45dSGunnar Mills                },
457*c6d7a45dSGunnar Mills                "CalibrationTime": {
458*c6d7a45dSGunnar Mills                    "description": "The date and time that the sensor was last calibrated.",
459*c6d7a45dSGunnar Mills                    "format": "date-time",
460*c6d7a45dSGunnar Mills                    "longDescription": "This property shall contain the date and time that the sensor was last calibrated.  This property is intended to reflect the actual time the calibration occurred.",
461*c6d7a45dSGunnar Mills                    "readonly": false,
462*c6d7a45dSGunnar Mills                    "type": [
463*c6d7a45dSGunnar Mills                        "string",
464*c6d7a45dSGunnar Mills                        "null"
465*c6d7a45dSGunnar Mills                    ],
466*c6d7a45dSGunnar Mills                    "versionAdded": "v1_4_0"
467*c6d7a45dSGunnar Mills                },
468*c6d7a45dSGunnar Mills                "CrestFactor": {
469*c6d7a45dSGunnar Mills                    "description": "The crest factor for this sensor.",
470*c6d7a45dSGunnar Mills                    "excerpt": "SensorCurrent,SensorVoltage",
471*c6d7a45dSGunnar Mills                    "longDescription": "This property shall contain the ratio of the peak measurement divided by the RMS measurement and calculated over same N line cycles.  A sine wave would have a value of 1.414.",
472*c6d7a45dSGunnar Mills                    "readonly": true,
473*c6d7a45dSGunnar Mills                    "type": [
474*c6d7a45dSGunnar Mills                        "number",
475*c6d7a45dSGunnar Mills                        "null"
476*c6d7a45dSGunnar Mills                    ],
477*c6d7a45dSGunnar Mills                    "versionAdded": "v1_1_0"
478*c6d7a45dSGunnar Mills                },
479*c6d7a45dSGunnar Mills                "Description": {
480*c6d7a45dSGunnar Mills                    "anyOf": [
481*c6d7a45dSGunnar Mills                        {
482*c6d7a45dSGunnar Mills                            "$ref": "http://redfish.dmtf.org/schemas/v1/Resource.json#/definitions/Description"
483*c6d7a45dSGunnar Mills                        },
484*c6d7a45dSGunnar Mills                        {
485*c6d7a45dSGunnar Mills                            "type": "null"
486*c6d7a45dSGunnar Mills                        }
487*c6d7a45dSGunnar Mills                    ],
488*c6d7a45dSGunnar Mills                    "readonly": true
489*c6d7a45dSGunnar Mills                },
490*c6d7a45dSGunnar Mills                "ElectricalContext": {
491*c6d7a45dSGunnar Mills                    "anyOf": [
492*c6d7a45dSGunnar Mills                        {
493*c6d7a45dSGunnar Mills                            "$ref": "http://redfish.dmtf.org/schemas/v1/Sensor.json#/definitions/ElectricalContext"
494*c6d7a45dSGunnar Mills                        },
495*c6d7a45dSGunnar Mills                        {
496*c6d7a45dSGunnar Mills                            "type": "null"
497*c6d7a45dSGunnar Mills                        }
498*c6d7a45dSGunnar Mills                    ],
499*c6d7a45dSGunnar Mills                    "description": "The combination of current-carrying conductors.",
500*c6d7a45dSGunnar Mills                    "longDescription": "This property shall represent the combination of current-carrying conductors that distribute power.",
501*c6d7a45dSGunnar Mills                    "readonly": true
502*c6d7a45dSGunnar Mills                },
503*c6d7a45dSGunnar Mills                "Enabled": {
504*c6d7a45dSGunnar Mills                    "description": "Indicates whether the sensor is enabled and provides a reading.",
505*c6d7a45dSGunnar Mills                    "longDescription": "This property shall indicate whether the sensor is enabled and provides a `Reading`.  The value `true` shall indicate the sensor is enabled and returns the `Reading` property with a valid value.  The value `false` shall indicate the sensor is disabled, shall not return the `Reading` property, and shall not trigger events, logging, or other functionality.  This property allows a user to disable a faulty sensor or to otherwise remove it from use.",
506*c6d7a45dSGunnar Mills                    "readonly": false,
507*c6d7a45dSGunnar Mills                    "type": [
508*c6d7a45dSGunnar Mills                        "boolean",
509*c6d7a45dSGunnar Mills                        "null"
510*c6d7a45dSGunnar Mills                    ],
511*c6d7a45dSGunnar Mills                    "versionAdded": "v1_10_0"
512*c6d7a45dSGunnar Mills                },
513*c6d7a45dSGunnar Mills                "Id": {
514*c6d7a45dSGunnar Mills                    "$ref": "http://redfish.dmtf.org/schemas/v1/Resource.json#/definitions/Id",
515*c6d7a45dSGunnar Mills                    "readonly": true
516*c6d7a45dSGunnar Mills                },
517*c6d7a45dSGunnar Mills                "Implementation": {
518*c6d7a45dSGunnar Mills                    "anyOf": [
519*c6d7a45dSGunnar Mills                        {
520*c6d7a45dSGunnar Mills                            "$ref": "#/definitions/ImplementationType"
521*c6d7a45dSGunnar Mills                        },
522*c6d7a45dSGunnar Mills                        {
523*c6d7a45dSGunnar Mills                            "type": "null"
524*c6d7a45dSGunnar Mills                        }
525*c6d7a45dSGunnar Mills                    ],
526*c6d7a45dSGunnar Mills                    "description": "The implementation of the sensor.",
527*c6d7a45dSGunnar Mills                    "longDescription": "This property shall contain the implementation of the sensor.",
528*c6d7a45dSGunnar Mills                    "readonly": true,
529*c6d7a45dSGunnar Mills                    "versionAdded": "v1_1_0"
530*c6d7a45dSGunnar Mills                },
531*c6d7a45dSGunnar Mills                "LifetimeReading": {
532*c6d7a45dSGunnar Mills                    "description": "The total accumulation value for this sensor.",
533*c6d7a45dSGunnar Mills                    "excerpt": "SensorEnergykWh",
534*c6d7a45dSGunnar Mills                    "longDescription": "This property shall contain the total accumulation of the `Reading` property over the sensor's lifetime.  This value shall not be reset by the `ResetMetrics` action.",
535*c6d7a45dSGunnar Mills                    "readonly": true,
536*c6d7a45dSGunnar Mills                    "type": [
537*c6d7a45dSGunnar Mills                        "number",
538*c6d7a45dSGunnar Mills                        "null"
539*c6d7a45dSGunnar Mills                    ],
540*c6d7a45dSGunnar Mills                    "versionAdded": "v1_1_0"
541*c6d7a45dSGunnar Mills                },
542*c6d7a45dSGunnar Mills                "LifetimeStartDateTime": {
543*c6d7a45dSGunnar Mills                    "description": "The date and time when the sensor started accumulating readings for the `LifetimeReading` property.",
544*c6d7a45dSGunnar Mills                    "format": "date-time",
545*c6d7a45dSGunnar Mills                    "longDescription": "This property shall contain the date and time when the sensor started accumulating readings for the `LifetimeReading` property.  This might contain the same value as the production date of the device that contains this sensor.",
546*c6d7a45dSGunnar Mills                    "readonly": true,
547*c6d7a45dSGunnar Mills                    "type": [
548*c6d7a45dSGunnar Mills                        "string",
549*c6d7a45dSGunnar Mills                        "null"
550*c6d7a45dSGunnar Mills                    ],
551*c6d7a45dSGunnar Mills                    "versionAdded": "v1_9_0"
552*c6d7a45dSGunnar Mills                },
553*c6d7a45dSGunnar Mills                "Links": {
554*c6d7a45dSGunnar Mills                    "$ref": "#/definitions/Links",
555*c6d7a45dSGunnar Mills                    "description": "The links to other resources that are related to this resource.",
556*c6d7a45dSGunnar Mills                    "longDescription": "This property shall contain links to resources that are related to but are not contained by, or subordinate to, this resource.",
557*c6d7a45dSGunnar Mills                    "versionAdded": "v1_3_0"
558*c6d7a45dSGunnar Mills                },
559*c6d7a45dSGunnar Mills                "LoadPercent": {
560*c6d7a45dSGunnar Mills                    "deprecated": "This property has been deprecated in favor of using a sensor instance with a `ReadingType` of `Percent` to show utilization values when needed.",
561*c6d7a45dSGunnar Mills                    "description": "The power load utilization for this sensor.",
562*c6d7a45dSGunnar Mills                    "longDescription": "This property shall indicate the power load utilization percent for this sensor.  This property can appear in sensors of the `Power` `ReadingType`, and shall not appear in sensors of other `ReadingType` values.",
563*c6d7a45dSGunnar Mills                    "readonly": true,
564*c6d7a45dSGunnar Mills                    "type": [
565*c6d7a45dSGunnar Mills                        "number",
566*c6d7a45dSGunnar Mills                        "null"
567*c6d7a45dSGunnar Mills                    ],
568*c6d7a45dSGunnar Mills                    "units": "%",
569*c6d7a45dSGunnar Mills                    "versionDeprecated": "v1_1_0"
570*c6d7a45dSGunnar Mills                },
571*c6d7a45dSGunnar Mills                "Location": {
572*c6d7a45dSGunnar Mills                    "$ref": "http://redfish.dmtf.org/schemas/v1/Resource.json#/definitions/Location",
573*c6d7a45dSGunnar Mills                    "description": "The location information for this sensor.",
574*c6d7a45dSGunnar Mills                    "longDescription": "This property shall indicate the location information for this sensor."
575*c6d7a45dSGunnar Mills                },
576*c6d7a45dSGunnar Mills                "LowestReading": {
577*c6d7a45dSGunnar Mills                    "description": "The lowest sensor value.",
578*c6d7a45dSGunnar Mills                    "longDescription": "This property shall contain the lowest sensor value since the last `ResetMetrics` action was performed or since the service last reset the time-based property values.",
579*c6d7a45dSGunnar Mills                    "readonly": true,
580*c6d7a45dSGunnar Mills                    "type": [
581*c6d7a45dSGunnar Mills                        "number",
582*c6d7a45dSGunnar Mills                        "null"
583*c6d7a45dSGunnar Mills                    ],
584*c6d7a45dSGunnar Mills                    "versionAdded": "v1_4_0"
585*c6d7a45dSGunnar Mills                },
586*c6d7a45dSGunnar Mills                "LowestReadingTime": {
587*c6d7a45dSGunnar Mills                    "description": "The time when the lowest sensor value occurred.",
588*c6d7a45dSGunnar Mills                    "format": "date-time",
589*c6d7a45dSGunnar Mills                    "longDescription": "This property shall contain the date and time when the lowest sensor value was observed, as reported as the value of `LowestReading`.",
590*c6d7a45dSGunnar Mills                    "readonly": true,
591*c6d7a45dSGunnar Mills                    "type": [
592*c6d7a45dSGunnar Mills                        "string",
593*c6d7a45dSGunnar Mills                        "null"
594*c6d7a45dSGunnar Mills                    ],
595*c6d7a45dSGunnar Mills                    "versionAdded": "v1_4_0"
596*c6d7a45dSGunnar Mills                },
597*c6d7a45dSGunnar Mills                "Manufacturer": {
598*c6d7a45dSGunnar Mills                    "description": "The manufacturer of this sensor.",
599*c6d7a45dSGunnar Mills                    "longDescription": "This property shall contain the name of the organization responsible for producing the sensor.  This organization may be the entity from whom the sensor is purchased, but this is not necessarily true.  This property is generally used only for replaceable or user-configurable sensors.",
600*c6d7a45dSGunnar Mills                    "readonly": true,
601*c6d7a45dSGunnar Mills                    "type": [
602*c6d7a45dSGunnar Mills                        "string",
603*c6d7a45dSGunnar Mills                        "null"
604*c6d7a45dSGunnar Mills                    ],
605*c6d7a45dSGunnar Mills                    "versionAdded": "v1_9_0"
606*c6d7a45dSGunnar Mills                },
607*c6d7a45dSGunnar Mills                "MaxAllowableOperatingValue": {
608*c6d7a45dSGunnar Mills                    "description": "The maximum allowable operating value for this equipment.",
609*c6d7a45dSGunnar Mills                    "longDescription": "This property shall contain the maximum allowable operating value for the equipment that this sensor monitors, as specified by a standards body, manufacturer, or both.",
610*c6d7a45dSGunnar Mills                    "readonly": true,
611*c6d7a45dSGunnar Mills                    "type": [
612*c6d7a45dSGunnar Mills                        "number",
613*c6d7a45dSGunnar Mills                        "null"
614*c6d7a45dSGunnar Mills                    ]
615*c6d7a45dSGunnar Mills                },
616*c6d7a45dSGunnar Mills                "MinAllowableOperatingValue": {
617*c6d7a45dSGunnar Mills                    "description": "The minimum allowable operating value for this equipment.",
618*c6d7a45dSGunnar Mills                    "longDescription": "This property shall contain the minimum allowable operating value for the equipment that this sensor monitors, as specified by a standards body, manufacturer, or both.",
619*c6d7a45dSGunnar Mills                    "readonly": true,
620*c6d7a45dSGunnar Mills                    "type": [
621*c6d7a45dSGunnar Mills                        "number",
622*c6d7a45dSGunnar Mills                        "null"
623*c6d7a45dSGunnar Mills                    ]
624*c6d7a45dSGunnar Mills                },
625*c6d7a45dSGunnar Mills                "Model": {
626*c6d7a45dSGunnar Mills                    "description": "The model number of the sensor.",
627*c6d7a45dSGunnar Mills                    "longDescription": "This property shall contain the name by which the manufacturer generally refers to the sensor.  This property is generally used only for replaceable or user-configurable sensors.",
628*c6d7a45dSGunnar Mills                    "readonly": true,
629*c6d7a45dSGunnar Mills                    "type": [
630*c6d7a45dSGunnar Mills                        "string",
631*c6d7a45dSGunnar Mills                        "null"
632*c6d7a45dSGunnar Mills                    ],
633*c6d7a45dSGunnar Mills                    "versionAdded": "v1_9_0"
634*c6d7a45dSGunnar Mills                },
635*c6d7a45dSGunnar Mills                "Name": {
636*c6d7a45dSGunnar Mills                    "$ref": "http://redfish.dmtf.org/schemas/v1/Resource.json#/definitions/Name",
637*c6d7a45dSGunnar Mills                    "readonly": true
638*c6d7a45dSGunnar Mills                },
639*c6d7a45dSGunnar Mills                "Oem": {
640*c6d7a45dSGunnar Mills                    "$ref": "http://redfish.dmtf.org/schemas/v1/Resource.json#/definitions/Oem",
641*c6d7a45dSGunnar Mills                    "description": "The OEM extension property.",
642*c6d7a45dSGunnar Mills                    "longDescription": "This property shall contain the OEM extensions.  All values for properties that this object contains shall conform to the Redfish Specification-described requirements."
643*c6d7a45dSGunnar Mills                },
644*c6d7a45dSGunnar Mills                "PartNumber": {
645*c6d7a45dSGunnar Mills                    "description": "The part number of the sensor.",
646*c6d7a45dSGunnar Mills                    "longDescription": "This property shall contain a part number assigned by the organization that is responsible for producing or manufacturing the sensor.  This property is generally used only for replaceable or user-configurable sensors.",
647*c6d7a45dSGunnar Mills                    "readonly": true,
648*c6d7a45dSGunnar Mills                    "type": [
649*c6d7a45dSGunnar Mills                        "string",
650*c6d7a45dSGunnar Mills                        "null"
651*c6d7a45dSGunnar Mills                    ],
652*c6d7a45dSGunnar Mills                    "versionAdded": "v1_9_0"
653*c6d7a45dSGunnar Mills                },
654*c6d7a45dSGunnar Mills                "PeakReading": {
655*c6d7a45dSGunnar Mills                    "description": "The peak sensor value.",
656*c6d7a45dSGunnar Mills                    "longDescription": "This property shall contain the peak sensor value since the last `ResetMetrics` action was performed or since the service last reset the time-based property values.",
657*c6d7a45dSGunnar Mills                    "readonly": true,
658*c6d7a45dSGunnar Mills                    "type": [
659*c6d7a45dSGunnar Mills                        "number",
660*c6d7a45dSGunnar Mills                        "null"
661*c6d7a45dSGunnar Mills                    ]
662*c6d7a45dSGunnar Mills                },
663*c6d7a45dSGunnar Mills                "PeakReadingTime": {
664*c6d7a45dSGunnar Mills                    "description": "The time when the peak sensor value occurred.",
665*c6d7a45dSGunnar Mills                    "format": "date-time",
666*c6d7a45dSGunnar Mills                    "longDescription": "This property shall contain the date and time when the peak sensor value was observed, as reported as the value of `PeakReading`.",
667*c6d7a45dSGunnar Mills                    "readonly": true,
668*c6d7a45dSGunnar Mills                    "type": [
669*c6d7a45dSGunnar Mills                        "string",
670*c6d7a45dSGunnar Mills                        "null"
671*c6d7a45dSGunnar Mills                    ]
672*c6d7a45dSGunnar Mills                },
673*c6d7a45dSGunnar Mills                "PhaseAngleDegrees": {
674*c6d7a45dSGunnar Mills                    "description": "The phase angle (degrees) between the current and voltage waveforms.",
675*c6d7a45dSGunnar Mills                    "excerpt": "SensorPower,SensorPowerArray",
676*c6d7a45dSGunnar Mills                    "longDescription": "This property shall contain the phase angle, in degree units, between the current and voltage waveforms for an electrical measurement.  This property can appear in sensors with a `ReadingType` containing `Power`, and shall not appear in sensors with other `ReadingType` values.",
677*c6d7a45dSGunnar Mills                    "maximum": 90,
678*c6d7a45dSGunnar Mills                    "minimum": -90,
679*c6d7a45dSGunnar Mills                    "readonly": true,
680*c6d7a45dSGunnar Mills                    "type": [
681*c6d7a45dSGunnar Mills                        "number",
682*c6d7a45dSGunnar Mills                        "null"
683*c6d7a45dSGunnar Mills                    ],
684*c6d7a45dSGunnar Mills                    "versionAdded": "v1_5_0"
685*c6d7a45dSGunnar Mills                },
686*c6d7a45dSGunnar Mills                "PhysicalContext": {
687*c6d7a45dSGunnar Mills                    "anyOf": [
688*c6d7a45dSGunnar Mills                        {
689*c6d7a45dSGunnar Mills                            "$ref": "http://redfish.dmtf.org/schemas/v1/PhysicalContext.json#/definitions/PhysicalContext"
690*c6d7a45dSGunnar Mills                        },
691*c6d7a45dSGunnar Mills                        {
692*c6d7a45dSGunnar Mills                            "type": "null"
693*c6d7a45dSGunnar Mills                        }
694*c6d7a45dSGunnar Mills                    ],
695*c6d7a45dSGunnar Mills                    "description": "The area or device to which this sensor measurement applies.",
696*c6d7a45dSGunnar Mills                    "excerpt": "SensorArray,SensorFanArray,SensorPowerArray",
697*c6d7a45dSGunnar Mills                    "longDescription": "This property shall contain a description of the affected component or region within the equipment to which this sensor measurement applies.",
698*c6d7a45dSGunnar Mills                    "readonly": false
699*c6d7a45dSGunnar Mills                },
700*c6d7a45dSGunnar Mills                "PhysicalSubContext": {
701*c6d7a45dSGunnar Mills                    "anyOf": [
702*c6d7a45dSGunnar Mills                        {
703*c6d7a45dSGunnar Mills                            "$ref": "http://redfish.dmtf.org/schemas/v1/PhysicalContext.json#/definitions/PhysicalSubContext"
704*c6d7a45dSGunnar Mills                        },
705*c6d7a45dSGunnar Mills                        {
706*c6d7a45dSGunnar Mills                            "type": "null"
707*c6d7a45dSGunnar Mills                        }
708*c6d7a45dSGunnar Mills                    ],
709*c6d7a45dSGunnar Mills                    "description": "The usage or location within a device to which this sensor measurement applies.",
710*c6d7a45dSGunnar Mills                    "excerpt": "SensorArray,SensorFanArray,SensorPowerArray",
711*c6d7a45dSGunnar Mills                    "longDescription": "This property shall contain a description of the usage or sub-region within the equipment to which this sensor measurement applies.  This property generally differentiates multiple sensors within the same `PhysicalContext` instance.",
712*c6d7a45dSGunnar Mills                    "readonly": false
713*c6d7a45dSGunnar Mills                },
714*c6d7a45dSGunnar Mills                "PowerFactor": {
715*c6d7a45dSGunnar Mills                    "description": "The power factor for this sensor.",
716*c6d7a45dSGunnar Mills                    "excerpt": "SensorPower,SensorPowerArray",
717*c6d7a45dSGunnar Mills                    "longDescription": "This property shall identify the quotient of real power (W) and apparent power (VA) for a circuit.  `PowerFactor` is expressed in unit-less 1/100ths.  This property can appear in sensors containing a `ReadingType` value of `Power`, and shall not appear in sensors of other `ReadingType` values.",
718*c6d7a45dSGunnar Mills                    "maximum": 1,
719*c6d7a45dSGunnar Mills                    "minimum": -1,
720*c6d7a45dSGunnar Mills                    "readonly": true,
721*c6d7a45dSGunnar Mills                    "type": [
722*c6d7a45dSGunnar Mills                        "number",
723*c6d7a45dSGunnar Mills                        "null"
724*c6d7a45dSGunnar Mills                    ]
725*c6d7a45dSGunnar Mills                },
726*c6d7a45dSGunnar Mills                "Precision": {
727*c6d7a45dSGunnar Mills                    "description": "The number of significant digits in the reading.",
728*c6d7a45dSGunnar Mills                    "longDescription": "This property shall contain the number of significant digits in the `Reading` property.",
729*c6d7a45dSGunnar Mills                    "readonly": true,
730*c6d7a45dSGunnar Mills                    "type": [
731*c6d7a45dSGunnar Mills                        "number",
732*c6d7a45dSGunnar Mills                        "null"
733*c6d7a45dSGunnar Mills                    ]
734*c6d7a45dSGunnar Mills                },
735*c6d7a45dSGunnar Mills                "ReactiveVAR": {
736*c6d7a45dSGunnar Mills                    "description": "The square root of the difference term of squared apparent VA and squared power (Reading) for a circuit, in VAR units.",
737*c6d7a45dSGunnar Mills                    "excerpt": "SensorPower,SensorPowerArray",
738*c6d7a45dSGunnar Mills                    "longDescription": "This property shall contain the arithmetic mean of product terms of instantaneous voltage and quadrature current measurements calculated over an integer number of line cycles for a circuit.  This property can appear in sensors of the `Power` `ReadingType`, and shall not appear in sensors of other `ReadingType` values.",
739*c6d7a45dSGunnar Mills                    "readonly": true,
740*c6d7a45dSGunnar Mills                    "type": [
741*c6d7a45dSGunnar Mills                        "number",
742*c6d7a45dSGunnar Mills                        "null"
743*c6d7a45dSGunnar Mills                    ],
744*c6d7a45dSGunnar Mills                    "units": "V.A"
745*c6d7a45dSGunnar Mills                },
746*c6d7a45dSGunnar Mills                "ReactivekVARh": {
747*c6d7a45dSGunnar Mills                    "description": "Reactive energy (kVARh).",
748*c6d7a45dSGunnar Mills                    "excerpt": "SensorEnergykWh",
749*c6d7a45dSGunnar Mills                    "longDescription": "This property shall contain the reactive energy, in kilovolt-ampere-hours (reactive) units, for an electrical energy measurement.  This property can appear in sensors with a `ReadingType` containing `EnergykWh`, and shall not appear in sensors with other `ReadingType` values.",
750*c6d7a45dSGunnar Mills                    "readonly": true,
751*c6d7a45dSGunnar Mills                    "type": [
752*c6d7a45dSGunnar Mills                        "number",
753*c6d7a45dSGunnar Mills                        "null"
754*c6d7a45dSGunnar Mills                    ],
755*c6d7a45dSGunnar Mills                    "units": "kV.A.h",
756*c6d7a45dSGunnar Mills                    "versionAdded": "v1_5_0"
757*c6d7a45dSGunnar Mills                },
758*c6d7a45dSGunnar Mills                "Reading": {
759*c6d7a45dSGunnar Mills                    "description": "The sensor value.",
760*c6d7a45dSGunnar Mills                    "excerpt": "Sensor",
761*c6d7a45dSGunnar Mills                    "longDescription": "This property shall contain the sensor value.  This property shall not be returned if the `Enabled` property is supported and contains `false`.",
762*c6d7a45dSGunnar Mills                    "readonly": true,
763*c6d7a45dSGunnar Mills                    "type": [
764*c6d7a45dSGunnar Mills                        "number",
765*c6d7a45dSGunnar Mills                        "null"
766*c6d7a45dSGunnar Mills                    ]
767*c6d7a45dSGunnar Mills                },
768*c6d7a45dSGunnar Mills                "ReadingAccuracy": {
769*c6d7a45dSGunnar Mills                    "description": "Accuracy (+/-) of the reading.",
770*c6d7a45dSGunnar Mills                    "longDescription": "This property shall contain the accuracy of the value of the `Reading` property for this sensor.  The value shall be the absolute value of the maximum deviation of the `Reading` from its actual value.  The value shall be in units that follow the `ReadingUnits` for this sensor.",
771*c6d7a45dSGunnar Mills                    "readonly": true,
772*c6d7a45dSGunnar Mills                    "type": [
773*c6d7a45dSGunnar Mills                        "number",
774*c6d7a45dSGunnar Mills                        "null"
775*c6d7a45dSGunnar Mills                    ],
776*c6d7a45dSGunnar Mills                    "versionAdded": "v1_8_0"
777*c6d7a45dSGunnar Mills                },
778*c6d7a45dSGunnar Mills                "ReadingBasis": {
779*c6d7a45dSGunnar Mills                    "anyOf": [
780*c6d7a45dSGunnar Mills                        {
781*c6d7a45dSGunnar Mills                            "$ref": "#/definitions/ReadingBasisType"
782*c6d7a45dSGunnar Mills                        },
783*c6d7a45dSGunnar Mills                        {
784*c6d7a45dSGunnar Mills                            "type": "null"
785*c6d7a45dSGunnar Mills                        }
786*c6d7a45dSGunnar Mills                    ],
787*c6d7a45dSGunnar Mills                    "description": "The basis for the reading of this sensor.",
788*c6d7a45dSGunnar Mills                    "longDescription": "This property shall indicate the basis or frame of reference for the value of the `Reading` property.  If this property is not present, the value shall be assumed to be `Zero`.",
789*c6d7a45dSGunnar Mills                    "readonly": true,
790*c6d7a45dSGunnar Mills                    "versionAdded": "v1_7_0"
791*c6d7a45dSGunnar Mills                },
792*c6d7a45dSGunnar Mills                "ReadingRangeMax": {
793*c6d7a45dSGunnar Mills                    "description": "The maximum possible value for this sensor.",
794*c6d7a45dSGunnar Mills                    "longDescription": "This property shall indicate the maximum possible value of the `Reading` property for this sensor.  This value is the range of valid readings for this sensor.  Values outside this range are discarded as reading errors.",
795*c6d7a45dSGunnar Mills                    "readonly": true,
796*c6d7a45dSGunnar Mills                    "type": [
797*c6d7a45dSGunnar Mills                        "number",
798*c6d7a45dSGunnar Mills                        "null"
799*c6d7a45dSGunnar Mills                    ]
800*c6d7a45dSGunnar Mills                },
801*c6d7a45dSGunnar Mills                "ReadingRangeMin": {
802*c6d7a45dSGunnar Mills                    "description": "The minimum possible value for this sensor.",
803*c6d7a45dSGunnar Mills                    "longDescription": "This property shall indicate the minimum possible value of the `Reading` property for this sensor.  This value is the range of valid readings for this sensor.  Values outside this range are discarded as reading errors.",
804*c6d7a45dSGunnar Mills                    "readonly": true,
805*c6d7a45dSGunnar Mills                    "type": [
806*c6d7a45dSGunnar Mills                        "number",
807*c6d7a45dSGunnar Mills                        "null"
808*c6d7a45dSGunnar Mills                    ]
809*c6d7a45dSGunnar Mills                },
810*c6d7a45dSGunnar Mills                "ReadingTime": {
811*c6d7a45dSGunnar Mills                    "description": "The date and time that the reading was acquired from the sensor.",
812*c6d7a45dSGunnar Mills                    "format": "date-time",
813*c6d7a45dSGunnar Mills                    "longDescription": "This property shall contain the date and time that the reading data was acquired from the sensor.  This value is used to synchronize readings from multiple sensors and does not represent the time at which the resource was accessed.",
814*c6d7a45dSGunnar Mills                    "readonly": true,
815*c6d7a45dSGunnar Mills                    "type": [
816*c6d7a45dSGunnar Mills                        "string",
817*c6d7a45dSGunnar Mills                        "null"
818*c6d7a45dSGunnar Mills                    ],
819*c6d7a45dSGunnar Mills                    "versionAdded": "v1_1_0"
820*c6d7a45dSGunnar Mills                },
821*c6d7a45dSGunnar Mills                "ReadingType": {
822*c6d7a45dSGunnar Mills                    "anyOf": [
823*c6d7a45dSGunnar Mills                        {
824*c6d7a45dSGunnar Mills                            "$ref": "#/definitions/ReadingType"
825*c6d7a45dSGunnar Mills                        },
826*c6d7a45dSGunnar Mills                        {
827*c6d7a45dSGunnar Mills                            "type": "null"
828*c6d7a45dSGunnar Mills                        }
829*c6d7a45dSGunnar Mills                    ],
830*c6d7a45dSGunnar Mills                    "description": "The type of sensor.",
831*c6d7a45dSGunnar Mills                    "longDescription": "This property shall contain the type of the sensor.",
832*c6d7a45dSGunnar Mills                    "readonly": true
833*c6d7a45dSGunnar Mills                },
834*c6d7a45dSGunnar Mills                "ReadingUnits": {
835*c6d7a45dSGunnar Mills                    "description": "The units of the reading, thresholds, and other reading-related properties in UCUM c/s format.",
836*c6d7a45dSGunnar Mills                    "longDescription": "This property shall contain the units of the sensor's reading, thresholds, and other reading-related properties.  The value shall follow the case-sensitive symbol format defined by the Unified Code for Units of Measure (UCUM), as specified by the 'Units of measure annotation' clause of the Redfish Specification.",
837*c6d7a45dSGunnar Mills                    "readonly": true,
838*c6d7a45dSGunnar Mills                    "type": [
839*c6d7a45dSGunnar Mills                        "string",
840*c6d7a45dSGunnar Mills                        "null"
841*c6d7a45dSGunnar Mills                    ]
842*c6d7a45dSGunnar Mills                },
843*c6d7a45dSGunnar Mills                "RelatedItem": {
844*c6d7a45dSGunnar Mills                    "description": "An array of links to resources or objects that this sensor services.",
845*c6d7a45dSGunnar Mills                    "items": {
846*c6d7a45dSGunnar Mills                        "$ref": "http://redfish.dmtf.org/schemas/v1/odata-v4.json#/definitions/idRef"
847*c6d7a45dSGunnar Mills                    },
848*c6d7a45dSGunnar Mills                    "longDescription": "This property shall contain an array of links to resources or objects that this sensor services.",
849*c6d7a45dSGunnar Mills                    "readonly": false,
850*c6d7a45dSGunnar Mills                    "type": "array",
851*c6d7a45dSGunnar Mills                    "versionAdded": "v1_2_0"
852*c6d7a45dSGunnar Mills                },
853*c6d7a45dSGunnar Mills                "RelatedItem@odata.count": {
854*c6d7a45dSGunnar Mills                    "$ref": "http://redfish.dmtf.org/schemas/v1/odata-v4.json#/definitions/count"
855*c6d7a45dSGunnar Mills                },
856*c6d7a45dSGunnar Mills                "SKU": {
857*c6d7a45dSGunnar Mills                    "description": "The SKU of the sensor.",
858*c6d7a45dSGunnar Mills                    "longDescription": "This property shall contain the stock-keeping unit number for this sensor.  This property is generally used only for replaceable or user-configurable sensors.",
859*c6d7a45dSGunnar Mills                    "readonly": true,
860*c6d7a45dSGunnar Mills                    "type": [
861*c6d7a45dSGunnar Mills                        "string",
862*c6d7a45dSGunnar Mills                        "null"
863*c6d7a45dSGunnar Mills                    ],
864*c6d7a45dSGunnar Mills                    "versionAdded": "v1_9_0"
865*c6d7a45dSGunnar Mills                },
866*c6d7a45dSGunnar Mills                "SensingFrequency": {
867*c6d7a45dSGunnar Mills                    "deprecated": "This property has been deprecated in favor of the `SensingInterval` property, which uses the duration time format for interoperability.",
868*c6d7a45dSGunnar Mills                    "description": "The time interval between readings of the physical sensor.",
869*c6d7a45dSGunnar Mills                    "longDescription": "This property shall contain the time interval between readings of the physical sensor.",
870*c6d7a45dSGunnar Mills                    "readonly": true,
871*c6d7a45dSGunnar Mills                    "type": [
872*c6d7a45dSGunnar Mills                        "number",
873*c6d7a45dSGunnar Mills                        "null"
874*c6d7a45dSGunnar Mills                    ],
875*c6d7a45dSGunnar Mills                    "versionDeprecated": "v1_1_0"
876*c6d7a45dSGunnar Mills                },
877*c6d7a45dSGunnar Mills                "SensingInterval": {
878*c6d7a45dSGunnar Mills                    "description": "The time interval between readings of the sensor.",
879*c6d7a45dSGunnar Mills                    "longDescription": "This property shall contain the time interval between readings of data from the sensor.",
880*c6d7a45dSGunnar Mills                    "pattern": "^P(\\d+D)?(T(\\d+H)?(\\d+M)?(\\d+(.\\d+)?S)?)?$",
881*c6d7a45dSGunnar Mills                    "readonly": true,
882*c6d7a45dSGunnar Mills                    "type": [
883*c6d7a45dSGunnar Mills                        "string",
884*c6d7a45dSGunnar Mills                        "null"
885*c6d7a45dSGunnar Mills                    ],
886*c6d7a45dSGunnar Mills                    "versionAdded": "v1_1_0"
887*c6d7a45dSGunnar Mills                },
888*c6d7a45dSGunnar Mills                "SensorGroup": {
889*c6d7a45dSGunnar Mills                    "$ref": "http://redfish.dmtf.org/schemas/v1/Redundancy.json#/definitions/RedundantGroup",
890*c6d7a45dSGunnar Mills                    "description": "The group of sensors that provide readings for this sensor.",
891*c6d7a45dSGunnar Mills                    "longDescription": "This property shall contain information for a group of sensors that provide input for the value of this sensor's reading.  If this property is present, the `Implementation` property shall contain the value `Synthesized`.  The group may be created for redundancy or to improve the accuracy of the reading through multiple sensor inputs.",
892*c6d7a45dSGunnar Mills                    "versionAdded": "v1_4_0"
893*c6d7a45dSGunnar Mills                },
894*c6d7a45dSGunnar Mills                "SensorResetTime": {
895*c6d7a45dSGunnar Mills                    "description": "The date and time when the time-based properties were last reset.",
896*c6d7a45dSGunnar Mills                    "excerpt": "SensorEnergykWh",
897*c6d7a45dSGunnar Mills                    "format": "date-time",
898*c6d7a45dSGunnar Mills                    "longDescription": "This property shall contain the date and time when the `ResetMetrics` action was last performed or when the service last reset the time-based property values.",
899*c6d7a45dSGunnar Mills                    "readonly": true,
900*c6d7a45dSGunnar Mills                    "type": [
901*c6d7a45dSGunnar Mills                        "string",
902*c6d7a45dSGunnar Mills                        "null"
903*c6d7a45dSGunnar Mills                    ]
904*c6d7a45dSGunnar Mills                },
905*c6d7a45dSGunnar Mills                "SerialNumber": {
906*c6d7a45dSGunnar Mills                    "description": "The serial number of the sensor.",
907*c6d7a45dSGunnar Mills                    "longDescription": "This property shall contain a manufacturer-allocated number that identifies the sensor.  This property is generally used only for replaceable or user-configurable sensors.",
908*c6d7a45dSGunnar Mills                    "readonly": true,
909*c6d7a45dSGunnar Mills                    "type": [
910*c6d7a45dSGunnar Mills                        "string",
911*c6d7a45dSGunnar Mills                        "null"
912*c6d7a45dSGunnar Mills                    ],
913*c6d7a45dSGunnar Mills                    "versionAdded": "v1_9_0"
914*c6d7a45dSGunnar Mills                },
915*c6d7a45dSGunnar Mills                "SparePartNumber": {
916*c6d7a45dSGunnar Mills                    "description": "The spare part number of the sensor.",
917*c6d7a45dSGunnar Mills                    "longDescription": "This property shall contain the spare part number of the sensor.  This property is generally used only for replaceable or user-configurable sensors.",
918*c6d7a45dSGunnar Mills                    "readonly": true,
919*c6d7a45dSGunnar Mills                    "type": [
920*c6d7a45dSGunnar Mills                        "string",
921*c6d7a45dSGunnar Mills                        "null"
922*c6d7a45dSGunnar Mills                    ],
923*c6d7a45dSGunnar Mills                    "versionAdded": "v1_9_0"
924*c6d7a45dSGunnar Mills                },
925*c6d7a45dSGunnar Mills                "SpeedRPM": {
926*c6d7a45dSGunnar Mills                    "description": "The rotational speed.",
927*c6d7a45dSGunnar Mills                    "excerpt": "SensorFan,SensorFanArray,SensorPump",
928*c6d7a45dSGunnar Mills                    "longDescription": "This property shall contain a reading of the rotational speed of the device in revolutions per minute (RPM) units.",
929*c6d7a45dSGunnar Mills                    "readonly": true,
930*c6d7a45dSGunnar Mills                    "type": [
931*c6d7a45dSGunnar Mills                        "number",
932*c6d7a45dSGunnar Mills                        "null"
933*c6d7a45dSGunnar Mills                    ],
934*c6d7a45dSGunnar Mills                    "units": "{rev}/min",
935*c6d7a45dSGunnar Mills                    "versionAdded": "v1_2_0"
936*c6d7a45dSGunnar Mills                },
937*c6d7a45dSGunnar Mills                "Status": {
938*c6d7a45dSGunnar Mills                    "$ref": "http://redfish.dmtf.org/schemas/v1/Resource.json#/definitions/Status",
939*c6d7a45dSGunnar Mills                    "description": "The status and health of the resource and its subordinate or dependent resources.",
940*c6d7a45dSGunnar Mills                    "longDescription": "This property shall contain any status or health properties of the resource."
941*c6d7a45dSGunnar Mills                },
942*c6d7a45dSGunnar Mills                "THDPercent": {
943*c6d7a45dSGunnar Mills                    "description": "The total harmonic distortion percent (% THD).",
944*c6d7a45dSGunnar Mills                    "excerpt": "SensorCurrent,SensorVoltage",
945*c6d7a45dSGunnar Mills                    "longDescription": "This property shall contain the total harmonic distortion of the `Reading` property in percent units, typically `0` to `100`.",
946*c6d7a45dSGunnar Mills                    "minimum": 0,
947*c6d7a45dSGunnar Mills                    "readonly": true,
948*c6d7a45dSGunnar Mills                    "type": [
949*c6d7a45dSGunnar Mills                        "number",
950*c6d7a45dSGunnar Mills                        "null"
951*c6d7a45dSGunnar Mills                    ],
952*c6d7a45dSGunnar Mills                    "units": "%",
953*c6d7a45dSGunnar Mills                    "versionAdded": "v1_1_0"
954*c6d7a45dSGunnar Mills                },
955*c6d7a45dSGunnar Mills                "Thresholds": {
956*c6d7a45dSGunnar Mills                    "$ref": "#/definitions/Thresholds",
957*c6d7a45dSGunnar Mills                    "description": "The set of thresholds defined for this sensor.",
958*c6d7a45dSGunnar Mills                    "longDescription": "This property shall contain the set of thresholds that derive a sensor's health and operational range."
959*c6d7a45dSGunnar Mills                },
960*c6d7a45dSGunnar Mills                "UserLabel": {
961*c6d7a45dSGunnar Mills                    "description": "A user-assigned label.",
962*c6d7a45dSGunnar Mills                    "longDescription": "This property shall contain a user-assigned label used to identify this resource.  This property shall only be present if the sensor can be configured for different purposes, or is dependent on configuration or end-user settings.  This property shall not be present for embedded sensors with defined functions that cannot be altered.  If a value has not been assigned by a user, the value of this property shall be an empty string.",
963*c6d7a45dSGunnar Mills                    "readonly": false,
964*c6d7a45dSGunnar Mills                    "type": "string",
965*c6d7a45dSGunnar Mills                    "versionAdded": "v1_9_0"
966*c6d7a45dSGunnar Mills                },
967*c6d7a45dSGunnar Mills                "VoltageType": {
968*c6d7a45dSGunnar Mills                    "anyOf": [
969*c6d7a45dSGunnar Mills                        {
970*c6d7a45dSGunnar Mills                            "$ref": "http://redfish.dmtf.org/schemas/v1/Sensor.json#/definitions/VoltageType"
971*c6d7a45dSGunnar Mills                        },
972*c6d7a45dSGunnar Mills                        {
973*c6d7a45dSGunnar Mills                            "type": "null"
974*c6d7a45dSGunnar Mills                        }
975*c6d7a45dSGunnar Mills                    ],
976*c6d7a45dSGunnar Mills                    "description": "The voltage type for this sensor.",
977*c6d7a45dSGunnar Mills                    "longDescription": "This property shall represent the type of input voltage the sensor monitors.",
978*c6d7a45dSGunnar Mills                    "readonly": true
979*c6d7a45dSGunnar Mills                }
980*c6d7a45dSGunnar Mills            },
981*c6d7a45dSGunnar Mills            "required": [
982*c6d7a45dSGunnar Mills                "@odata.id",
983*c6d7a45dSGunnar Mills                "@odata.type",
984*c6d7a45dSGunnar Mills                "Id",
985*c6d7a45dSGunnar Mills                "Name"
986*c6d7a45dSGunnar Mills            ],
987*c6d7a45dSGunnar Mills            "type": "object"
988*c6d7a45dSGunnar Mills        },
989*c6d7a45dSGunnar Mills        "SensorArrayExcerpt": {
990*c6d7a45dSGunnar Mills            "additionalProperties": false,
991*c6d7a45dSGunnar Mills            "description": "The `Sensor` schema describes a sensor and its properties.",
992*c6d7a45dSGunnar Mills            "excerpt": "SensorArray",
993*c6d7a45dSGunnar Mills            "longDescription": "This resource shall represent a sensor for a Redfish implementation.",
994*c6d7a45dSGunnar Mills            "patternProperties": {
995*c6d7a45dSGunnar Mills                "^([a-zA-Z_][a-zA-Z0-9_]*)?@(odata|Redfish|Message)\\.[a-zA-Z_][a-zA-Z0-9_]*$": {
996*c6d7a45dSGunnar Mills                    "description": "This property shall specify a valid odata or Redfish property.",
997*c6d7a45dSGunnar Mills                    "type": [
998*c6d7a45dSGunnar Mills                        "array",
999*c6d7a45dSGunnar Mills                        "boolean",
1000*c6d7a45dSGunnar Mills                        "integer",
1001*c6d7a45dSGunnar Mills                        "number",
1002*c6d7a45dSGunnar Mills                        "null",
1003*c6d7a45dSGunnar Mills                        "object",
1004*c6d7a45dSGunnar Mills                        "string"
1005*c6d7a45dSGunnar Mills                    ]
1006*c6d7a45dSGunnar Mills                }
1007*c6d7a45dSGunnar Mills            },
1008*c6d7a45dSGunnar Mills            "properties": {
1009*c6d7a45dSGunnar Mills                "DataSourceUri": {
1010*c6d7a45dSGunnar Mills                    "description": "The link to the resource that provides the data for this sensor.",
1011*c6d7a45dSGunnar Mills                    "excerptCopyOnly": true,
1012*c6d7a45dSGunnar Mills                    "format": "uri-reference",
1013*c6d7a45dSGunnar Mills                    "longDescription": "This property shall contain a URI to the resource that provides the source of the excerpt contained within this copy.",
1014*c6d7a45dSGunnar Mills                    "readonly": true,
1015*c6d7a45dSGunnar Mills                    "type": [
1016*c6d7a45dSGunnar Mills                        "string",
1017*c6d7a45dSGunnar Mills                        "null"
1018*c6d7a45dSGunnar Mills                    ]
1019*c6d7a45dSGunnar Mills                },
1020*c6d7a45dSGunnar Mills                "DeviceName": {
1021*c6d7a45dSGunnar Mills                    "description": "The name of the device.",
1022*c6d7a45dSGunnar Mills                    "excerpt": "SensorArray,SensorFanArray",
1023*c6d7a45dSGunnar Mills                    "excerptCopyOnly": true,
1024*c6d7a45dSGunnar Mills                    "longDescription": "This property shall contain the name of the device associated with this sensor.  If the device is represented by a resource, the value shall contain the value of the `Name` property of the associated resource.",
1025*c6d7a45dSGunnar Mills                    "readonly": true,
1026*c6d7a45dSGunnar Mills                    "type": [
1027*c6d7a45dSGunnar Mills                        "string",
1028*c6d7a45dSGunnar Mills                        "null"
1029*c6d7a45dSGunnar Mills                    ],
1030*c6d7a45dSGunnar Mills                    "versionAdded": "v1_2_0"
1031*c6d7a45dSGunnar Mills                },
1032*c6d7a45dSGunnar Mills                "PhysicalContext": {
1033*c6d7a45dSGunnar Mills                    "anyOf": [
1034*c6d7a45dSGunnar Mills                        {
1035*c6d7a45dSGunnar Mills                            "$ref": "http://redfish.dmtf.org/schemas/v1/PhysicalContext.json#/definitions/PhysicalContext"
1036*c6d7a45dSGunnar Mills                        },
1037*c6d7a45dSGunnar Mills                        {
1038*c6d7a45dSGunnar Mills                            "type": "null"
1039*c6d7a45dSGunnar Mills                        }
1040*c6d7a45dSGunnar Mills                    ],
1041*c6d7a45dSGunnar Mills                    "description": "The area or device to which this sensor measurement applies.",
1042*c6d7a45dSGunnar Mills                    "excerpt": "SensorArray,SensorFanArray,SensorPowerArray",
1043*c6d7a45dSGunnar Mills                    "longDescription": "This property shall contain a description of the affected component or region within the equipment to which this sensor measurement applies.",
1044*c6d7a45dSGunnar Mills                    "readonly": false
1045*c6d7a45dSGunnar Mills                },
1046*c6d7a45dSGunnar Mills                "PhysicalSubContext": {
1047*c6d7a45dSGunnar Mills                    "anyOf": [
1048*c6d7a45dSGunnar Mills                        {
1049*c6d7a45dSGunnar Mills                            "$ref": "http://redfish.dmtf.org/schemas/v1/PhysicalContext.json#/definitions/PhysicalSubContext"
1050*c6d7a45dSGunnar Mills                        },
1051*c6d7a45dSGunnar Mills                        {
1052*c6d7a45dSGunnar Mills                            "type": "null"
1053*c6d7a45dSGunnar Mills                        }
1054*c6d7a45dSGunnar Mills                    ],
1055*c6d7a45dSGunnar Mills                    "description": "The usage or location within a device to which this sensor measurement applies.",
1056*c6d7a45dSGunnar Mills                    "excerpt": "SensorArray,SensorFanArray,SensorPowerArray",
1057*c6d7a45dSGunnar Mills                    "longDescription": "This property shall contain a description of the usage or sub-region within the equipment to which this sensor measurement applies.  This property generally differentiates multiple sensors within the same `PhysicalContext` instance.",
1058*c6d7a45dSGunnar Mills                    "readonly": false
1059*c6d7a45dSGunnar Mills                },
1060*c6d7a45dSGunnar Mills                "Reading": {
1061*c6d7a45dSGunnar Mills                    "description": "The sensor value.",
1062*c6d7a45dSGunnar Mills                    "excerpt": "Sensor",
1063*c6d7a45dSGunnar Mills                    "longDescription": "This property shall contain the sensor value.  This property shall not be returned if the `Enabled` property is supported and contains `false`.",
1064*c6d7a45dSGunnar Mills                    "readonly": true,
1065*c6d7a45dSGunnar Mills                    "type": [
1066*c6d7a45dSGunnar Mills                        "number",
1067*c6d7a45dSGunnar Mills                        "null"
1068*c6d7a45dSGunnar Mills                    ]
1069*c6d7a45dSGunnar Mills                }
1070*c6d7a45dSGunnar Mills            },
1071*c6d7a45dSGunnar Mills            "type": "object"
1072*c6d7a45dSGunnar Mills        },
1073*c6d7a45dSGunnar Mills        "SensorCurrentExcerpt": {
1074*c6d7a45dSGunnar Mills            "additionalProperties": false,
1075*c6d7a45dSGunnar Mills            "description": "The `Sensor` schema describes a sensor and its properties.",
1076*c6d7a45dSGunnar Mills            "excerpt": "SensorCurrent",
1077*c6d7a45dSGunnar Mills            "longDescription": "This resource shall represent a sensor for a Redfish implementation.",
1078*c6d7a45dSGunnar Mills            "patternProperties": {
1079*c6d7a45dSGunnar Mills                "^([a-zA-Z_][a-zA-Z0-9_]*)?@(odata|Redfish|Message)\\.[a-zA-Z_][a-zA-Z0-9_]*$": {
1080*c6d7a45dSGunnar Mills                    "description": "This property shall specify a valid odata or Redfish property.",
1081*c6d7a45dSGunnar Mills                    "type": [
1082*c6d7a45dSGunnar Mills                        "array",
1083*c6d7a45dSGunnar Mills                        "boolean",
1084*c6d7a45dSGunnar Mills                        "integer",
1085*c6d7a45dSGunnar Mills                        "number",
1086*c6d7a45dSGunnar Mills                        "null",
1087*c6d7a45dSGunnar Mills                        "object",
1088*c6d7a45dSGunnar Mills                        "string"
1089*c6d7a45dSGunnar Mills                    ]
1090*c6d7a45dSGunnar Mills                }
1091*c6d7a45dSGunnar Mills            },
1092*c6d7a45dSGunnar Mills            "properties": {
1093*c6d7a45dSGunnar Mills                "CrestFactor": {
1094*c6d7a45dSGunnar Mills                    "description": "The crest factor for this sensor.",
1095*c6d7a45dSGunnar Mills                    "excerpt": "SensorCurrent,SensorVoltage",
1096*c6d7a45dSGunnar Mills                    "longDescription": "This property shall contain the ratio of the peak measurement divided by the RMS measurement and calculated over same N line cycles.  A sine wave would have a value of 1.414.",
1097*c6d7a45dSGunnar Mills                    "readonly": true,
1098*c6d7a45dSGunnar Mills                    "type": [
1099*c6d7a45dSGunnar Mills                        "number",
1100*c6d7a45dSGunnar Mills                        "null"
1101*c6d7a45dSGunnar Mills                    ],
1102*c6d7a45dSGunnar Mills                    "versionAdded": "v1_1_0"
1103*c6d7a45dSGunnar Mills                },
1104*c6d7a45dSGunnar Mills                "DataSourceUri": {
1105*c6d7a45dSGunnar Mills                    "description": "The link to the resource that provides the data for this sensor.",
1106*c6d7a45dSGunnar Mills                    "excerptCopyOnly": true,
1107*c6d7a45dSGunnar Mills                    "format": "uri-reference",
1108*c6d7a45dSGunnar Mills                    "longDescription": "This property shall contain a URI to the resource that provides the source of the excerpt contained within this copy.",
1109*c6d7a45dSGunnar Mills                    "readonly": true,
1110*c6d7a45dSGunnar Mills                    "type": [
1111*c6d7a45dSGunnar Mills                        "string",
1112*c6d7a45dSGunnar Mills                        "null"
1113*c6d7a45dSGunnar Mills                    ]
1114*c6d7a45dSGunnar Mills                },
1115*c6d7a45dSGunnar Mills                "Reading": {
1116*c6d7a45dSGunnar Mills                    "description": "The sensor value.",
1117*c6d7a45dSGunnar Mills                    "excerpt": "Sensor",
1118*c6d7a45dSGunnar Mills                    "longDescription": "This property shall contain the sensor value.  This property shall not be returned if the `Enabled` property is supported and contains `false`.",
1119*c6d7a45dSGunnar Mills                    "readonly": true,
1120*c6d7a45dSGunnar Mills                    "type": [
1121*c6d7a45dSGunnar Mills                        "number",
1122*c6d7a45dSGunnar Mills                        "null"
1123*c6d7a45dSGunnar Mills                    ]
1124*c6d7a45dSGunnar Mills                },
1125*c6d7a45dSGunnar Mills                "THDPercent": {
1126*c6d7a45dSGunnar Mills                    "description": "The total harmonic distortion percent (% THD).",
1127*c6d7a45dSGunnar Mills                    "excerpt": "SensorCurrent,SensorVoltage",
1128*c6d7a45dSGunnar Mills                    "longDescription": "This property shall contain the total harmonic distortion of the `Reading` property in percent units, typically `0` to `100`.",
1129*c6d7a45dSGunnar Mills                    "minimum": 0,
1130*c6d7a45dSGunnar Mills                    "readonly": true,
1131*c6d7a45dSGunnar Mills                    "type": [
1132*c6d7a45dSGunnar Mills                        "number",
1133*c6d7a45dSGunnar Mills                        "null"
1134*c6d7a45dSGunnar Mills                    ],
1135*c6d7a45dSGunnar Mills                    "units": "%",
1136*c6d7a45dSGunnar Mills                    "versionAdded": "v1_1_0"
1137*c6d7a45dSGunnar Mills                }
1138*c6d7a45dSGunnar Mills            },
1139*c6d7a45dSGunnar Mills            "type": "object"
1140*c6d7a45dSGunnar Mills        },
1141*c6d7a45dSGunnar Mills        "SensorEnergykWhExcerpt": {
1142*c6d7a45dSGunnar Mills            "additionalProperties": false,
1143*c6d7a45dSGunnar Mills            "description": "The `Sensor` schema describes a sensor and its properties.",
1144*c6d7a45dSGunnar Mills            "excerpt": "SensorEnergykWh",
1145*c6d7a45dSGunnar Mills            "longDescription": "This resource shall represent a sensor for a Redfish implementation.",
1146*c6d7a45dSGunnar Mills            "patternProperties": {
1147*c6d7a45dSGunnar Mills                "^([a-zA-Z_][a-zA-Z0-9_]*)?@(odata|Redfish|Message)\\.[a-zA-Z_][a-zA-Z0-9_]*$": {
1148*c6d7a45dSGunnar Mills                    "description": "This property shall specify a valid odata or Redfish property.",
1149*c6d7a45dSGunnar Mills                    "type": [
1150*c6d7a45dSGunnar Mills                        "array",
1151*c6d7a45dSGunnar Mills                        "boolean",
1152*c6d7a45dSGunnar Mills                        "integer",
1153*c6d7a45dSGunnar Mills                        "number",
1154*c6d7a45dSGunnar Mills                        "null",
1155*c6d7a45dSGunnar Mills                        "object",
1156*c6d7a45dSGunnar Mills                        "string"
1157*c6d7a45dSGunnar Mills                    ]
1158*c6d7a45dSGunnar Mills                }
1159*c6d7a45dSGunnar Mills            },
1160*c6d7a45dSGunnar Mills            "properties": {
1161*c6d7a45dSGunnar Mills                "ApparentkVAh": {
1162*c6d7a45dSGunnar Mills                    "description": "Apparent energy (kVAh).",
1163*c6d7a45dSGunnar Mills                    "excerpt": "SensorEnergykWh",
1164*c6d7a45dSGunnar Mills                    "longDescription": "This property shall contain the apparent energy, in kilovolt-ampere-hour units, for an electrical energy measurement.  This property can appear in sensors with a `ReadingType` containing `EnergykWh`, and shall not appear in sensors with other `ReadingType` values.",
1165*c6d7a45dSGunnar Mills                    "readonly": true,
1166*c6d7a45dSGunnar Mills                    "type": [
1167*c6d7a45dSGunnar Mills                        "number",
1168*c6d7a45dSGunnar Mills                        "null"
1169*c6d7a45dSGunnar Mills                    ],
1170*c6d7a45dSGunnar Mills                    "units": "kV.A.h",
1171*c6d7a45dSGunnar Mills                    "versionAdded": "v1_5_0"
1172*c6d7a45dSGunnar Mills                },
1173*c6d7a45dSGunnar Mills                "DataSourceUri": {
1174*c6d7a45dSGunnar Mills                    "description": "The link to the resource that provides the data for this sensor.",
1175*c6d7a45dSGunnar Mills                    "excerptCopyOnly": true,
1176*c6d7a45dSGunnar Mills                    "format": "uri-reference",
1177*c6d7a45dSGunnar Mills                    "longDescription": "This property shall contain a URI to the resource that provides the source of the excerpt contained within this copy.",
1178*c6d7a45dSGunnar Mills                    "readonly": true,
1179*c6d7a45dSGunnar Mills                    "type": [
1180*c6d7a45dSGunnar Mills                        "string",
1181*c6d7a45dSGunnar Mills                        "null"
1182*c6d7a45dSGunnar Mills                    ]
1183*c6d7a45dSGunnar Mills                },
1184*c6d7a45dSGunnar Mills                "LifetimeReading": {
1185*c6d7a45dSGunnar Mills                    "description": "The total accumulation value for this sensor.",
1186*c6d7a45dSGunnar Mills                    "excerpt": "SensorEnergykWh",
1187*c6d7a45dSGunnar Mills                    "longDescription": "This property shall contain the total accumulation of the `Reading` property over the sensor's lifetime.  This value shall not be reset by the `ResetMetrics` action.",
1188*c6d7a45dSGunnar Mills                    "readonly": true,
1189*c6d7a45dSGunnar Mills                    "type": [
1190*c6d7a45dSGunnar Mills                        "number",
1191*c6d7a45dSGunnar Mills                        "null"
1192*c6d7a45dSGunnar Mills                    ],
1193*c6d7a45dSGunnar Mills                    "versionAdded": "v1_1_0"
1194*c6d7a45dSGunnar Mills                },
1195*c6d7a45dSGunnar Mills                "ReactivekVARh": {
1196*c6d7a45dSGunnar Mills                    "description": "Reactive energy (kVARh).",
1197*c6d7a45dSGunnar Mills                    "excerpt": "SensorEnergykWh",
1198*c6d7a45dSGunnar Mills                    "longDescription": "This property shall contain the reactive energy, in kilovolt-ampere-hours (reactive) units, for an electrical energy measurement.  This property can appear in sensors with a `ReadingType` containing `EnergykWh`, and shall not appear in sensors with other `ReadingType` values.",
1199*c6d7a45dSGunnar Mills                    "readonly": true,
1200*c6d7a45dSGunnar Mills                    "type": [
1201*c6d7a45dSGunnar Mills                        "number",
1202*c6d7a45dSGunnar Mills                        "null"
1203*c6d7a45dSGunnar Mills                    ],
1204*c6d7a45dSGunnar Mills                    "units": "kV.A.h",
1205*c6d7a45dSGunnar Mills                    "versionAdded": "v1_5_0"
1206*c6d7a45dSGunnar Mills                },
1207*c6d7a45dSGunnar Mills                "Reading": {
1208*c6d7a45dSGunnar Mills                    "description": "The sensor value.",
1209*c6d7a45dSGunnar Mills                    "excerpt": "Sensor",
1210*c6d7a45dSGunnar Mills                    "longDescription": "This property shall contain the sensor value.  This property shall not be returned if the `Enabled` property is supported and contains `false`.",
1211*c6d7a45dSGunnar Mills                    "readonly": true,
1212*c6d7a45dSGunnar Mills                    "type": [
1213*c6d7a45dSGunnar Mills                        "number",
1214*c6d7a45dSGunnar Mills                        "null"
1215*c6d7a45dSGunnar Mills                    ]
1216*c6d7a45dSGunnar Mills                },
1217*c6d7a45dSGunnar Mills                "SensorResetTime": {
1218*c6d7a45dSGunnar Mills                    "description": "The date and time when the time-based properties were last reset.",
1219*c6d7a45dSGunnar Mills                    "excerpt": "SensorEnergykWh",
1220*c6d7a45dSGunnar Mills                    "format": "date-time",
1221*c6d7a45dSGunnar Mills                    "longDescription": "This property shall contain the date and time when the `ResetMetrics` action was last performed or when the service last reset the time-based property values.",
1222*c6d7a45dSGunnar Mills                    "readonly": true,
1223*c6d7a45dSGunnar Mills                    "type": [
1224*c6d7a45dSGunnar Mills                        "string",
1225*c6d7a45dSGunnar Mills                        "null"
1226*c6d7a45dSGunnar Mills                    ]
1227*c6d7a45dSGunnar Mills                }
1228*c6d7a45dSGunnar Mills            },
1229*c6d7a45dSGunnar Mills            "type": "object"
1230*c6d7a45dSGunnar Mills        },
1231*c6d7a45dSGunnar Mills        "SensorExcerpt": {
1232*c6d7a45dSGunnar Mills            "additionalProperties": false,
1233*c6d7a45dSGunnar Mills            "description": "The `Sensor` schema describes a sensor and its properties.",
1234*c6d7a45dSGunnar Mills            "excerpt": "Sensor",
1235*c6d7a45dSGunnar Mills            "longDescription": "This resource shall represent a sensor for a Redfish implementation.",
1236*c6d7a45dSGunnar Mills            "patternProperties": {
1237*c6d7a45dSGunnar Mills                "^([a-zA-Z_][a-zA-Z0-9_]*)?@(odata|Redfish|Message)\\.[a-zA-Z_][a-zA-Z0-9_]*$": {
1238*c6d7a45dSGunnar Mills                    "description": "This property shall specify a valid odata or Redfish property.",
1239*c6d7a45dSGunnar Mills                    "type": [
1240*c6d7a45dSGunnar Mills                        "array",
1241*c6d7a45dSGunnar Mills                        "boolean",
1242*c6d7a45dSGunnar Mills                        "integer",
1243*c6d7a45dSGunnar Mills                        "number",
1244*c6d7a45dSGunnar Mills                        "null",
1245*c6d7a45dSGunnar Mills                        "object",
1246*c6d7a45dSGunnar Mills                        "string"
1247*c6d7a45dSGunnar Mills                    ]
1248*c6d7a45dSGunnar Mills                }
1249*c6d7a45dSGunnar Mills            },
1250*c6d7a45dSGunnar Mills            "properties": {
1251*c6d7a45dSGunnar Mills                "DataSourceUri": {
1252*c6d7a45dSGunnar Mills                    "description": "The link to the resource that provides the data for this sensor.",
1253*c6d7a45dSGunnar Mills                    "excerptCopyOnly": true,
1254*c6d7a45dSGunnar Mills                    "format": "uri-reference",
1255*c6d7a45dSGunnar Mills                    "longDescription": "This property shall contain a URI to the resource that provides the source of the excerpt contained within this copy.",
1256*c6d7a45dSGunnar Mills                    "readonly": true,
1257*c6d7a45dSGunnar Mills                    "type": [
1258*c6d7a45dSGunnar Mills                        "string",
1259*c6d7a45dSGunnar Mills                        "null"
1260*c6d7a45dSGunnar Mills                    ]
1261*c6d7a45dSGunnar Mills                },
1262*c6d7a45dSGunnar Mills                "Reading": {
1263*c6d7a45dSGunnar Mills                    "description": "The sensor value.",
1264*c6d7a45dSGunnar Mills                    "excerpt": "Sensor",
1265*c6d7a45dSGunnar Mills                    "longDescription": "This property shall contain the sensor value.  This property shall not be returned if the `Enabled` property is supported and contains `false`.",
1266*c6d7a45dSGunnar Mills                    "readonly": true,
1267*c6d7a45dSGunnar Mills                    "type": [
1268*c6d7a45dSGunnar Mills                        "number",
1269*c6d7a45dSGunnar Mills                        "null"
1270*c6d7a45dSGunnar Mills                    ]
1271*c6d7a45dSGunnar Mills                }
1272*c6d7a45dSGunnar Mills            },
1273*c6d7a45dSGunnar Mills            "type": "object"
1274*c6d7a45dSGunnar Mills        },
1275*c6d7a45dSGunnar Mills        "SensorFanArrayExcerpt": {
1276*c6d7a45dSGunnar Mills            "additionalProperties": false,
1277*c6d7a45dSGunnar Mills            "description": "The `Sensor` schema describes a sensor and its properties.",
1278*c6d7a45dSGunnar Mills            "excerpt": "SensorFanArray",
1279*c6d7a45dSGunnar Mills            "longDescription": "This resource shall represent a sensor for a Redfish implementation.",
1280*c6d7a45dSGunnar Mills            "patternProperties": {
1281*c6d7a45dSGunnar Mills                "^([a-zA-Z_][a-zA-Z0-9_]*)?@(odata|Redfish|Message)\\.[a-zA-Z_][a-zA-Z0-9_]*$": {
1282*c6d7a45dSGunnar Mills                    "description": "This property shall specify a valid odata or Redfish property.",
1283*c6d7a45dSGunnar Mills                    "type": [
1284*c6d7a45dSGunnar Mills                        "array",
1285*c6d7a45dSGunnar Mills                        "boolean",
1286*c6d7a45dSGunnar Mills                        "integer",
1287*c6d7a45dSGunnar Mills                        "number",
1288*c6d7a45dSGunnar Mills                        "null",
1289*c6d7a45dSGunnar Mills                        "object",
1290*c6d7a45dSGunnar Mills                        "string"
1291*c6d7a45dSGunnar Mills                    ]
1292*c6d7a45dSGunnar Mills                }
1293*c6d7a45dSGunnar Mills            },
1294*c6d7a45dSGunnar Mills            "properties": {
1295*c6d7a45dSGunnar Mills                "DataSourceUri": {
1296*c6d7a45dSGunnar Mills                    "description": "The link to the resource that provides the data for this sensor.",
1297*c6d7a45dSGunnar Mills                    "excerptCopyOnly": true,
1298*c6d7a45dSGunnar Mills                    "format": "uri-reference",
1299*c6d7a45dSGunnar Mills                    "longDescription": "This property shall contain a URI to the resource that provides the source of the excerpt contained within this copy.",
1300*c6d7a45dSGunnar Mills                    "readonly": true,
1301*c6d7a45dSGunnar Mills                    "type": [
1302*c6d7a45dSGunnar Mills                        "string",
1303*c6d7a45dSGunnar Mills                        "null"
1304*c6d7a45dSGunnar Mills                    ]
1305*c6d7a45dSGunnar Mills                },
1306*c6d7a45dSGunnar Mills                "DeviceName": {
1307*c6d7a45dSGunnar Mills                    "description": "The name of the device.",
1308*c6d7a45dSGunnar Mills                    "excerpt": "SensorArray,SensorFanArray",
1309*c6d7a45dSGunnar Mills                    "excerptCopyOnly": true,
1310*c6d7a45dSGunnar Mills                    "longDescription": "This property shall contain the name of the device associated with this sensor.  If the device is represented by a resource, the value shall contain the value of the `Name` property of the associated resource.",
1311*c6d7a45dSGunnar Mills                    "readonly": true,
1312*c6d7a45dSGunnar Mills                    "type": [
1313*c6d7a45dSGunnar Mills                        "string",
1314*c6d7a45dSGunnar Mills                        "null"
1315*c6d7a45dSGunnar Mills                    ],
1316*c6d7a45dSGunnar Mills                    "versionAdded": "v1_2_0"
1317*c6d7a45dSGunnar Mills                },
1318*c6d7a45dSGunnar Mills                "PhysicalContext": {
1319*c6d7a45dSGunnar Mills                    "anyOf": [
1320*c6d7a45dSGunnar Mills                        {
1321*c6d7a45dSGunnar Mills                            "$ref": "http://redfish.dmtf.org/schemas/v1/PhysicalContext.json#/definitions/PhysicalContext"
1322*c6d7a45dSGunnar Mills                        },
1323*c6d7a45dSGunnar Mills                        {
1324*c6d7a45dSGunnar Mills                            "type": "null"
1325*c6d7a45dSGunnar Mills                        }
1326*c6d7a45dSGunnar Mills                    ],
1327*c6d7a45dSGunnar Mills                    "description": "The area or device to which this sensor measurement applies.",
1328*c6d7a45dSGunnar Mills                    "excerpt": "SensorArray,SensorFanArray,SensorPowerArray",
1329*c6d7a45dSGunnar Mills                    "longDescription": "This property shall contain a description of the affected component or region within the equipment to which this sensor measurement applies.",
1330*c6d7a45dSGunnar Mills                    "readonly": false
1331*c6d7a45dSGunnar Mills                },
1332*c6d7a45dSGunnar Mills                "PhysicalSubContext": {
1333*c6d7a45dSGunnar Mills                    "anyOf": [
1334*c6d7a45dSGunnar Mills                        {
1335*c6d7a45dSGunnar Mills                            "$ref": "http://redfish.dmtf.org/schemas/v1/PhysicalContext.json#/definitions/PhysicalSubContext"
1336*c6d7a45dSGunnar Mills                        },
1337*c6d7a45dSGunnar Mills                        {
1338*c6d7a45dSGunnar Mills                            "type": "null"
1339*c6d7a45dSGunnar Mills                        }
1340*c6d7a45dSGunnar Mills                    ],
1341*c6d7a45dSGunnar Mills                    "description": "The usage or location within a device to which this sensor measurement applies.",
1342*c6d7a45dSGunnar Mills                    "excerpt": "SensorArray,SensorFanArray,SensorPowerArray",
1343*c6d7a45dSGunnar Mills                    "longDescription": "This property shall contain a description of the usage or sub-region within the equipment to which this sensor measurement applies.  This property generally differentiates multiple sensors within the same `PhysicalContext` instance.",
1344*c6d7a45dSGunnar Mills                    "readonly": false
1345*c6d7a45dSGunnar Mills                },
1346*c6d7a45dSGunnar Mills                "Reading": {
1347*c6d7a45dSGunnar Mills                    "description": "The sensor value.",
1348*c6d7a45dSGunnar Mills                    "excerpt": "Sensor",
1349*c6d7a45dSGunnar Mills                    "longDescription": "This property shall contain the sensor value.  This property shall not be returned if the `Enabled` property is supported and contains `false`.",
1350*c6d7a45dSGunnar Mills                    "readonly": true,
1351*c6d7a45dSGunnar Mills                    "type": [
1352*c6d7a45dSGunnar Mills                        "number",
1353*c6d7a45dSGunnar Mills                        "null"
1354*c6d7a45dSGunnar Mills                    ]
1355*c6d7a45dSGunnar Mills                },
1356*c6d7a45dSGunnar Mills                "SpeedRPM": {
1357*c6d7a45dSGunnar Mills                    "description": "The rotational speed.",
1358*c6d7a45dSGunnar Mills                    "excerpt": "SensorFan,SensorFanArray,SensorPump",
1359*c6d7a45dSGunnar Mills                    "longDescription": "This property shall contain a reading of the rotational speed of the device in revolutions per minute (RPM) units.",
1360*c6d7a45dSGunnar Mills                    "readonly": true,
1361*c6d7a45dSGunnar Mills                    "type": [
1362*c6d7a45dSGunnar Mills                        "number",
1363*c6d7a45dSGunnar Mills                        "null"
1364*c6d7a45dSGunnar Mills                    ],
1365*c6d7a45dSGunnar Mills                    "units": "{rev}/min",
1366*c6d7a45dSGunnar Mills                    "versionAdded": "v1_2_0"
1367*c6d7a45dSGunnar Mills                }
1368*c6d7a45dSGunnar Mills            },
1369*c6d7a45dSGunnar Mills            "type": "object"
1370*c6d7a45dSGunnar Mills        },
1371*c6d7a45dSGunnar Mills        "SensorFanExcerpt": {
1372*c6d7a45dSGunnar Mills            "additionalProperties": false,
1373*c6d7a45dSGunnar Mills            "description": "The `Sensor` schema describes a sensor and its properties.",
1374*c6d7a45dSGunnar Mills            "excerpt": "SensorFan",
1375*c6d7a45dSGunnar Mills            "longDescription": "This resource shall represent a sensor for a Redfish implementation.",
1376*c6d7a45dSGunnar Mills            "patternProperties": {
1377*c6d7a45dSGunnar Mills                "^([a-zA-Z_][a-zA-Z0-9_]*)?@(odata|Redfish|Message)\\.[a-zA-Z_][a-zA-Z0-9_]*$": {
1378*c6d7a45dSGunnar Mills                    "description": "This property shall specify a valid odata or Redfish property.",
1379*c6d7a45dSGunnar Mills                    "type": [
1380*c6d7a45dSGunnar Mills                        "array",
1381*c6d7a45dSGunnar Mills                        "boolean",
1382*c6d7a45dSGunnar Mills                        "integer",
1383*c6d7a45dSGunnar Mills                        "number",
1384*c6d7a45dSGunnar Mills                        "null",
1385*c6d7a45dSGunnar Mills                        "object",
1386*c6d7a45dSGunnar Mills                        "string"
1387*c6d7a45dSGunnar Mills                    ]
1388*c6d7a45dSGunnar Mills                }
1389*c6d7a45dSGunnar Mills            },
1390*c6d7a45dSGunnar Mills            "properties": {
1391*c6d7a45dSGunnar Mills                "DataSourceUri": {
1392*c6d7a45dSGunnar Mills                    "description": "The link to the resource that provides the data for this sensor.",
1393*c6d7a45dSGunnar Mills                    "excerptCopyOnly": true,
1394*c6d7a45dSGunnar Mills                    "format": "uri-reference",
1395*c6d7a45dSGunnar Mills                    "longDescription": "This property shall contain a URI to the resource that provides the source of the excerpt contained within this copy.",
1396*c6d7a45dSGunnar Mills                    "readonly": true,
1397*c6d7a45dSGunnar Mills                    "type": [
1398*c6d7a45dSGunnar Mills                        "string",
1399*c6d7a45dSGunnar Mills                        "null"
1400*c6d7a45dSGunnar Mills                    ]
1401*c6d7a45dSGunnar Mills                },
1402*c6d7a45dSGunnar Mills                "Reading": {
1403*c6d7a45dSGunnar Mills                    "description": "The sensor value.",
1404*c6d7a45dSGunnar Mills                    "excerpt": "Sensor",
1405*c6d7a45dSGunnar Mills                    "longDescription": "This property shall contain the sensor value.  This property shall not be returned if the `Enabled` property is supported and contains `false`.",
1406*c6d7a45dSGunnar Mills                    "readonly": true,
1407*c6d7a45dSGunnar Mills                    "type": [
1408*c6d7a45dSGunnar Mills                        "number",
1409*c6d7a45dSGunnar Mills                        "null"
1410*c6d7a45dSGunnar Mills                    ]
1411*c6d7a45dSGunnar Mills                },
1412*c6d7a45dSGunnar Mills                "SpeedRPM": {
1413*c6d7a45dSGunnar Mills                    "description": "The rotational speed.",
1414*c6d7a45dSGunnar Mills                    "excerpt": "SensorFan,SensorFanArray,SensorPump",
1415*c6d7a45dSGunnar Mills                    "longDescription": "This property shall contain a reading of the rotational speed of the device in revolutions per minute (RPM) units.",
1416*c6d7a45dSGunnar Mills                    "readonly": true,
1417*c6d7a45dSGunnar Mills                    "type": [
1418*c6d7a45dSGunnar Mills                        "number",
1419*c6d7a45dSGunnar Mills                        "null"
1420*c6d7a45dSGunnar Mills                    ],
1421*c6d7a45dSGunnar Mills                    "units": "{rev}/min",
1422*c6d7a45dSGunnar Mills                    "versionAdded": "v1_2_0"
1423*c6d7a45dSGunnar Mills                }
1424*c6d7a45dSGunnar Mills            },
1425*c6d7a45dSGunnar Mills            "type": "object"
1426*c6d7a45dSGunnar Mills        },
1427*c6d7a45dSGunnar Mills        "SensorPowerArrayExcerpt": {
1428*c6d7a45dSGunnar Mills            "additionalProperties": false,
1429*c6d7a45dSGunnar Mills            "description": "The `Sensor` schema describes a sensor and its properties.",
1430*c6d7a45dSGunnar Mills            "excerpt": "SensorPowerArray",
1431*c6d7a45dSGunnar Mills            "longDescription": "This resource shall represent a sensor for a Redfish implementation.",
1432*c6d7a45dSGunnar Mills            "patternProperties": {
1433*c6d7a45dSGunnar Mills                "^([a-zA-Z_][a-zA-Z0-9_]*)?@(odata|Redfish|Message)\\.[a-zA-Z_][a-zA-Z0-9_]*$": {
1434*c6d7a45dSGunnar Mills                    "description": "This property shall specify a valid odata or Redfish property.",
1435*c6d7a45dSGunnar Mills                    "type": [
1436*c6d7a45dSGunnar Mills                        "array",
1437*c6d7a45dSGunnar Mills                        "boolean",
1438*c6d7a45dSGunnar Mills                        "integer",
1439*c6d7a45dSGunnar Mills                        "number",
1440*c6d7a45dSGunnar Mills                        "null",
1441*c6d7a45dSGunnar Mills                        "object",
1442*c6d7a45dSGunnar Mills                        "string"
1443*c6d7a45dSGunnar Mills                    ]
1444*c6d7a45dSGunnar Mills                }
1445*c6d7a45dSGunnar Mills            },
1446*c6d7a45dSGunnar Mills            "properties": {
1447*c6d7a45dSGunnar Mills                "ApparentVA": {
1448*c6d7a45dSGunnar Mills                    "description": "The product of voltage and current for an AC circuit, in volt-ampere units.",
1449*c6d7a45dSGunnar Mills                    "excerpt": "SensorPower,SensorPowerArray",
1450*c6d7a45dSGunnar Mills                    "longDescription": "This property shall contain the product of voltage (RMS) multiplied by current (RMS) for a circuit.  This property can appear in sensors of the `Power` `ReadingType`, and shall not appear in sensors of other `ReadingType` values.",
1451*c6d7a45dSGunnar Mills                    "readonly": true,
1452*c6d7a45dSGunnar Mills                    "type": [
1453*c6d7a45dSGunnar Mills                        "number",
1454*c6d7a45dSGunnar Mills                        "null"
1455*c6d7a45dSGunnar Mills                    ],
1456*c6d7a45dSGunnar Mills                    "units": "V.A"
1457*c6d7a45dSGunnar Mills                },
1458*c6d7a45dSGunnar Mills                "DataSourceUri": {
1459*c6d7a45dSGunnar Mills                    "description": "The link to the resource that provides the data for this sensor.",
1460*c6d7a45dSGunnar Mills                    "excerptCopyOnly": true,
1461*c6d7a45dSGunnar Mills                    "format": "uri-reference",
1462*c6d7a45dSGunnar Mills                    "longDescription": "This property shall contain a URI to the resource that provides the source of the excerpt contained within this copy.",
1463*c6d7a45dSGunnar Mills                    "readonly": true,
1464*c6d7a45dSGunnar Mills                    "type": [
1465*c6d7a45dSGunnar Mills                        "string",
1466*c6d7a45dSGunnar Mills                        "null"
1467*c6d7a45dSGunnar Mills                    ]
1468*c6d7a45dSGunnar Mills                },
1469*c6d7a45dSGunnar Mills                "PhaseAngleDegrees": {
1470*c6d7a45dSGunnar Mills                    "description": "The phase angle (degrees) between the current and voltage waveforms.",
1471*c6d7a45dSGunnar Mills                    "excerpt": "SensorPower,SensorPowerArray",
1472*c6d7a45dSGunnar Mills                    "longDescription": "This property shall contain the phase angle, in degree units, between the current and voltage waveforms for an electrical measurement.  This property can appear in sensors with a `ReadingType` containing `Power`, and shall not appear in sensors with other `ReadingType` values.",
1473*c6d7a45dSGunnar Mills                    "maximum": 90,
1474*c6d7a45dSGunnar Mills                    "minimum": -90,
1475*c6d7a45dSGunnar Mills                    "readonly": true,
1476*c6d7a45dSGunnar Mills                    "type": [
1477*c6d7a45dSGunnar Mills                        "number",
1478*c6d7a45dSGunnar Mills                        "null"
1479*c6d7a45dSGunnar Mills                    ],
1480*c6d7a45dSGunnar Mills                    "versionAdded": "v1_5_0"
1481*c6d7a45dSGunnar Mills                },
1482*c6d7a45dSGunnar Mills                "PhysicalContext": {
1483*c6d7a45dSGunnar Mills                    "anyOf": [
1484*c6d7a45dSGunnar Mills                        {
1485*c6d7a45dSGunnar Mills                            "$ref": "http://redfish.dmtf.org/schemas/v1/PhysicalContext.json#/definitions/PhysicalContext"
1486*c6d7a45dSGunnar Mills                        },
1487*c6d7a45dSGunnar Mills                        {
1488*c6d7a45dSGunnar Mills                            "type": "null"
1489*c6d7a45dSGunnar Mills                        }
1490*c6d7a45dSGunnar Mills                    ],
1491*c6d7a45dSGunnar Mills                    "description": "The area or device to which this sensor measurement applies.",
1492*c6d7a45dSGunnar Mills                    "excerpt": "SensorArray,SensorFanArray,SensorPowerArray",
1493*c6d7a45dSGunnar Mills                    "longDescription": "This property shall contain a description of the affected component or region within the equipment to which this sensor measurement applies.",
1494*c6d7a45dSGunnar Mills                    "readonly": false
1495*c6d7a45dSGunnar Mills                },
1496*c6d7a45dSGunnar Mills                "PhysicalSubContext": {
1497*c6d7a45dSGunnar Mills                    "anyOf": [
1498*c6d7a45dSGunnar Mills                        {
1499*c6d7a45dSGunnar Mills                            "$ref": "http://redfish.dmtf.org/schemas/v1/PhysicalContext.json#/definitions/PhysicalSubContext"
1500*c6d7a45dSGunnar Mills                        },
1501*c6d7a45dSGunnar Mills                        {
1502*c6d7a45dSGunnar Mills                            "type": "null"
1503*c6d7a45dSGunnar Mills                        }
1504*c6d7a45dSGunnar Mills                    ],
1505*c6d7a45dSGunnar Mills                    "description": "The usage or location within a device to which this sensor measurement applies.",
1506*c6d7a45dSGunnar Mills                    "excerpt": "SensorArray,SensorFanArray,SensorPowerArray",
1507*c6d7a45dSGunnar Mills                    "longDescription": "This property shall contain a description of the usage or sub-region within the equipment to which this sensor measurement applies.  This property generally differentiates multiple sensors within the same `PhysicalContext` instance.",
1508*c6d7a45dSGunnar Mills                    "readonly": false
1509*c6d7a45dSGunnar Mills                },
1510*c6d7a45dSGunnar Mills                "PowerFactor": {
1511*c6d7a45dSGunnar Mills                    "description": "The power factor for this sensor.",
1512*c6d7a45dSGunnar Mills                    "excerpt": "SensorPower,SensorPowerArray",
1513*c6d7a45dSGunnar Mills                    "longDescription": "This property shall identify the quotient of real power (W) and apparent power (VA) for a circuit.  `PowerFactor` is expressed in unit-less 1/100ths.  This property can appear in sensors containing a `ReadingType` value of `Power`, and shall not appear in sensors of other `ReadingType` values.",
1514*c6d7a45dSGunnar Mills                    "maximum": 1,
1515*c6d7a45dSGunnar Mills                    "minimum": -1,
1516*c6d7a45dSGunnar Mills                    "readonly": true,
1517*c6d7a45dSGunnar Mills                    "type": [
1518*c6d7a45dSGunnar Mills                        "number",
1519*c6d7a45dSGunnar Mills                        "null"
1520*c6d7a45dSGunnar Mills                    ]
1521*c6d7a45dSGunnar Mills                },
1522*c6d7a45dSGunnar Mills                "ReactiveVAR": {
1523*c6d7a45dSGunnar Mills                    "description": "The square root of the difference term of squared apparent VA and squared power (Reading) for a circuit, in VAR units.",
1524*c6d7a45dSGunnar Mills                    "excerpt": "SensorPower,SensorPowerArray",
1525*c6d7a45dSGunnar Mills                    "longDescription": "This property shall contain the arithmetic mean of product terms of instantaneous voltage and quadrature current measurements calculated over an integer number of line cycles for a circuit.  This property can appear in sensors of the `Power` `ReadingType`, and shall not appear in sensors of other `ReadingType` values.",
1526*c6d7a45dSGunnar Mills                    "readonly": true,
1527*c6d7a45dSGunnar Mills                    "type": [
1528*c6d7a45dSGunnar Mills                        "number",
1529*c6d7a45dSGunnar Mills                        "null"
1530*c6d7a45dSGunnar Mills                    ],
1531*c6d7a45dSGunnar Mills                    "units": "V.A"
1532*c6d7a45dSGunnar Mills                },
1533*c6d7a45dSGunnar Mills                "Reading": {
1534*c6d7a45dSGunnar Mills                    "description": "The sensor value.",
1535*c6d7a45dSGunnar Mills                    "excerpt": "Sensor",
1536*c6d7a45dSGunnar Mills                    "longDescription": "This property shall contain the sensor value.  This property shall not be returned if the `Enabled` property is supported and contains `false`.",
1537*c6d7a45dSGunnar Mills                    "readonly": true,
1538*c6d7a45dSGunnar Mills                    "type": [
1539*c6d7a45dSGunnar Mills                        "number",
1540*c6d7a45dSGunnar Mills                        "null"
1541*c6d7a45dSGunnar Mills                    ]
1542*c6d7a45dSGunnar Mills                }
1543*c6d7a45dSGunnar Mills            },
1544*c6d7a45dSGunnar Mills            "type": "object"
1545*c6d7a45dSGunnar Mills        },
1546*c6d7a45dSGunnar Mills        "SensorPowerExcerpt": {
1547*c6d7a45dSGunnar Mills            "additionalProperties": false,
1548*c6d7a45dSGunnar Mills            "description": "The `Sensor` schema describes a sensor and its properties.",
1549*c6d7a45dSGunnar Mills            "excerpt": "SensorPower",
1550*c6d7a45dSGunnar Mills            "longDescription": "This resource shall represent a sensor for a Redfish implementation.",
1551*c6d7a45dSGunnar Mills            "patternProperties": {
1552*c6d7a45dSGunnar Mills                "^([a-zA-Z_][a-zA-Z0-9_]*)?@(odata|Redfish|Message)\\.[a-zA-Z_][a-zA-Z0-9_]*$": {
1553*c6d7a45dSGunnar Mills                    "description": "This property shall specify a valid odata or Redfish property.",
1554*c6d7a45dSGunnar Mills                    "type": [
1555*c6d7a45dSGunnar Mills                        "array",
1556*c6d7a45dSGunnar Mills                        "boolean",
1557*c6d7a45dSGunnar Mills                        "integer",
1558*c6d7a45dSGunnar Mills                        "number",
1559*c6d7a45dSGunnar Mills                        "null",
1560*c6d7a45dSGunnar Mills                        "object",
1561*c6d7a45dSGunnar Mills                        "string"
1562*c6d7a45dSGunnar Mills                    ]
1563*c6d7a45dSGunnar Mills                }
1564*c6d7a45dSGunnar Mills            },
1565*c6d7a45dSGunnar Mills            "properties": {
1566*c6d7a45dSGunnar Mills                "ApparentVA": {
1567*c6d7a45dSGunnar Mills                    "description": "The product of voltage and current for an AC circuit, in volt-ampere units.",
1568*c6d7a45dSGunnar Mills                    "excerpt": "SensorPower,SensorPowerArray",
1569*c6d7a45dSGunnar Mills                    "longDescription": "This property shall contain the product of voltage (RMS) multiplied by current (RMS) for a circuit.  This property can appear in sensors of the `Power` `ReadingType`, and shall not appear in sensors of other `ReadingType` values.",
1570*c6d7a45dSGunnar Mills                    "readonly": true,
1571*c6d7a45dSGunnar Mills                    "type": [
1572*c6d7a45dSGunnar Mills                        "number",
1573*c6d7a45dSGunnar Mills                        "null"
1574*c6d7a45dSGunnar Mills                    ],
1575*c6d7a45dSGunnar Mills                    "units": "V.A"
1576*c6d7a45dSGunnar Mills                },
1577*c6d7a45dSGunnar Mills                "DataSourceUri": {
1578*c6d7a45dSGunnar Mills                    "description": "The link to the resource that provides the data for this sensor.",
1579*c6d7a45dSGunnar Mills                    "excerptCopyOnly": true,
1580*c6d7a45dSGunnar Mills                    "format": "uri-reference",
1581*c6d7a45dSGunnar Mills                    "longDescription": "This property shall contain a URI to the resource that provides the source of the excerpt contained within this copy.",
1582*c6d7a45dSGunnar Mills                    "readonly": true,
1583*c6d7a45dSGunnar Mills                    "type": [
1584*c6d7a45dSGunnar Mills                        "string",
1585*c6d7a45dSGunnar Mills                        "null"
1586*c6d7a45dSGunnar Mills                    ]
1587*c6d7a45dSGunnar Mills                },
1588*c6d7a45dSGunnar Mills                "PhaseAngleDegrees": {
1589*c6d7a45dSGunnar Mills                    "description": "The phase angle (degrees) between the current and voltage waveforms.",
1590*c6d7a45dSGunnar Mills                    "excerpt": "SensorPower,SensorPowerArray",
1591*c6d7a45dSGunnar Mills                    "longDescription": "This property shall contain the phase angle, in degree units, between the current and voltage waveforms for an electrical measurement.  This property can appear in sensors with a `ReadingType` containing `Power`, and shall not appear in sensors with other `ReadingType` values.",
1592*c6d7a45dSGunnar Mills                    "maximum": 90,
1593*c6d7a45dSGunnar Mills                    "minimum": -90,
1594*c6d7a45dSGunnar Mills                    "readonly": true,
1595*c6d7a45dSGunnar Mills                    "type": [
1596*c6d7a45dSGunnar Mills                        "number",
1597*c6d7a45dSGunnar Mills                        "null"
1598*c6d7a45dSGunnar Mills                    ],
1599*c6d7a45dSGunnar Mills                    "versionAdded": "v1_5_0"
1600*c6d7a45dSGunnar Mills                },
1601*c6d7a45dSGunnar Mills                "PowerFactor": {
1602*c6d7a45dSGunnar Mills                    "description": "The power factor for this sensor.",
1603*c6d7a45dSGunnar Mills                    "excerpt": "SensorPower,SensorPowerArray",
1604*c6d7a45dSGunnar Mills                    "longDescription": "This property shall identify the quotient of real power (W) and apparent power (VA) for a circuit.  `PowerFactor` is expressed in unit-less 1/100ths.  This property can appear in sensors containing a `ReadingType` value of `Power`, and shall not appear in sensors of other `ReadingType` values.",
1605*c6d7a45dSGunnar Mills                    "maximum": 1,
1606*c6d7a45dSGunnar Mills                    "minimum": -1,
1607*c6d7a45dSGunnar Mills                    "readonly": true,
1608*c6d7a45dSGunnar Mills                    "type": [
1609*c6d7a45dSGunnar Mills                        "number",
1610*c6d7a45dSGunnar Mills                        "null"
1611*c6d7a45dSGunnar Mills                    ]
1612*c6d7a45dSGunnar Mills                },
1613*c6d7a45dSGunnar Mills                "ReactiveVAR": {
1614*c6d7a45dSGunnar Mills                    "description": "The square root of the difference term of squared apparent VA and squared power (Reading) for a circuit, in VAR units.",
1615*c6d7a45dSGunnar Mills                    "excerpt": "SensorPower,SensorPowerArray",
1616*c6d7a45dSGunnar Mills                    "longDescription": "This property shall contain the arithmetic mean of product terms of instantaneous voltage and quadrature current measurements calculated over an integer number of line cycles for a circuit.  This property can appear in sensors of the `Power` `ReadingType`, and shall not appear in sensors of other `ReadingType` values.",
1617*c6d7a45dSGunnar Mills                    "readonly": true,
1618*c6d7a45dSGunnar Mills                    "type": [
1619*c6d7a45dSGunnar Mills                        "number",
1620*c6d7a45dSGunnar Mills                        "null"
1621*c6d7a45dSGunnar Mills                    ],
1622*c6d7a45dSGunnar Mills                    "units": "V.A"
1623*c6d7a45dSGunnar Mills                },
1624*c6d7a45dSGunnar Mills                "Reading": {
1625*c6d7a45dSGunnar Mills                    "description": "The sensor value.",
1626*c6d7a45dSGunnar Mills                    "excerpt": "Sensor",
1627*c6d7a45dSGunnar Mills                    "longDescription": "This property shall contain the sensor value.  This property shall not be returned if the `Enabled` property is supported and contains `false`.",
1628*c6d7a45dSGunnar Mills                    "readonly": true,
1629*c6d7a45dSGunnar Mills                    "type": [
1630*c6d7a45dSGunnar Mills                        "number",
1631*c6d7a45dSGunnar Mills                        "null"
1632*c6d7a45dSGunnar Mills                    ]
1633*c6d7a45dSGunnar Mills                }
1634*c6d7a45dSGunnar Mills            },
1635*c6d7a45dSGunnar Mills            "type": "object"
1636*c6d7a45dSGunnar Mills        },
1637*c6d7a45dSGunnar Mills        "SensorPumpExcerpt": {
1638*c6d7a45dSGunnar Mills            "additionalProperties": false,
1639*c6d7a45dSGunnar Mills            "description": "The `Sensor` schema describes a sensor and its properties.",
1640*c6d7a45dSGunnar Mills            "excerpt": "SensorPump",
1641*c6d7a45dSGunnar Mills            "longDescription": "This resource shall represent a sensor for a Redfish implementation.",
1642*c6d7a45dSGunnar Mills            "patternProperties": {
1643*c6d7a45dSGunnar Mills                "^([a-zA-Z_][a-zA-Z0-9_]*)?@(odata|Redfish|Message)\\.[a-zA-Z_][a-zA-Z0-9_]*$": {
1644*c6d7a45dSGunnar Mills                    "description": "This property shall specify a valid odata or Redfish property.",
1645*c6d7a45dSGunnar Mills                    "type": [
1646*c6d7a45dSGunnar Mills                        "array",
1647*c6d7a45dSGunnar Mills                        "boolean",
1648*c6d7a45dSGunnar Mills                        "integer",
1649*c6d7a45dSGunnar Mills                        "number",
1650*c6d7a45dSGunnar Mills                        "null",
1651*c6d7a45dSGunnar Mills                        "object",
1652*c6d7a45dSGunnar Mills                        "string"
1653*c6d7a45dSGunnar Mills                    ]
1654*c6d7a45dSGunnar Mills                }
1655*c6d7a45dSGunnar Mills            },
1656*c6d7a45dSGunnar Mills            "properties": {
1657*c6d7a45dSGunnar Mills                "DataSourceUri": {
1658*c6d7a45dSGunnar Mills                    "description": "The link to the resource that provides the data for this sensor.",
1659*c6d7a45dSGunnar Mills                    "excerptCopyOnly": true,
1660*c6d7a45dSGunnar Mills                    "format": "uri-reference",
1661*c6d7a45dSGunnar Mills                    "longDescription": "This property shall contain a URI to the resource that provides the source of the excerpt contained within this copy.",
1662*c6d7a45dSGunnar Mills                    "readonly": true,
1663*c6d7a45dSGunnar Mills                    "type": [
1664*c6d7a45dSGunnar Mills                        "string",
1665*c6d7a45dSGunnar Mills                        "null"
1666*c6d7a45dSGunnar Mills                    ]
1667*c6d7a45dSGunnar Mills                },
1668*c6d7a45dSGunnar Mills                "Reading": {
1669*c6d7a45dSGunnar Mills                    "description": "The sensor value.",
1670*c6d7a45dSGunnar Mills                    "excerpt": "Sensor",
1671*c6d7a45dSGunnar Mills                    "longDescription": "This property shall contain the sensor value.  This property shall not be returned if the `Enabled` property is supported and contains `false`.",
1672*c6d7a45dSGunnar Mills                    "readonly": true,
1673*c6d7a45dSGunnar Mills                    "type": [
1674*c6d7a45dSGunnar Mills                        "number",
1675*c6d7a45dSGunnar Mills                        "null"
1676*c6d7a45dSGunnar Mills                    ]
1677*c6d7a45dSGunnar Mills                },
1678*c6d7a45dSGunnar Mills                "SpeedRPM": {
1679*c6d7a45dSGunnar Mills                    "description": "The rotational speed.",
1680*c6d7a45dSGunnar Mills                    "excerpt": "SensorFan,SensorFanArray,SensorPump",
1681*c6d7a45dSGunnar Mills                    "longDescription": "This property shall contain a reading of the rotational speed of the device in revolutions per minute (RPM) units.",
1682*c6d7a45dSGunnar Mills                    "readonly": true,
1683*c6d7a45dSGunnar Mills                    "type": [
1684*c6d7a45dSGunnar Mills                        "number",
1685*c6d7a45dSGunnar Mills                        "null"
1686*c6d7a45dSGunnar Mills                    ],
1687*c6d7a45dSGunnar Mills                    "units": "{rev}/min",
1688*c6d7a45dSGunnar Mills                    "versionAdded": "v1_2_0"
1689*c6d7a45dSGunnar Mills                }
1690*c6d7a45dSGunnar Mills            },
1691*c6d7a45dSGunnar Mills            "type": "object"
1692*c6d7a45dSGunnar Mills        },
1693*c6d7a45dSGunnar Mills        "SensorVoltageExcerpt": {
1694*c6d7a45dSGunnar Mills            "additionalProperties": false,
1695*c6d7a45dSGunnar Mills            "description": "The `Sensor` schema describes a sensor and its properties.",
1696*c6d7a45dSGunnar Mills            "excerpt": "SensorVoltage",
1697*c6d7a45dSGunnar Mills            "longDescription": "This resource shall represent a sensor for a Redfish implementation.",
1698*c6d7a45dSGunnar Mills            "patternProperties": {
1699*c6d7a45dSGunnar Mills                "^([a-zA-Z_][a-zA-Z0-9_]*)?@(odata|Redfish|Message)\\.[a-zA-Z_][a-zA-Z0-9_]*$": {
1700*c6d7a45dSGunnar Mills                    "description": "This property shall specify a valid odata or Redfish property.",
1701*c6d7a45dSGunnar Mills                    "type": [
1702*c6d7a45dSGunnar Mills                        "array",
1703*c6d7a45dSGunnar Mills                        "boolean",
1704*c6d7a45dSGunnar Mills                        "integer",
1705*c6d7a45dSGunnar Mills                        "number",
1706*c6d7a45dSGunnar Mills                        "null",
1707*c6d7a45dSGunnar Mills                        "object",
1708*c6d7a45dSGunnar Mills                        "string"
1709*c6d7a45dSGunnar Mills                    ]
1710*c6d7a45dSGunnar Mills                }
1711*c6d7a45dSGunnar Mills            },
1712*c6d7a45dSGunnar Mills            "properties": {
1713*c6d7a45dSGunnar Mills                "CrestFactor": {
1714*c6d7a45dSGunnar Mills                    "description": "The crest factor for this sensor.",
1715*c6d7a45dSGunnar Mills                    "excerpt": "SensorCurrent,SensorVoltage",
1716*c6d7a45dSGunnar Mills                    "longDescription": "This property shall contain the ratio of the peak measurement divided by the RMS measurement and calculated over same N line cycles.  A sine wave would have a value of 1.414.",
1717*c6d7a45dSGunnar Mills                    "readonly": true,
1718*c6d7a45dSGunnar Mills                    "type": [
1719*c6d7a45dSGunnar Mills                        "number",
1720*c6d7a45dSGunnar Mills                        "null"
1721*c6d7a45dSGunnar Mills                    ],
1722*c6d7a45dSGunnar Mills                    "versionAdded": "v1_1_0"
1723*c6d7a45dSGunnar Mills                },
1724*c6d7a45dSGunnar Mills                "DataSourceUri": {
1725*c6d7a45dSGunnar Mills                    "description": "The link to the resource that provides the data for this sensor.",
1726*c6d7a45dSGunnar Mills                    "excerptCopyOnly": true,
1727*c6d7a45dSGunnar Mills                    "format": "uri-reference",
1728*c6d7a45dSGunnar Mills                    "longDescription": "This property shall contain a URI to the resource that provides the source of the excerpt contained within this copy.",
1729*c6d7a45dSGunnar Mills                    "readonly": true,
1730*c6d7a45dSGunnar Mills                    "type": [
1731*c6d7a45dSGunnar Mills                        "string",
1732*c6d7a45dSGunnar Mills                        "null"
1733*c6d7a45dSGunnar Mills                    ]
1734*c6d7a45dSGunnar Mills                },
1735*c6d7a45dSGunnar Mills                "Reading": {
1736*c6d7a45dSGunnar Mills                    "description": "The sensor value.",
1737*c6d7a45dSGunnar Mills                    "excerpt": "Sensor",
1738*c6d7a45dSGunnar Mills                    "longDescription": "This property shall contain the sensor value.  This property shall not be returned if the `Enabled` property is supported and contains `false`.",
1739*c6d7a45dSGunnar Mills                    "readonly": true,
1740*c6d7a45dSGunnar Mills                    "type": [
1741*c6d7a45dSGunnar Mills                        "number",
1742*c6d7a45dSGunnar Mills                        "null"
1743*c6d7a45dSGunnar Mills                    ]
1744*c6d7a45dSGunnar Mills                },
1745*c6d7a45dSGunnar Mills                "THDPercent": {
1746*c6d7a45dSGunnar Mills                    "description": "The total harmonic distortion percent (% THD).",
1747*c6d7a45dSGunnar Mills                    "excerpt": "SensorCurrent,SensorVoltage",
1748*c6d7a45dSGunnar Mills                    "longDescription": "This property shall contain the total harmonic distortion of the `Reading` property in percent units, typically `0` to `100`.",
1749*c6d7a45dSGunnar Mills                    "minimum": 0,
1750*c6d7a45dSGunnar Mills                    "readonly": true,
1751*c6d7a45dSGunnar Mills                    "type": [
1752*c6d7a45dSGunnar Mills                        "number",
1753*c6d7a45dSGunnar Mills                        "null"
1754*c6d7a45dSGunnar Mills                    ],
1755*c6d7a45dSGunnar Mills                    "units": "%",
1756*c6d7a45dSGunnar Mills                    "versionAdded": "v1_1_0"
1757*c6d7a45dSGunnar Mills                }
1758*c6d7a45dSGunnar Mills            },
1759*c6d7a45dSGunnar Mills            "type": "object"
1760*c6d7a45dSGunnar Mills        },
1761*c6d7a45dSGunnar Mills        "Threshold": {
1762*c6d7a45dSGunnar Mills            "additionalProperties": false,
1763*c6d7a45dSGunnar Mills            "description": "The threshold definition for a sensor.",
1764*c6d7a45dSGunnar Mills            "longDescription": "This type shall contain the properties for an individual threshold for this sensor.",
1765*c6d7a45dSGunnar Mills            "patternProperties": {
1766*c6d7a45dSGunnar Mills                "^([a-zA-Z_][a-zA-Z0-9_]*)?@(odata|Redfish|Message)\\.[a-zA-Z_][a-zA-Z0-9_]*$": {
1767*c6d7a45dSGunnar Mills                    "description": "This property shall specify a valid odata or Redfish property.",
1768*c6d7a45dSGunnar Mills                    "type": [
1769*c6d7a45dSGunnar Mills                        "array",
1770*c6d7a45dSGunnar Mills                        "boolean",
1771*c6d7a45dSGunnar Mills                        "integer",
1772*c6d7a45dSGunnar Mills                        "number",
1773*c6d7a45dSGunnar Mills                        "null",
1774*c6d7a45dSGunnar Mills                        "object",
1775*c6d7a45dSGunnar Mills                        "string"
1776*c6d7a45dSGunnar Mills                    ]
1777*c6d7a45dSGunnar Mills                }
1778*c6d7a45dSGunnar Mills            },
1779*c6d7a45dSGunnar Mills            "properties": {
1780*c6d7a45dSGunnar Mills                "Activation": {
1781*c6d7a45dSGunnar Mills                    "anyOf": [
1782*c6d7a45dSGunnar Mills                        {
1783*c6d7a45dSGunnar Mills                            "$ref": "#/definitions/ThresholdActivation"
1784*c6d7a45dSGunnar Mills                        },
1785*c6d7a45dSGunnar Mills                        {
1786*c6d7a45dSGunnar Mills                            "type": "null"
1787*c6d7a45dSGunnar Mills                        }
1788*c6d7a45dSGunnar Mills                    ],
1789*c6d7a45dSGunnar Mills                    "description": "The direction of crossing that activates this threshold.",
1790*c6d7a45dSGunnar Mills                    "longDescription": "This property shall indicate the direction of crossing of the reading for this sensor that activates the threshold.",
1791*c6d7a45dSGunnar Mills                    "readonly": false
1792*c6d7a45dSGunnar Mills                },
1793*c6d7a45dSGunnar Mills                "DwellTime": {
1794*c6d7a45dSGunnar Mills                    "description": "The duration the sensor value must violate the threshold before the threshold is activated.",
1795*c6d7a45dSGunnar Mills                    "longDescription": "This property shall indicate the duration the sensor value violates the threshold before the threshold is activated.",
1796*c6d7a45dSGunnar Mills                    "pattern": "^P(\\d+D)?(T(\\d+H)?(\\d+M)?(\\d+(.\\d+)?S)?)?$",
1797*c6d7a45dSGunnar Mills                    "readonly": false,
1798*c6d7a45dSGunnar Mills                    "type": [
1799*c6d7a45dSGunnar Mills                        "string",
1800*c6d7a45dSGunnar Mills                        "null"
1801*c6d7a45dSGunnar Mills                    ]
1802*c6d7a45dSGunnar Mills                },
1803*c6d7a45dSGunnar Mills                "HysteresisDuration": {
1804*c6d7a45dSGunnar Mills                    "description": "The duration the sensor value must not violate the threshold before the threshold is deactivated.",
1805*c6d7a45dSGunnar Mills                    "longDescription": "This property shall indicate the duration the sensor value no longer violates the threshold before the threshold is deactivated.  A duration of zero seconds, or if the property is not present in the resource, shall indicate the threshold is deactivated immediately once the sensor value no longer violates the threshold.  The threshold shall not deactivate until the conditions of both `HysteresisReading` and `HysteresisDuration` are met.",
1806*c6d7a45dSGunnar Mills                    "pattern": "^P(\\d+D)?(T(\\d+H)?(\\d+M)?(\\d+(.\\d+)?S)?)?$",
1807*c6d7a45dSGunnar Mills                    "readonly": false,
1808*c6d7a45dSGunnar Mills                    "type": [
1809*c6d7a45dSGunnar Mills                        "string",
1810*c6d7a45dSGunnar Mills                        "null"
1811*c6d7a45dSGunnar Mills                    ],
1812*c6d7a45dSGunnar Mills                    "versionAdded": "v1_7_0"
1813*c6d7a45dSGunnar Mills                },
1814*c6d7a45dSGunnar Mills                "HysteresisReading": {
1815*c6d7a45dSGunnar Mills                    "description": "The reading offset from the threshold value required to clear the threshold.",
1816*c6d7a45dSGunnar Mills                    "longDescription": "This property shall indicate the offset from the reading for this sensor and the threshold value that deactivates the threshold.  For example, a value of `-2` indicates the sensor reading shall fall 2 units below an upper threshold value to deactivate the threshold.  The value of the property shall use the same units as the `Reading` property.  A value of `0`, or if the property is not present in the resource, shall indicate the threshold is deactivated when the sensor value no longer violates the threshold.  The threshold shall not deactivate until the conditions of both `HysteresisReading` and `HysteresisDuration` are met.",
1817*c6d7a45dSGunnar Mills                    "readonly": false,
1818*c6d7a45dSGunnar Mills                    "type": [
1819*c6d7a45dSGunnar Mills                        "number",
1820*c6d7a45dSGunnar Mills                        "null"
1821*c6d7a45dSGunnar Mills                    ],
1822*c6d7a45dSGunnar Mills                    "versionAdded": "v1_7_0"
1823*c6d7a45dSGunnar Mills                },
1824*c6d7a45dSGunnar Mills                "Reading": {
1825*c6d7a45dSGunnar Mills                    "description": "The threshold value.",
1826*c6d7a45dSGunnar Mills                    "longDescription": "This property shall indicate the reading for this sensor that activates the threshold.  The value of the property shall use the same units as the `Reading` property.",
1827*c6d7a45dSGunnar Mills                    "readonly": false,
1828*c6d7a45dSGunnar Mills                    "type": [
1829*c6d7a45dSGunnar Mills                        "number",
1830*c6d7a45dSGunnar Mills                        "null"
1831*c6d7a45dSGunnar Mills                    ]
1832*c6d7a45dSGunnar Mills                }
1833*c6d7a45dSGunnar Mills            },
1834*c6d7a45dSGunnar Mills            "type": "object"
1835*c6d7a45dSGunnar Mills        },
1836*c6d7a45dSGunnar Mills        "ThresholdActivation": {
1837*c6d7a45dSGunnar Mills            "enum": [
1838*c6d7a45dSGunnar Mills                "Increasing",
1839*c6d7a45dSGunnar Mills                "Decreasing",
1840*c6d7a45dSGunnar Mills                "Either",
1841*c6d7a45dSGunnar Mills                "Disabled"
1842*c6d7a45dSGunnar Mills            ],
1843*c6d7a45dSGunnar Mills            "enumDescriptions": {
1844*c6d7a45dSGunnar Mills                "Decreasing": "Value decreases below the threshold.",
1845*c6d7a45dSGunnar Mills                "Disabled": "The threshold is disabled.",
1846*c6d7a45dSGunnar Mills                "Either": "Value crosses the threshold in either direction.",
1847*c6d7a45dSGunnar Mills                "Increasing": "Value increases above the threshold."
1848*c6d7a45dSGunnar Mills            },
1849*c6d7a45dSGunnar Mills            "enumLongDescriptions": {
1850*c6d7a45dSGunnar Mills                "Decreasing": "This threshold is activated when the reading changes from a value higher than the threshold to a value lower than the threshold.",
1851*c6d7a45dSGunnar Mills                "Disabled": "This value shall indicate the threshold is disabled and no actions shall be taken as a result of the reading crossing the threshold value.",
1852*c6d7a45dSGunnar Mills                "Either": "This threshold is activated when either the increasing or decreasing conditions are met.",
1853*c6d7a45dSGunnar Mills                "Increasing": "This threshold is activated when the reading changes from a value lower than the threshold to a value higher than the threshold."
1854*c6d7a45dSGunnar Mills            },
1855*c6d7a45dSGunnar Mills            "enumVersionAdded": {
1856*c6d7a45dSGunnar Mills                "Disabled": "v1_7_0"
1857*c6d7a45dSGunnar Mills            },
1858*c6d7a45dSGunnar Mills            "type": "string"
1859*c6d7a45dSGunnar Mills        },
1860*c6d7a45dSGunnar Mills        "Thresholds": {
1861*c6d7a45dSGunnar Mills            "additionalProperties": false,
1862*c6d7a45dSGunnar Mills            "description": "The set of thresholds defined for a sensor.",
1863*c6d7a45dSGunnar Mills            "longDescription": "This object shall contain the set of thresholds that derive a sensor's health and operational range.",
1864*c6d7a45dSGunnar Mills            "patternProperties": {
1865*c6d7a45dSGunnar Mills                "^([a-zA-Z_][a-zA-Z0-9_]*)?@(odata|Redfish|Message)\\.[a-zA-Z_][a-zA-Z0-9_]*$": {
1866*c6d7a45dSGunnar Mills                    "description": "This property shall specify a valid odata or Redfish property.",
1867*c6d7a45dSGunnar Mills                    "type": [
1868*c6d7a45dSGunnar Mills                        "array",
1869*c6d7a45dSGunnar Mills                        "boolean",
1870*c6d7a45dSGunnar Mills                        "integer",
1871*c6d7a45dSGunnar Mills                        "number",
1872*c6d7a45dSGunnar Mills                        "null",
1873*c6d7a45dSGunnar Mills                        "object",
1874*c6d7a45dSGunnar Mills                        "string"
1875*c6d7a45dSGunnar Mills                    ]
1876*c6d7a45dSGunnar Mills                }
1877*c6d7a45dSGunnar Mills            },
1878*c6d7a45dSGunnar Mills            "properties": {
1879*c6d7a45dSGunnar Mills                "LowerCaution": {
1880*c6d7a45dSGunnar Mills                    "$ref": "#/definitions/Threshold",
1881*c6d7a45dSGunnar Mills                    "description": "The value at which the reading is below normal range.",
1882*c6d7a45dSGunnar Mills                    "longDescription": "This property shall contain the value at which the `Reading` property is below normal range.  The value of the property shall use the same units as the `Reading` property."
1883*c6d7a45dSGunnar Mills                },
1884*c6d7a45dSGunnar Mills                "LowerCautionUser": {
1885*c6d7a45dSGunnar Mills                    "$ref": "#/definitions/Threshold",
1886*c6d7a45dSGunnar Mills                    "description": "A user-defined value at which the reading is considered below normal range.",
1887*c6d7a45dSGunnar Mills                    "longDescription": "This property shall contain a user-defined value at which the `Reading` property is considered below the normal range.  The value of the property shall use the same units as the `Reading` property.  The `Reading` property shall be considered below normal range if either the `LowerCaution` or `LowerCautionUser` threshold has been violated.  This property is used to provide an additional, user-defined threshold value when the `LowerCaution` threshold is implemented as read-only to reflect a service-defined value that cannot be changed.",
1888*c6d7a45dSGunnar Mills                    "versionAdded": "v1_2_0"
1889*c6d7a45dSGunnar Mills                },
1890*c6d7a45dSGunnar Mills                "LowerCritical": {
1891*c6d7a45dSGunnar Mills                    "$ref": "#/definitions/Threshold",
1892*c6d7a45dSGunnar Mills                    "description": "The value at which the reading is below normal range but not yet fatal.",
1893*c6d7a45dSGunnar Mills                    "longDescription": "This property shall contain the value at which the `Reading` property is below the normal range but is not yet fatal.  The value of the property shall use the same units as the `Reading` property."
1894*c6d7a45dSGunnar Mills                },
1895*c6d7a45dSGunnar Mills                "LowerCriticalUser": {
1896*c6d7a45dSGunnar Mills                    "$ref": "#/definitions/Threshold",
1897*c6d7a45dSGunnar Mills                    "description": "A user-defined value at which the reading is considered below normal range but not yet fatal.",
1898*c6d7a45dSGunnar Mills                    "longDescription": "This property shall contain a user-defined value at which the `Reading` property is considered below the normal range but is not yet fatal.  The value of the property shall use the same units as the `Reading` property.  The `Reading` property shall be considered below normal range if either the `LowerCritical` or `LowerCriticalUser` threshold has been violated.  This property is used to provide an additional, user-defined threshold value when the `LowerCritical` threshold is implemented as read-only to reflect a service-defined value that cannot be changed.",
1899*c6d7a45dSGunnar Mills                    "versionAdded": "v1_2_0"
1900*c6d7a45dSGunnar Mills                },
1901*c6d7a45dSGunnar Mills                "LowerFatal": {
1902*c6d7a45dSGunnar Mills                    "$ref": "#/definitions/Threshold",
1903*c6d7a45dSGunnar Mills                    "description": "The value at which the reading is below normal range and fatal.",
1904*c6d7a45dSGunnar Mills                    "longDescription": "This property shall contain the value at which the `Reading` property is below the normal range and is fatal.  The value of the property shall use the same units as the `Reading` property."
1905*c6d7a45dSGunnar Mills                },
1906*c6d7a45dSGunnar Mills                "UpperCaution": {
1907*c6d7a45dSGunnar Mills                    "$ref": "#/definitions/Threshold",
1908*c6d7a45dSGunnar Mills                    "description": "The value at which the reading is above normal range.",
1909*c6d7a45dSGunnar Mills                    "longDescription": "This property shall contain the value at which the `Reading` property is above the normal range.  The value of the property shall use the same units as the `Reading` property."
1910*c6d7a45dSGunnar Mills                },
1911*c6d7a45dSGunnar Mills                "UpperCautionUser": {
1912*c6d7a45dSGunnar Mills                    "$ref": "#/definitions/Threshold",
1913*c6d7a45dSGunnar Mills                    "description": "A user-defined value at which the reading is considered above normal range.",
1914*c6d7a45dSGunnar Mills                    "longDescription": "This property shall contain a user-defined value at which the `Reading` property is considered above the normal range.  The value of the property shall use the same units as the `Reading` property.  The `Reading` property shall be considered above normal range if either the `UpperCaution` or `UpperCautionUser` threshold has been violated.  This property is used to provide an additional, user-defined threshold value when the `UpperCaution` threshold is implemented as read-only to reflect a service-defined value that cannot be changed.",
1915*c6d7a45dSGunnar Mills                    "versionAdded": "v1_2_0"
1916*c6d7a45dSGunnar Mills                },
1917*c6d7a45dSGunnar Mills                "UpperCritical": {
1918*c6d7a45dSGunnar Mills                    "$ref": "#/definitions/Threshold",
1919*c6d7a45dSGunnar Mills                    "description": "The value at which the reading is above normal range but not yet fatal.",
1920*c6d7a45dSGunnar Mills                    "longDescription": "This property shall contain the value at which the `Reading` property is above the normal range but is not yet fatal.  The value of the property shall use the same units as the `Reading` property."
1921*c6d7a45dSGunnar Mills                },
1922*c6d7a45dSGunnar Mills                "UpperCriticalUser": {
1923*c6d7a45dSGunnar Mills                    "$ref": "#/definitions/Threshold",
1924*c6d7a45dSGunnar Mills                    "description": "A user-defined value at which the reading is considered above normal range but not yet fatal.",
1925*c6d7a45dSGunnar Mills                    "longDescription": "This property shall contain a user-defined value at which the `Reading` property is considered above the normal range but is not yet fatal.  The value of the property shall use the same units as the `Reading` property.  The `Reading` property shall be considered above normal range if either the `UpperCritical` or `UpperCriticalUser` threshold has been violated.  This property is used to provide an additional, user-defined threshold value when the `UpperCritical` threshold is implemented as read-only to reflect a service-defined value that cannot be changed.",
1926*c6d7a45dSGunnar Mills                    "versionAdded": "v1_2_0"
1927*c6d7a45dSGunnar Mills                },
1928*c6d7a45dSGunnar Mills                "UpperFatal": {
1929*c6d7a45dSGunnar Mills                    "$ref": "#/definitions/Threshold",
1930*c6d7a45dSGunnar Mills                    "description": "The value at which the reading is above normal range and fatal.",
1931*c6d7a45dSGunnar Mills                    "longDescription": "This property shall contain the value at which the `Reading` property is above the normal range and is fatal.  The value of the property shall use the same units as the `Reading` property."
1932*c6d7a45dSGunnar Mills                }
1933*c6d7a45dSGunnar Mills            },
1934*c6d7a45dSGunnar Mills            "type": "object"
1935*c6d7a45dSGunnar Mills        }
1936*c6d7a45dSGunnar Mills    },
1937*c6d7a45dSGunnar Mills    "language": "en",
1938*c6d7a45dSGunnar Mills    "owningEntity": "DMTF",
1939*c6d7a45dSGunnar Mills    "release": "2025.2",
1940*c6d7a45dSGunnar Mills    "title": "#Sensor.v1_11_0.Sensor"
1941*c6d7a45dSGunnar Mills}