1{
2    "$schema": "http://json-schema.org/draft-07/schema#",
3    "title": "Schemas for JSON representations of OpenBMC DBus interfaces",
4    "definitions": {
5        "xyz": {
6            "openbmc_project": {
7                "Inventory": {
8                    "Decorator": {
9                        "Asset": {
10                            "additionalProperties": false,
11                            "properties": {
12                                "Manufacturer": {
13                                    "type": "string"
14                                },
15                                "Model": {
16                                    "type": "string"
17                                },
18                                "PartNumber": {
19                                    "type": "string"
20                                },
21                                "SerialNumber": {
22                                    "type": "string"
23                                }
24                            },
25                            "required": [
26                                "Manufacturer",
27                                "Model",
28                                "PartNumber",
29                                "SerialNumber"
30                            ],
31                            "type": "object"
32                        },
33                        "AssetTag": {
34                            "additionalProperties": false,
35                            "properties": {
36                                "AssetTag": {
37                                    "type": "string"
38                                }
39                            },
40                            "required": ["AssetTag"],
41                            "type": "object"
42                        },
43                        "Compatible": {
44                            "additionalProperties": false,
45                            "properties": {
46                                "Names": {
47                                    "type": "array",
48                                    "items": {
49                                        "type": "string"
50                                    }
51                                }
52                            },
53                            "required": ["Names"],
54                            "type": "object"
55                        },
56                        "Replaceable": {
57                            "additionalProperties": false,
58                            "properties": {
59                                "FieldReplaceable": {
60                                    "type": "boolean"
61                                },
62                                "HotPluggable": {
63                                    "type": "boolean"
64                                }
65                            },
66                            "required": ["FieldReplaceable", "HotPluggable"],
67                            "type": "object"
68                        },
69                        "Slot": {
70                            "additionalProperties": false,
71                            "properties": {
72                                "SlotNumber": {
73                                    "type": ["string", "number"]
74                                }
75                            },
76                            "required": ["SlotNumber"],
77                            "type": "object"
78                        },
79                        "Revision": {
80                            "additionalProperties": false,
81                            "properties": {
82                                "Version": {
83                                    "type": "string"
84                                }
85                            },
86                            "required": ["Version"],
87                            "type": "object"
88                        }
89                    },
90                    "Item": {
91                        "Board": {
92                            "Motherboard": {
93                                "additionalProperties": false,
94                                "properties": {
95                                    "ProductId": {
96                                        "type": "number"
97                                    }
98                                },
99                                "required": ["ProductId"],
100                                "type": "object"
101                            }
102                        },
103                        "Chassis": {
104                            "additionalProperties": false,
105                            "type": "object"
106                        },
107                        "Panel": {
108                            "additionalProperties": false,
109                            "type": "object"
110                        },
111                        "System": {
112                            "additionalProperties": false,
113                            "type": "object"
114                        }
115                    }
116                },
117                "Common": {
118                    "UUID": {
119                        "additionalProperties": false,
120                        "properties": {
121                            "UUID": {
122                                "type": "string"
123                            }
124                        },
125                        "required": ["UUID"],
126                        "type": "object"
127                    }
128                }
129            }
130        }
131    }
132}
133