1{
2    "$schema": "http://json-schema.org/draft-07/schema#",
3    "title": "Schemas for JSON representations of OpenBMC DBus interfaces",
4    "$defs": {
5        "xyz": {
6            "openbmc_project": {
7                "Inventory": {
8                    "Decorator": {
9                        "Asset": {
10                            "additionalProperties": false,
11                            "properties": {
12                                "BuildDate": {
13                                    "type": "string"
14                                },
15                                "SparePartNumber": {
16                                    "type": "string"
17                                },
18                                "Manufacturer": {
19                                    "type": "string"
20                                },
21                                "Model": {
22                                    "type": "string"
23                                },
24                                "PartNumber": {
25                                    "type": "string"
26                                },
27                                "SerialNumber": {
28                                    "type": "string"
29                                }
30                            },
31                            "required": [
32                                "Manufacturer",
33                                "Model",
34                                "PartNumber",
35                                "SerialNumber"
36                            ],
37                            "type": "object"
38                        },
39                        "AssetTag": {
40                            "additionalProperties": false,
41                            "properties": {
42                                "AssetTag": {
43                                    "type": "string"
44                                }
45                            },
46                            "required": ["AssetTag"],
47                            "type": "object"
48                        },
49                        "Compatible": {
50                            "additionalProperties": false,
51                            "properties": {
52                                "Names": {
53                                    "type": "array",
54                                    "items": {
55                                        "type": "string"
56                                    }
57                                }
58                            },
59                            "required": ["Names"],
60                            "type": "object"
61                        },
62                        "ManagedHost": {
63                            "additionalProperties": false,
64                            "properties": {
65                                "HostIndex": {
66                                    "type": ["string", "number"]
67                                }
68                            },
69                            "required": ["HostIndex"],
70                            "type": "object"
71                        },
72                        "Replaceable": {
73                            "additionalProperties": false,
74                            "properties": {
75                                "FieldReplaceable": {
76                                    "type": "boolean"
77                                },
78                                "HotPluggable": {
79                                    "type": "boolean"
80                                }
81                            },
82                            "required": ["FieldReplaceable", "HotPluggable"],
83                            "type": "object"
84                        },
85                        "Slot": {
86                            "additionalProperties": false,
87                            "properties": {
88                                "SlotNumber": {
89                                    "type": ["string", "number"]
90                                }
91                            },
92                            "required": ["SlotNumber"],
93                            "type": "object"
94                        },
95                        "Revision": {
96                            "additionalProperties": false,
97                            "properties": {
98                                "Version": {
99                                    "type": "string"
100                                }
101                            },
102                            "required": ["Version"],
103                            "type": "object"
104                        }
105                    },
106                    "Item": {
107                        "Board": {
108                            "Motherboard": {
109                                "additionalProperties": false,
110                                "properties": {
111                                    "ProductId": {
112                                        "type": "number"
113                                    }
114                                },
115                                "required": ["ProductId"],
116                                "type": "object"
117                            }
118                        },
119                        "Chassis": {
120                            "additionalProperties": false,
121                            "properties": {
122                                "ChassisType": {
123                                    "type": "string"
124                                }
125                            },
126                            "type": "object"
127                        },
128                        "NetworkInterface": {
129                            "additionalProperties": false,
130                            "properties": {
131                                "MACAddress": {
132                                    "type": "string"
133                                }
134                            },
135                            "required": ["MACAddress"],
136                            "type": "object"
137                        },
138                        "Panel": {
139                            "additionalProperties": false,
140                            "type": "object"
141                        },
142                        "System": {
143                            "additionalProperties": false,
144                            "type": "object"
145                        },
146                        "BMC": {
147                            "additionalProperties": false,
148                            "type": "object"
149                        },
150                        "Storage": {
151                            "additionalProperties": false,
152                            "type": "object"
153                        }
154                    }
155                },
156                "Common": {
157                    "UUID": {
158                        "additionalProperties": false,
159                        "properties": {
160                            "UUID": {
161                                "type": "string"
162                            }
163                        },
164                        "required": ["UUID"],
165                        "type": "object"
166                    }
167                }
168            }
169        }
170    }
171}
172