1{
2    "$id": "http://redfish.dmtf.org/schemas/v1/Resource.v1_20_0.json",
3    "$schema": "http://redfish.dmtf.org/schemas/v1/redfish-schema-v1.json",
4    "copyright": "Copyright 2014-2024 DMTF. For the full DMTF copyright policy, see http://www.dmtf.org/about/policies/copyright",
5    "definitions": {
6        "ContactInfo": {
7            "additionalProperties": false,
8            "description": "Contact information for this resource.",
9            "longDescription": "This object shall contain contact information for an individual or organization responsible for this resource.",
10            "patternProperties": {
11                "^([a-zA-Z_][a-zA-Z0-9_]*)?@(odata|Redfish|Message)\\.[a-zA-Z_][a-zA-Z0-9_]*$": {
12                    "description": "This property shall specify a valid odata or Redfish property.",
13                    "type": [
14                        "array",
15                        "boolean",
16                        "integer",
17                        "number",
18                        "null",
19                        "object",
20                        "string"
21                    ]
22                }
23            },
24            "properties": {
25                "ContactName": {
26                    "description": "Name of this contact.",
27                    "longDescription": "This property shall contain the name of a person or organization to contact for information about this resource.",
28                    "readonly": false,
29                    "type": [
30                        "string",
31                        "null"
32                    ],
33                    "versionAdded": "v1_7_0"
34                },
35                "EmailAddress": {
36                    "description": "Email address for this contact.",
37                    "longDescription": "This property shall contain the email address for a person or organization to contact for information about this resource.",
38                    "readonly": false,
39                    "type": [
40                        "string",
41                        "null"
42                    ],
43                    "versionAdded": "v1_7_0"
44                },
45                "PhoneNumber": {
46                    "description": "Phone number for this contact.",
47                    "longDescription": "This property shall contain the phone number for a person or organization to contact for information about this resource.",
48                    "readonly": false,
49                    "type": [
50                        "string",
51                        "null"
52                    ],
53                    "versionAdded": "v1_7_0"
54                }
55            },
56            "type": "object"
57        },
58        "DurableNameFormat": {
59            "enum": [
60                "NAA",
61                "iQN",
62                "FC_WWN",
63                "UUID",
64                "EUI",
65                "NQN",
66                "NSID",
67                "NGUID",
68                "MACAddress",
69                "GCXLID"
70            ],
71            "enumDeprecated": {
72                "NSID": "This value has been deprecated due to its non-uniqueness and `NGUID` should be used."
73            },
74            "enumDescriptions": {
75                "EUI": "The IEEE-defined 64-bit Extended Unique Identifier (EUI).",
76                "FC_WWN": "The Fibre Channel (FC) World Wide Name (WWN).",
77                "GCXLID": "The globally unique CXL logical device identifier (GCXLID).",
78                "MACAddress": "The media access control address (MAC address).",
79                "NAA": "The Name Address Authority (NAA) format.",
80                "NGUID": "The Namespace Globally Unique Identifier (NGUID).",
81                "NQN": "The NVMe Qualified Name (NQN).",
82                "NSID": "The NVM Namespace Identifier (NSID).",
83                "UUID": "The Universally Unique Identifier (UUID).",
84                "iQN": "The iSCSI Qualified Name (iQN)."
85            },
86            "enumLongDescriptions": {
87                "EUI": "This durable name shall contain the hexadecimal representation of the IEEE-defined 64-bit Extended Unique Identifier (EUI), as defined in the IEEE's Guidelines for 64-bit Global Identifier (EUI-64) Specification.  The `DurableName` property shall follow the regular expression pattern `^([0-9A-Fa-f]{2}[:-]){7}([0-9A-Fa-f]{2})$`, where the most significant octet is first.",
88                "FC_WWN": "This durable name shall contain a hexadecimal representation of the World-Wide Name (WWN) format, as defined in the T11 Fibre Channel Physical and Signaling Interface Specification.  The `DurableName` property shall follow the regular expression pattern `^([0-9A-Fa-f]{2}[:-]){7}([0-9A-Fa-f]{2})$`, where the most significant octet is first.",
89                "GCXLID": "This durable name shall be in the globally unique CXL logical device identifier (GCXLID).  The `DurableName` property shall follow the regular expression pattern `^([0-9A-Fa-f]{2}-){7}[0-9A-Fa-f]{2}:([0-9A-Fa-f]{4})$`, where the first eight hyphen-delimited octets contain the PCIe serial number, where the most significant octet is first, and the remaining 16-bit field contains the CXL Logical Device Identifier, with the most significant byte first.",
90                "MACAddress": "This durable name shall be a media access control address (MAC address), which is a unique identifier assigned to a network interface controller (NIC) for use as a network address.  This value should not be used if a more specific type of identifier is available.  The `DurableName` property shall follow the regular expression pattern `^([0-9A-Fa-f]{2}[:-]){5}([0-9A-Fa-f]{2})$`, where the most significant octet is first.",
91                "NAA": "This durable name shall contain a hexadecimal representation of the Name Address Authority structure, as defined in the T11 Fibre Channel - Framing and Signaling - 3 (FC-FS-3) specification.  The `DurableName` property shall follow the regular expression pattern `^(([0-9A-Fa-f]{2}){8}){1,2}$`, where the most significant octet is first.",
92                "NGUID": "This durable name shall be in the Namespace Globally Unique Identifier (NGUID), as defined in the NVN Express Specification.  The `DurableName` property shall follow the regular expression pattern `^([0-9A-Fa-f]{2}){16}$`, where the most significant octet is first.",
93                "NQN": "This durable name shall be in the NVMe Qualified Name (NQN) format, as defined in the NVN Express over Fabric Specification.",
94                "NSID": "This durable name shall be in the NVM Namespace Identifier (NSID) format, as defined in the NVN Express Specification.",
95                "UUID": "This durable name shall contain the hexadecimal representation of the UUID, as defined by RFC4122.  The `DurableName` property shall follow the regular expression pattern '([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12})'.",
96                "iQN": "This durable name shall be in the iSCSI Qualified Name (iQN) format, as defined in RFC3720 and RFC3721."
97            },
98            "enumVersionAdded": {
99                "GCXLID": "v1_15_0",
100                "MACAddress": "v1_14_0",
101                "NGUID": "v1_10_0",
102                "NQN": "v1_6_0",
103                "NSID": "v1_6_0"
104            },
105            "enumVersionDeprecated": {
106                "NSID": "v1_12_0"
107            },
108            "type": "string"
109        },
110        "Identifier": {
111            "additionalProperties": false,
112            "description": "Any additional identifiers for a resource.",
113            "longDescription": "This type shall contain any additional identifiers for a resource.",
114            "patternProperties": {
115                "^([a-zA-Z_][a-zA-Z0-9_]*)?@(odata|Redfish|Message)\\.[a-zA-Z_][a-zA-Z0-9_]*$": {
116                    "description": "This property shall specify a valid odata or Redfish property.",
117                    "type": [
118                        "array",
119                        "boolean",
120                        "integer",
121                        "number",
122                        "null",
123                        "object",
124                        "string"
125                    ]
126                }
127            },
128            "properties": {
129                "DurableName": {
130                    "description": "The world-wide, persistent name of the resource.",
131                    "longDescription": "This property shall contain the world-wide unique identifier for the resource.  The string shall be in the format described by the value in the `DurableNameFormat` property.",
132                    "readonly": true,
133                    "type": [
134                        "string",
135                        "null"
136                    ],
137                    "versionAdded": "v1_1_0"
138                },
139                "DurableNameFormat": {
140                    "anyOf": [
141                        {
142                            "$ref": "#/definitions/DurableNameFormat"
143                        },
144                        {
145                            "type": "null"
146                        }
147                    ],
148                    "description": "The format of the durable name property.",
149                    "longDescription": "This property shall represent the format of the `DurableName` property.",
150                    "readonly": true,
151                    "versionAdded": "v1_1_0"
152                }
153            },
154            "type": "object"
155        },
156        "Location": {
157            "additionalProperties": false,
158            "description": "The location of a resource.",
159            "longDescription": "This type shall describe the location of a resource.",
160            "patternProperties": {
161                "^([a-zA-Z_][a-zA-Z0-9_]*)?@(odata|Redfish|Message)\\.[a-zA-Z_][a-zA-Z0-9_]*$": {
162                    "description": "This property shall specify a valid odata or Redfish property.",
163                    "type": [
164                        "array",
165                        "boolean",
166                        "integer",
167                        "number",
168                        "null",
169                        "object",
170                        "string"
171                    ]
172                }
173            },
174            "properties": {
175                "AltitudeMeters": {
176                    "description": "The altitude of the resource in meters.",
177                    "longDescription": "This property shall contain the altitude of the resource, in meter units, defined as the elevation above sea level.",
178                    "readonly": false,
179                    "type": [
180                        "number",
181                        "null"
182                    ],
183                    "units": "m",
184                    "versionAdded": "v1_6_0"
185                },
186                "Contacts": {
187                    "description": "An array of contact information.",
188                    "items": {
189                        "anyOf": [
190                            {
191                                "$ref": "#/definitions/ContactInfo"
192                            },
193                            {
194                                "type": "null"
195                            }
196                        ]
197                    },
198                    "longDescription": "This property shall contain an array of contact information for an individual or organization responsible for this resource.",
199                    "type": "array",
200                    "versionAdded": "v1_7_0"
201                },
202                "Info": {
203                    "deprecated": "This property has been deprecated in favor of the `PostalAddress`, `Placement`, and `PartLocation` properties.",
204                    "description": "The location of the resource.",
205                    "longDescription": "This property shall represent the location of the resource.",
206                    "readonly": true,
207                    "type": [
208                        "string",
209                        "null"
210                    ],
211                    "versionAdded": "v1_1_0",
212                    "versionDeprecated": "v1_5_0"
213                },
214                "InfoFormat": {
215                    "deprecated": "This property has been deprecated in favor of the `PostalAddress`, `Placement`, and `PartLocation` properties.",
216                    "description": "The format of the `Info` property.",
217                    "longDescription": "This property shall represent the `Info` property format.",
218                    "readonly": true,
219                    "type": [
220                        "string",
221                        "null"
222                    ],
223                    "versionAdded": "v1_1_0",
224                    "versionDeprecated": "v1_5_0"
225                },
226                "Latitude": {
227                    "description": "The latitude of the resource.",
228                    "longDescription": "This property shall contain the latitude of the resource specified in degree units using a decimal format and not minutes or seconds.",
229                    "readonly": false,
230                    "type": [
231                        "number",
232                        "null"
233                    ],
234                    "units": "deg",
235                    "versionAdded": "v1_6_0"
236                },
237                "Longitude": {
238                    "description": "The longitude of the resource in degree units.",
239                    "longDescription": "This property shall contain the longitude of the resource specified in degree units using a decimal format and not minutes or seconds.",
240                    "readonly": false,
241                    "type": [
242                        "number",
243                        "null"
244                    ],
245                    "units": "deg",
246                    "versionAdded": "v1_6_0"
247                },
248                "Oem": {
249                    "$ref": "http://redfish.dmtf.org/schemas/v1/Resource.json#/definitions/Oem",
250                    "description": "The OEM extension property.",
251                    "longDescription": "This property shall contain the OEM extensions.  All values for properties contained in this object shall conform to the Redfish Specification-described requirements.",
252                    "versionAdded": "v1_1_0"
253                },
254                "PartLocation": {
255                    "$ref": "#/definitions/PartLocation",
256                    "description": "The part location for a resource within an enclosure.",
257                    "longDescription": "This property shall contain the part location for a resource within an enclosure.  This representation shall indicate the location of a part within a location specified by the `Placement` property.",
258                    "versionAdded": "v1_5_0"
259                },
260                "PartLocationContext": {
261                    "description": "Human-readable string to enable differentiation between `PartLocation` values for parts in the same enclosure, which might include hierarchical information of containing `PartLocation` values for the part.",
262                    "longDescription": "This property shall contain a human-readable string to enable differentiation between `PartLocation` values for parts in the same enclosure, which may include hierarchical information of containing `PartLocation` values for the part.  The value of this property shall not include values of the `PartLocation` properties for the part itself.  The purpose of this value, in conjunction with the `PartLocation` of the part itself, is to allow clients to determine the physical location of the part without tracing through the `PartLocation` of multiple resources.",
263                    "readonly": true,
264                    "type": [
265                        "string",
266                        "null"
267                    ],
268                    "versionAdded": "v1_16_0"
269                },
270                "PhysicalAddress": {
271                    "$ref": "#/definitions/PhysicalAddress",
272                    "description": "The physical address for a resource.",
273                    "longDescription": "This property shall contain a physical address for a resource.  This property should be present for resources that represent physical objects that can operate without requiring physical containment by another resource.  For example, a server chassis might be contained by a rack, but it might also be deployed individually, while a drive is always contained by a chassis and therefore is described by the containing resource.",
274                    "versionAdded": "v1_17_0"
275                },
276                "Placement": {
277                    "$ref": "#/definitions/Placement",
278                    "description": "A place within the addressed location.",
279                    "longDescription": "This property shall contain a place within the addressed location.",
280                    "versionAdded": "v1_3_0"
281                },
282                "PostalAddress": {
283                    "$ref": "#/definitions/PostalAddress",
284                    "description": "The postal address of the addressed resource.",
285                    "longDescription": "This property shall contain a postal address of the resource.",
286                    "versionAdded": "v1_3_0"
287                }
288            },
289            "type": "object"
290        },
291        "LocationType": {
292            "description": "The types of locations for a part within an enclosure.",
293            "enum": [
294                "Slot",
295                "Bay",
296                "Connector",
297                "Socket",
298                "Backplane",
299                "Embedded"
300            ],
301            "enumDescriptions": {
302                "Backplane": "A backplane.",
303                "Bay": "A bay.",
304                "Connector": "A connector or port.",
305                "Embedded": "Embedded within a part.",
306                "Slot": "A slot.",
307                "Socket": "A socket."
308            },
309            "enumLongDescriptions": {
310                "Backplane": "This value shall indicate the part is a backplane in an enclosure.",
311                "Bay": "This value shall indicate the part is located in a bay.",
312                "Connector": "This value shall indicate the part is located in a connector or port.",
313                "Embedded": "This value shall indicate the part is embedded or otherwise permanently incorporated into a larger part or device.  This value shall not be used for parts that can be removed by a user or are considered field-replaceable.",
314                "Slot": "This value shall indicate the part is located in a slot.",
315                "Socket": "This value shall indicate the part is located in a socket."
316            },
317            "enumVersionAdded": {
318                "Backplane": "v1_12_0",
319                "Embedded": "v1_13_0"
320            },
321            "longDescription": "This enumeration shall list the types of locations for a part within an enclosure.",
322            "type": "string"
323        },
324        "Orientation": {
325            "description": "The orientations for the ordering of the part location ordinal value.",
326            "enum": [
327                "FrontToBack",
328                "BackToFront",
329                "TopToBottom",
330                "BottomToTop",
331                "LeftToRight",
332                "RightToLeft"
333            ],
334            "enumDescriptions": {
335                "BackToFront": "The ordering for the LocationOrdinalValue is back to front.",
336                "BottomToTop": "The ordering for `LocationOrdinalValue` is bottom to top.",
337                "FrontToBack": "The ordering for `LocationOrdinalValue` is front to back.",
338                "LeftToRight": "The ordering for the LocationOrdinalValue is left to right.",
339                "RightToLeft": "The ordering for the LocationOrdinalValue is right to left.",
340                "TopToBottom": "The ordering for the LocationOrdinalValue is top to bottom."
341            },
342            "enumLongDescriptions": {
343                "BackToFront": "This value shall indicate the ordering for `LocationOrdinalValue` is back to front.",
344                "BottomToTop": "This value shall indicate the ordering for `LocationOrdinalValue` is bottom to top.",
345                "FrontToBack": "This value shall indicate the ordering for `LocationOrdinalValue` is front to back.",
346                "LeftToRight": "This value shall indicate the ordering for `LocationOrdinalValue` is left to right.",
347                "RightToLeft": "This value shall indicate the ordering for `LocationOrdinalValue` is right to left.",
348                "TopToBottom": "This value shall indicate the ordering for `LocationOrdinalValue` is top to bottom."
349            },
350            "longDescription": "This enumeration shall list the orientations for the ordering of the `LocationOrdinalValue` property.",
351            "type": "string"
352        },
353        "PartLocation": {
354            "additionalProperties": false,
355            "description": "The part location for a resource within an enclosure.",
356            "longDescription": "This type shall describe a location for a resource within an enclosure.",
357            "patternProperties": {
358                "^([a-zA-Z_][a-zA-Z0-9_]*)?@(odata|Redfish|Message)\\.[a-zA-Z_][a-zA-Z0-9_]*$": {
359                    "description": "This property shall specify a valid odata or Redfish property.",
360                    "type": [
361                        "array",
362                        "boolean",
363                        "integer",
364                        "number",
365                        "null",
366                        "object",
367                        "string"
368                    ]
369                }
370            },
371            "properties": {
372                "LocationOrdinalValue": {
373                    "description": "The number that represents the location of the part.  For example, if `LocationType` is `Slot` and this unit is in slot 2, the LocationOrdinalValue is `2`.",
374                    "longDescription": "This property shall contain the number that represents the location of the part based on the `LocationType`.  `LocationOrdinalValue` shall be measured based on the Orientation value starting with `0`.",
375                    "readonly": true,
376                    "type": [
377                        "integer",
378                        "null"
379                    ],
380                    "versionAdded": "v1_5_0"
381                },
382                "LocationType": {
383                    "anyOf": [
384                        {
385                            "$ref": "#/definitions/LocationType"
386                        },
387                        {
388                            "type": "null"
389                        }
390                    ],
391                    "description": "The type of location of the part.",
392                    "longDescription": "This property shall contain the type of location of the part.",
393                    "readonly": true,
394                    "versionAdded": "v1_5_0"
395                },
396                "Orientation": {
397                    "anyOf": [
398                        {
399                            "$ref": "#/definitions/Orientation"
400                        },
401                        {
402                            "type": "null"
403                        }
404                    ],
405                    "description": "The orientation for the ordering of the slot enumeration used by the `LocationOrdinalValue` property.",
406                    "longDescription": "This property shall contain the orientation for the ordering used by the `LocationOrdinalValue` property.",
407                    "readonly": true,
408                    "versionAdded": "v1_5_0"
409                },
410                "Reference": {
411                    "anyOf": [
412                        {
413                            "$ref": "#/definitions/Reference"
414                        },
415                        {
416                            "type": "null"
417                        }
418                    ],
419                    "description": "The reference point for the part location.  Provides guidance about the general location of the part.",
420                    "longDescription": "This property shall contain the general location within the unit of the part.",
421                    "readonly": true,
422                    "versionAdded": "v1_5_0"
423                },
424                "ServiceLabel": {
425                    "description": "The label of the part location, such as a silk-screened name or a printed label.",
426                    "longDescription": "This property shall contain the label assigned for service at the part location.",
427                    "readonly": true,
428                    "type": [
429                        "string",
430                        "null"
431                    ],
432                    "versionAdded": "v1_5_0"
433                }
434            },
435            "type": "object"
436        },
437        "PhysicalAddress": {
438            "additionalProperties": false,
439            "description": "The physical address for a resource.",
440            "longDescription": "This type shall contain a physical address for a resource.",
441            "patternProperties": {
442                "^([a-zA-Z_][a-zA-Z0-9_]*)?@(odata|Redfish|Message)\\.[a-zA-Z_][a-zA-Z0-9_]*$": {
443                    "description": "This property shall specify a valid odata or Redfish property.",
444                    "type": [
445                        "array",
446                        "boolean",
447                        "integer",
448                        "number",
449                        "null",
450                        "object",
451                        "string"
452                    ]
453                }
454            },
455            "properties": {
456                "City": {
457                    "description": "City, township, or shi (JP).",
458                    "longDescription": "This property shall contain the city, township, or shi (JP) location for this resource.",
459                    "readonly": false,
460                    "type": [
461                        "string",
462                        "null"
463                    ],
464                    "versionAdded": "v1_17_0"
465                },
466                "Country": {
467                    "description": "The country.",
468                    "longDescription": "This property shall contain the country location for this resource.",
469                    "readonly": false,
470                    "type": [
471                        "string",
472                        "null"
473                    ],
474                    "versionAdded": "v1_17_0"
475                },
476                "ISOCountryCode": {
477                    "description": "The ISO 3166-1 country code.",
478                    "longDescription": "This property shall contain the ISO 3166-1-defined alpha-2 or alpha-3 country code.",
479                    "pattern": "^([A-Z]{2}|[A-Z]{3})$",
480                    "readonly": false,
481                    "type": [
482                        "string",
483                        "null"
484                    ],
485                    "versionAdded": "v1_17_0"
486                },
487                "ISOSubdivisionCode": {
488                    "description": "ISO 3166-2 subdivision code.",
489                    "longDescription": "This property shall contain the ISO 3166-2-defined state, province, or territory subdivision code for this resource.",
490                    "pattern": "^[A-Z0-9]{1,3}$",
491                    "readonly": false,
492                    "type": [
493                        "string",
494                        "null"
495                    ],
496                    "versionAdded": "v1_17_0"
497                },
498                "PostalCode": {
499                    "description": "The postal code.",
500                    "longDescription": "The property shall contain the postal code for this resource.  The value shall conform to the RFC5139-defined requirements of the PC field.",
501                    "readonly": false,
502                    "type": [
503                        "string",
504                        "null"
505                    ],
506                    "versionAdded": "v1_17_0"
507                },
508                "StateOrProvince": {
509                    "description": "State or province.",
510                    "longDescription": "This property shall contain the state, province, or territory location within the country for this resource.",
511                    "readonly": false,
512                    "type": [
513                        "string",
514                        "null"
515                    ],
516                    "versionAdded": "v1_17_0"
517                },
518                "StreetAddress": {
519                    "description": "The street-level address, including building, room, or other identifiers.",
520                    "longDescription": "This property shall contain the street-level physical address of the resource, including identifiers such as apartment, room, or building to further locate the resource within a given street address.",
521                    "readonly": false,
522                    "type": [
523                        "string",
524                        "null"
525                    ],
526                    "versionAdded": "v1_17_0"
527                }
528            },
529            "type": "object"
530        },
531        "Placement": {
532            "additionalProperties": false,
533            "description": "The placement within the addressed location.",
534            "longDescription": "The value shall describe a location within a resource.  Examples include a shelf in a rack.",
535            "patternProperties": {
536                "^([a-zA-Z_][a-zA-Z0-9_]*)?@(odata|Redfish|Message)\\.[a-zA-Z_][a-zA-Z0-9_]*$": {
537                    "description": "This property shall specify a valid odata or Redfish property.",
538                    "type": [
539                        "array",
540                        "boolean",
541                        "integer",
542                        "number",
543                        "null",
544                        "object",
545                        "string"
546                    ]
547                }
548            },
549            "properties": {
550                "AdditionalInfo": {
551                    "description": "Area designation or other additional info.",
552                    "longDescription": "This property shall contain additional information, such as Tile, Column (Post), Wall, or other designation that describes a location that cannot be conveyed with other properties defined for the Placement object.",
553                    "readonly": false,
554                    "type": [
555                        "string",
556                        "null"
557                    ],
558                    "versionAdded": "v1_7_0"
559                },
560                "Rack": {
561                    "description": "The name of a rack location within a row.",
562                    "longDescription": "This property shall contain the name of the rack within a row.",
563                    "readonly": false,
564                    "type": [
565                        "string",
566                        "null"
567                    ],
568                    "versionAdded": "v1_3_0"
569                },
570                "RackOffset": {
571                    "description": "The vertical location of the item, in terms of RackOffsetUnits.",
572                    "longDescription": "The vertical location of the item in the rack.  Rack offset units shall be measured from bottom to top, starting with 0.",
573                    "readonly": false,
574                    "type": [
575                        "integer",
576                        "null"
577                    ],
578                    "versionAdded": "v1_3_0"
579                },
580                "RackOffsetUnits": {
581                    "anyOf": [
582                        {
583                            "$ref": "#/definitions/RackUnits"
584                        },
585                        {
586                            "type": "null"
587                        }
588                    ],
589                    "description": "The type of rack units in use.",
590                    "longDescription": "This property shall contain a RackUnit enumeration literal that indicates the type of rack units in use.",
591                    "readonly": false,
592                    "versionAdded": "v1_3_0"
593                },
594                "Row": {
595                    "description": "The name of the row.",
596                    "longDescription": "This property shall contain the name of the row.",
597                    "readonly": false,
598                    "type": [
599                        "string",
600                        "null"
601                    ],
602                    "versionAdded": "v1_3_0"
603                }
604            },
605            "type": "object"
606        },
607        "PostalAddress": {
608            "additionalProperties": false,
609            "deprecated": "This object and its properties have been deprecated in favor of `PhysicalAddress`.",
610            "description": "The postal address for a resource.",
611            "longDescription": "Instances shall describe a postal address for a resource.  For more information, see RFC5139.  Depending on use, the instance can represent a past, current, or future location.",
612            "patternProperties": {
613                "^([a-zA-Z_][a-zA-Z0-9_]*)?@(odata|Redfish|Message)\\.[a-zA-Z_][a-zA-Z0-9_]*$": {
614                    "description": "This property shall specify a valid odata or Redfish property.",
615                    "type": [
616                        "array",
617                        "boolean",
618                        "integer",
619                        "number",
620                        "null",
621                        "object",
622                        "string"
623                    ]
624                }
625            },
626            "properties": {
627                "AdditionalCode": {
628                    "description": "The additional code.",
629                    "longDescription": "The value shall conform to the RFC5139-defined requirements of the ADDCODE field.",
630                    "readonly": false,
631                    "type": [
632                        "string",
633                        "null"
634                    ],
635                    "versionAdded": "v1_3_0"
636                },
637                "AdditionalInfo": {
638                    "description": "The room designation or other additional information.",
639                    "longDescription": "The value shall conform to the requirements of the LOC field as defined in RFC5139.  Provides additional information.",
640                    "readonly": false,
641                    "type": [
642                        "string",
643                        "null"
644                    ],
645                    "versionAdded": "v1_7_0"
646                },
647                "Building": {
648                    "description": "The name of the building.",
649                    "longDescription": "The value shall conform to the RFC5139-defined requirements of the BLD field.  Names the building.",
650                    "readonly": false,
651                    "type": [
652                        "string",
653                        "null"
654                    ],
655                    "versionAdded": "v1_3_0"
656                },
657                "City": {
658                    "description": "City, township, or shi (JP).",
659                    "longDescription": "The value shall conform to the RFC5139-defined requirements of the A3 field.  Names a city, township, or shi (JP).",
660                    "readonly": false,
661                    "type": [
662                        "string",
663                        "null"
664                    ],
665                    "versionAdded": "v1_3_0"
666                },
667                "Community": {
668                    "description": "The postal community name.",
669                    "longDescription": "The value shall conform to the RFC5139-defined requirements of the PCN field.  A postal community name.",
670                    "readonly": false,
671                    "type": [
672                        "string",
673                        "null"
674                    ],
675                    "versionAdded": "v1_3_0"
676                },
677                "Country": {
678                    "description": "The country.",
679                    "longDescription": "The value shall conform to the RFC5139-defined requirements of the Country field.",
680                    "readonly": false,
681                    "type": [
682                        "string",
683                        "null"
684                    ],
685                    "versionAdded": "v1_3_0"
686                },
687                "District": {
688                    "description": "A county, parish, gun (JP), or district (IN).",
689                    "longDescription": "The value shall conform to the RFC5139-defined requirements of the A2 field.  Names a county, parish, gun (JP), or district (IN).",
690                    "readonly": false,
691                    "type": [
692                        "string",
693                        "null"
694                    ],
695                    "versionAdded": "v1_3_0"
696                },
697                "Division": {
698                    "description": "City division, borough, city district, ward, or chou (JP).",
699                    "longDescription": "The value shall conform to the RFC5139-defined requirements of the A4 field.  Names a city division, borough, city district, ward, or chou (JP).",
700                    "readonly": false,
701                    "type": [
702                        "string",
703                        "null"
704                    ],
705                    "versionAdded": "v1_3_0"
706                },
707                "Floor": {
708                    "description": "The floor.",
709                    "longDescription": "The value shall conform to the RFC5139-defined requirements of the FLR field.  Provides a floor designation.",
710                    "readonly": false,
711                    "type": [
712                        "string",
713                        "null"
714                    ],
715                    "versionAdded": "v1_3_0"
716                },
717                "GPSCoords": {
718                    "deprecated": "This property has been deprecated in favor of the Longitude and Latitude properties.",
719                    "description": "The GPS coordinates of the part.",
720                    "longDescription": "The value shall conform to the RFC5139-defined requirements of the ADDCODE field.  Shall contain the GPS coordinates of the location.  If furnished, expressed in the `[-][nn]n.nnnnnn, [-][nn]n.nnnnn` format.  For example, two comma-separated positive or negative numbers with six decimal places of precision.",
721                    "readonly": false,
722                    "type": [
723                        "string",
724                        "null"
725                    ],
726                    "versionAdded": "v1_3_0",
727                    "versionDeprecated": "v1_6_0"
728                },
729                "HouseNumber": {
730                    "description": "The numeric portion of house number.",
731                    "longDescription": "The value shall conform to the RFC5139-defined requirements of the HNO field.  The numeric portion of the house number.",
732                    "readonly": false,
733                    "type": [
734                        "integer",
735                        "null"
736                    ],
737                    "versionAdded": "v1_3_0"
738                },
739                "HouseNumberSuffix": {
740                    "description": "The house number suffix.",
741                    "longDescription": "The value shall conform to the RFC5139-defined requirements of the HNS field.  Provides a suffix to a house number, (F, B, or 1/2).",
742                    "readonly": false,
743                    "type": [
744                        "string",
745                        "null"
746                    ],
747                    "versionAdded": "v1_3_0"
748                },
749                "Landmark": {
750                    "description": "The landmark.",
751                    "longDescription": "The value shall conform to the RFC5139-defined requirements of the LMK field.  Identifies a landmark or vanity address.",
752                    "readonly": false,
753                    "type": [
754                        "string",
755                        "null"
756                    ],
757                    "versionAdded": "v1_3_0"
758                },
759                "LeadingStreetDirection": {
760                    "description": "A leading street direction.",
761                    "longDescription": "The value shall conform to the requirements of the PRD field as defined in RFC5139.  Names a leading street direction, (N, W, or SE).",
762                    "readonly": false,
763                    "type": [
764                        "string",
765                        "null"
766                    ],
767                    "versionAdded": "v1_3_0"
768                },
769                "Location": {
770                    "deprecated": "This property has been deprecated in favor of the `AdditionalInfo` property.",
771                    "description": "The room designation or other additional information.",
772                    "longDescription": "The value shall conform to the RFC5139-defined requirements of the LOC field.  Provides additional information.",
773                    "readonly": false,
774                    "type": [
775                        "string",
776                        "null"
777                    ],
778                    "versionAdded": "v1_3_0",
779                    "versionDeprecated": "v1_7_0"
780                },
781                "Name": {
782                    "description": "The name.",
783                    "longDescription": "The value shall conform to the RFC5139-defined requirements of the NAM field.  Names the occupant.",
784                    "readonly": false,
785                    "type": [
786                        "string",
787                        "null"
788                    ],
789                    "versionAdded": "v1_3_0"
790                },
791                "Neighborhood": {
792                    "description": "Neighborhood or block.",
793                    "longDescription": "The value shall conform to the RFC5139-defined requirements of the A5 field.  Names a neighborhood or block.",
794                    "readonly": false,
795                    "type": [
796                        "string",
797                        "null"
798                    ],
799                    "versionAdded": "v1_3_0"
800                },
801                "POBox": {
802                    "description": "The post office box (PO box).",
803                    "longDescription": "The value shall conform to the RFC5139-defined requirements of the POBOX field.  A post office box (PO box).",
804                    "readonly": false,
805                    "type": [
806                        "string",
807                        "null"
808                    ],
809                    "versionAdded": "v1_3_0"
810                },
811                "PlaceType": {
812                    "description": "The description of the type of place that is addressed.",
813                    "longDescription": "The value shall conform to the RFC5139-defined requirements of the PLC field.  Examples include office and residence.",
814                    "readonly": false,
815                    "type": [
816                        "string",
817                        "null"
818                    ],
819                    "versionAdded": "v1_3_0"
820                },
821                "PostalCode": {
822                    "description": "The postal code or zip code.",
823                    "longDescription": "The value shall conform to the RFC5139-defined requirements of the PC field.  A postal code (or zip code).",
824                    "readonly": false,
825                    "type": [
826                        "string",
827                        "null"
828                    ],
829                    "versionAdded": "v1_3_0"
830                },
831                "Road": {
832                    "description": "The primary road or street.",
833                    "longDescription": "The value shall conform to the RFC5139-defined requirements of the RD field.  Designates a primary road or street.",
834                    "readonly": false,
835                    "type": [
836                        "string",
837                        "null"
838                    ],
839                    "versionAdded": "v1_3_0"
840                },
841                "RoadBranch": {
842                    "description": "The road branch.",
843                    "longDescription": "The value shall conform to the RFC5139-defined requirements of the RDBR field.  Shall contain a post office box (PO box) road branch.",
844                    "readonly": false,
845                    "type": [
846                        "string",
847                        "null"
848                    ],
849                    "versionAdded": "v1_3_0"
850                },
851                "RoadPostModifier": {
852                    "description": "The road post-modifier.",
853                    "longDescription": "The value shall conform to the RFC5139-defined requirements of the POM field.  For example, Extended.",
854                    "readonly": false,
855                    "type": [
856                        "string",
857                        "null"
858                    ],
859                    "versionAdded": "v1_3_0"
860                },
861                "RoadPreModifier": {
862                    "description": "The road pre-modifier.",
863                    "longDescription": "The value shall conform to the RFC5139-defined requirements of the PRM field.  For example, Old or New.",
864                    "readonly": false,
865                    "type": [
866                        "string",
867                        "null"
868                    ],
869                    "versionAdded": "v1_3_0"
870                },
871                "RoadSection": {
872                    "description": "The road section.",
873                    "longDescription": "The value shall conform to the RFC5139-defined requirements of the RDSEC field.  A road section.",
874                    "readonly": false,
875                    "type": [
876                        "string",
877                        "null"
878                    ],
879                    "versionAdded": "v1_3_0"
880                },
881                "RoadSubBranch": {
882                    "description": "The road sub branch.",
883                    "longDescription": "The value shall conform to the RFC5139-defined requirements of the RDSUBBR field.",
884                    "readonly": false,
885                    "type": [
886                        "string",
887                        "null"
888                    ],
889                    "versionAdded": "v1_3_0"
890                },
891                "Room": {
892                    "description": "The name or number of the room.",
893                    "longDescription": "The value shall conform to the RFC5139-defined requirements of the ROOM field.  A name or number of a room to locate the resource within the unit.",
894                    "readonly": false,
895                    "type": [
896                        "string",
897                        "null"
898                    ],
899                    "versionAdded": "v1_3_0"
900                },
901                "Seat": {
902                    "description": "The seat, such as the desk, cubicle, or workstation.",
903                    "longDescription": "The value shall conform to the RFC5139-defined requirements of the SEAT field.  A name or number of a seat, such as the desk, cubicle, or workstation.",
904                    "readonly": false,
905                    "type": [
906                        "string",
907                        "null"
908                    ],
909                    "versionAdded": "v1_3_0"
910                },
911                "Street": {
912                    "description": "Street name.",
913                    "longDescription": "The value shall conform to the RFC5139-defined requirements of the A6 field.  Names a street.",
914                    "readonly": false,
915                    "type": [
916                        "string",
917                        "null"
918                    ],
919                    "versionAdded": "v1_3_0"
920                },
921                "StreetSuffix": {
922                    "description": "Avenue, Platz, Street, Circle.",
923                    "longDescription": "The value shall conform to the RFC5139-defined requirements of the STS field.  Names a street suffix.",
924                    "readonly": false,
925                    "type": [
926                        "string",
927                        "null"
928                    ],
929                    "versionAdded": "v1_3_0"
930                },
931                "Territory": {
932                    "description": "A top-level subdivision within a country.",
933                    "longDescription": "The value shall conform to the RFC5139-defined requirements of the A1 field when it names a territory, state, region, province, or prefecture within a country.",
934                    "readonly": false,
935                    "type": [
936                        "string",
937                        "null"
938                    ],
939                    "versionAdded": "v1_3_0"
940                },
941                "TrailingStreetSuffix": {
942                    "description": "A trailing street suffix.",
943                    "longDescription": "The value shall conform to the RFC5139-defined requirements of the POD field.  Names a trailing street suffix.",
944                    "readonly": false,
945                    "type": [
946                        "string",
947                        "null"
948                    ],
949                    "versionAdded": "v1_3_0"
950                },
951                "Unit": {
952                    "description": "The name or number of the apartment unit or suite.",
953                    "longDescription": "The value shall conform to the RFC5139-defined requirements of the UNIT field.  The name or number of a unit, such as the apartment or suite, to locate the resource.",
954                    "readonly": false,
955                    "type": [
956                        "string",
957                        "null"
958                    ],
959                    "versionAdded": "v1_3_0"
960                }
961            },
962            "type": "object",
963            "versionDeprecated": "v1_17_0"
964        },
965        "RackUnits": {
966            "description": "The type of rack unit in use.",
967            "enum": [
968                "OpenU",
969                "EIA_310"
970            ],
971            "enumDescriptions": {
972                "EIA_310": "A rack unit that is equal to 1.75 in (44.45 mm).",
973                "OpenU": "A rack unit that is equal to 48 mm (1.89 in)."
974            },
975            "enumLongDescriptions": {
976                "EIA_310": "Rack units shall conform to the EIA-310 standard.",
977                "OpenU": "Rack units shall be specified in terms of the Open Compute Open Rack Specification."
978            },
979            "longDescription": "Enumeration literals shall name the type of rack unit in use.",
980            "type": "string"
981        },
982        "Reference": {
983            "description": "The reference areas for the location of the part within an enclosure.",
984            "enum": [
985                "Top",
986                "Bottom",
987                "Front",
988                "Rear",
989                "Left",
990                "Right",
991                "Middle"
992            ],
993            "enumDescriptions": {
994                "Bottom": "The part is in the bottom of the unit.",
995                "Front": "The part is in the front of the unit.",
996                "Left": "The part is on the left side of the unit.",
997                "Middle": "The part is in the middle of the unit.",
998                "Rear": "The part is in the rear of the unit.",
999                "Right": "The part is on the right side of the unit.",
1000                "Top": "The part is in the top of the unit."
1001            },
1002            "enumLongDescriptions": {
1003                "Bottom": "This value shall indicate the part is in the bottom of the unit.",
1004                "Front": "This value shall indicate the part is in the front of the unit.",
1005                "Left": "This value shall indicate the part is on the left side of the unit.",
1006                "Middle": "This value shall indicate the part is in the middle of the unit.",
1007                "Rear": "This value shall indicate the part is in the rear of the unit.",
1008                "Right": "This value shall indicate the part is on the right side of the unit.",
1009                "Top": "This value shall indicate the part is in the top of the unit."
1010            },
1011            "longDescription": "This enumeration shall list the reference areas for the location of the part within an enclosure.",
1012            "type": "string"
1013        },
1014        "ReferenceableMember": {
1015            "additionalProperties": false,
1016            "description": "The base type for addressable members of an array.",
1017            "longDescription": "References array members by using the value returned in the `@odata.id` property, which can be a dereferenceable URL.  The `@odata.id` of this entity shall contain the location of this element within an item.",
1018            "patternProperties": {
1019                "^([a-zA-Z_][a-zA-Z0-9_]*)?@(odata|Redfish|Message)\\.[a-zA-Z_][a-zA-Z0-9_]*$": {
1020                    "description": "This property shall specify a valid odata or Redfish property.",
1021                    "type": [
1022                        "array",
1023                        "boolean",
1024                        "integer",
1025                        "number",
1026                        "null",
1027                        "object",
1028                        "string"
1029                    ]
1030                }
1031            },
1032            "properties": {
1033                "@odata.id": {
1034                    "$ref": "http://redfish.dmtf.org/schemas/v1/odata-v4.json#/definitions/id"
1035                },
1036                "MemberId": {
1037                    "description": "The unique identifier for the member within an array.",
1038                    "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.",
1039                    "readonly": true,
1040                    "type": "string"
1041                },
1042                "Oem": {
1043                    "$ref": "http://redfish.dmtf.org/schemas/v1/Resource.json#/definitions/Oem",
1044                    "description": "The OEM extension property.",
1045                    "longDescription": "This property shall contain the OEM extensions.  All values for properties that this object contains shall conform to the Redfish Specification-described requirements."
1046                }
1047            },
1048            "required": [
1049                "MemberId",
1050                "@odata.id"
1051            ],
1052            "type": "object"
1053        },
1054        "Resource": {
1055            "additionalProperties": false,
1056            "description": "The base type for resources and members that can be linked to.",
1057            "patternProperties": {
1058                "^([a-zA-Z_][a-zA-Z0-9_]*)?@(odata|Redfish|Message)\\.[a-zA-Z_][a-zA-Z0-9_]*$": {
1059                    "description": "This property shall specify a valid odata or Redfish property.",
1060                    "type": [
1061                        "array",
1062                        "boolean",
1063                        "integer",
1064                        "number",
1065                        "null",
1066                        "object",
1067                        "string"
1068                    ]
1069                }
1070            },
1071            "properties": {
1072                "@odata.context": {
1073                    "$ref": "http://redfish.dmtf.org/schemas/v1/odata-v4.json#/definitions/context"
1074                },
1075                "@odata.etag": {
1076                    "$ref": "http://redfish.dmtf.org/schemas/v1/odata-v4.json#/definitions/etag"
1077                },
1078                "@odata.id": {
1079                    "$ref": "http://redfish.dmtf.org/schemas/v1/odata-v4.json#/definitions/id"
1080                },
1081                "@odata.type": {
1082                    "$ref": "http://redfish.dmtf.org/schemas/v1/odata-v4.json#/definitions/type"
1083                },
1084                "Description": {
1085                    "anyOf": [
1086                        {
1087                            "$ref": "http://redfish.dmtf.org/schemas/v1/Resource.json#/definitions/Description"
1088                        },
1089                        {
1090                            "type": "null"
1091                        }
1092                    ],
1093                    "readonly": true
1094                },
1095                "Id": {
1096                    "$ref": "http://redfish.dmtf.org/schemas/v1/Resource.json#/definitions/Id",
1097                    "readonly": true
1098                },
1099                "Name": {
1100                    "$ref": "http://redfish.dmtf.org/schemas/v1/Resource.json#/definitions/Name",
1101                    "readonly": true
1102                },
1103                "Oem": {
1104                    "$ref": "http://redfish.dmtf.org/schemas/v1/Resource.json#/definitions/Oem",
1105                    "description": "The OEM extension property.",
1106                    "longDescription": "This property shall contain the OEM extensions.  All values for properties that this object contains shall conform to the Redfish Specification-described requirements."
1107                }
1108            },
1109            "required": [
1110                "Id",
1111                "Name",
1112                "@odata.id",
1113                "@odata.type"
1114            ],
1115            "type": "object"
1116        },
1117        "ResourceCollection": {
1118            "additionalProperties": false,
1119            "patternProperties": {
1120                "^([a-zA-Z_][a-zA-Z0-9_]*)?@(odata|Redfish|Message)\\.[a-zA-Z_][a-zA-Z0-9_]*$": {
1121                    "description": "This property shall specify a valid odata or Redfish property.",
1122                    "type": [
1123                        "array",
1124                        "boolean",
1125                        "integer",
1126                        "number",
1127                        "null",
1128                        "object",
1129                        "string"
1130                    ]
1131                }
1132            },
1133            "properties": {
1134                "@odata.context": {
1135                    "$ref": "http://redfish.dmtf.org/schemas/v1/odata-v4.json#/definitions/context"
1136                },
1137                "@odata.etag": {
1138                    "$ref": "http://redfish.dmtf.org/schemas/v1/odata-v4.json#/definitions/etag"
1139                },
1140                "@odata.id": {
1141                    "$ref": "http://redfish.dmtf.org/schemas/v1/odata-v4.json#/definitions/id"
1142                },
1143                "@odata.type": {
1144                    "$ref": "http://redfish.dmtf.org/schemas/v1/odata-v4.json#/definitions/type"
1145                },
1146                "Description": {
1147                    "anyOf": [
1148                        {
1149                            "$ref": "http://redfish.dmtf.org/schemas/v1/Resource.json#/definitions/Description"
1150                        },
1151                        {
1152                            "type": "null"
1153                        }
1154                    ],
1155                    "readonly": true
1156                },
1157                "Name": {
1158                    "$ref": "http://redfish.dmtf.org/schemas/v1/Resource.json#/definitions/Name",
1159                    "readonly": true
1160                },
1161                "Oem": {
1162                    "$ref": "http://redfish.dmtf.org/schemas/v1/Resource.json#/definitions/Oem",
1163                    "description": "The OEM extension property.",
1164                    "longDescription": "This property shall contain the OEM extensions.  All values for properties contained in this object shall conform to the Redfish Specification-described requirements."
1165                }
1166            },
1167            "required": [
1168                "Name",
1169                "@odata.id",
1170                "@odata.type"
1171            ],
1172            "type": "object"
1173        }
1174    },
1175    "language": "en",
1176    "owningEntity": "DMTF",
1177    "release": "2024.3",
1178    "title": "#Resource.v1_20_0"
1179}