{ "$schema": "http://json-schema.org/draft-07/schema#", "type": "object", "readOnly": true, "title": "The JSON format for phpinsights", "required": [ "summary", "Code", "Complexity", "Architecture", "Style", "Security" ], "definitions": { "percentage": { "type": "number", "minimum": 0, "maximum": 100 }, "insight": { "type": "object", "required": [ "title", "insightClass" ], "properties": { "title": { "type": "string" }, "insightClass": { "type": "string" }, "file": { "type": "string" }, "line": { "type": "integer", "minimum": 1 }, "message": { "type": "string" }, "diff": { "type": "string" } } } }, "properties": { "summary": { "$id": "#/properties/summary", "type": "object", "title": "The Summary Schema", "properties": { "code": { "$ref": "#/definitions/percentage" }, "complexity": { "$ref": "#/definitions/percentage" }, "architecture": { "$ref": "#/definitions/percentage" }, "style": { "$ref": "#/definitions/percentage" }, "security issues": { "type": "integer", "minimum": 0 }, "fixed issues": { "type": "integer", "minimum": 0 } } }, "Code": { "type": "array", "items": { "$ref": "#/definitions/insight" } }, "Complexity": { "type": "array", "items": { "$ref": "#/definitions/insight" } }, "Architecture": { "type": "array", "items": { "$ref": "#/definitions/insight" } }, "Style": { "type": "array", "items": { "$ref": "#/definitions/insight" } }, "Security": { "type": "array", "items": { "$ref": "#/definitions/insight" } } } }