{
    "bmc.kepler.Example.InterfaceTest": {
        "properties": {
            "Id": {
                "baseType": "U32",
                "readOnly": true,
                "default": 1,
                "description": "接口id"
            },
            "Name": {
                "baseType": "String",
                "description": "接口名称"
            },
            "Presence": {
                "baseType": "Boolean",
                "readOnly": false,
                "default": true,
                "description": "接口在位状态"
            },
            "Frudata": {
                "baseType": "U8[]",
                "description": "接口fru数据"
            },
            "Struct": {
                "baseType": "Struct",
                "$ref": "#/defs/SturctArg",
                "description": "接口在位状态"
            },
            "PropA": {
                "baseType": "Dictionary",
                "$ref": "#/defs/Dict1",
                "description": "接口属性"
            }
        },
        "methods": {
            "AddObject": {
                "req": {
                    "Id": {
                        "baseType": "U32"
                    }
                },
                "rsp": {
                }
            },
            "DeleteObject": {
                "req": {
                    "Id": {
                        "baseType": "U32"
                    }
                },
                "rsp": {
                }
            },
            "MethodA": {
                "req": {
                    "Request": {
                        "baseType": "Dictionary",
                        "$ref": "#/defs/Dict1"
                    }
                },
                "rsp": {
                    "Result": {
                        "baseType": "Dictionary",
                        "$ref": "#/defs/Dict1"
                    }
                }
            }
        },
        "signals": {
            "SignalA": {
                "Params": {
                    "baseType": "Dictionary",
                    "$ref": "#/defs/Dict1"
                }
            }
        }
    },
    "defs": {
        "SturctArg": {
            "SubArg1": {
                "baseType": "String"
            },
            "SubArg2": {
                "baseType": "U8"
            }
        },
        "Dict1": {
            "key": {
                "baseType": "String"
            },
            "value": {
                "baseType": "U32"
            }
        }
    }
}