1{
2    "$id": "http://redfish.dmtf.org/schemas/v1/CompositionReservation.v1_0_2.json",
3    "$ref": "#/definitions/CompositionReservation",
4    "$schema": "http://redfish.dmtf.org/schemas/v1/redfish-schema-v1.json",
5    "copyright": "Copyright 2014-2024 DMTF. For the full DMTF copyright policy, see http://www.dmtf.org/about/policies/copyright",
6    "definitions": {
7        "Actions": {
8            "additionalProperties": false,
9            "description": "The available actions for this resource.",
10            "longDescription": "This type shall contain the available actions for this resource.",
11            "patternProperties": {
12                "^([a-zA-Z_][a-zA-Z0-9_]*)?@(odata|Redfish|Message)\\.[a-zA-Z_][a-zA-Z0-9_]*$": {
13                    "description": "This property shall specify a valid odata or Redfish property.",
14                    "type": [
15                        "array",
16                        "boolean",
17                        "integer",
18                        "number",
19                        "null",
20                        "object",
21                        "string"
22                    ]
23                }
24            },
25            "properties": {
26                "Oem": {
27                    "$ref": "#/definitions/OemActions",
28                    "description": "The available OEM-specific actions for this resource.",
29                    "longDescription": "This property shall contain the available OEM-specific actions for this resource."
30                }
31            },
32            "type": "object"
33        },
34        "CompositionReservation": {
35            "additionalProperties": false,
36            "description": "The `CompositionReservation` schema contains reservation information related to the `Compose` action defined in the `CompositionService` resource when the `RequestType` parameter contains the value `PreviewReserve`.",
37            "longDescription": "This resource represents the composition reservation of the composition service for a Redfish implementation.",
38            "patternProperties": {
39                "^([a-zA-Z_][a-zA-Z0-9_]*)?@(odata|Redfish|Message)\\.[a-zA-Z_][a-zA-Z0-9_]*$": {
40                    "description": "This property shall specify a valid odata or Redfish property.",
41                    "type": [
42                        "array",
43                        "boolean",
44                        "integer",
45                        "number",
46                        "null",
47                        "object",
48                        "string"
49                    ]
50                }
51            },
52            "properties": {
53                "@odata.context": {
54                    "$ref": "http://redfish.dmtf.org/schemas/v1/odata-v4.json#/definitions/context"
55                },
56                "@odata.etag": {
57                    "$ref": "http://redfish.dmtf.org/schemas/v1/odata-v4.json#/definitions/etag"
58                },
59                "@odata.id": {
60                    "$ref": "http://redfish.dmtf.org/schemas/v1/odata-v4.json#/definitions/id"
61                },
62                "@odata.type": {
63                    "$ref": "http://redfish.dmtf.org/schemas/v1/odata-v4.json#/definitions/type"
64                },
65                "Actions": {
66                    "$ref": "#/definitions/Actions",
67                    "description": "The available actions for this resource.",
68                    "longDescription": "This property shall contain the available actions for this resource."
69                },
70                "Client": {
71                    "description": "The client that owns the reservation.",
72                    "longDescription": "This property shall contain the client that owns the reservation.  The service shall determine this value based on the client that invoked the `Compose` action that resulted in the creation of this reservation.",
73                    "readonly": true,
74                    "type": "string"
75                },
76                "Description": {
77                    "anyOf": [
78                        {
79                            "$ref": "http://redfish.dmtf.org/schemas/v1/Resource.json#/definitions/Description"
80                        },
81                        {
82                            "type": "null"
83                        }
84                    ],
85                    "readonly": true
86                },
87                "Id": {
88                    "$ref": "http://redfish.dmtf.org/schemas/v1/Resource.json#/definitions/Id",
89                    "readonly": true
90                },
91                "Manifest": {
92                    "$ref": "http://redfish.dmtf.org/schemas/v1/Manifest.json#/definitions/Manifest",
93                    "description": "The manifest document processed by the service that resulted in this reservation.",
94                    "longDescription": "This property shall contain the manifest document processed by the service that resulted in this reservation.  This property shall be required if the `RequestFormat` parameter in the `Compose` action request contained the value `Manifest`."
95                },
96                "Name": {
97                    "$ref": "http://redfish.dmtf.org/schemas/v1/Resource.json#/definitions/Name",
98                    "readonly": true
99                },
100                "Oem": {
101                    "$ref": "http://redfish.dmtf.org/schemas/v1/Resource.json#/definitions/Oem",
102                    "description": "The OEM extension property.",
103                    "longDescription": "This property shall contain the OEM extensions.  All values for properties that this object contains shall conform to the Redfish Specification-described requirements."
104                },
105                "ReservationTime": {
106                    "description": "The date and time the service created the reservation.",
107                    "format": "date-time",
108                    "longDescription": "This property shall indicate the date and time when the reservation was created by the service.",
109                    "readonly": true,
110                    "type": "string"
111                },
112                "ReservedResourceBlocks": {
113                    "description": "The array of links to the reserved resource blocks.",
114                    "items": {
115                        "$ref": "http://redfish.dmtf.org/schemas/v1/ResourceBlock.json#/definitions/ResourceBlock"
116                    },
117                    "longDescription": "This property shall contain an array of links to resources of type `ResourceBlock` that represent the reserved resource blocks for this reservation.  Upon deletion of the reservation or when the reservation is applied, the `Reserved` property in the referenced resource blocks shall change to `false`.",
118                    "readonly": true,
119                    "type": "array"
120                },
121                "ReservedResourceBlocks@odata.count": {
122                    "$ref": "http://redfish.dmtf.org/schemas/v1/odata-v4.json#/definitions/count"
123                }
124            },
125            "required": [
126                "@odata.id",
127                "@odata.type",
128                "Id",
129                "Name"
130            ],
131            "type": "object"
132        },
133        "OemActions": {
134            "additionalProperties": true,
135            "description": "The available OEM-specific actions for this resource.",
136            "longDescription": "This type shall contain the available OEM-specific actions for this resource.",
137            "patternProperties": {
138                "^([a-zA-Z_][a-zA-Z0-9_]*)?@(odata|Redfish|Message)\\.[a-zA-Z_][a-zA-Z0-9_]*$": {
139                    "description": "This property shall specify a valid odata or Redfish property.",
140                    "type": [
141                        "array",
142                        "boolean",
143                        "integer",
144                        "number",
145                        "null",
146                        "object",
147                        "string"
148                    ]
149                }
150            },
151            "properties": {},
152            "type": "object"
153        }
154    },
155    "language": "en",
156    "owningEntity": "DMTF",
157    "release": "2021.1",
158    "title": "#CompositionReservation.v1_0_2.CompositionReservation"
159}