{
    "$id": "http://redfish.dmtf.org/schemas/v1/Thermal.v1_0_8.json",
    "$ref": "#/definitions/Thermal",
    "$schema": "http://redfish.dmtf.org/schemas/v1/redfish-schema-v1.json",
    "copyright": "Copyright 2014-2018 DMTF. For the full DMTF copyright policy, see http://www.dmtf.org/about/policies/copyright",
    "definitions": {
        "Fan": {
            "additionalProperties": false,
            "patternProperties": {
                "^([a-zA-Z_][a-zA-Z0-9_]*)?@(odata|Redfish|Message)\\.[a-zA-Z_][a-zA-Z0-9_.]+$": {
                    "description": "This property shall specify a valid odata or Redfish property.",
                    "type": [
                        "array",
                        "boolean",
                        "integer",
                        "number",
                        "null",
                        "object",
                        "string"
                    ]
                }
            },
            "properties": {
                "@odata.id": {
                    "$ref": "http://redfish.dmtf.org/schemas/v1/odata.v4_0_3.json#/definitions/id"
                },
                "FanName": {
                    "description": "Name of the fan.",
                    "longDescription": "The value of this property shall be the name of the fan.",
                    "readonly": true,
                    "type": [
                        "string",
                        "null"
                    ]
                },
                "LowerThresholdCritical": {
                    "description": "Below normal range but not yet fatal.",
                    "longDescription": "The value of this property shall indicate the Reading is below the normal range but is not yet fatal. The units shall be the same units as the related Reading property.",
                    "readonly": true,
                    "type": [
                        "integer",
                        "null"
                    ]
                },
                "LowerThresholdFatal": {
                    "description": "Below normal range and is fatal.",
                    "longDescription": "The value of this property shall indicate the Reading is below the normal range and is fatal. The units shall be the same units as the related Reading property.",
                    "readonly": true,
                    "type": [
                        "integer",
                        "null"
                    ]
                },
                "LowerThresholdNonCritical": {
                    "description": "Below normal range.",
                    "longDescription": "The value of this property shall indicate the Reading is below the normal range but is not critical. The units shall be the same units as the related Reading property.",
                    "readonly": true,
                    "type": [
                        "integer",
                        "null"
                    ]
                },
                "MaxReadingRange": {
                    "description": "Maximum value for Reading.",
                    "longDescription": "The value of this property shall indicate the highest possible value for Reading. The units shall be the same units as the related Reading property.",
                    "readonly": true,
                    "type": [
                        "integer",
                        "null"
                    ]
                },
                "MemberId": {
                    "description": "This is the identifier for the member within the collection.",
                    "longDescription": "The value of this string shall uniquely identify the member within the collection.",
                    "readonly": true,
                    "type": "string"
                },
                "MinReadingRange": {
                    "description": "Minimum value for Reading.",
                    "longDescription": "The value of this property shall indicate the lowest possible value for Reading. The units shall be the same units as the related Reading property.",
                    "readonly": true,
                    "type": [
                        "integer",
                        "null"
                    ]
                },
                "Oem": {
                    "$ref": "http://redfish.dmtf.org/schemas/v1/Resource.json#/definitions/Oem",
                    "description": "This is the manufacturer/provider specific extension moniker used to divide the Oem object into sections.",
                    "longDescription": "The value of this string shall be of the format for the reserved word *Oem*."
                },
                "PhysicalContext": {
                    "$ref": "http://redfish.dmtf.org/schemas/v1/PhysicalContext.json#/definitions/PhysicalContext",
                    "description": "Describes the area or device associated with this fan.",
                    "longDescription": "The value of this property shall be a description of the affected device or region within the chassis to which this fan is associated.",
                    "readonly": true
                },
                "Reading": {
                    "description": "Current fan speed.",
                    "longDescription": "The value of this property shall be the current value of the fan sensor's reading.",
                    "readonly": true,
                    "type": [
                        "integer",
                        "null"
                    ]
                },
                "ReadingUnits": {
                    "anyOf": [
                        {
                            "$ref": "#/definitions/ReadingUnits"
                        },
                        {
                            "type": "null"
                        }
                    ],
                    "description": "Units in which the reading and thresholds are measured.",
                    "longDescription": "The value of this property shall be the units in which the fan's reading and thresholds are measured.",
                    "readonly": true,
                    "versionAdded": "v1_0_1"
                },
                "Redundancy": {
                    "description": "This structure is used to show redundancy for fans.  The Component ids will reference the members of the redundancy groups.",
                    "items": {
                        "$ref": "http://redfish.dmtf.org/schemas/v1/Redundancy.json#/definitions/Redundancy"
                    },
                    "longDescription": "The values of the properties in this array shall be used to show redundancy for fans and other elements in this resource.  The use of IDs within these arrays shall reference the members of the redundancy groups.",
                    "type": "array"
                },
                "Redundancy@odata.count": {
                    "$ref": "http://redfish.dmtf.org/schemas/v1/odata.v4_0_3.json#/definitions/count"
                },
                "RelatedItem": {
                    "description": "The ID(s) of the resources serviced with this fan.",
                    "items": {
                        "$ref": "http://redfish.dmtf.org/schemas/v1/odata.v4_0_3.json#/definitions/idRef"
                    },
                    "longDescription": "The value of this property shall be an array of IDs containing pointers consistent with JSON pointer syntax to the resource that are being serviced by this fan.",
                    "readonly": true,
                    "type": "array"
                },
                "RelatedItem@odata.count": {
                    "$ref": "http://redfish.dmtf.org/schemas/v1/odata.v4_0_3.json#/definitions/count"
                },
                "Status": {
                    "$ref": "http://redfish.dmtf.org/schemas/v1/Resource.json#/definitions/Status",
                    "description": "This property describes the status and health of the resource and its children.",
                    "longDescription": "This property shall contain any status or health properties of the resource."
                },
                "UpperThresholdCritical": {
                    "description": "Above normal range but not yet fatal.",
                    "longDescription": "The value of this property shall indicate the Reading is above the normal range but is not yet fatal. The units shall be the same units as the related Reading property.",
                    "readonly": true,
                    "type": [
                        "integer",
                        "null"
                    ]
                },
                "UpperThresholdFatal": {
                    "description": "Above normal range and is fatal.",
                    "longDescription": "The value of this property shall indicate the Reading is above the normal range and is fatal. The units shall be the same units as the related Reading property.",
                    "readonly": true,
                    "type": [
                        "integer",
                        "null"
                    ]
                },
                "UpperThresholdNonCritical": {
                    "description": "Above normal range.",
                    "longDescription": "The value of this property shall indicate the Reading is above the normal range but is not critical. The units shall be the same units as the related Reading property.",
                    "readonly": true,
                    "type": [
                        "integer",
                        "null"
                    ]
                }
            },
            "required": [
                "@odata.id",
                "MemberId"
            ],
            "type": "object"
        },
        "ReadingUnits": {
            "enum": [
                "RPM",
                "Percent"
            ],
            "enumDescriptions": {
                "Percent": "Indicates that the fan reading and thresholds are measured in percentage.",
                "RPM": "Indicates that the fan reading and thresholds are measured in rotations per minute."
            },
            "type": "string"
        },
        "Temperature": {
            "additionalProperties": false,
            "patternProperties": {
                "^([a-zA-Z_][a-zA-Z0-9_]*)?@(odata|Redfish|Message)\\.[a-zA-Z_][a-zA-Z0-9_.]+$": {
                    "description": "This property shall specify a valid odata or Redfish property.",
                    "type": [
                        "array",
                        "boolean",
                        "integer",
                        "number",
                        "null",
                        "object",
                        "string"
                    ]
                }
            },
            "properties": {
                "@odata.id": {
                    "$ref": "http://redfish.dmtf.org/schemas/v1/odata.v4_0_3.json#/definitions/id"
                },
                "LowerThresholdCritical": {
                    "description": "Below normal range but not yet fatal.",
                    "longDescription": "The value of this property shall indicate the ReadingCelsius is below the normal range but is not yet fatal. The units shall be the same units as the related ReadingCelsius property.",
                    "readonly": true,
                    "type": [
                        "number",
                        "null"
                    ],
                    "units": "Cel"
                },
                "LowerThresholdFatal": {
                    "description": "Below normal range and is fatal.",
                    "longDescription": "The value of this property shall indicate the ReadingCelsius is below the normal range and is fatal. The units shall be the same units as the related ReadingCelsius property.",
                    "readonly": true,
                    "type": [
                        "number",
                        "null"
                    ],
                    "units": "Cel"
                },
                "LowerThresholdNonCritical": {
                    "description": "Below normal range.",
                    "longDescription": "The value of this property shall indicate the ReadingCelsius is below the normal range but is not critical. The units shall be the same units as the related ReadingCelsius property.",
                    "readonly": true,
                    "type": [
                        "number",
                        "null"
                    ],
                    "units": "Cel"
                },
                "MaxReadingRangeTemp": {
                    "description": "Maximum value for ReadingCelsius.",
                    "longDescription": "The value of this property shall indicate the highest possible value for ReadingCelsius. The units shall be the same units as the related ReadingCelsius property.",
                    "readonly": true,
                    "type": [
                        "number",
                        "null"
                    ],
                    "units": "Cel"
                },
                "MemberId": {
                    "description": "This is the identifier for the member within the collection.",
                    "longDescription": "The value of this string shall uniquely identify the member within the collection.",
                    "readonly": true,
                    "type": "string"
                },
                "MinReadingRangeTemp": {
                    "description": "Minimum value for ReadingCelsius.",
                    "longDescription": "The value of this property shall indicate the lowest possible value for ReadingCelsius. The units shall be the same units as the related ReadingCelsius property.",
                    "readonly": true,
                    "type": [
                        "number",
                        "null"
                    ],
                    "units": "Cel"
                },
                "Name": {
                    "description": "Temperature sensor name.",
                    "longDescription": "The value of this property shall be the name of the temperature sensor.",
                    "readonly": true,
                    "type": [
                        "string",
                        "null"
                    ]
                },
                "Oem": {
                    "$ref": "http://redfish.dmtf.org/schemas/v1/Resource.json#/definitions/Oem",
                    "description": "This is the manufacturer/provider specific extension moniker used to divide the Oem object into sections.",
                    "longDescription": "The value of this string shall be of the format for the reserved word *Oem*."
                },
                "PhysicalContext": {
                    "$ref": "http://redfish.dmtf.org/schemas/v1/PhysicalContext.json#/definitions/PhysicalContext",
                    "description": "Describes the area or device to which this temperature measurement applies.",
                    "longDescription": "The value of this property shall be a description of the affected device or region within the chassis to which this temperature measurement applies.",
                    "readonly": true
                },
                "ReadingCelsius": {
                    "description": "Temperature.",
                    "longDescription": "The value of this property shall be the current value of the temperature sensor's reading.",
                    "readonly": true,
                    "type": [
                        "number",
                        "null"
                    ],
                    "units": "Cel"
                },
                "RelatedItem": {
                    "description": "Describes the areas or devices to which this temperature measurement applies.",
                    "items": {
                        "$ref": "http://redfish.dmtf.org/schemas/v1/odata.v4_0_3.json#/definitions/idRef"
                    },
                    "longDescription": "The value of this property shall the array of IDs of areas or devices to which this temperature measurement applies.",
                    "readonly": true,
                    "type": "array"
                },
                "RelatedItem@odata.count": {
                    "$ref": "http://redfish.dmtf.org/schemas/v1/odata.v4_0_3.json#/definitions/count"
                },
                "SensorNumber": {
                    "description": "A numerical identifier to represent the temperature sensor.",
                    "longDescription": "The value of this property shall be a numerical identifier for this temperature sensor that is unique within this resource.",
                    "readonly": true,
                    "type": [
                        "integer",
                        "null"
                    ]
                },
                "Status": {
                    "$ref": "http://redfish.dmtf.org/schemas/v1/Resource.json#/definitions/Status",
                    "description": "This property describes the status and health of the resource and its children.",
                    "longDescription": "This property shall contain any status or health properties of the resource."
                },
                "UpperThresholdCritical": {
                    "description": "Above normal range but not yet fatal.",
                    "longDescription": "The value of this property shall indicate the ReadingCelsius is above the normal range but is not yet fatal. The units shall be the same units as the related ReadingCelsius property.",
                    "readonly": true,
                    "type": [
                        "number",
                        "null"
                    ],
                    "units": "Cel"
                },
                "UpperThresholdFatal": {
                    "description": "Above normal range and is fatal.",
                    "longDescription": "The value of this property shall indicate the ReadingCelsius is above the normal range and is fatal. The units shall be the same units as the related ReadingCelsius property.",
                    "readonly": true,
                    "type": [
                        "number",
                        "null"
                    ],
                    "units": "Cel"
                },
                "UpperThresholdNonCritical": {
                    "description": "Above normal range.",
                    "longDescription": "The value of this property shall indicate the ReadingCelsius is above the normal range but is not critical. The units shall be the same units as the related ReadingCelsius property.",
                    "readonly": true,
                    "type": [
                        "number",
                        "null"
                    ],
                    "units": "Cel"
                }
            },
            "required": [
                "@odata.id",
                "MemberId"
            ],
            "type": "object"
        },
        "Thermal": {
            "additionalProperties": false,
            "description": "This is the schema definition for the Thermal properties.  It represents the properties for Temperature and Cooling.",
            "longDescription": "This resource shall be used to represent a thermal metrics resource for a Redfish implementation.",
            "patternProperties": {
                "^([a-zA-Z_][a-zA-Z0-9_]*)?@(odata|Redfish|Message)\\.[a-zA-Z_][a-zA-Z0-9_.]+$": {
                    "description": "This property shall specify a valid odata or Redfish property.",
                    "type": [
                        "array",
                        "boolean",
                        "integer",
                        "number",
                        "null",
                        "object",
                        "string"
                    ]
                }
            },
            "properties": {
                "@odata.context": {
                    "$ref": "http://redfish.dmtf.org/schemas/v1/odata.v4_0_3.json#/definitions/context"
                },
                "@odata.etag": {
                    "$ref": "http://redfish.dmtf.org/schemas/v1/odata.v4_0_3.json#/definitions/etag"
                },
                "@odata.id": {
                    "$ref": "http://redfish.dmtf.org/schemas/v1/odata.v4_0_3.json#/definitions/id"
                },
                "@odata.type": {
                    "$ref": "http://redfish.dmtf.org/schemas/v1/odata.v4_0_3.json#/definitions/type"
                },
                "Description": {
                    "anyOf": [
                        {
                            "$ref": "http://redfish.dmtf.org/schemas/v1/Resource.json#/definitions/Description"
                        },
                        {
                            "type": "null"
                        }
                    ],
                    "readonly": true
                },
                "Fans": {
                    "autoExpand": true,
                    "description": "This is the definition for fans.",
                    "items": {
                        "$ref": "#/definitions/Fan"
                    },
                    "longDescription": "These properties shall be the definition for fans for a Redfish implementation.",
                    "readonly": false,
                    "type": "array"
                },
                "Fans@odata.count": {
                    "$ref": "http://redfish.dmtf.org/schemas/v1/odata.v4_0_3.json#/definitions/count"
                },
                "Id": {
                    "$ref": "http://redfish.dmtf.org/schemas/v1/Resource.json#/definitions/Id",
                    "readonly": true
                },
                "Name": {
                    "$ref": "http://redfish.dmtf.org/schemas/v1/Resource.json#/definitions/Name",
                    "readonly": true
                },
                "Oem": {
                    "$ref": "http://redfish.dmtf.org/schemas/v1/Resource.json#/definitions/Oem",
                    "description": "This is the manufacturer/provider specific extension moniker used to divide the Oem object into sections.",
                    "longDescription": "The value of this string shall be of the format for the reserved word *Oem*."
                },
                "Redundancy": {
                    "autoExpand": true,
                    "description": "This structure is used to show redundancy for fans.  The Component ids will reference the members of the redundancy groups.",
                    "items": {
                        "$ref": "http://redfish.dmtf.org/schemas/v1/Redundancy.json#/definitions/Redundancy"
                    },
                    "longDescription": "The values of the properties in this array shall be used to show redundancy for fans and other elements in this resource.  The use of IDs within these arrays shall reference the members of the redundancy groups.",
                    "type": "array"
                },
                "Redundancy@odata.count": {
                    "$ref": "http://redfish.dmtf.org/schemas/v1/odata.v4_0_3.json#/definitions/count"
                },
                "Status": {
                    "$ref": "http://redfish.dmtf.org/schemas/v1/Resource.json#/definitions/Status",
                    "description": "This property describes the status and health of the resource and its children.",
                    "longDescription": "This property shall contain any status or health properties of the resource."
                },
                "Temperatures": {
                    "autoExpand": true,
                    "description": "This is the definition for temperature sensors.",
                    "items": {
                        "$ref": "#/definitions/Temperature"
                    },
                    "longDescription": "These properties shall be the definition for temperature sensors for a Redfish implementation.",
                    "readonly": false,
                    "type": "array"
                },
                "Temperatures@odata.count": {
                    "$ref": "http://redfish.dmtf.org/schemas/v1/odata.v4_0_3.json#/definitions/count"
                }
            },
            "required": [
                "@odata.id",
                "@odata.type",
                "Id",
                "Name"
            ],
            "type": "object"
        }
    },
    "owningEntity": "DMTF",
    "release": "1.0",
    "title": "#Thermal.v1_0_8.Thermal"
}