{ "$schema": "http://json-schema.org/draft-04/schema#", "id": "https://github.com/rd2/tbd/blob/master/tbd.schema.json", "title": "TBD Schema", "description": "Schema for Thermal Bridging and Derating", "type": "object", "properties": { "description": { "type": "string" }, "schema": { "type": "string" }, "psis": { "type": "array", "items": { "$ref": "#/definitions/PSI" }, "uniqueItems": true }, "khis": { "type": "array", "items": { "$ref": "#/definitions/KHI" }, "uniqueItems": true }, "edges": { "type": "array", "items": { "$ref": "#/definitions/Edge" }, "uniqueItems": true }, "subsurfaces": { "type": "array", "items": { "$ref": "#/definitions/SubSurface" }, "uniqueItems": true }, "surfaces": { "type": "array", "items": { "$ref": "#/definitions/Surface" }, "uniqueItems": true }, "spaces": { "type": "array", "items": { "$ref": "#/definitions/Space" }, "uniqueItems": true }, "spacetypes": { "type": "array", "items": { "$ref": "#/definitions/SpaceType" }, "uniqueItems": true }, "stories": { "type": "array", "items": { "$ref": "#/definitions/Story" }, "uniqueItems": true }, "building": { "type": "object", "$ref": "#/definitions/Building" }, "log": { "type": "object", "$ref": "#/definitions/Log" } }, "additionalProperties": false, "definitions": { "PSI": { "description": "Set of PSI-values (in W/K per m) for thermal bridges", "type": "object", "properties": { "id": { "title": "Unique PSI set identifier", "type": "string" }, "rimjoist": { "title": "Floor/wall edge PSI", "type": "number" }, "rimjoistconcave": { "title": "Concave floor/wall edge PSI", "type": "number" }, "rimjoistconvex": { "title": "Convex floor/wall edge PSI", "type": "number" }, "parapet": { "title": "Roof/wall edge PSI", "type": "number" }, "parapetconcave": { "title": "Concave roof/wall edge PSI", "type": "number" }, "parapetconvex": { "title": "Convex roof/wall edge PSI", "type": "number" }, "fenestration": { "title": "Window, door, skylight perimeter PSI", "type": "number" }, "head": { "title": "Aperture head/lintel PSI", "type": "number" }, "headconcave": { "title": "Concave aperture head/lintel PSI", "type": "number" }, "headconvex": { "title": "Convex aperture head/lintel PSI", "type": "number" }, "sill": { "title": "Aperture sill/base PSI", "type": "number" }, "sillconcave": { "title": "Concave aperture sill/base PSI", "type": "number" }, "sillconvex": { "title": "Convex aperture sill/base PSI", "type": "number" }, "jamb": { "title": "Aperture jamb/side PSI", "type": "number" }, "jambconcave": { "title": "Concave aperture jamb/side PSI", "type": "number" }, "jambconvex": { "title": "Convex aperture jamb/side PSI", "type": "number" }, "corner": { "title": "Any wall corner [0°,135°) or (225°,360°] PSI", "type": "number" }, "cornerconcave": { "title": "Concave wall corner [0°,135°) PSI", "type": "number" }, "cornerconvex": { "title": "Convex wall corner (225°,360°] PSI", "type": "number" }, "balcony": { "title": "Floor/balcony edge PSI ", "type": "number" }, "balconyconcave": { "title": "Concave floor/balcony edge PSI ", "type": "number" }, "balconyconvex": { "title": "Convex floor/balcony edge PSI ", "type": "number" }, "party": { "title": "Party wall edge PSI", "type": "number" }, "partyconcave": { "title": "Concave party wall edge PSI", "type": "number" }, "partyconvex": { "title": "Convex party wall edge PSI", "type": "number" }, "grade": { "title": "Floor/foundation edge PSI", "type": "number" }, "gradeconcave": { "title": "Concave floor/foundation edge PSI", "type": "number" }, "gradecovex": { "title": "Convex floor/foundation edge PSI", "type": "number" }, "joint": { "title": "Joints PSI", "type": "number" }, "transition": { "title": "(Mild) transition PSI", "type": "number" } }, "additionalProperties": false, "minProperties": 2, "required": [ "id" ] }, "KHI": { "description": "KHI-value (in W/K) for a point thermal bridge", "type": "object", "properties": { "id": { "title": "Unique KHI identifier", "type": "string" }, "point": { "title": "Point KHI-value", "type": "number" } }, "additionalProperties": false, "required": [ "id", "point" ] }, "Edge": { "description": "Surface(s) edge as thermal bridge", "type": "object", "properties": { "psi": { "title": "PSI-set identifier", "type": "string" }, "type": { "title": "PSI-set type e.g., 'parapet'", "type": "string", "enum": [ "rimjoist", "rimjoistconcave", "rimjoisconvext", "parapet", "parapetconcave", "parapetconvex", "fenestration", "head", "headconcave", "headconvex", "sill", "sillconcave", "sillconvex", "jamb", "jambconcave", "jambconvex", "corner", "cornerconcave", "cornerconvex", "balcony", "balconyconcave", "balconyconvex", "party", "partyconcave", "partyconvex", "grade", "gradeconcave", "gradeconvex", "joint", "transition" ] }, "length": { "title": "Edge length (m), > 0 m", "type": "number", "minimum": 0, "exclusiveMinimum": true }, "v0x": { "title": "Edge origin X vertex (m)", "type": "number" }, "v0y": { "title": "Edge origin Y vertex (m)", "type": "number" }, "v0z": { "title": "Edge origin Z vertex (m)", "type": "number" }, "v1x": { "title": "Edge terminal X vertex (m)", "type": "number" }, "v1y": { "title": "Edge terminal Y vertex (m)", "type": "number" }, "v1z": { "title": "Edge terminal Z vertex (m)", "type": "number" }, "surfaces": { "title": "Surface(s) connected to edge", "type": "array", "items": { "type": "string" }, "minItems": 1, "uniqueItems": true } }, "additionalProperties": false, "required": [ "type", "surfaces" ] }, "SubSurface": { "description": "Suburface(s) U-factors (optional)", "type": "object", "properties": { "id": { "title": "e.g. OS or E+ surface identifier", "type": "string" }, "usi": { "title": "Overall U-factor", "type": "number", "minimum": 0.01, "maximum": 10.0 } }, "additionalProperties": false, "required": [ "id", "usi" ] }, "Surface": { "description": "Surface default PSI-set (optional)", "type": "object", "properties": { "id": { "title": "e.g. OS or E+ surface identifier", "type": "string" }, "psi": { "title": "PSI-set identifier", "type": "string" }, "khis": { "title": "Surface-hosted point thermal bridges", "type": "array", "items": { "type": "object", "properties": { "id": { "title": "Unique KHI-value identifier", "type": "string" }, "count": { "title": "Number of KHI-matching point thermal bridges", "type": "number", "minimum": 1 } }, "additionalProperties": false, "required": [ "id", "count" ] }, "uniqueItems": true } }, "additionalProperties": false, "minProperties": 2, "required": [ "id" ] }, "Space": { "description": "Space default PSI-set (optional for OS)", "type": "object", "properties": { "id": { "title": "e.g. OS space or E+ zone identifier", "type": "string" }, "psi": { "title": "PSI-set identifier", "type": "string" } }, "additionalProperties": false, "required": [ "id", "psi" ] }, "SpaceType": { "description": "SpaceType default PSI-set (optional for OS)", "type": "object", "properties": { "id": { "title": "e.g. OS spacetype identifier", "type": "string" }, "psi": { "title": "PSI-set identifier", "type": "string" } }, "additionalProperties": false, "required": [ "id", "psi" ] }, "Story": { "description": "Story default PSI-set (optional for OS)", "type": "object", "properties": { "id": { "title": "e.g. OS story identifier", "type": "string" }, "psi": { "title": "PSI-set identifier", "type": "string" } }, "additionalProperties": false, "required": [ "id", "psi" ] }, "Building": { "description": "Building default PSI-set (optional for OS)", "type": "object", "properties": { "psi": { "title": "PSI-set identifier", "type": "string" } }, "additionalProperties": false, "required": [ "psi" ] }, "Log": { "description": "TBD log", "type": "object", "properties": { "date": { "title": "Timestamp", "type": "string" }, "status": { "title": "Global state", "type": "string" }, "ua": { "title": "UA' assessment", "type": "object", "properties": { "bloc1": { "title": "heating setpoints >= 18°C", "type": "object", "$ref": "#/definitions/UaBlock" }, "bloc2": { "title": "heating setpoints < 18°C", "type": "object", "$ref": "#/definitions/UaBlock" } }, "additionalProperties": false, "minProperties": 1 }, "results": { "title": "Thermal derating results", "type": "array", "items": { "type": "string" } }, "messages": { "title": "Logged messages", "type": "array", "items": { "$ref": "#/definitions/LogMessage" } } }, "additionalProperties": false }, "LogMessage": { "description": "TBD log messages", "type": "object", "properties": { "level": { "title": "Severity of logged message (e.g. WARN)", "type": "string" }, "message": { "title": "Logged message", "type": "string" } }, "additionalProperties": false }, "UaBlock": { "description": "UA summary", "type": "object", "properties": { "summary": { "type": "string" }, "walls": { "type": "string" }, "roofs": { "type": "string" }, "floors": { "type": "string" }, "doors": { "type": "string" }, "windows": { "type": "string" }, "skylights": { "type": "string" }, "rimjoists": { "type": "string" }, "parapets": { "type": "string" }, "trim": { "type": "string" }, "corners": { "type": "string" }, "grade": { "type": "string" }, "other": { "type": "string" } }, "additionalProperties": false, "minProperties": 2, "required": ["summary"] } } }