1 Foreword
The following files are part of the Redfish development effort:
- DSP0218 - Platform Level Data Model (PLDM) for Redfish Device Enablement Specification - Binary-encoded JSON (BEJ) and dictionary-based mapping of Redfish schemas and properties into PLDM messages.
- DSP0266 - Redfish Specification - Main Redfish Specification.
- DSP0268 - Redfish Data Model Specification - Normative descriptions and additional text for every schema defined in DSP8010 and example payloads for every resource.
- DSP0270 - Redfish Host Interface Specification - "In-band" or "OS-based" Redfish host interface.
- DSP0272 - Redfish Interoperability Profiles Specification - Structure and JSON document that is used to define and publish an interoperability profile that checks an implementation's conformance to a defined minimum set of functionality.
- DSP2043 - Redfish
Mockups Bundle - Set of mockups that can be used as sample output from
GETresponses from a Redfish service. Informative in nature, it was used to develop the schema. A person can set up an NGINX or similar server and configure it to output JSON format and then use this directory for demonstration purposes. - DSP2044 - Redfish White Paper - Non-normative document helping those new to Redfish understand how to interact with the Redfish service and understand common functions and tasks.
- DSP2046 - Redfish Resource and Schema Guide - Informative documentation regarding common Redfish resource properties and a listing of properties that can be found in each of the Redfish resources.
- DSP2053 - Redfish Property Guide - Informative documentation providing an index to individual property definitions across all Redfish schema.
- DSP2065 - Redfish Message Registry Guide - Informative documentation providing details regarding the messages defined in Redfish standard message registries.
- DSP8010 - Redfish Schema - Redfish schema definitions. These files are normative in nature and are normatively referenced by the Redfish Specification. The three schema formats are CSDL (OData Common Schema Definition Language format, which is in XML), JSON Schema, and OpenAPI schema. These schema definitions should be functionally equivalent, thus specifying the schema in three different languages.
- DSP8011 - Redfish Standard Registries - Redfish registry definitions. This bundle of Redfish registries includes message registries used for Redfish-defined messages including events and privilege maps.
- DSP8013 - Redfish Interoperability Profiles Bundle - Bundle of published Redfish interoperability profile documents and supporting schema and sample documents used for creating profiles.
2 Redfish Interoperability Profiles Bundle contents
2.1 Profile construction documents
The root folder of this bundle contains tools useful for constructing a new Redfish interoperability profile.
RedfishInteroperabilityProfile.v1_n_n.json- A JSON schema definition for a Redfish interoperability profile JSON document. This schema file can be used with a JSON Schema validator to ensure that a created profile conforms to the Redfish Interoperability Profile Specification.SampleProfile.json- A sample profile JSON document that shows the features available in the profile definition.
2.2 Profile folders
As profiles are defined, approved and published, they will be added to folders in this bundle. Each published profile is expected to include at least two files: the JSON document, which conforms to the profile schema, and a profile guide to document the contents of the profile.
As of this publication, there are no normative profiles published by DMTF. Work-in-progress profiles are available separately.
2.3 Utilities
DMTF has published several open source utilities to aid in the development of Redfish interoperability profiles. In addition, questions can also be posted in the Redfish User Forum (https://redfishforum.com/).
2.3.1 Redfish Interop Validator
https://github.com/DMTF/Redfish-Interop-Validator
The Redfish Interop Validator is a python3 tool that will validate a service based on an interoperability profile given to the tool. The purpose of the tool is to guarantee that a specific service is compatible with vendor systems or system tools based on a vendor's specification in a profile.
2.3.2 Documentation Generator
https://github.com/DMTF/Redfish-Tools
Creates end user documentation by combining the Redfish schemas with a profile document and any supplemental text provided by the profile author.
3 ANNEX A (informative) Change log
| File | Version | Date | Description |
|---|---|---|---|
| RedfishInteroperabilityProfile | 1.8.2 | 2025-09-05 | Added required term to
enforce the presence of the UseCases property for resources
with use cases. |
| RedfishInteroperabilityProfile | 1.8.1 | 2025-05-01 | Corrected the semantics of
Equal and NotEqual in comparisons to allow for
multiple values to be specified. Changed the format definition of
URIs to follow uri-template. |
| RedfishInteroperabilityProfile | 1.8.0 | 2024-04-03 | Added ChassisType,
DriveProtocol, MemoryType,
PortProtocol, and ProcessorType as additional
UseCaseType values to support resource use cases for
selecting resources based on a subset of parent resources in the
tree. |
| RedfishInteroperabilityProfile | 1.7.1 | 2024-04-03 | Errata release. Fixed the profile schema to contain valid JSON. |
| RedfishInteroperabilityProfile | 1.7.0 | 2023-11-30 | Added support for DeepPATCH
and DeepPOST to protocol-level information. Added support
for ActionInfo in action requirements. Added support for
UseCaseType in use cases. |
| RedfishInteroperabilityProfile | 1.6.0 | 2022-12-07 | Added support for UseCases in
a profile. Added RequiredResourceProfile to allow inclusion
of individual schema-level requirements from other profiles. Added
ReplacesProperty and ReplacedByProperty to
provide better handling of requirements on deprecated or obsolete
properties. |
| RedfishInteroperabilityProfile | 1.x.x | 2022-12-07 | Errata release. Corrected the nesting
usage of PropertyRequirements to match JSON Schema
requirements. |
| RedfishInteroperabilityProfile | 1.5.1 | 2022-08-04 | Errata release. Added missing
"additionalProperties": false terms to several
objects. |
| RedfishInteroperabilityProfile | 1.5.0 | 2021-12-02 | Added support for JSON Pointer usage in
CompareProperty. |
| RedfishInteroperabilityProfile | 1.4.1 | 2021-10-06 | Errata release. Corrected descriptions for
CreateResource, DeleteResource, and
UpdateResource to match terminology and usage in the sample
profiles. |
| RedfishInteroperabilityProfile | 1.4.0 | 2021-08-04 | Added support for License and
ContributedBy. Updated descriptions for style and
consistency in many places to match updates made to the specification
over time. |
| RedfishInteroperabilityProfile | 1.x.x | 2020-06-12 | Errata release. Corrected
RequiredProfiles definition. Corrected placement of some
new definitions that were incorrectly placed outside of
definitions. |
| RedfishInteroperabilityProfile | 1.3.0 | 2019-12-06 | Added support for
SupportedFeatures to registry-level information. |
| RedfishInteroperabilityProfile | 1.2.0 | 2019-07-03 | Added support for Supported
and IfPopulated requirement types. Added 'pattern' term to
provide regex for version-related properties. |
| RedfishInteroperabilityProfile | 1.1.0 | 2019-02-26 | Added support for basing requirements on
URIs when applied with Redfish Specification v1.6 OpenAPI support.
Corrected the format of the Repository property to use
uri-reference and clarified its description to reflect
usage for profiles, schemas, and registries. |
| RedfishInteroperabilityProfile | 1.0.3 | 2018-11-29 | Errata release. Corrected the type for
CompareType to allow for booleans, numbers, and
strings. |
| RedfishInteroperabilityProfile | 1.0.2 | 2018-11-29 | Errata release. Corrected the depth of
additionalProperties found in Parameters for
ActionProfile. |
| RedfishInteroperabilityProfile | 1.0.1 | 2018-05-01 | Errata release. Corrected inconsistent
usage of the Comparison property within conditional
requirements. Added missing Values property to Conditional
Requirements to enable specification of property values when a condition
is met. |
| SampleProfile.json | 1.0.3 | 2018-05-01 | Errata release. Updated examples to reflect errata with v1.0.1 of the specification. Added example to show a condition that also places requirements on the value of a property when a condition is met. |
| RedfishInteroperabilityProfile | 1.0.0 | 2017-11-17 | Initial release. JSON schema used to define a Redfish interoperability profile. |
| SampleProfile.json | 1.0.0 | 2017-11-17 | Initial release. Sample document to show examples of the various profile features. |