{
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "Project",
"type": "object",
"required": [
"assemblies",
"formatVersion",
"id",
"impactCategories",
"lifeCycleModules",
"location",
"name",
"projectPhase",
"softwareInfo"
],
"properties": {
"assemblies": {
"type": "array",
"items": {
"$ref": "#/definitions/AssemblyReference"
}
},
"classificationSystems": {
"type": [
"array",
"null"
],
"items": {
"type": "string"
}
},
"comment": {
"type": [
"string",
"null"
]
},
"description": {
"type": [
"string",
"null"
]
},
"formatVersion": {
"type": "string"
},
"id": {
"type": "string"
},
"impactCategories": {
"type": "array",
"items": {
"$ref": "#/definitions/ImpactCategoryKey"
}
},
"lciaMethod": {
"type": [
"string",
"null"
]
},
"lifeCycleModules": {
"type": "array",
"items": {
"$ref": "#/definitions/LifeCycleModule"
}
},
"location": {
"$ref": "#/definitions/Location"
},
"metaData": {
"type": [
"object",
"null"
],
"additionalProperties": {
"anyOf": [
{
"$ref": "#/definitions/AnyValue"
},
{
"type": "null"
}
]
}
},
"name": {
"type": "string"
},
"owner": {
"type": [
"string",
"null"
]
},
"projectInfo": {
"anyOf": [
{
"$ref": "#/definitions/BuildingInfo"
},
{
"type": "null"
}
]
},
"projectPhase": {
"$ref": "#/definitions/ProjectPhase"
},
"referenceStudyPeriod": {
"type": [
"integer",
"null"
],
"format": "uint8",
"minimum": 0.0
},
"results": {
"anyOf": [
{
"$ref": "#/definitions/Impacts"
},
{
"type": "null"
}
]
},
"softwareInfo": {
"$ref": "#/definitions/SoftwareInfo"
}
},
"definitions": {
"AnyValue": {
"anyOf": [
{
"type": "boolean"
},
{
"$ref": "#/definitions/Number"
},
{
"type": "string"
},
{
"type": "array",
"items": {
"$ref": "#/definitions/AnyValue"
}
},
{
"type": "object",
"additionalProperties": {
"$ref": "#/definitions/AnyValue"
}
}
]
},
"AreaType": {
"type": "object",
"required": [
"definition",
"unit",
"value"
],
"properties": {
"definition": {
"type": "string"
},
"unit": {
"$ref": "#/definitions/Unit"
},
"value": {
"type": "number",
"format": "double"
}
}
},
"AssemblyReference": {
"oneOf": [
{
"type": "object",
"required": [
"id",
"name",
"products",
"quantity",
"type",
"unit"
],
"properties": {
"classification": {
"type": [
"array",
"null"
],
"items": {
"$ref": "#/definitions/Classification"
}
},
"comment": {
"type": [
"string",
"null"
]
},
"description": {
"type": [
"string",
"null"
]
},
"id": {
"type": "string"
},
"metaData": {
"type": [
"object",
"null"
],
"additionalProperties": {
"anyOf": [
{
"$ref": "#/definitions/AnyValue"
},
{
"type": "null"
}
]
}
},
"name": {
"type": "string"
},
"products": {
"type": "array",
"items": {
"$ref": "#/definitions/ProductReference"
}
},
"quantity": {
"type": "number",
"format": "double"
},
"results": {
"anyOf": [
{
"$ref": "#/definitions/Impacts"
},
{
"type": "null"
}
]
},
"type": {
"type": "string",
"enum": [
"assembly"
]
},
"unit": {
"$ref": "#/definitions/Unit"
}
}
},
{
"type": "object",
"required": [
"type",
"uri"
],
"properties": {
"format": {
"type": [
"string",
"null"
]
},
"overrides": {
"type": [
"object",
"null"
],
"additionalProperties": {
"anyOf": [
{
"$ref": "#/definitions/AnyValue"
},
{
"type": "null"
}
]
}
},
"type": {
"type": "string",
"enum": [
"reference"
]
},
"uri": {
"type": "string"
},
"version": {
"type": [
"string",
"null"
]
}
}
}
]
},
"BuildingInfo": {
"type": "object",
"required": [
"buildingType",
"buildingTypology",
"floorsAboveGround",
"generalEnergyClass",
"roofType"
],
"properties": {
"buildingCompletionYear": {
"type": [
"integer",
"null"
],
"format": "uint16",
"minimum": 0.0
},
"buildingFootprint": {
"anyOf": [
{
"$ref": "#/definitions/ValueUnit"
},
{
"type": "null"
}
]
},
"buildingHeight": {
"anyOf": [
{
"$ref": "#/definitions/ValueUnit"
},
{
"type": "null"
}
]
},
"buildingMass": {
"anyOf": [
{
"$ref": "#/definitions/ValueUnit"
},
{
"type": "null"
}
]
},
"buildingModelScope": {
"type": [
"array",
"null"
],
"items": {
"$ref": "#/definitions/BuildingModelScope"
}
},
"buildingPermitYear": {
"type": [
"integer",
"null"
],
"format": "uint16",
"minimum": 0.0
},
"buildingType": {
"$ref": "#/definitions/BuildingType"
},
"buildingTypology": {
"type": "array",
"items": {
"$ref": "#/definitions/BuildingTypology"
}
},
"buildingUsers": {
"type": [
"integer",
"null"
],
"format": "uint32",
"minimum": 0.0
},
"certifications": {
"type": [
"array",
"null"
],
"items": {
"type": "string"
}
},
"energyDemandElectricity": {
"type": [
"number",
"null"
],
"format": "double"
},
"energyDemandHeating": {
"type": [
"number",
"null"
],
"format": "double"
},
"energySupplyElectricity": {
"type": [
"number",
"null"
],
"format": "double"
},
"energySupplyHeating": {
"type": [
"number",
"null"
],
"format": "double"
},
"exportedElectricity": {
"type": [
"number",
"null"
],
"format": "double"
},
"floorsAboveGround": {
"type": "integer",
"format": "uint16",
"minimum": 0.0
},
"floorsBelowGround": {
"type": [
"integer",
"null"
],
"format": "uint16",
"minimum": 0.0
},
"frameType": {
"type": [
"string",
"null"
]
},
"generalEnergyClass": {
"$ref": "#/definitions/GeneralEnergyClass"
},
"grossFloorArea": {
"anyOf": [
{
"$ref": "#/definitions/AreaType"
},
{
"type": "null"
}
]
},
"heatedFloorArea": {
"anyOf": [
{
"$ref": "#/definitions/AreaType"
},
{
"type": "null"
}
]
},
"localEnergyClass": {
"type": [
"string",
"null"
]
},
"roofType": {
"$ref": "#/definitions/RoofType"
}
}
},
"BuildingModelScope": {
"type": "string",
"enum": [
"facilitating_works",
"substructure",
"superstructure_frame",
"superstructure_envelope",
"superstructure_internal_elements",
"finishes",
"building_services",
"external_works",
"ff_e"
]
},
"BuildingType": {
"type": "string",
"enum": [
"new_construction_works",
"demolition",
"deconstruction_and_new_construction_works",
"retrofit_works",
"extension_works",
"retrofit_and_extension_works",
"fit_out_works",
"operations",
"unknown",
"other"
]
},
"BuildingTypology": {
"type": "string",
"enum": [
"office",
"residential",
"public",
"commercial",
"industrial",
"infrastructure",
"agricultural",
"educational",
"health",
"unknown",
"other"
]
},
"Classification": {
"type": "object",
"required": [
"code",
"name",
"system"
],
"properties": {
"code": {
"type": "string"
},
"name": {
"type": "string"
},
"system": {
"type": "string"
}
}
},
"Conversion": {
"type": "object",
"required": [
"to",
"value"
],
"properties": {
"metaData": {
"type": [
"object",
"null"
],
"additionalProperties": {
"anyOf": [
{
"$ref": "#/definitions/AnyValue"
},
{
"type": "null"
}
]
}
},
"to": {
"$ref": "#/definitions/Unit"
},
"value": {
"type": "number",
"format": "double"
}
}
},
"Country": {
"type": "string",
"enum": [
"unknown",
"afg",
"ala",
"alb",
"dza",
"asm",
"and",
"ago",
"aia",
"ata",
"atg",
"arg",
"arm",
"abw",
"aus",
"aut",
"aze",
"bhs",
"bhr",
"bgd",
"brb",
"blr",
"bel",
"blz",
"ben",
"bmu",
"btn",
"bol",
"bes",
"bih",
"bwa",
"bvt",
"bra",
"iot",
"brn",
"bgr",
"bfa",
"bdi",
"cpv",
"khm",
"cmr",
"can",
"cym",
"caf",
"tcd",
"chl",
"chn",
"cxr",
"cck",
"col",
"com",
"cog",
"cod",
"cok",
"cri",
"civ",
"hrv",
"cub",
"cuw",
"cyp",
"cze",
"dnk",
"dji",
"dma",
"dom",
"ecu",
"egy",
"slv",
"gnq",
"eri",
"est",
"swz",
"eth",
"flk",
"fro",
"fji",
"fin",
"fra",
"guf",
"pyf",
"atf",
"gab",
"gmb",
"geo",
"deu",
"gha",
"gib",
"grc",
"grl",
"grd",
"glp",
"gum",
"gtm",
"ggy",
"gin",
"gnb",
"guy",
"hti",
"hmd",
"vat",
"hnd",
"hkg",
"hun",
"isl",
"ind",
"idn",
"irn",
"irq",
"irl",
"imn",
"isr",
"ita",
"jam",
"jpn",
"jey",
"jor",
"kaz",
"ken",
"kir",
"prk",
"kor",
"kwt",
"kgz",
"lao",
"lva",
"lbn",
"lso",
"lbr",
"lby",
"lie",
"ltu",
"lux",
"mac",
"mdg",
"mwi",
"mys",
"mdv",
"mli",
"mlt",
"mhl",
"mtq",
"mrt",
"mus",
"myt",
"mex",
"fsm",
"mda",
"mco",
"mng",
"mne",
"msr",
"mar",
"moz",
"mmr",
"nam",
"nru",
"npl",
"nld",
"ncl",
"nzl",
"nic",
"ner",
"nga",
"niu",
"nfk",
"mkd",
"mnp",
"nor",
"omn",
"pak",
"plw",
"pse",
"pan",
"png",
"pry",
"per",
"phl",
"pcn",
"pol",
"prt",
"pri",
"qat",
"reu",
"rou",
"rus",
"rwa",
"blm",
"shn",
"kna",
"lca",
"maf",
"spm",
"vct",
"wsm",
"smr",
"stp",
"sau",
"sen",
"srb",
"syc",
"sle",
"sgp",
"sxm",
"svk",
"svn",
"slb",
"som",
"zaf",
"sgs",
"ssd",
"esp",
"lka",
"sdn",
"sur",
"sjm",
"swe",
"che",
"syr",
"twn",
"tjk",
"tza",
"tha",
"tls",
"tgo",
"tkl",
"ton",
"tto",
"tun",
"tur",
"tkm",
"tca",
"tuv",
"uga",
"ukr",
"are",
"gbr",
"usa",
"umi",
"ury",
"uzb",
"vut",
"ven",
"vnm",
"vgb",
"vir",
"wlf",
"esh",
"yem",
"zmb",
"zwe"
]
},
"EPDReference": {
"oneOf": [
{
"type": "object",
"required": [
"declaredUnit",
"formatVersion",
"id",
"impacts",
"location",
"name",
"publishedDate",
"standard",
"subtype",
"type",
"validUntil",
"version"
],
"properties": {
"comment": {
"type": [
"string",
"null"
]
},
"conversions": {
"type": [
"array",
"null"
],
"items": {
"$ref": "#/definitions/Conversion"
}
},
"declaredUnit": {
"$ref": "#/definitions/Unit"
},
"formatVersion": {
"type": "string"
},
"id": {
"type": "string"
},
"impacts": {
"$ref": "#/definitions/Impacts"
},
"location": {
"$ref": "#/definitions/Country"
},
"metaData": {
"type": [
"object",
"null"
],
"additionalProperties": {
"anyOf": [
{
"$ref": "#/definitions/AnyValue"
},
{
"type": "null"
}
]
}
},
"name": {
"type": "string"
},
"publishedDate": {
"type": "string",
"format": "date"
},
"referenceServiceLife": {
"type": [
"integer",
"null"
],
"format": "uint32",
"minimum": 0.0
},
"source": {
"anyOf": [
{
"$ref": "#/definitions/Source"
},
{
"type": "null"
}
]
},
"standard": {
"$ref": "#/definitions/Standard"
},
"subtype": {
"$ref": "#/definitions/SubType"
},
"type": {
"type": "string",
"enum": [
"EPD"
]
},
"validUntil": {
"type": "string",
"format": "date"
},
"version": {
"type": "string"
}
}
},
{
"type": "object",
"required": [
"type",
"uri"
],
"properties": {
"format": {
"type": [
"string",
"null"
]
},
"overrides": {
"type": [
"object",
"null"
],
"additionalProperties": {
"anyOf": [
{
"$ref": "#/definitions/AnyValue"
},
{
"type": "null"
}
]
}
},
"type": {
"type": "string",
"enum": [
"reference"
]
},
"uri": {
"type": "string"
},
"version": {
"type": [
"string",
"null"
]
}
}
}
]
},
"GeneralEnergyClass": {
"type": "string",
"enum": [
"existing",
"standard",
"advanced",
"unknown"
]
},
"GenericDataReference": {
"oneOf": [
{
"type": "object",
"required": [
"declaredUnit",
"formatVersion",
"id",
"impacts",
"name",
"type"
],
"properties": {
"comment": {
"type": [
"string",
"null"
]
},
"conversions": {
"type": [
"array",
"null"
],
"items": {
"$ref": "#/definitions/Conversion"
}
},
"declaredUnit": {
"$ref": "#/definitions/Unit"
},
"formatVersion": {
"type": "string"
},
"id": {
"type": "string"
},
"impacts": {
"$ref": "#/definitions/Impacts"
},
"metaData": {
"type": [
"object",
"null"
],
"additionalProperties": {
"anyOf": [
{
"$ref": "#/definitions/AnyValue"
},
{
"type": "null"
}
]
}
},
"name": {
"type": "string"
},
"source": {
"anyOf": [
{
"$ref": "#/definitions/Source"
},
{
"type": "null"
}
]
},
"type": {
"type": "string",
"enum": [
"EPD"
]
}
}
},
{
"type": "object",
"required": [
"type",
"uri"
],
"properties": {
"format": {
"type": [
"string",
"null"
]
},
"overrides": {
"type": [
"object",
"null"
],
"additionalProperties": {
"anyOf": [
{
"$ref": "#/definitions/AnyValue"
},
{
"type": "null"
}
]
}
},
"type": {
"type": "string",
"enum": [
"reference"
]
},
"uri": {
"type": "string"
},
"version": {
"type": [
"string",
"null"
]
}
}
}
]
},
"ImpactCategory": {
"type": "object",
"additionalProperties": {
"type": [
"number",
"null"
],
"format": "double"
}
},
"ImpactCategoryKey": {
"type": "string",
"enum": [
"gwp",
"gwp_fos",
"gwp_bio",
"gwp_lul",
"odp",
"ap",
"ep",
"ep_fw",
"ep_mar",
"ep_ter",
"pocp",
"adpe",
"adpf",
"penre",
"pere",
"perm",
"pert",
"penrt",
"penrm",
"sm",
"pm",
"wdp",
"irp",
"etp_fw",
"htp_c",
"htp_nc",
"sqp",
"rsf",
"nrsf",
"fw",
"hwd",
"nhwd",
"rwd",
"cru",
"mrf",
"mer",
"eee",
"eet"
]
},
"ImpactData": {
"anyOf": [
{
"$ref": "#/definitions/EPDReference"
},
{
"$ref": "#/definitions/GenericDataReference"
}
]
},
"Impacts": {
"type": "object",
"additionalProperties": {
"$ref": "#/definitions/ImpactCategory"
}
},
"LifeCycleModule": {
"type": "string",
"enum": [
"a0",
"a1a3",
"a4",
"a5",
"b1",
"b2",
"b3",
"b4",
"b5",
"b6",
"b7",
"b8",
"c1",
"c2",
"c3",
"c4",
"d"
]
},
"Location": {
"type": "object",
"required": [
"country"
],
"properties": {
"address": {
"type": [
"string",
"null"
]
},
"city": {
"type": [
"string",
"null"
]
},
"country": {
"$ref": "#/definitions/Country"
}
}
},
"Number": {
"anyOf": [
{
"type": "integer",
"format": "int64"
},
{
"type": "number",
"format": "double"
}
]
},
"ProductReference": {
"oneOf": [
{
"type": "object",
"required": [
"id",
"impactData",
"name",
"quantity",
"referenceServiceLife",
"type",
"unit"
],
"properties": {
"description": {
"type": [
"string",
"null"
]
},
"id": {
"type": "string"
},
"impactData": {
"type": "array",
"items": {
"$ref": "#/definitions/ImpactData"
}
},
"metaData": {
"type": [
"object",
"null"
],
"additionalProperties": {
"anyOf": [
{
"$ref": "#/definitions/AnyValue"
},
{
"type": "null"
}
]
}
},
"name": {
"type": "string"
},
"quantity": {
"type": "number",
"format": "double"
},
"referenceServiceLife": {
"type": "integer",
"format": "uint32",
"minimum": 0.0
},
"results": {
"anyOf": [
{
"$ref": "#/definitions/Impacts"
},
{
"type": "null"
}
]
},
"transport": {
"type": [
"array",
"null"
],
"items": {
"$ref": "#/definitions/Transport"
}
},
"type": {
"type": "string",
"enum": [
"product"
]
},
"unit": {
"$ref": "#/definitions/Unit"
}
}
},
{
"type": "object",
"required": [
"type",
"uri"
],
"properties": {
"format": {
"type": [
"string",
"null"
]
},
"overrides": {
"type": [
"object",
"null"
],
"additionalProperties": {
"anyOf": [
{
"$ref": "#/definitions/AnyValue"
},
{
"type": "null"
}
]
}
},
"type": {
"type": "string",
"enum": [
"reference"
]
},
"uri": {
"type": "string"
},
"version": {
"type": [
"string",
"null"
]
}
}
}
]
},
"ProjectPhase": {
"type": "string",
"enum": [
"strategic_design",
"concept_design",
"technical_design",
"construction",
"post_completion",
"in_use",
"other"
]
},
"RoofType": {
"type": "string",
"enum": [
"flat",
"pitched",
"saddle",
"pyramid",
"unknown",
"other"
]
},
"SoftwareInfo": {
"type": "object",
"required": [
"lcaSoftware"
],
"properties": {
"calculationType": {
"type": [
"string",
"null"
]
},
"goalAndScopeDefinition": {
"type": [
"string",
"null"
]
},
"lcaSoftware": {
"type": "string"
},
"lcaSoftwareVersion": {
"type": [
"string",
"null"
]
}
}
},
"Source": {
"type": "object",
"required": [
"name"
],
"properties": {
"name": {
"type": "string"
},
"url": {
"type": [
"string",
"null"
]
}
}
},
"Standard": {
"type": "string",
"enum": [
"en15804a1",
"en15804a2",
"unknown"
]
},
"SubType": {
"type": "string",
"enum": [
"generic",
"specific",
"industry",
"representative"
]
},
"Transport": {
"type": "object",
"required": [
"distance",
"distanceUnit",
"id",
"impactData",
"lifeCycleModules",
"name"
],
"properties": {
"distance": {
"type": "number",
"format": "double"
},
"distanceUnit": {
"$ref": "#/definitions/Unit"
},
"id": {
"type": "string"
},
"impactData": {
"$ref": "#/definitions/ImpactData"
},
"lifeCycleModules": {
"type": "array",
"items": {
"$ref": "#/definitions/LifeCycleModule"
}
},
"name": {
"type": "string"
}
}
},
"Unit": {
"type": "string",
"enum": [
"m",
"m2",
"m3",
"kg",
"tones",
"pcs",
"kwh",
"l",
"m2r1",
"km",
"tones_km",
"kgm3",
"unknown"
]
},
"ValueUnit": {
"type": "object",
"required": [
"unit",
"value"
],
"properties": {
"unit": {
"$ref": "#/definitions/Unit"
},
"value": {
"type": "number",
"format": "double"
}
}
}
}
}