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