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                            "type": "object"
122                        },
123                        "NetworkInterface": {
124                            "additionalProperties": false,
125                            "properties": {
126                                "MACAddress": {
127                                    "type": "string"
128                                }
129                            },
130                            "required": ["MACAddress"],
131                            "type": "object"
132                        },
133                        "Panel": {
134                            "additionalProperties": false,
135                            "type": "object"
136                        },
137                        "System": {
138                            "additionalProperties": false,
139                            "type": "object"
140                        },
141                        "BMC": {
142                            "additionalProperties": false,
143                            "type": "object"
144                        },
145                        "Storage": {
146                            "additionalProperties": false,
147                            "type": "object"
148                        }
149                    }
150                },
151                "Common": {
152                    "UUID": {
153                        "additionalProperties": false,
154                        "properties": {
155                            "UUID": {
156                                "type": "string"
157                            }
158                        },
159                        "required": ["UUID"],
160                        "type": "object"
161                    }
162                }
163            }
164        }
165    }
166}
167