xref: /openbmc/bmcweb/features/redfish/schema/dmtf/json-schema/Assembly.v1_6_0.json (revision 5ecf7b4e1bb6988dd3403fa80b723afbe2be30ae)
1*5ecf7b4eSGunnar Mills{
2*5ecf7b4eSGunnar Mills    "$id": "http://redfish.dmtf.org/schemas/v1/Assembly.v1_6_0.json",
3*5ecf7b4eSGunnar Mills    "$ref": "#/definitions/Assembly",
4*5ecf7b4eSGunnar Mills    "$schema": "http://redfish.dmtf.org/schemas/v1/redfish-schema-v1.json",
5*5ecf7b4eSGunnar Mills    "copyright": "Copyright 2014-2025 DMTF. For the full DMTF copyright policy, see http://www.dmtf.org/about/policies/copyright",
6*5ecf7b4eSGunnar Mills    "definitions": {
7*5ecf7b4eSGunnar Mills        "Actions": {
8*5ecf7b4eSGunnar Mills            "additionalProperties": false,
9*5ecf7b4eSGunnar Mills            "description": "The available actions for this resource.",
10*5ecf7b4eSGunnar Mills            "longDescription": "This type shall contain the available actions for this resource.",
11*5ecf7b4eSGunnar Mills            "patternProperties": {
12*5ecf7b4eSGunnar Mills                "^([a-zA-Z_][a-zA-Z0-9_]*)?@(odata|Redfish|Message)\\.[a-zA-Z_][a-zA-Z0-9_]*$": {
13*5ecf7b4eSGunnar Mills                    "description": "This property shall specify a valid odata or Redfish property.",
14*5ecf7b4eSGunnar Mills                    "type": [
15*5ecf7b4eSGunnar Mills                        "array",
16*5ecf7b4eSGunnar Mills                        "boolean",
17*5ecf7b4eSGunnar Mills                        "integer",
18*5ecf7b4eSGunnar Mills                        "number",
19*5ecf7b4eSGunnar Mills                        "null",
20*5ecf7b4eSGunnar Mills                        "object",
21*5ecf7b4eSGunnar Mills                        "string"
22*5ecf7b4eSGunnar Mills                    ]
23*5ecf7b4eSGunnar Mills                }
24*5ecf7b4eSGunnar Mills            },
25*5ecf7b4eSGunnar Mills            "properties": {
26*5ecf7b4eSGunnar Mills                "Oem": {
27*5ecf7b4eSGunnar Mills                    "$ref": "#/definitions/OemActions",
28*5ecf7b4eSGunnar Mills                    "description": "The available OEM-specific actions for this resource.",
29*5ecf7b4eSGunnar Mills                    "longDescription": "This property shall contain the available OEM-specific actions for this resource."
30*5ecf7b4eSGunnar Mills                }
31*5ecf7b4eSGunnar Mills            },
32*5ecf7b4eSGunnar Mills            "type": "object"
33*5ecf7b4eSGunnar Mills        },
34*5ecf7b4eSGunnar Mills        "Assembly": {
35*5ecf7b4eSGunnar Mills            "additionalProperties": false,
36*5ecf7b4eSGunnar Mills            "description": "The `Assembly` schema defines an assembly.  Assembly information contains details about a device, such as part number, serial number, manufacturer, and production date.  It also provides access to the original data for the assembly.",
37*5ecf7b4eSGunnar Mills            "longDescription": "This resource shall represent an assembly for a Redfish implementation.  Assembly information contains details about a device, such as part number, serial number, manufacturer, and production date.  It also provides access to the original data for the assembly.",
38*5ecf7b4eSGunnar Mills            "patternProperties": {
39*5ecf7b4eSGunnar Mills                "^([a-zA-Z_][a-zA-Z0-9_]*)?@(odata|Redfish|Message)\\.[a-zA-Z_][a-zA-Z0-9_]*$": {
40*5ecf7b4eSGunnar Mills                    "description": "This property shall specify a valid odata or Redfish property.",
41*5ecf7b4eSGunnar Mills                    "type": [
42*5ecf7b4eSGunnar Mills                        "array",
43*5ecf7b4eSGunnar Mills                        "boolean",
44*5ecf7b4eSGunnar Mills                        "integer",
45*5ecf7b4eSGunnar Mills                        "number",
46*5ecf7b4eSGunnar Mills                        "null",
47*5ecf7b4eSGunnar Mills                        "object",
48*5ecf7b4eSGunnar Mills                        "string"
49*5ecf7b4eSGunnar Mills                    ]
50*5ecf7b4eSGunnar Mills                }
51*5ecf7b4eSGunnar Mills            },
52*5ecf7b4eSGunnar Mills            "properties": {
53*5ecf7b4eSGunnar Mills                "@odata.context": {
54*5ecf7b4eSGunnar Mills                    "$ref": "http://redfish.dmtf.org/schemas/v1/odata-v4.json#/definitions/context"
55*5ecf7b4eSGunnar Mills                },
56*5ecf7b4eSGunnar Mills                "@odata.etag": {
57*5ecf7b4eSGunnar Mills                    "$ref": "http://redfish.dmtf.org/schemas/v1/odata-v4.json#/definitions/etag"
58*5ecf7b4eSGunnar Mills                },
59*5ecf7b4eSGunnar Mills                "@odata.id": {
60*5ecf7b4eSGunnar Mills                    "$ref": "http://redfish.dmtf.org/schemas/v1/odata-v4.json#/definitions/id"
61*5ecf7b4eSGunnar Mills                },
62*5ecf7b4eSGunnar Mills                "@odata.type": {
63*5ecf7b4eSGunnar Mills                    "$ref": "http://redfish.dmtf.org/schemas/v1/odata-v4.json#/definitions/type"
64*5ecf7b4eSGunnar Mills                },
65*5ecf7b4eSGunnar Mills                "Actions": {
66*5ecf7b4eSGunnar Mills                    "$ref": "#/definitions/Actions",
67*5ecf7b4eSGunnar Mills                    "description": "The available actions for this resource.",
68*5ecf7b4eSGunnar Mills                    "longDescription": "This property shall contain the available actions for this resource."
69*5ecf7b4eSGunnar Mills                },
70*5ecf7b4eSGunnar Mills                "Assemblies": {
71*5ecf7b4eSGunnar Mills                    "autoExpand": true,
72*5ecf7b4eSGunnar Mills                    "description": "The assembly records.",
73*5ecf7b4eSGunnar Mills                    "items": {
74*5ecf7b4eSGunnar Mills                        "$ref": "#/definitions/AssemblyData"
75*5ecf7b4eSGunnar Mills                    },
76*5ecf7b4eSGunnar Mills                    "longDescription": "These properties shall define assembly records for a Redfish implementation.",
77*5ecf7b4eSGunnar Mills                    "readonly": false,
78*5ecf7b4eSGunnar Mills                    "type": "array"
79*5ecf7b4eSGunnar Mills                },
80*5ecf7b4eSGunnar Mills                "Assemblies@odata.count": {
81*5ecf7b4eSGunnar Mills                    "$ref": "http://redfish.dmtf.org/schemas/v1/odata-v4.json#/definitions/count"
82*5ecf7b4eSGunnar Mills                },
83*5ecf7b4eSGunnar Mills                "Description": {
84*5ecf7b4eSGunnar Mills                    "anyOf": [
85*5ecf7b4eSGunnar Mills                        {
86*5ecf7b4eSGunnar Mills                            "$ref": "http://redfish.dmtf.org/schemas/v1/Resource.json#/definitions/Description"
87*5ecf7b4eSGunnar Mills                        },
88*5ecf7b4eSGunnar Mills                        {
89*5ecf7b4eSGunnar Mills                            "type": "null"
90*5ecf7b4eSGunnar Mills                        }
91*5ecf7b4eSGunnar Mills                    ],
92*5ecf7b4eSGunnar Mills                    "readonly": true
93*5ecf7b4eSGunnar Mills                },
94*5ecf7b4eSGunnar Mills                "Id": {
95*5ecf7b4eSGunnar Mills                    "$ref": "http://redfish.dmtf.org/schemas/v1/Resource.json#/definitions/Id",
96*5ecf7b4eSGunnar Mills                    "readonly": true
97*5ecf7b4eSGunnar Mills                },
98*5ecf7b4eSGunnar Mills                "Name": {
99*5ecf7b4eSGunnar Mills                    "$ref": "http://redfish.dmtf.org/schemas/v1/Resource.json#/definitions/Name",
100*5ecf7b4eSGunnar Mills                    "readonly": true
101*5ecf7b4eSGunnar Mills                },
102*5ecf7b4eSGunnar Mills                "Oem": {
103*5ecf7b4eSGunnar Mills                    "$ref": "http://redfish.dmtf.org/schemas/v1/Resource.json#/definitions/Oem",
104*5ecf7b4eSGunnar Mills                    "description": "The OEM extension property.",
105*5ecf7b4eSGunnar 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."
106*5ecf7b4eSGunnar Mills                }
107*5ecf7b4eSGunnar Mills            },
108*5ecf7b4eSGunnar Mills            "required": [
109*5ecf7b4eSGunnar Mills                "@odata.id",
110*5ecf7b4eSGunnar Mills                "@odata.type",
111*5ecf7b4eSGunnar Mills                "Id",
112*5ecf7b4eSGunnar Mills                "Name"
113*5ecf7b4eSGunnar Mills            ],
114*5ecf7b4eSGunnar Mills            "type": "object"
115*5ecf7b4eSGunnar Mills        },
116*5ecf7b4eSGunnar Mills        "AssemblyData": {
117*5ecf7b4eSGunnar Mills            "additionalProperties": false,
118*5ecf7b4eSGunnar Mills            "patternProperties": {
119*5ecf7b4eSGunnar Mills                "^([a-zA-Z_][a-zA-Z0-9_]*)?@(odata|Redfish|Message)\\.[a-zA-Z_][a-zA-Z0-9_]*$": {
120*5ecf7b4eSGunnar Mills                    "description": "This property shall specify a valid odata or Redfish property.",
121*5ecf7b4eSGunnar Mills                    "type": [
122*5ecf7b4eSGunnar Mills                        "array",
123*5ecf7b4eSGunnar Mills                        "boolean",
124*5ecf7b4eSGunnar Mills                        "integer",
125*5ecf7b4eSGunnar Mills                        "number",
126*5ecf7b4eSGunnar Mills                        "null",
127*5ecf7b4eSGunnar Mills                        "object",
128*5ecf7b4eSGunnar Mills                        "string"
129*5ecf7b4eSGunnar Mills                    ]
130*5ecf7b4eSGunnar Mills                }
131*5ecf7b4eSGunnar Mills            },
132*5ecf7b4eSGunnar Mills            "properties": {
133*5ecf7b4eSGunnar Mills                "@odata.id": {
134*5ecf7b4eSGunnar Mills                    "$ref": "http://redfish.dmtf.org/schemas/v1/odata-v4.json#/definitions/id"
135*5ecf7b4eSGunnar Mills                },
136*5ecf7b4eSGunnar Mills                "Actions": {
137*5ecf7b4eSGunnar Mills                    "$ref": "#/definitions/AssemblyDataActions",
138*5ecf7b4eSGunnar Mills                    "description": "The available actions for this resource.",
139*5ecf7b4eSGunnar Mills                    "longDescription": "This property shall contain the available actions for this resource."
140*5ecf7b4eSGunnar Mills                },
141*5ecf7b4eSGunnar Mills                "BinaryDataURI": {
142*5ecf7b4eSGunnar Mills                    "description": "The URI at which to access an image of the assembly information.",
143*5ecf7b4eSGunnar Mills                    "format": "uri-reference",
144*5ecf7b4eSGunnar Mills                    "longDescription": "This property shall contain the URI at which to access an image of the assembly information, using the Redfish protocol and authentication methods.  The service provides this URI for the download of the OEM-specific binary image of the assembly data.  An HTTP `GET` from this URI shall return a response payload of MIME type `application/octet-stream`.  If the service supports it, an HTTP `PUT` to this URI shall replace the binary image of the assembly.",
145*5ecf7b4eSGunnar Mills                    "readonly": true,
146*5ecf7b4eSGunnar Mills                    "type": [
147*5ecf7b4eSGunnar Mills                        "string",
148*5ecf7b4eSGunnar Mills                        "null"
149*5ecf7b4eSGunnar Mills                    ]
150*5ecf7b4eSGunnar Mills                },
151*5ecf7b4eSGunnar Mills                "Description": {
152*5ecf7b4eSGunnar Mills                    "description": "The description of the assembly.",
153*5ecf7b4eSGunnar Mills                    "longDescription": "This property shall contain the description of the assembly.",
154*5ecf7b4eSGunnar Mills                    "readonly": true,
155*5ecf7b4eSGunnar Mills                    "type": [
156*5ecf7b4eSGunnar Mills                        "string",
157*5ecf7b4eSGunnar Mills                        "null"
158*5ecf7b4eSGunnar Mills                    ]
159*5ecf7b4eSGunnar Mills                },
160*5ecf7b4eSGunnar Mills                "EngineeringChangeLevel": {
161*5ecf7b4eSGunnar Mills                    "description": "The engineering change level of the assembly.",
162*5ecf7b4eSGunnar Mills                    "longDescription": "This property shall contain the engineering change level or revision of the assembly.",
163*5ecf7b4eSGunnar Mills                    "readonly": true,
164*5ecf7b4eSGunnar Mills                    "type": [
165*5ecf7b4eSGunnar Mills                        "string",
166*5ecf7b4eSGunnar Mills                        "null"
167*5ecf7b4eSGunnar Mills                    ]
168*5ecf7b4eSGunnar Mills                },
169*5ecf7b4eSGunnar Mills                "ISOCountryCodeOfOrigin": {
170*5ecf7b4eSGunnar Mills                    "description": "The manufacturing country of origin, using the ISO 3166-1 country code.",
171*5ecf7b4eSGunnar Mills                    "longDescription": "This property shall contain the ISO 3166-1-defined alpha-2 or alpha-3 country code that reflects the manufacturing country of origin.",
172*5ecf7b4eSGunnar Mills                    "pattern": "^([A-Z]{2}|[A-Z]{3})$",
173*5ecf7b4eSGunnar Mills                    "readonly": true,
174*5ecf7b4eSGunnar Mills                    "type": [
175*5ecf7b4eSGunnar Mills                        "string",
176*5ecf7b4eSGunnar Mills                        "null"
177*5ecf7b4eSGunnar Mills                    ],
178*5ecf7b4eSGunnar Mills                    "versionAdded": "v1_5_0"
179*5ecf7b4eSGunnar Mills                },
180*5ecf7b4eSGunnar Mills                "Location": {
181*5ecf7b4eSGunnar Mills                    "$ref": "http://redfish.dmtf.org/schemas/v1/Resource.json#/definitions/Location",
182*5ecf7b4eSGunnar Mills                    "description": "The location of the assembly.",
183*5ecf7b4eSGunnar Mills                    "longDescription": "This property shall contain the location information of the associated assembly.",
184*5ecf7b4eSGunnar Mills                    "versionAdded": "v1_3_0"
185*5ecf7b4eSGunnar Mills                },
186*5ecf7b4eSGunnar Mills                "LocationIndicatorActive": {
187*5ecf7b4eSGunnar Mills                    "description": "An indicator allowing an operator to physically locate this resource.",
188*5ecf7b4eSGunnar Mills                    "longDescription": "This property shall contain the state of the indicator used to physically identify or locate this resource.",
189*5ecf7b4eSGunnar Mills                    "readonly": false,
190*5ecf7b4eSGunnar Mills                    "type": [
191*5ecf7b4eSGunnar Mills                        "boolean",
192*5ecf7b4eSGunnar Mills                        "null"
193*5ecf7b4eSGunnar Mills                    ],
194*5ecf7b4eSGunnar Mills                    "versionAdded": "v1_3_0"
195*5ecf7b4eSGunnar Mills                },
196*5ecf7b4eSGunnar Mills                "MemberId": {
197*5ecf7b4eSGunnar Mills                    "description": "The unique identifier for the member within an array.",
198*5ecf7b4eSGunnar Mills                    "longDescription": "This property shall contain the unique identifier for this member within an array.  For services supporting Redfish v1.6 or higher, this value shall contain the zero-based array index.",
199*5ecf7b4eSGunnar Mills                    "readonly": true,
200*5ecf7b4eSGunnar Mills                    "type": "string"
201*5ecf7b4eSGunnar Mills                },
202*5ecf7b4eSGunnar Mills                "Model": {
203*5ecf7b4eSGunnar Mills                    "description": "The model number of the assembly.",
204*5ecf7b4eSGunnar Mills                    "longDescription": "This property shall contain the name by which the manufacturer generally refers to the assembly.",
205*5ecf7b4eSGunnar Mills                    "readonly": true,
206*5ecf7b4eSGunnar Mills                    "type": [
207*5ecf7b4eSGunnar Mills                        "string",
208*5ecf7b4eSGunnar Mills                        "null"
209*5ecf7b4eSGunnar Mills                    ]
210*5ecf7b4eSGunnar Mills                },
211*5ecf7b4eSGunnar Mills                "Name": {
212*5ecf7b4eSGunnar Mills                    "description": "The name of the assembly.",
213*5ecf7b4eSGunnar Mills                    "longDescription": "This property shall contain the name of the assembly.",
214*5ecf7b4eSGunnar Mills                    "readonly": true,
215*5ecf7b4eSGunnar Mills                    "type": [
216*5ecf7b4eSGunnar Mills                        "string",
217*5ecf7b4eSGunnar Mills                        "null"
218*5ecf7b4eSGunnar Mills                    ]
219*5ecf7b4eSGunnar Mills                },
220*5ecf7b4eSGunnar Mills                "Oem": {
221*5ecf7b4eSGunnar Mills                    "$ref": "http://redfish.dmtf.org/schemas/v1/Resource.json#/definitions/Oem",
222*5ecf7b4eSGunnar Mills                    "description": "The OEM extension property.",
223*5ecf7b4eSGunnar 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."
224*5ecf7b4eSGunnar Mills                },
225*5ecf7b4eSGunnar Mills                "PartNumber": {
226*5ecf7b4eSGunnar Mills                    "description": "The part number of the assembly.",
227*5ecf7b4eSGunnar Mills                    "longDescription": "This property shall contain the part number of the assembly.",
228*5ecf7b4eSGunnar Mills                    "readonly": true,
229*5ecf7b4eSGunnar Mills                    "type": [
230*5ecf7b4eSGunnar Mills                        "string",
231*5ecf7b4eSGunnar Mills                        "null"
232*5ecf7b4eSGunnar Mills                    ]
233*5ecf7b4eSGunnar Mills                },
234*5ecf7b4eSGunnar Mills                "PhysicalContext": {
235*5ecf7b4eSGunnar Mills                    "$ref": "http://redfish.dmtf.org/schemas/v1/PhysicalContext.json#/definitions/PhysicalContext",
236*5ecf7b4eSGunnar Mills                    "description": "The area or device to which the assembly data applies.",
237*5ecf7b4eSGunnar Mills                    "longDescription": "This property shall contain a description of the physical context for the assembly data.",
238*5ecf7b4eSGunnar Mills                    "readonly": true,
239*5ecf7b4eSGunnar Mills                    "versionAdded": "v1_2_0"
240*5ecf7b4eSGunnar Mills                },
241*5ecf7b4eSGunnar Mills                "Producer": {
242*5ecf7b4eSGunnar Mills                    "description": "The producer or manufacturer of the assembly.",
243*5ecf7b4eSGunnar Mills                    "longDescription": "This property shall contain the name of the company that produced or manufactured the assembly.  This value shall be equal to the 'Manufacturer' field value in a PLDM FRU structure, if applicable, for the assembly.",
244*5ecf7b4eSGunnar Mills                    "readonly": true,
245*5ecf7b4eSGunnar Mills                    "type": [
246*5ecf7b4eSGunnar Mills                        "string",
247*5ecf7b4eSGunnar Mills                        "null"
248*5ecf7b4eSGunnar Mills                    ]
249*5ecf7b4eSGunnar Mills                },
250*5ecf7b4eSGunnar Mills                "ProductionDate": {
251*5ecf7b4eSGunnar Mills                    "description": "The production date of the assembly.",
252*5ecf7b4eSGunnar Mills                    "format": "date-time",
253*5ecf7b4eSGunnar Mills                    "longDescription": "This property shall contain the date of production or manufacture for the assembly.  The time of day portion of the property shall be `00:00:00Z`, if the time of day is unknown.",
254*5ecf7b4eSGunnar Mills                    "readonly": true,
255*5ecf7b4eSGunnar Mills                    "type": [
256*5ecf7b4eSGunnar Mills                        "string",
257*5ecf7b4eSGunnar Mills                        "null"
258*5ecf7b4eSGunnar Mills                    ]
259*5ecf7b4eSGunnar Mills                },
260*5ecf7b4eSGunnar Mills                "ReadyToRemove": {
261*5ecf7b4eSGunnar Mills                    "description": "An indication of whether the assembly is prepared by the system for removal.",
262*5ecf7b4eSGunnar Mills                    "longDescription": "This property shall indicate whether the assembly is ready for removal.  Setting the value to `true` shall cause the service to perform appropriate actions to quiesce the device.  A task may spawn while the device is quiescing.",
263*5ecf7b4eSGunnar Mills                    "readonly": false,
264*5ecf7b4eSGunnar Mills                    "type": [
265*5ecf7b4eSGunnar Mills                        "boolean",
266*5ecf7b4eSGunnar Mills                        "null"
267*5ecf7b4eSGunnar Mills                    ],
268*5ecf7b4eSGunnar Mills                    "versionAdded": "v1_6_0"
269*5ecf7b4eSGunnar Mills                },
270*5ecf7b4eSGunnar Mills                "Replaceable": {
271*5ecf7b4eSGunnar Mills                    "description": "An indication of whether the component associated this assembly can be independently replaced as allowed by the vendor's replacement policy.",
272*5ecf7b4eSGunnar Mills                    "longDescription": "This property shall indicate whether the component associated this assembly can be independently replaced as allowed by the vendor's replacement policy.  A value of `false` indicates the component needs to be replaced by policy as part of another component.  If the `LocationType` property of this assembly contains `Embedded`, this property shall contain `false`.",
273*5ecf7b4eSGunnar Mills                    "readonly": true,
274*5ecf7b4eSGunnar Mills                    "type": [
275*5ecf7b4eSGunnar Mills                        "boolean",
276*5ecf7b4eSGunnar Mills                        "null"
277*5ecf7b4eSGunnar Mills                    ],
278*5ecf7b4eSGunnar Mills                    "versionAdded": "v1_4_0"
279*5ecf7b4eSGunnar Mills                },
280*5ecf7b4eSGunnar Mills                "SKU": {
281*5ecf7b4eSGunnar Mills                    "description": "The SKU of the assembly.",
282*5ecf7b4eSGunnar Mills                    "longDescription": "This property shall contain the SKU of the assembly.",
283*5ecf7b4eSGunnar Mills                    "readonly": true,
284*5ecf7b4eSGunnar Mills                    "type": [
285*5ecf7b4eSGunnar Mills                        "string",
286*5ecf7b4eSGunnar Mills                        "null"
287*5ecf7b4eSGunnar Mills                    ]
288*5ecf7b4eSGunnar Mills                },
289*5ecf7b4eSGunnar Mills                "SerialNumber": {
290*5ecf7b4eSGunnar Mills                    "description": "The serial number of the assembly.",
291*5ecf7b4eSGunnar Mills                    "longDescription": "This property shall contain a manufacturer-allocated number that identifies the assembly.",
292*5ecf7b4eSGunnar Mills                    "readonly": true,
293*5ecf7b4eSGunnar Mills                    "type": [
294*5ecf7b4eSGunnar Mills                        "string",
295*5ecf7b4eSGunnar Mills                        "null"
296*5ecf7b4eSGunnar Mills                    ],
297*5ecf7b4eSGunnar Mills                    "versionAdded": "v1_2_0"
298*5ecf7b4eSGunnar Mills                },
299*5ecf7b4eSGunnar Mills                "SparePartNumber": {
300*5ecf7b4eSGunnar Mills                    "description": "The spare part number of the assembly.",
301*5ecf7b4eSGunnar Mills                    "longDescription": "This property shall contain the spare part number of the assembly.",
302*5ecf7b4eSGunnar Mills                    "readonly": true,
303*5ecf7b4eSGunnar Mills                    "type": [
304*5ecf7b4eSGunnar Mills                        "string",
305*5ecf7b4eSGunnar Mills                        "null"
306*5ecf7b4eSGunnar Mills                    ]
307*5ecf7b4eSGunnar Mills                },
308*5ecf7b4eSGunnar Mills                "Status": {
309*5ecf7b4eSGunnar Mills                    "$ref": "http://redfish.dmtf.org/schemas/v1/Resource.json#/definitions/Status",
310*5ecf7b4eSGunnar Mills                    "description": "The status and health of the resource and its subordinate or dependent resources.",
311*5ecf7b4eSGunnar Mills                    "longDescription": "This property shall contain any status or health properties of the resource.",
312*5ecf7b4eSGunnar Mills                    "versionAdded": "v1_1_0"
313*5ecf7b4eSGunnar Mills                },
314*5ecf7b4eSGunnar Mills                "Vendor": {
315*5ecf7b4eSGunnar Mills                    "description": "The vendor of the assembly.",
316*5ecf7b4eSGunnar Mills                    "longDescription": "This property shall contain the name of the company that provides the final product that includes this assembly.  This value shall be equal to the 'Vendor' field value in a PLDM FRU structure, if applicable, for the assembly.",
317*5ecf7b4eSGunnar Mills                    "readonly": true,
318*5ecf7b4eSGunnar Mills                    "type": [
319*5ecf7b4eSGunnar Mills                        "string",
320*5ecf7b4eSGunnar Mills                        "null"
321*5ecf7b4eSGunnar Mills                    ]
322*5ecf7b4eSGunnar Mills                },
323*5ecf7b4eSGunnar Mills                "Version": {
324*5ecf7b4eSGunnar Mills                    "description": "The hardware version of the assembly.",
325*5ecf7b4eSGunnar Mills                    "longDescription": "This property shall contain the hardware version of the assembly as determined by the vendor or supplier.",
326*5ecf7b4eSGunnar Mills                    "readonly": true,
327*5ecf7b4eSGunnar Mills                    "type": [
328*5ecf7b4eSGunnar Mills                        "string",
329*5ecf7b4eSGunnar Mills                        "null"
330*5ecf7b4eSGunnar Mills                    ]
331*5ecf7b4eSGunnar Mills                }
332*5ecf7b4eSGunnar Mills            },
333*5ecf7b4eSGunnar Mills            "required": [
334*5ecf7b4eSGunnar Mills                "@odata.id",
335*5ecf7b4eSGunnar Mills                "MemberId"
336*5ecf7b4eSGunnar Mills            ],
337*5ecf7b4eSGunnar Mills            "type": "object"
338*5ecf7b4eSGunnar Mills        },
339*5ecf7b4eSGunnar Mills        "AssemblyDataActions": {
340*5ecf7b4eSGunnar Mills            "additionalProperties": false,
341*5ecf7b4eSGunnar Mills            "description": "The available actions for this resource.",
342*5ecf7b4eSGunnar Mills            "longDescription": "This type shall contain the available actions for this resource.",
343*5ecf7b4eSGunnar Mills            "patternProperties": {
344*5ecf7b4eSGunnar Mills                "^([a-zA-Z_][a-zA-Z0-9_]*)?@(odata|Redfish|Message)\\.[a-zA-Z_][a-zA-Z0-9_]*$": {
345*5ecf7b4eSGunnar Mills                    "description": "This property shall specify a valid odata or Redfish property.",
346*5ecf7b4eSGunnar Mills                    "type": [
347*5ecf7b4eSGunnar Mills                        "array",
348*5ecf7b4eSGunnar Mills                        "boolean",
349*5ecf7b4eSGunnar Mills                        "integer",
350*5ecf7b4eSGunnar Mills                        "number",
351*5ecf7b4eSGunnar Mills                        "null",
352*5ecf7b4eSGunnar Mills                        "object",
353*5ecf7b4eSGunnar Mills                        "string"
354*5ecf7b4eSGunnar Mills                    ]
355*5ecf7b4eSGunnar Mills                }
356*5ecf7b4eSGunnar Mills            },
357*5ecf7b4eSGunnar Mills            "properties": {
358*5ecf7b4eSGunnar Mills                "Oem": {
359*5ecf7b4eSGunnar Mills                    "$ref": "#/definitions/AssemblyDataOemActions",
360*5ecf7b4eSGunnar Mills                    "description": "The available OEM-specific actions for this resource.",
361*5ecf7b4eSGunnar Mills                    "longDescription": "This property shall contain the available OEM-specific actions for this resource."
362*5ecf7b4eSGunnar Mills                }
363*5ecf7b4eSGunnar Mills            },
364*5ecf7b4eSGunnar Mills            "type": "object"
365*5ecf7b4eSGunnar Mills        },
366*5ecf7b4eSGunnar Mills        "AssemblyDataOemActions": {
367*5ecf7b4eSGunnar Mills            "additionalProperties": true,
368*5ecf7b4eSGunnar Mills            "description": "The available OEM-specific actions for this resource.",
369*5ecf7b4eSGunnar Mills            "longDescription": "This type shall contain the available OEM-specific actions for this resource.",
370*5ecf7b4eSGunnar Mills            "patternProperties": {
371*5ecf7b4eSGunnar Mills                "^([a-zA-Z_][a-zA-Z0-9_]*)?@(odata|Redfish|Message)\\.[a-zA-Z_][a-zA-Z0-9_]*$": {
372*5ecf7b4eSGunnar Mills                    "description": "This property shall specify a valid odata or Redfish property.",
373*5ecf7b4eSGunnar Mills                    "type": [
374*5ecf7b4eSGunnar Mills                        "array",
375*5ecf7b4eSGunnar Mills                        "boolean",
376*5ecf7b4eSGunnar Mills                        "integer",
377*5ecf7b4eSGunnar Mills                        "number",
378*5ecf7b4eSGunnar Mills                        "null",
379*5ecf7b4eSGunnar Mills                        "object",
380*5ecf7b4eSGunnar Mills                        "string"
381*5ecf7b4eSGunnar Mills                    ]
382*5ecf7b4eSGunnar Mills                }
383*5ecf7b4eSGunnar Mills            },
384*5ecf7b4eSGunnar Mills            "properties": {},
385*5ecf7b4eSGunnar Mills            "type": "object"
386*5ecf7b4eSGunnar Mills        },
387*5ecf7b4eSGunnar Mills        "OemActions": {
388*5ecf7b4eSGunnar Mills            "additionalProperties": true,
389*5ecf7b4eSGunnar Mills            "description": "The available OEM-specific actions for this resource.",
390*5ecf7b4eSGunnar Mills            "longDescription": "This type shall contain the available OEM-specific actions for this resource.",
391*5ecf7b4eSGunnar Mills            "patternProperties": {
392*5ecf7b4eSGunnar Mills                "^([a-zA-Z_][a-zA-Z0-9_]*)?@(odata|Redfish|Message)\\.[a-zA-Z_][a-zA-Z0-9_]*$": {
393*5ecf7b4eSGunnar Mills                    "description": "This property shall specify a valid odata or Redfish property.",
394*5ecf7b4eSGunnar Mills                    "type": [
395*5ecf7b4eSGunnar Mills                        "array",
396*5ecf7b4eSGunnar Mills                        "boolean",
397*5ecf7b4eSGunnar Mills                        "integer",
398*5ecf7b4eSGunnar Mills                        "number",
399*5ecf7b4eSGunnar Mills                        "null",
400*5ecf7b4eSGunnar Mills                        "object",
401*5ecf7b4eSGunnar Mills                        "string"
402*5ecf7b4eSGunnar Mills                    ]
403*5ecf7b4eSGunnar Mills                }
404*5ecf7b4eSGunnar Mills            },
405*5ecf7b4eSGunnar Mills            "properties": {},
406*5ecf7b4eSGunnar Mills            "type": "object"
407*5ecf7b4eSGunnar Mills        }
408*5ecf7b4eSGunnar Mills    },
409*5ecf7b4eSGunnar Mills    "language": "en",
410*5ecf7b4eSGunnar Mills    "owningEntity": "DMTF",
411*5ecf7b4eSGunnar Mills    "release": "2025.3",
412*5ecf7b4eSGunnar Mills    "title": "#Assembly.v1_6_0.Assembly"
413*5ecf7b4eSGunnar Mills}