{
    "$id": "http://redfish.dmtf.org/schemas/v1/SoftwareInventory.v1_15_0.json",
    "$ref": "#/definitions/SoftwareInventory",
    "$schema": "http://redfish.dmtf.org/schemas/v1/redfish-schema-v1.json",
    "copyright": "Copyright 2014-2026 DMTF. For the full DMTF copyright policy, see http://www.dmtf.org/about/policies/copyright",
    "definitions": {
        "Actions": {
            "additionalProperties": false,
            "description": "The available actions for this resource.",
            "longDescription": "This type shall contain the available actions for this resource.",
            "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": {
                "#SoftwareInventory.Activate": {
                    "$ref": "#/definitions/Activate"
                },
                "#SoftwareInventory.Cancel": {
                    "$ref": "#/definitions/Cancel"
                },
                "Oem": {
                    "$ref": "#/definitions/OemActions",
                    "description": "The available OEM-specific actions for this resource.",
                    "longDescription": "This property shall contain the available OEM-specific actions for this resource."
                }
            },
            "type": "object"
        },
        "Activate": {
            "additionalProperties": false,
            "description": "This action activates this software inventory instance.",
            "longDescription": "This action shall activate this software inventory instance.",
            "parameters": {
                "Targets": {
                    "description": "The target devices to activate this software image.  If not specified, the service activates this software image on all applicable devices.",
                    "items": {
                        "$ref": "http://redfish.dmtf.org/schemas/v1/odata-v4.json#/definitions/idRef"
                    },
                    "longDescription": "This parameter shall contain an array of target devices to activate this software image.  If not specified, the service shall activate this software image on all applicable devices.",
                    "type": "array"
                }
            },
            "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": {
                "target": {
                    "description": "Link to invoke action",
                    "format": "uri-reference",
                    "type": "string"
                },
                "title": {
                    "description": "Friendly action name",
                    "type": "string"
                }
            },
            "type": "object",
            "versionAdded": "v1_12_0"
        },
        "AdditionalVersions": {
            "additionalProperties": false,
            "description": "Additional versions.",
            "longDescription": "This type shall contain additional versions.",
            "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": {
                "BootParameters": {
                    "description": "The version of the configuration file that contains the initial boot parameters of this software, such as parameters for U-Boot.",
                    "longDescription": "This property shall contain the version of the configuration file that contains the initial boot parameters of this software.",
                    "readonly": true,
                    "type": [
                        "string",
                        "null"
                    ],
                    "versionAdded": "v1_11_0"
                },
                "Bootloader": {
                    "description": "The bootloader version contained in this software, such as U-Boot or UEFI.",
                    "longDescription": "This property shall contain the bootloader version contained in this software.",
                    "readonly": true,
                    "type": [
                        "string",
                        "null"
                    ],
                    "versionAdded": "v1_7_0"
                },
                "FactoryConfiguration": {
                    "description": "The version of the configuration that contains the factory default runtime configuration parameters of this software.",
                    "longDescription": "This property shall contain the version of the configuration that contains the factory default runtime configuration parameters of this software.",
                    "readonly": true,
                    "type": [
                        "string",
                        "null"
                    ],
                    "versionAdded": "v1_11_0"
                },
                "Kernel": {
                    "description": "The kernel version contained in this software.",
                    "longDescription": "This property shall contain the kernel version contained in this software.  For strict POSIX software, the value shall contain the output of `uname -srm`.  For Microsoft Windows, the value shall contain the output of `ver`, from Command Prompt.",
                    "readonly": true,
                    "type": [
                        "string",
                        "null"
                    ],
                    "versionAdded": "v1_7_0"
                },
                "Microcode": {
                    "description": "The microcode version contained in this software, such as processor microcode.",
                    "longDescription": "This property shall contain the microcode version contained in this software.",
                    "readonly": true,
                    "type": [
                        "string",
                        "null"
                    ],
                    "versionAdded": "v1_7_0"
                },
                "OSDistribution": {
                    "description": "The operating system name of this software.",
                    "longDescription": "This property shall contain the operating system name of this software.",
                    "readonly": true,
                    "type": [
                        "string",
                        "null"
                    ],
                    "versionAdded": "v1_8_0"
                },
                "Oem": {
                    "$ref": "http://redfish.dmtf.org/schemas/v1/Resource.json#/definitions/Oem",
                    "description": "The OEM extension property.",
                    "longDescription": "This property shall contain the OEM extensions.  All values for properties contained in this object shall conform to the Redfish Specification-described requirements.",
                    "versionAdded": "v1_7_0"
                }
            },
            "type": "object"
        },
        "Cancel": {
            "additionalProperties": false,
            "description": "This action cancels the pending activation of this staged software inventory instance.",
            "longDescription": "This action shall cancel the pending activation of this software inventory instance.  The software image shall remain in inventory but shall no longer be armed for activation.  If no pending activation exists for this instance, the service shall return an appropriate error.",
            "parameters": {
                "Targets": {
                    "description": "The target devices for which to cancel the pending activation.  If not specified, the service cancels the pending activation for all applicable devices.",
                    "items": {
                        "$ref": "http://redfish.dmtf.org/schemas/v1/odata-v4.json#/definitions/idRef"
                    },
                    "longDescription": "This parameter shall contain an array of target devices for which to cancel the pending activation of this software image.  If not specified, the service shall cancel the pending activation for all applicable devices.",
                    "type": "array"
                }
            },
            "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": {
                "target": {
                    "description": "Link to invoke action",
                    "format": "uri-reference",
                    "type": "string"
                },
                "title": {
                    "description": "Friendly action name",
                    "type": "string"
                }
            },
            "type": "object",
            "versionAdded": "v1_14_0"
        },
        "ImageState": {
            "enum": [
                "Active",
                "Staged",
                "Armed",
                "TargetSpecific",
                "OEM"
            ],
            "enumDescriptions": {
                "Active": "The software image is currently running on all targets.",
                "Armed": "The software image will become active on the next reset or applicable trigger on all targets.  The image transitions to the `Active` state after the next reset or applicable trigger.",
                "OEM": "The software image is in an OEM-defined state.  See the `OEMImageState` property.",
                "Staged": "The software image is queued for activation on the next `Activate` action request on all targets.  After `Activate` is performed, the image transitions to `Active` state or to the `Armed` state if a subsequent reset or applicable trigger is required after the activation request.",
                "TargetSpecific": "The software image is in different states for different targets.  Properties such as `ActiveTargets`, `StagedTargets`, and `ArmedTargets` in `Links` provide more granular details."
            },
            "enumLongDescriptions": {
                "Active": "This value shall indicate the software image is currently running on all targets.  The `StagedTargets` and `ArmedTargets` properties in `Links` shall contain empty arrays if present.",
                "Armed": "This value shall indicate the software image will become active on the next reset or applicable trigger on all targets.  The `ActiveTargets` and `StagedTargets` properties in `Links` shall contain empty arrays if present.",
                "OEM": "This value shall indicate the software image is in an OEM-defined state.  The `OEMImageState` property shall contain the image state.",
                "Staged": "This value shall indicate the software image is queued for activation on the next `Activate` action request on all targets.  The `ActiveTargets` and `ArmedTargets` properties in `Links` shall contain empty arrays if present.",
                "TargetSpecific": "This value shall indicate the software image is in different states for different targets."
            },
            "type": "string"
        },
        "Links": {
            "additionalProperties": false,
            "description": "The links to other resources that are related to this resource.",
            "longDescription": "This property shall contain links to resources that are related to but are not contained by, or subordinate to, this resource.",
            "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": {
                "ActiveTargets": {
                    "description": "An array of targets where this software image is currently running.",
                    "items": {
                        "$ref": "http://redfish.dmtf.org/schemas/v1/odata-v4.json#/definitions/idRef"
                    },
                    "longDescription": "This property shall contain an array of links to resources or objects that represent the targets where this software image is currently running.",
                    "readonly": true,
                    "type": "array",
                    "versionAdded": "v1_12_0"
                },
                "ActiveTargets@odata.count": {
                    "$ref": "http://redfish.dmtf.org/schemas/v1/odata-v4.json#/definitions/count"
                },
                "ArmedTargets": {
                    "description": "An array of targets where this software image will become active on the next reset or applicable trigger.",
                    "items": {
                        "$ref": "http://redfish.dmtf.org/schemas/v1/odata-v4.json#/definitions/idRef"
                    },
                    "longDescription": "This property shall contain an array of links to resources or objects that represent the targets where this software image will become active on the next reset or applicable trigger.",
                    "readonly": true,
                    "type": "array",
                    "versionAdded": "v1_15_0"
                },
                "ArmedTargets@odata.count": {
                    "$ref": "http://redfish.dmtf.org/schemas/v1/odata-v4.json#/definitions/count"
                },
                "StagedTargets": {
                    "description": "An array of devices where this software image is queued for activation on the next `Activate` action request.",
                    "items": {
                        "$ref": "http://redfish.dmtf.org/schemas/v1/odata-v4.json#/definitions/idRef"
                    },
                    "longDescription": "This property shall contain an array of links to resources or objects that represent the devices where this software image is queued for activation on the next `Activate` action request.",
                    "readonly": true,
                    "type": "array",
                    "versionAdded": "v1_12_0"
                },
                "StagedTargets@odata.count": {
                    "$ref": "http://redfish.dmtf.org/schemas/v1/odata-v4.json#/definitions/count"
                }
            },
            "type": "object"
        },
        "MeasurementBlock": {
            "additionalProperties": false,
            "description": "The DSP0274-defined measurement block information.",
            "longDescription": "This type shall describe a DSP0274-defined measurement block.",
            "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": {
                "Measurement": {
                    "description": "The hexadecimal string representation of the numeric value of the DSP0274-defined 'Measurement' field of the measurement block.",
                    "longDescription": "This property shall contain the value of the hexadecimal string representation of the numeric value of the DSP0274-defined 'Measurement' field of the measurement block.",
                    "pattern": "^[0-9a-fA-F]+$",
                    "readonly": true,
                    "type": [
                        "string",
                        "null"
                    ],
                    "versionAdded": "v1_4_0"
                },
                "MeasurementIndex": {
                    "description": "The DSP0274-defined 'Index' field of the measurement block.",
                    "longDescription": "This property shall contain the value of the DSP0274-defined 'Index' field of the measurement block.",
                    "readonly": true,
                    "type": [
                        "integer",
                        "null"
                    ],
                    "versionAdded": "v1_5_0"
                },
                "MeasurementSize": {
                    "description": "The DSP0274-defined 'MeasurementSize' field of the measurement block.",
                    "longDescription": "This property shall contain the value of the DSP0274-defined 'MeasurementSize' field of the measurement block.",
                    "readonly": true,
                    "type": [
                        "integer",
                        "null"
                    ],
                    "versionAdded": "v1_4_0"
                },
                "MeasurementSpecification": {
                    "description": "The DSP0274-defined 'MeasurementSpecification' field of the measurement block.",
                    "longDescription": "This property shall contain the value of the DSP0274-defined 'MeasurementSpecification' field of the measurement block.",
                    "readonly": true,
                    "type": [
                        "integer",
                        "null"
                    ],
                    "versionAdded": "v1_4_0"
                }
            },
            "type": "object"
        },
        "OemActions": {
            "additionalProperties": true,
            "description": "The available OEM-specific actions for this resource.",
            "longDescription": "This type shall contain the available OEM-specific actions for this resource.",
            "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": {},
            "type": "object"
        },
        "ReleaseType": {
            "enum": [
                "Production",
                "Prototype",
                "Other"
            ],
            "enumDescriptions": {
                "Other": "The Redfish service does not have enough data to make a determination about this release.",
                "Production": "This release is ready for use in production environments.",
                "Prototype": "This release is intended for development or internal use."
            },
            "enumLongDescriptions": {
                "Other": "This value shall indicate that the Redfish service cannot determine if this release is validated or prototype.",
                "Production": "This value shall indicate that the software is ready for use in production environments.",
                "Prototype": "This value shall indicate that the software is designed for development or internal use."
            },
            "type": "string"
        },
        "SoftwareInventory": {
            "additionalProperties": false,
            "description": "The `SoftwareInventory` schema contains an inventory of software components.  This can include software components such as BIOS, BMC firmware, firmware for other devices, system drivers, or provider software.",
            "longDescription": "This resource contains a single software component that this Redfish service manages.",
            "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.json#/definitions/context"
                },
                "@odata.etag": {
                    "$ref": "http://redfish.dmtf.org/schemas/v1/odata-v4.json#/definitions/etag"
                },
                "@odata.id": {
                    "$ref": "http://redfish.dmtf.org/schemas/v1/odata-v4.json#/definitions/id"
                },
                "@odata.type": {
                    "$ref": "http://redfish.dmtf.org/schemas/v1/odata-v4.json#/definitions/type"
                },
                "Actions": {
                    "$ref": "#/definitions/Actions",
                    "description": "The available actions for this resource.",
                    "longDescription": "This property shall contain the available actions for this resource."
                },
                "Active": {
                    "description": "This software image is currently running on one or more targets.",
                    "longDescription": "This property shall indicate that this software image is currently running on one or more targets.",
                    "readonly": true,
                    "type": [
                        "boolean",
                        "null"
                    ],
                    "versionAdded": "v1_12_0"
                },
                "AdditionalVersions": {
                    "$ref": "#/definitions/AdditionalVersions",
                    "description": "The additional versions of this software.",
                    "longDescription": "This property shall contain the additional versions of this software.",
                    "versionAdded": "v1_7_0"
                },
                "Armed": {
                    "description": "This software image will become active on the next reset or applicable trigger on one or more targets.",
                    "longDescription": "This property shall indicate that this software image will become active on the next reset or applicable trigger on one or more targets.",
                    "readonly": true,
                    "type": [
                        "boolean",
                        "null"
                    ],
                    "versionAdded": "v1_15_0"
                },
                "AssociatedPhysicalContext": {
                    "$ref": "http://redfish.dmtf.org/schemas/v1/PhysicalContext.json#/definitions/PhysicalContext",
                    "description": "The area or device to which the software applies.  Used to distinguish when different parts of a device have different software components.",
                    "longDescription": "This property shall contain a description of the physical context for the software inventory data.",
                    "readonly": true,
                    "versionAdded": "v1_10_0"
                },
                "Description": {
                    "anyOf": [
                        {
                            "$ref": "http://redfish.dmtf.org/schemas/v1/Resource.json#/definitions/Description"
                        },
                        {
                            "type": "null"
                        }
                    ],
                    "readonly": true
                },
                "Id": {
                    "$ref": "http://redfish.dmtf.org/schemas/v1/Resource.json#/definitions/Id",
                    "readonly": true
                },
                "ImageDataURI": {
                    "description": "The URI at which to access the software inventory image.",
                    "format": "uri-reference",
                    "longDescription": "This property shall contain the URI at which to access the image data for this software inventory, using the Redfish protocol and authentication methods.  This image should be the original vendor-provided image suitable for update operations.",
                    "readonly": true,
                    "type": [
                        "string",
                        "null"
                    ],
                    "versionAdded": "v1_13_0"
                },
                "ImageState": {
                    "anyOf": [
                        {
                            "$ref": "#/definitions/ImageState"
                        },
                        {
                            "type": "null"
                        }
                    ],
                    "description": "The state of the image.",
                    "longDescription": "This property shall contain the state of the image.",
                    "readonly": true,
                    "versionAdded": "v1_15_0"
                },
                "Links": {
                    "$ref": "#/definitions/Links",
                    "description": "The links to other resources that are related to this resource.",
                    "longDescription": "This property shall contain links to resources that are related to but are not contained by, or subordinate to, this resource.",
                    "versionAdded": "v1_12_0"
                },
                "LowestSupportedVersion": {
                    "description": "The lowest supported version of this software.",
                    "longDescription": "This property shall represent the lowest supported version of this software.  This string is formatted using the same format used for the `Version` property.",
                    "readonly": true,
                    "type": [
                        "string",
                        "null"
                    ],
                    "versionAdded": "v1_1_0"
                },
                "Manufacturer": {
                    "description": "The manufacturer or producer of this software.",
                    "longDescription": "This property shall represent the name of the manufacturer or producer of this software.",
                    "readonly": true,
                    "type": [
                        "string",
                        "null"
                    ],
                    "versionAdded": "v1_2_0"
                },
                "Measurement": {
                    "$ref": "http://redfish.dmtf.org/schemas/v1/SoftwareInventory.json#/definitions/MeasurementBlock",
                    "deprecated": "This property has been deprecated in favor of the `ComponentIntegrity` resource.",
                    "description": "A DSP0274-defined measurement block.",
                    "longDescription": "This property shall contain a DSP0274-defined measurement block.",
                    "versionAdded": "v1_4_0",
                    "versionDeprecated": "v1_6_0"
                },
                "Name": {
                    "$ref": "http://redfish.dmtf.org/schemas/v1/Resource.json#/definitions/Name",
                    "readonly": true
                },
                "OEMImageState": {
                    "description": "The OEM-defined state of the image.",
                    "longDescription": "This property shall contain the OEM-defined state of the image.  This property shall be present if `ImageState` is `OEM`.",
                    "readonly": true,
                    "type": [
                        "string",
                        "null"
                    ],
                    "versionAdded": "v1_15_0"
                },
                "Oem": {
                    "$ref": "http://redfish.dmtf.org/schemas/v1/Resource.json#/definitions/Oem",
                    "description": "The OEM extension property.",
                    "longDescription": "This property shall contain the OEM extensions.  All values for properties that this object contains shall conform to the Redfish Specification-described requirements."
                },
                "RelatedItem": {
                    "description": "An array of links to resources or objects that represent devices to which this software inventory applies.",
                    "items": {
                        "$ref": "http://redfish.dmtf.org/schemas/v1/odata-v4.json#/definitions/idRef"
                    },
                    "longDescription": "This property shall contain an array of links to resources or objects that represent devices to which this software inventory applies.",
                    "readonly": true,
                    "type": "array",
                    "versionAdded": "v1_1_0"
                },
                "RelatedItem@odata.count": {
                    "$ref": "http://redfish.dmtf.org/schemas/v1/odata-v4.json#/definitions/count"
                },
                "ReleaseDate": {
                    "description": "The release date of this software.",
                    "format": "date-time",
                    "longDescription": "This property shall contain the date of release or production for this software.  If the time of day is unknown, the time of day portion of the property shall contain `00:00:00Z`.",
                    "readonly": true,
                    "type": [
                        "string",
                        "null"
                    ],
                    "versionAdded": "v1_2_0"
                },
                "ReleaseType": {
                    "anyOf": [
                        {
                            "$ref": "#/definitions/ReleaseType"
                        },
                        {
                            "type": "null"
                        }
                    ],
                    "description": "The type of release.",
                    "longDescription": "This property shall describe the type of release for the software.",
                    "readonly": true,
                    "versionAdded": "v1_10_0"
                },
                "ResetRequiredOnUpdate": {
                    "description": "An indication of whether a reset is required to apply an update to this software.",
                    "longDescription": "This property shall indicate whether a reset is required to apply an update to this software.  If `true`, a reset is required and clients should expect a disruption in communication to targets utilizing this software while applying an update.  If `false`, a reset is not required and communication can be maintained to targets utilizing this software throughout an update.",
                    "readonly": true,
                    "type": [
                        "boolean",
                        "null"
                    ],
                    "versionAdded": "v1_12_0"
                },
                "SizeBytes": {
                    "description": "The size of the software image in bytes.",
                    "longDescription": "This property shall contain the size of the software image in bytes.",
                    "readonly": true,
                    "type": [
                        "integer",
                        "null"
                    ],
                    "versionAdded": "v1_13_0"
                },
                "SoftwareId": {
                    "description": "The implementation-specific label that identifies this software.",
                    "longDescription": "This property shall represent an implementation-specific label that identifies this software.  This string correlates with a component repository or database.",
                    "readonly": true,
                    "type": "string",
                    "versionAdded": "v1_1_0"
                },
                "Staged": {
                    "description": "This software image is queued for activation on the next `Activate` action request on one or more targets.",
                    "longDescription": "This property shall indicate that this software image is queued for activation on the next `Activate` action request on one or more targets.",
                    "readonly": true,
                    "type": [
                        "boolean",
                        "null"
                    ],
                    "versionAdded": "v1_12_0"
                },
                "Status": {
                    "$ref": "http://redfish.dmtf.org/schemas/v1/Resource.json#/definitions/Status",
                    "description": "The status and health of the resource and its subordinate or dependent resources.",
                    "longDescription": "This property shall contain any status or health properties of the resource."
                },
                "UefiDevicePaths": {
                    "description": "The list of UEFI device paths of the components associated with this software inventory item.",
                    "items": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "longDescription": "This property shall contain a list UEFI device paths of the components associated with this software inventory item.  The UEFI device paths shall be formatted as defined by the UEFI Specification.",
                    "readonly": true,
                    "type": "array",
                    "versionAdded": "v1_1_0"
                },
                "Updateable": {
                    "description": "An indication of whether the update service can update this software.",
                    "longDescription": "This property shall indicate whether the update service can update this software.  If `true`, the service can update this software.  If `false`, the service cannot update this software and the software is for reporting purposes only.",
                    "readonly": true,
                    "type": [
                        "boolean",
                        "null"
                    ]
                },
                "Version": {
                    "description": "The version of this software.",
                    "longDescription": "This property shall contain the version of this software.",
                    "readonly": true,
                    "type": [
                        "string",
                        "null"
                    ]
                },
                "VersionScheme": {
                    "anyOf": [
                        {
                            "$ref": "#/definitions/VersionScheme"
                        },
                        {
                            "type": "null"
                        }
                    ],
                    "description": "The format of the version.",
                    "longDescription": "This property shall describe the scheme used to format the value of the `Version` property.",
                    "readonly": true,
                    "versionAdded": "v1_9_0"
                },
                "WriteProtected": {
                    "description": "Indicates if the software is write-protected.",
                    "longDescription": "This property shall indicate whether the software image can be overwritten, where a value `true` shall indicate that the software cannot be altered or overwritten.",
                    "readonly": false,
                    "type": [
                        "boolean",
                        "null"
                    ],
                    "versionAdded": "v1_3_0"
                }
            },
            "required": [
                "@odata.id",
                "@odata.type",
                "Id",
                "Name"
            ],
            "type": "object"
        },
        "VersionScheme": {
            "enum": [
                "SemVer",
                "DotIntegerNotation",
                "OEM"
            ],
            "enumDescriptions": {
                "DotIntegerNotation": "Version formatted as dot-separated integers.",
                "OEM": "Version follows OEM-defined format.",
                "SemVer": "Version follows Semantic Versioning 2.0 rules."
            },
            "enumLongDescriptions": {
                "DotIntegerNotation": "This value shall indicate that the value of the `Version` property contains a sequence of integers separated by period (dot) characters, and shall follow the pattern `^\\d+(\\.\\d+)*$`.  Leading zeros in the sequence shall be ignored.",
                "OEM": "This value shall indicate that the value of the `Version` property follows a format and rules as defined by the vendor or manufacturer.",
                "SemVer": "This value shall indicate that the value of the `Version` property conforms to the format and rules of the Semantic Version 2.0 specification, and may include pre-release or build metadata."
            },
            "type": "string"
        }
    },
    "language": "en",
    "owningEntity": "DMTF",
    "release": "2026.2",
    "title": "#SoftwareInventory.v1_15_0.SoftwareInventory"
}