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