@viadukt/connect 2.8.0-next.1 → 2.9.0-next.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.d.ts +32 -1
- package/dist/index.js +28 -1
- package/dist/index.js.map +1 -1
- package/package.json +1 -1
package/dist/index.d.ts
CHANGED
|
@@ -807,6 +807,11 @@ declare const $LookupPropertiesV3: {
|
|
|
807
807
|
readonly example: "DENW29AL1000FzW2";
|
|
808
808
|
readonly deprecated: true;
|
|
809
809
|
};
|
|
810
|
+
readonly federal_state: {
|
|
811
|
+
readonly type: readonly ["string", "null"];
|
|
812
|
+
readonly description: "\nThe `federal_state` field specifies the German federal state (Bundesland) in which the building is located.\n\nGermany is divided into 16 federal states:\n\n- Baden-Württemberg\n- Bayern (Bavaria)\n- Berlin\n- Brandenburg\n- Bremen\n- Hamburg\n- Hessen\n- Mecklenburg-Vorpommern\n- Niedersachsen (Lower Saxony)\n- Nordrhein-Westfalen (North Rhine-Westphalia)\n- Rheinland-Pfalz (Rhineland-Palatinate)\n- Saarland\n- Sachsen (Saxony)\n- Sachsen-Anhalt (Saxony-Anhalt)\n- Schleswig-Holstein\n- Thüringen (Thuringia)\n\nThe field is set to `null` if the federal state is unknown.";
|
|
813
|
+
readonly example: "Nordrhein-Westfalen";
|
|
814
|
+
};
|
|
810
815
|
readonly esg: {
|
|
811
816
|
readonly type: "object";
|
|
812
817
|
readonly properties: {
|
|
@@ -1104,7 +1109,7 @@ declare const $LookupPropertiesV3: {
|
|
|
1104
1109
|
readonly example: 2;
|
|
1105
1110
|
};
|
|
1106
1111
|
};
|
|
1107
|
-
readonly required: readonly ["street", "city", "street_number", "postcode", "roof_type", "type", "type_class", "water_protected", "heated", "heat_demand", "levels", "household_count", "net_area", "footprint_area", "characteristics", "characteristics_class", "development_layout", "development_layout_class", "construction_year_range", "construction_year_range_class", "construction_year", "heritage", "geo_conductivity_100", "heat_pump_air_possible", "heat_pump_maximal_distance_drillings", "heat_pump_maximal_distance_drillings_5m", "heat_pump_minimal_number_possible_drillings", "heat_pump_minimal_number_possible_drillings_5m", "heat_pump_minimal_number_possible_drillings_2m", "heat_pump_minimal_number_possible_drillings_no_distance", "heat_pump_collector_free_area", "flood_potential", "photovoltaic_potential", "solarthermal_potential", "matching_addresses", "eave_above_ground_weighted", "eave_above_ground_min", "eave_above_ground_max", "ridge_above_ground_weighted", "ridge_above_ground_min", "ridge_above_ground_max", "number_original_geometries", "roof_area", "outer_wall_area_free", "outer_wall_area_shared_heated", "outer_wall_area_shared_non_heated", "plinth_length_free", "plinth_length_shared_heated", "plinth_length_shared_non_heated", "building_function", "building_function_class", "ogc_fid", "esg", "fuelling_types", "location_rating"];
|
|
1112
|
+
readonly required: readonly ["street", "city", "street_number", "postcode", "roof_type", "type", "type_class", "water_protected", "heated", "heat_demand", "levels", "household_count", "net_area", "footprint_area", "characteristics", "characteristics_class", "development_layout", "development_layout_class", "construction_year_range", "construction_year_range_class", "construction_year", "heritage", "geo_conductivity_100", "heat_pump_air_possible", "heat_pump_maximal_distance_drillings", "heat_pump_maximal_distance_drillings_5m", "heat_pump_minimal_number_possible_drillings", "heat_pump_minimal_number_possible_drillings_5m", "heat_pump_minimal_number_possible_drillings_2m", "heat_pump_minimal_number_possible_drillings_no_distance", "heat_pump_collector_free_area", "flood_potential", "photovoltaic_potential", "solarthermal_potential", "matching_addresses", "eave_above_ground_weighted", "eave_above_ground_min", "eave_above_ground_max", "ridge_above_ground_weighted", "ridge_above_ground_min", "ridge_above_ground_max", "number_original_geometries", "roof_area", "outer_wall_area_free", "outer_wall_area_shared_heated", "outer_wall_area_shared_non_heated", "plinth_length_free", "plinth_length_shared_heated", "plinth_length_shared_non_heated", "building_function", "building_function_class", "ogc_fid", "federal_state", "esg", "fuelling_types", "location_rating"];
|
|
1108
1113
|
};
|
|
1109
1114
|
|
|
1110
1115
|
type LookupPropertiesV2 = {
|
|
@@ -2406,6 +2411,32 @@ type LookupPropertiesV3 = {
|
|
|
2406
2411
|
* @deprecated
|
|
2407
2412
|
*/
|
|
2408
2413
|
ogc_fid: string | null;
|
|
2414
|
+
/**
|
|
2415
|
+
*
|
|
2416
|
+
* The `federal_state` field specifies the German federal state (Bundesland) in which the building is located.
|
|
2417
|
+
*
|
|
2418
|
+
* Germany is divided into 16 federal states:
|
|
2419
|
+
*
|
|
2420
|
+
* - Baden-Württemberg
|
|
2421
|
+
* - Bayern (Bavaria)
|
|
2422
|
+
* - Berlin
|
|
2423
|
+
* - Brandenburg
|
|
2424
|
+
* - Bremen
|
|
2425
|
+
* - Hamburg
|
|
2426
|
+
* - Hessen
|
|
2427
|
+
* - Mecklenburg-Vorpommern
|
|
2428
|
+
* - Niedersachsen (Lower Saxony)
|
|
2429
|
+
* - Nordrhein-Westfalen (North Rhine-Westphalia)
|
|
2430
|
+
* - Rheinland-Pfalz (Rhineland-Palatinate)
|
|
2431
|
+
* - Saarland
|
|
2432
|
+
* - Sachsen (Saxony)
|
|
2433
|
+
* - Sachsen-Anhalt (Saxony-Anhalt)
|
|
2434
|
+
* - Schleswig-Holstein
|
|
2435
|
+
* - Thüringen (Thuringia)
|
|
2436
|
+
*
|
|
2437
|
+
* The field is set to `null` if the federal state is unknown.
|
|
2438
|
+
*/
|
|
2439
|
+
federal_state: string | null;
|
|
2409
2440
|
esg: {
|
|
2410
2441
|
/**
|
|
2411
2442
|
*
|
package/dist/index.js
CHANGED
|
@@ -1522,6 +1522,33 @@ The field is set to \`null\` if the identifier is unavailable.`,
|
|
|
1522
1522
|
example: "DENW29AL1000FzW2",
|
|
1523
1523
|
deprecated: true
|
|
1524
1524
|
},
|
|
1525
|
+
federal_state: {
|
|
1526
|
+
type: ["string", "null"],
|
|
1527
|
+
description: `
|
|
1528
|
+
The \`federal_state\` field specifies the German federal state (Bundesland) in which the building is located.
|
|
1529
|
+
|
|
1530
|
+
Germany is divided into 16 federal states:
|
|
1531
|
+
|
|
1532
|
+
- Baden-W\xFCrttemberg
|
|
1533
|
+
- Bayern (Bavaria)
|
|
1534
|
+
- Berlin
|
|
1535
|
+
- Brandenburg
|
|
1536
|
+
- Bremen
|
|
1537
|
+
- Hamburg
|
|
1538
|
+
- Hessen
|
|
1539
|
+
- Mecklenburg-Vorpommern
|
|
1540
|
+
- Niedersachsen (Lower Saxony)
|
|
1541
|
+
- Nordrhein-Westfalen (North Rhine-Westphalia)
|
|
1542
|
+
- Rheinland-Pfalz (Rhineland-Palatinate)
|
|
1543
|
+
- Saarland
|
|
1544
|
+
- Sachsen (Saxony)
|
|
1545
|
+
- Sachsen-Anhalt (Saxony-Anhalt)
|
|
1546
|
+
- Schleswig-Holstein
|
|
1547
|
+
- Th\xFCringen (Thuringia)
|
|
1548
|
+
|
|
1549
|
+
The field is set to \`null\` if the federal state is unknown.`,
|
|
1550
|
+
example: "Nordrhein-Westfalen"
|
|
1551
|
+
},
|
|
1525
1552
|
esg: {
|
|
1526
1553
|
type: "object",
|
|
1527
1554
|
properties: {
|
|
@@ -2074,7 +2101,7 @@ The field is set to \`null\` if the number of parcels is unknown.`,
|
|
|
2074
2101
|
example: 2
|
|
2075
2102
|
}
|
|
2076
2103
|
},
|
|
2077
|
-
required: ["street", "city", "street_number", "postcode", "roof_type", "type", "type_class", "water_protected", "heated", "heat_demand", "levels", "household_count", "net_area", "footprint_area", "characteristics", "characteristics_class", "development_layout", "development_layout_class", "construction_year_range", "construction_year_range_class", "construction_year", "heritage", "geo_conductivity_100", "heat_pump_air_possible", "heat_pump_maximal_distance_drillings", "heat_pump_maximal_distance_drillings_5m", "heat_pump_minimal_number_possible_drillings", "heat_pump_minimal_number_possible_drillings_5m", "heat_pump_minimal_number_possible_drillings_2m", "heat_pump_minimal_number_possible_drillings_no_distance", "heat_pump_collector_free_area", "flood_potential", "photovoltaic_potential", "solarthermal_potential", "matching_addresses", "eave_above_ground_weighted", "eave_above_ground_min", "eave_above_ground_max", "ridge_above_ground_weighted", "ridge_above_ground_min", "ridge_above_ground_max", "number_original_geometries", "roof_area", "outer_wall_area_free", "outer_wall_area_shared_heated", "outer_wall_area_shared_non_heated", "plinth_length_free", "plinth_length_shared_heated", "plinth_length_shared_non_heated", "building_function", "building_function_class", "ogc_fid", "esg", "fuelling_types", "location_rating"]
|
|
2104
|
+
required: ["street", "city", "street_number", "postcode", "roof_type", "type", "type_class", "water_protected", "heated", "heat_demand", "levels", "household_count", "net_area", "footprint_area", "characteristics", "characteristics_class", "development_layout", "development_layout_class", "construction_year_range", "construction_year_range_class", "construction_year", "heritage", "geo_conductivity_100", "heat_pump_air_possible", "heat_pump_maximal_distance_drillings", "heat_pump_maximal_distance_drillings_5m", "heat_pump_minimal_number_possible_drillings", "heat_pump_minimal_number_possible_drillings_5m", "heat_pump_minimal_number_possible_drillings_2m", "heat_pump_minimal_number_possible_drillings_no_distance", "heat_pump_collector_free_area", "flood_potential", "photovoltaic_potential", "solarthermal_potential", "matching_addresses", "eave_above_ground_weighted", "eave_above_ground_min", "eave_above_ground_max", "ridge_above_ground_weighted", "ridge_above_ground_min", "ridge_above_ground_max", "number_original_geometries", "roof_area", "outer_wall_area_free", "outer_wall_area_shared_heated", "outer_wall_area_shared_non_heated", "plinth_length_free", "plinth_length_shared_heated", "plinth_length_shared_non_heated", "building_function", "building_function_class", "ogc_fid", "federal_state", "esg", "fuelling_types", "location_rating"]
|
|
2078
2105
|
};
|
|
2079
2106
|
|
|
2080
2107
|
// src/services.gen.ts
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/schemas.gen.ts","../src/services.gen.ts","../src/index.ts"],"sourcesContent":["// This file is auto-generated by @hey-api/openapi-ts\n\nexport const $LookupPropertiesV2 = {\n type: 'object',\n properties: {\n street: {\n type: ['string', 'null'],\n description: `\nThe \\`street\\` field specifies the street name of a building.\n\nThe field is set to \\`null\\` if the street is unknown.`,\n example: 'Friedrich Ebert Straße'\n },\n city: {\n type: ['string', 'null'],\n description: `\nThe \\`city\\` field specifies the city name of a building.\n\nThe field is set to \\`null\\` if the city is unknown.`,\n example: 'Wuppertal'\n },\n street_number: {\n type: ['string', 'null'],\n description: `\nThe \\`street_number\\` field specifies the street number name of a building.\n\nThe field is set to \\`null\\` if the street number is unknown.`,\n example: '107'\n },\n postcode: {\n type: ['string', 'null'],\n description: `\nThe \\`postcode\\` field specifies the postcode of a building.\n\nThe field is set to \\`null\\` if the postcode is unknown.`,\n example: '107'\n },\n roof_type: {\n type: ['string', 'null'],\n enum: ['flat', 'pitched', 'mixed'],\n description: `\nThe \\`roof_type\\` field specifies the type of roof of a building. This field can have one of the following values:\n\n- **flat**: Flat roof\n- **pitched**: Pitched roof\n- **mixed**: Mixed types of roofs\n\nThe field is set to \\`null\\` if the building type is unknown.`,\n example: 'flat'\n },\n type: {\n type: ['string', 'null'],\n enum: ['single_family', 'multi_family', 'non_residential', 'mixed_use'],\n description: `\nThe \\`type\\` field specifies the type of building. This field can have one of the following values:\n\n- **single_family**: Single-family house\n- **multi_family**: Multi-family house\n- **non_residential**: Non-residential building\n- **mixed_use**: Mixed-use building\n\nThe field is set to \\`null\\` if the building type is unknown.`,\n example: 'single_family'\n },\n type_class: {\n type: ['number', 'null'],\n minimum: 1,\n maximum: 4,\n description: `\nThe \\`type_class\\` field specifies the class of the building type. This field can have one of the following values:\n\n- **1**: Single-family house\n- **2**: Multi-family house\n- **3**: Non-residential building\n- **4**: Mixed-use building\n\nThe field is set to \\`null\\` if the building type is unknown.`,\n example: 1\n },\n water_protected: {\n type: ['boolean', 'null'],\n description: `\nThe \\`water_protected\\` field specifies whether the building is within a water protection area.\n\nIf the field is set to \\`null\\`, no water protection area could be assigned.`,\n example: true\n },\n heated: {\n type: ['boolean', 'null'],\n description: `\nThe \\`heated\\` field specifies whether the building is heated or not.\n\nThe field is set to \\`null\\` if the heating status is unknown.`,\n example: true\n },\n heat_demand: {\n type: ['number', 'null'],\n minimum: 0,\n description: `\nThe \\`heat_demand\\` field specifies the heat demand of the building in [kWh/m²a].\n\nThe field is set to \\`null\\` if the heat demand is unknown.`,\n example: 127.42\n },\n height_category: {\n type: ['string', 'null'],\n enum: ['<= 5m', '<= 7.5m', '<= 10m', '<= 12.5m', '<= 15m', '> 15m'],\n description: `\nThe \\`height_category\\` field specifies the height category of the building. The height category is a\nnumber between 1 and 6, where 1 is the lowest and 6 is the highest category.\n\n### Classifications\n\n- **1**: <= 5m\n- **2**: <= 7.5m\n- **3**: <= 10m\n- **4**: <= 12.5m\n- **5**: <= 15m\n- **6**: > 15m\n\nIf the height category is unknown, the field is set to \\`null\\`.\n\n<br /><br />**Warning:**<br /><br />\n\nThis field is deprecated and will be removed in future API versions. It is no longer actively supported and may be omitted from upcoming endpoints. We recommend updating your implementation to use the latest supported fields.\n `,\n example: '<= 5m',\n deprecated: true\n },\n height_category_class: {\n type: ['number', 'null'],\n minimum: 1,\n maximum: 6,\n description: `\nThe \\`height_category_class\\` field specifies the height category of the building. The height category is a\nnumber between 1 and 6, where 1 is the lowest and 6 is the highest category.\n\n### Classifications\n\n- **1**: <= 5m\n- **2**: <= 7.5m\n- **3**: <= 10m\n- **4**: <= 12.5m\n- **5**: <= 15m\n- **6**: > 15m\n\nThe field is set to \\`null\\` if the number of height category is unknown.\n\n<br /><br />**Warning:**<br /><br />\n\nThis field is deprecated and will be no longer supported in future datasets.`,\n example: 1,\n deprecated: true\n },\n levels: {\n type: ['number', 'null'],\n minimum: 1,\n description: `\nThe \\`levels\\` field specifies the number of levels in the building.\n\nThe field is set to \\`null\\` if the number of levels is unknown.`,\n example: 4\n },\n household_count: {\n type: ['number', 'null'],\n minimum: 0,\n description: `\nThe \\`household_count\\` field specifies the number of households in the building.\n\nThe field is set to \\`null\\` if the number of households is unknown.`,\n example: 3\n },\n net_area: {\n type: ['number', 'null'],\n minimum: 0,\n description: `\nThe \\`net_area\\` field specifies the net area of the building in m².\n\nThe field is set to \\`null\\` if the net area is unknown.\n\nThe \\`net_area\\` was modeled according to the Raumwärmebedarfsmodell NRW as: \n\\`footprint_area\\` * \\`levels\\` * factors between 0.7 (inhabited) and 0.8 (non-inhabited)\nthe latter was done to concider e.g., inner wall area or staircases.`,\n example: 127.42\n },\n footprint_area: {\n type: ['number', 'null'],\n minimum: 0,\n description: `\nThe \\`footprint_area\\` field specifies the footprint area of the building in m².\n\nThe field is set to \\`null\\` if the footprint area is unknown.`,\n example: 127.42\n },\n usage: {\n type: ['string', 'null'],\n enum: ['residential', 'non_residential', 'mixed_use'],\n description: `\nThe \\`usage\\` field specifies the usage of the building. This field can have one of the following values:\n\n- **residential**: Residential building\n- **non_residential**: Non-residential building\n- **mixed_use**: Mixed-use building\n\nIf the usage is unknown, the field is set to \\`null\\`.\n\n<br /><br />**Warning:**<br /><br />\n\nThis field is deprecated and will be removed in future API versions. It is no longer actively supported and may be omitted from upcoming endpoints. We recommend updating your implementation to use the latest supported fields.`,\n example: 'residential',\n deprecated: true\n },\n usage_class: {\n type: ['number', 'null'],\n minimum: 1,\n maximum: 3,\n description: `\nThe \\`usage_class\\` field specifies the usage of the building. This field can have one of the following values:\n\n- **1**: Residential building\n- **2**: Non-residential building\n- **3**: Mixed-use building\n\nIf the usage is unknown, the field is set to \\`null\\`.\n\n<br /><br />**Warning:**<br /><br />\n\nThis field is deprecated and will be removed in future API versions. It is no longer actively supported and may be omitted from upcoming endpoints. We recommend updating your implementation to use the latest supported fields.`,\n example: 1,\n deprecated: true\n },\n characteristics: {\n type: ['string', 'null'],\n enum: ['single_two_family', 'row_semi_detached', 'multi_family', 'residential_block', 'high_rise', 'terrace', 'farmhouse', 'office_other', 'factory_warehouse'],\n description: `\nThe \\`characteristics\\` field defines the different types of building characteristics. This classification includes \nvarious types of residential and non-residential buildings. This field can have one of the following values:\n\n- **single_two_family**: Single- or two-family house\n- **row_semi_detached**: Row or semi-detached house\n- **multi_family**: Multi-family house\n- **residential_block**: Residential block\n- **high_rise**: High-rise residential building\n- **terrace**: Terrace house\n- **farmhouse**: Farmhouse\n- **office_other**: Office or other building\n- **factory_warehouse**: Factory or warehouse building\n\nIf the characteristics is unknown, the field is set to \\`null\\`.`,\n example: 'residential_block'\n },\n characteristics_class: {\n type: ['number', 'null'],\n minimum: 1,\n maximum: 9,\n description: `\nThe \\`characteristics_class\\` field defines the different types of building characteristics. This classification includes \nvarious types of residential and non-residential buildings. This field can have one of the following values:\n\n- **1**: Single- or two-family house\n- **2**: Row or semi-detached house\n- **3**: Multi-family house\n- **4**: Residential block\n- **5**: High-rise residential building\n- **6**: Terrace house\n- **7**: Farmhouse\n- **8**: Office or other building\n- **9**: Factory or warehouse building\n\nIf the characteristics_class is unknown, the field is set to \\`null\\`.`,\n example: 1\n },\n development_layout: {\n type: ['string', 'null'],\n enum: ['non_detached', 'semi_detached', 'detached'],\n description: `\nThe \\`development_layout\\` field specifies the layout of the building. This field can have one of the following values:\n\n- **non_detached**: Non-detached building\n- **semi_detached**: Semi-detached building\n- **detached**: Detached building\n\nIf the development layout is unknown, the field is set to \\`null\\`.\n\nThe \\`development_layout\\` was modeled based on the number and length of intersections with heated (and buildings with unknown heating status)\n neighbouring buildings and the perimeter of a geometry as follows:\n\n**detached** = intersection_length / outline_length < 0.085\n**semi_detached** = intersection_length / outline_length >= 0.085 AND intersection_length / outline_length < 0.45 for buildings with exactly 1 intersection\n**semi_detached** = intersection_length / outline_length >= 0.085 AND intersection_length / outline_length < 0.15 for buildings with more than 1 intersections\n**non_detached** = for all other buildings`,\n example: 'non_detached'\n },\n development_layout_class: {\n type: ['number', 'null'],\n minimum: 1,\n maximum: 3,\n description: `\nThe \\`development_layout_class\\` field specifies the layout of the building. This field can have one of the following values:\n\n- **1**: Non-detached building\n- **2**: Semi-detached building\n- **3**: Detached building\n\nIf the development layout is unknown, the field is set to \\`null\\`.\n\nThe \\`development_layout_class\\` was modeled based on the number and length of intersections with heated (and buildings with unknown heating status)\n neighbouring buildings and the perimeter of a geometry as follows:\n\n**1** = intersection_length / outline_length < 0.085\n**2** = intersection_length / outline_length >= 0.085 AND intersection_length / outline_length < 0.45 for buildings with exactly 1 intersection\n**2** = intersection_length / outline_length >= 0.085 AND intersection_length / outline_length < 0.15 for buildings with more than 1 intersections\n**3** = for all other buildings`,\n example: 1\n },\n construction_year_range: {\n type: ['array', 'null'],\n prefixItems: [\n {\n type: ['number', 'null']\n },\n {\n type: 'number'\n }\n ],\n description: `\nThe \\`construction_year_range\\` field specifies the approximate construction year of the building. The field is a tuple with two\nvalues: the lower and upper bound of the construction year and can have one of the following value:\n\n- **[*null*, 1899]**: Construction year is somewhere up to 1899\n- **[1900, 1945]**\n- **[1946, 1960]**\n- **[1961, 1970]**\n- **[1971, 1980]**\n- **[1981, 1985]**\n- **[1986, 1995]**\n- **[1996, 2000]**\n- **[2001, 2005]**\n- **[2006, 2010]**\n- **[2011, 2015]**\n- **[2016, 2024]**\n\nIf the construction year class is unknown, the field is set to \\`null\\`.`,\n example: [1990, 1995]\n },\n construction_year_range_class: {\n type: ['number', 'null'],\n minimum: 1,\n maximum: 12,\n description: `\nThe \\`construction_year_range_class\\` field specifies the approximate construction year of the building and can have one of the following values: \n\n- **1**: < 1899\n- **2**: 1900 - 1945\n- **3**: 1946 - 1960\n- **4**: 1961 - 1970\n- **5**: 1971 - 1980\n- **6**: 1981 - 1985\n- **7**: 1986 - 1995\n- **8**: 1996 - 2000\n- **9**: 2001 - 2005\n- **10**: 2006 - 2010\n- **11**: 2011 - 2015\n- **12**: 2016 - 2024\n\nIf the construction year range class is unknown, the field is set to \\`null\\`.`,\n example: 1\n },\n construction_year: {\n type: ['number', 'null'],\n minimum: 0,\n description: `\nThe \\`construction_year\\` field specifies the construction year of the building.\n\nIf the construction year is unknown, the field is set to \\`null\\`.`,\n example: 1993\n },\n heritage: {\n type: ['boolean', 'null'],\n description: `\nThe \\`heritage\\` field specifies whether the building is under monumental protection.\n\nThe field is set to \\`null\\` if the heritage status is unknown.`,\n example: true\n },\n geo_conductivity_100: {\n type: ['number', 'null'],\n minimum: 0,\n description: `\nThe \\`geo_conductivity_100\\` field specifies the geothermal conductivity in 100 m depth.\n\nThe field is set to \\`null\\` if the geothermal conductivity is unknown.`,\n example: 2\n },\n heat_pump_air_possible: {\n type: ['boolean', 'null'],\n description: `\nThe \\`heat_pump_air_possible\\` field indicates whether an air-source heat pump is a viable option for the building.\n\n- Set to \\`true\\` if an air-source heat pump is feasible.\n- Set to \\`false\\` if an air-source heat pump is not feasible.\n- Set to \\`null\\` if the information is unknown.`,\n example: true\n },\n heat_pump_maximal_distance_drillings: {\n type: ['number', 'null'],\n minimum: 0,\n description: `\nThe \\`heat_pump_maximal_distance_drillings\\` field specifies the maximum allowable distance between drillings for a heat pump installation, measured in meters.\nThis field will be deprecated in future versions. Please use \\`heat_pump_maximal_distance_drillings_5m\\` instead.\n\nThe field is set to \\`null\\` if the information is unknown.`,\n example: 100\n },\n heat_pump_maximal_distance_drillings_5m: {\n type: ['number', 'null'],\n minimum: 0,\n description: `\nThe \\`heat_pump_maximal_distance_drillings_5m\\` field specifies the maximum allowable distance between drillings for a heat pump installation, measured in meters.\n\nThe field is set to \\`null\\` if the information is unknown.`,\n example: 100.35\n },\n heat_pump_minimal_number_possible_drillings: {\n type: ['number', 'null'],\n minimum: 0,\n description: `\nThe \\`heat_pump_minimal_number_possible_drillings\\` field specifies the minimum \nnumber of drillings required for a heat pump installation with a distance of 5m \nto the parcel border.\nThis field will be deprecated in future versions. Please use \\`heat_pump_minimal_number_possible_drillings_5m\\` instead.\n\nThe field is set to \\`null\\` if the information is unknown.\n\n<br /><br />**Deprecation Warning:**<br /><br />\n\nPlease use \\`heat_pump_minimal_number_possible_drillings_5m\\` instead of this field.`,\n example: 1,\n deprecated: true\n },\n heat_pump_minimal_number_possible_drillings_5m: {\n type: ['number', 'null'],\n minimum: 0,\n description: `\nThe \\`heat_pump_minimal_number_possible_drillings_5m\\` field specifies the minimum \nnumber of drillings required for a heat pump installation with a distance of 5m \nto the parcel border.\n\nThe field is set to \\`null\\` if the information is unknown.`,\n example: 1\n },\n heat_pump_minimal_number_possible_drillings_2m: {\n type: ['number', 'null'],\n minimum: 0,\n description: `\nThe \\`heat_pump_minimal_number_possible_drillings_2m\\` field specifies the minimum \nnumber of drillings required for a heat pump installation with a distance of 2m \nto the parcel border.\n\nThe field is set to \\`null\\` if the information is unknown.`,\n example: 1\n },\n heat_pump_minimal_number_possible_drillings_no_distance: {\n type: ['number', 'null'],\n minimum: 0,\n description: `\nThe \\`heat_pump_minimal_number_possible_drillings_no_distance\\` field specifies the minimum \nnumber of drillings required for a heat pump installation with no distance to the parcel border.\n\nThe field is set to \\`null\\` if the information is unknown.`,\n example: 1\n },\n heat_pump_collector_free_area: {\n type: ['number', 'null'],\n minimum: 0,\n description: `\nThe \\`heat_pump_collector_free_area\\` field specifies the sum of the free area suitable \nfor a collector heat pump on parcels associated to a building.\n\nThe field is set to \\`null\\` if the information is unknown.`,\n example: 100\n },\n flood_potential: {\n type: ['array', 'null'],\n items: {\n type: 'object',\n properties: {\n min_recurrence: {\n type: ['number', 'null'],\n minimum: 0\n },\n max_recurrence: {\n type: ['number', 'null'],\n minimum: 0\n },\n protection_against_floods: {\n type: ['boolean', 'null']\n }\n }\n },\n minItems: 1,\n description: `\nThe \\`flood_potential\\` field is an array representing different flood risk scenarios for a given \nlocation. The objects in the array can contain the following fields:\n\n- \\`min_reccurence\\`: The minimum expected recurrence interval for flooding, measured in years. \n This field is optional and can be \\`null\\` if the data is unavailable. A lower value indicates more \n frequent flooding.\n \n- \\`max_reccurence\\`: The maximum expected recurrence interval for flooding, also in years. This \n field is optional and can be \\`null\\`. If provided, this value represents the upper bound of the \n flood risk interval. This field allows the specification of a range of recurrence intervals.\n \n- \\`protection_against_floods\\`: A boolean flag indicating whether flood protection measures are in \n place for the area. This field is optional and can be \\`null\\` if the information is not available. \n A value of \\`true\\` means flood defenses are present, while \\`false\\` indicates the absence of such \n measures.\n\nIf this array is set to \\`null\\`, it means that no data regarding flood potential is available for the location.`,\n example: [\n {\n min_recurrence: 100,\n max_recurrence: null,\n protection_against_floods: true\n },\n {\n min_recurrence: 101,\n max_recurrence: 1000,\n protection_against_floods: false\n }\n ]\n },\n photovoltaic_potential: {\n type: 'object',\n properties: {\n suitable_roof_area: {\n type: ['number', 'null'],\n minimum: 0,\n description: `\nThe \\`suitable_roof_area\\` field specifies the roof area suited for photovoltaics [m^2].\n\nThe field is set to \\`null\\` if the roof area suited for photovoltaics is unknown.`,\n example: 77\n },\n gross_collector_area: {\n type: ['number', 'null'],\n minimum: 0,\n description: `\nThe \\`gross_collector_area\\` field specifies the maximal collector area for photovoltaics including module frames [m^2].\n\nThe field is set to \\`null\\` if the maximal collector area for photovoltaics is unknown.`,\n example: 48\n },\n net_collector_area: {\n type: ['number', 'null'],\n minimum: 0,\n description: `\nThe \\`net_collector_area\\` field specifies the maximal collector area for photovoltaics excluding module frames [m^2].\n\nThe field is set to \\`null\\` if the maximal collector area for photovoltaics excluding module frames is unknown.`,\n example: 48\n },\n electricity_generation: {\n type: ['number', 'null'],\n minimum: 0,\n description: `\nThe \\`electricity_generation\\` field specifies the maximal electricity generation from photovoltaics of the building per year [kWh/a].\n\nThe field is set to \\`null\\` if the maximal electricity generation per year is unknown.`,\n example: 6401\n },\n nominal_power: {\n type: ['number', 'null'],\n minimum: 0,\n description: `\nThe \\`nominal_power\\` field specifies the nominal power a photovoltaics system could have at this building per year [kWp].\n\nThe field is set to \\`null\\` if the the nominal power is unknown.`,\n example: 7.5\n }\n },\n required: ['suitable_roof_area', 'gross_collector_area', 'net_collector_area', 'electricity_generation', 'nominal_power']\n },\n solarthermal_potential: {\n type: 'object',\n properties: {\n suitable_roof_area: {\n type: ['number', 'null'],\n minimum: 0,\n description: `\nThe \\`st_suitable_roof_area\\` field specifies the roof area suited for solarthermie [m^2].\n\nThe field is set to \\`null\\` if the roof area suited for solarthermie is unknown.`,\n example: 90\n },\n heat_generation: {\n type: ['number', 'null'],\n minimum: 0,\n description: `\nThe \\`st_heat_generation\\` field specifies the potential solarthermic heat generation on this bulding [kWh/a].\n\nThe field is set to \\`null\\` if the heat generation by solarthermie is unknown.`,\n example: 25201\n },\n net_collector_area: {\n type: ['number', 'null'],\n minimum: 0,\n description: `\nThe \\`st_net_collector_area\\` field specifies the maximal collector area for solarthermie [m^2].\n\nThe field is set to \\`null\\` if the maximal collector area for solarthermie is unknown.`,\n example: 25201\n }\n },\n required: ['suitable_roof_area', 'heat_generation', 'net_collector_area']\n },\n matching_addresses: {\n type: ['number', 'null'],\n minimum: 0,\n description: `\nThe \\`matching_addresses\\` field indicates the number of addresses associated with the geometry.\n\nThe field is set to \\`null\\` if no matching addresses are found.`,\n example: 1\n },\n eave_above_ground_weighted: {\n type: ['number', 'null'],\n minimum: 0,\n description: `\nThe \\`eave_above_ground_weighted\\` field specifies the weighted average height of the eave above ground [meters]. For weighting \nthe \\`footprint_area\\` of sub-geometries was used, if a building consists of multiple. This can be traced on the basis of the \nfield \\`number_original_geometries\\`. \n\n\nThe field is set to \\`null\\` if the height is unknown.`,\n example: 11.398919537428867\n },\n eave_above_ground_min: {\n type: ['number', 'null'],\n minimum: 0,\n description: `\nThe \\`eave_above_ground_min\\` field specifies the minimum height of the eave above ground [meters]. This is the minimal \n\\`eave_above_ground\\` within a group of sub-geometries, if a building consists of multiple. This can be traced on the basis \nof the field \\`number_original_geometries\\`.\n\nThe field is set to \\`null\\` if the height is unknown.`,\n example: 5.7899932861328125\n },\n eave_above_ground_max: {\n type: ['number', 'null'],\n minimum: 0,\n description: `\nThe \\`eave_above_ground_max\\` field specifies the maximum height of the eave above ground [meters]. This is the maximal \n\\`eave_above_ground\\` within a group of sub-geometries, if a building consists of multiple. This can be traced on the basis of \nthe field \\`number_original_geometries\\`.\n\n\nThe field is set to \\`null\\` if the height is unknown.`,\n example: 13.722991943359375\n },\n ridge_above_ground_weighted: {\n type: ['number', 'null'],\n minimum: 0,\n description: `\nThe \\`ridge_above_ground_weighted\\` field specifies the weighted average height of the ridge above ground [meters]. For \nweighting the \\`footprint_area\\` of sub-geometries was used, if a building consists of multiple. This can be traced on the basis \nof the field \\`number_original_geometries\\`. \n\nThe field is set to \\`null\\` if the height is unknown.`,\n example: 13.619256575276214\n },\n ridge_above_ground_min: {\n type: ['number', 'null'],\n minimum: 0,\n description: `\nThe \\`ridge_above_ground_min\\` field specifies the minimum height of the ridge above ground [meters]. This is the minimal \n\\`ridge_above_ground within\\` a group of sub-geometries, if a building consists of multiple. This can be traced on the basis of the \nfield \\`number_original_geometries\\`. \n\nThe field is set to \\`null\\` if the height is unknown.`,\n example: 6.64300537109375\n },\n ridge_above_ground_max: {\n type: ['number', 'null'],\n minimum: 0,\n description: `\nThe \\`ridge_above_ground_max\\` field specifies the maximum height of the ridge above ground [meters]. This is the maximal \n\\`ridge_above_ground\\` within a group of sub-geometries, if a building consists of multiple. This can be traced on the basis of the \nfield \\`number_original_geometries\\`. \n\nThe field is set to \\`null\\` if the height is unknown.`,\n example: 16.987991333007812\n },\n number_original_geometries: {\n type: ['number', 'null'],\n minimum: 0,\n description: `\nThe \\`number_original_geometries\\` field specifies the number of original geometries used for weighted calculations.\n\nThe field is set to \\`null\\` if the count is unknown.`,\n example: 3\n },\n roof_area: {\n type: ['number', 'null'],\n minimum: 0,\n description: `\nThe \\`roof_area\\` field specifies the total roof area of the building [square meters].\n\nThe field is set to \\`null\\` if the roof area is unknown.`,\n example: 355.37342071533203\n },\n ogc_fid: {\n type: ['string', 'null'],\n description: `\nThe \\`ogc_fid\\` field specifies a unique identifier from the LOD2 dataset.\n\nThe field is set to \\`null\\` if the identifier is unavailable.`,\n example: 'DENW29AL1000FzW2'\n },\n outer_wall_area_free: {\n type: ['number', 'null'],\n minimum: 0,\n description: `\nThe \\`outer_wall_area_free\\` field specifies the facade area free of adjacent structures [square meters]. \n\nThe field is set to \\`null\\` if the area is unknown.`,\n example: 690.5686635568186\n },\n outer_wall_area_shared_heated: {\n type: ['number', 'null'],\n minimum: 0,\n description: `\nThe \\`outer_wall_area_shared_heated\\` field specifies the facade area shared with heated adjacent structures [square meters]. \n\nThe field is set to \\`null\\` if the area is unknown.`,\n example: 202.10705297163204\n },\n outer_wall_area_shared_non_heated: {\n type: ['number', 'null'],\n minimum: 0,\n description: `\nThe \\`outer_wall_area_shared_non_heated\\` field specifies the facade area shared with non-heated adjacent structures [square meters].\n\nThe field is set to \\`null\\` if the area is unknown.`,\n example: 298.6121580931941\n },\n plinth_length_free: {\n type: ['number', 'null'],\n minimum: 0,\n description: `\nThe \\`plinth_length_free\\` field specifies the length of the building's plinth that is not shared with adjacent structures [meters].\n\nThe field is set to \\`null\\` if the length is unknown.`,\n example: 48.672734987814366\n },\n plinth_length_shared_heated: {\n type: ['number', 'null'],\n minimum: 0,\n description: `\nThe \\`plinth_length_shared_heated\\` field specifies the length of the building's plinth shared with heated adjacent structures [meters].\n\nThe field is set to \\`null\\` if the length is unknown.`,\n example: 13.16187444425839\n },\n plinth_length_shared_non_heated: {\n type: ['number', 'null'],\n minimum: 0,\n description: `\nThe \\`plinth_length_shared_non_heated\\` field specifies the length of the building's plinth shared with non-heated adjacent structures [meters].\n\nThe field is set to \\`null\\` if the length is unknown.`,\n example: 31.994775355440325\n },\n building_function: {\n type: ['string', 'null'],\n description: `\nThe \\`building_function\\` field contains the original German building function name (GFK - Gebäudefunktionsklasse) from the source data.\n\nThis is the raw German value. For the standardized English classification, use the \\`building_function_class\\` field.\n\nThe field is set to \\`null\\` if the building function is unknown.`,\n example: 'Wohngebäude'\n },\n building_function_class: {\n type: ['string', 'null'],\n enum: ['residential_building', 'residential_house', 'dormitory', 'childrens_home', 'nursing_home', 'nurses_dormitory', 'student_dormitory', 'school_country_home', 'mixed_use_building_with_residential', 'residential_building_with_public_amenities', 'residential_building_with_commerce_services', 'residential_and_administrative_building', 'residential_and_office_building', 'residential_and_commercial_building', 'residential_commercial_industrial_building', 'agricultural_forestry_residential_building', 'agricultural_forestry_residential_commercial_building', 'farmhouse', 'residential_and_agricultural_building', 'forest_house', 'leisure_facility_building', 'holiday_home', 'weekend_house', 'garden_house', 'commercial_building', 'commercial_and_service_building', 'office_building', 'credit_institution', 'insurance_office', 'department_store', 'shopping_center', 'market_hall', 'shop', 'kiosk', 'pharmacy', 'exhibition_hall', 'accommodation_building', 'hotel_motel_guesthouse', 'youth_hostel', 'hut_with_overnight_stay', 'campground_building', 'catering_building', 'restaurant', 'hut_no_overnight_stay', 'canteen', 'leisure_and_entertainment_venue', 'banquet_hall', 'cinema', 'bowling_alley', 'casino', 'arcade', 'commercial_and_industrial_building', 'production_building', 'factory', 'operations_building', 'brewery', 'distillery', 'workshop', 'sawmill', 'gas_station', 'car_wash', 'storage_building', 'cold_storage', 'warehouse', 'freight_forwarding_building', 'research_building', 'raw_material_extraction_building', 'mine', 'saltworks', 'company_social_facility_building', 'other_commercial_industrial_building', 'mill', 'windmill', 'watermill', 'pumping_station', 'weather_station', 'commercial_service_residential_building', 'commercial_industrial_residential_building', 'traffic_facility_operations_building_general', 'road_traffic_operations_building', 'road_maintenance_depot', 'waiting_hall', 'rail_traffic_operations_building', 'railroad_crossing_keeper_house', 'locomotive_shed_carriage_hall', 'signal_box_block_post', 'freight_yard_operations_building', 'air_traffic_operations_building', 'aircraft_hangar', 'maritime_traffic_operations_building', 'shipyard_hall', 'dock_hall', 'lock_operations_building', 'boathouse', 'cable_car_operations_building', 'cable_car_tensioning_station', 'parking_building', 'parking_garage', 'garage', 'vehicle_hall', 'supply_building', 'energy_supply_building', 'water_supply_building', 'waterworks', 'water_reservoir', 'electricity_supply_building', 'power_plant', 'substation', 'transformer', 'reactor_building', 'turbine_house', 'boiler_house', 'telecommunications_building', 'building_at_underground_lines', 'gas_supply_building', 'gas_works', 'heating_plant', 'utility_building', 'pumping_station_non_water_supply', 'disposal_building', 'wastewater_treatment_building', 'sewage_treatment_plant_building', 'public_toilet', 'waste_treatment_building', 'waste_bunker', 'waste_incineration_plant', 'landfill_building', 'agricultural_forestry_building', 'agricultural_forestry_commercial_building', 'barn', 'shed', 'stable', 'barn_and_stable', 'large_scale_animal_housing', 'riding_hall', 'alpine_hut', 'hunting_lodge_cabin', 'greenhouse', 'moveable_greenhouse', 'public_building', 'administrative_building', 'parliament_building', 'town_hall', 'post_office', 'customs_office', 'court_building', 'embassy_consulate', 'district_administration', 'regional_government', 'tax_office', 'education_research_building', 'general_education_school', 'vocational_school', 'higher_education_building_university', 'research_institute', 'cultural_building', 'palace', 'theater_opera', 'concert_hall', 'museum', 'broadcasting_television', 'event_building', 'library', 'castle_fortress', 'religious_building', 'church', 'synagogue', 'chapel', 'community_hall', 'house_of_worship', 'mosque', 'temple', 'monastery', 'healthcare_building', 'hospital', 'sanatorium_nursing_home_nursing_station', 'doctors_office_polyclinic', 'rescue_station', 'social_services_building', 'youth_center', 'leisure_club_community_center', 'senior_center', 'homeless_shelter', 'daycare_kindergarten', 'refugee_shelter', 'security_and_order_building', 'police_station', 'fire_station', 'barracks', 'air_raid_shelter', 'correctional_facility', 'cemetery_building', 'funeral_hall', 'crematorium', 'reception_building', 'railway_station_building', 'airport_building', 'subway_station_building', 'suburban_railway_station_building', 'bus_station_building', 'maritime_terminal_building', 'public_purpose_residential_building', 'recreational_building', 'sports_building', 'sports_gymnasium', 'sports_field_building', 'bathhouse', 'indoor_swimming_pool', 'outdoor_pool_building', 'stadium_building', 'spa_facility_building', 'medical_bath_building', 'sanatorium', 'zoo_building', 'zoo_entrance_building', 'aquarium_terrarium_aviary', 'animal_exhibition_building', 'zoo_stable', 'botanical_garden_building', 'botanical_garden_entrance_building', 'botanical_greenhouse', 'conservatory', 'other_recreational_facility_building', 'mountain_hut_shelter', 'tourist_information_center', 'not_specified_due_to_source_situation', 'water_tower', 'church_tower', 'observation_tower', 'control_tower', 'cooling_tower', 'lighthouse', 'fire_watchtower', 'transmission_radio_tower', 'city_gate_tower', 'winding_tower', 'drilling_tower', 'castle_tower', 'other', 'biogas_plant', 'wind_turbine', 'solar_panels', 'mast', 'power_line_mast', 'radio_mast', 'radio_telescope', 'chimney', 'crane', 'slewing_crane', 'gantry_crane', 'traveling_crane', 'blast_furnace', 'silo', 'tank', 'gasometer', 'grandstand', 'covered_grandstand', 'uncovered_grandstand', 'stadium', 'covered_stadium', 'uncovered_stadium', 'ski_jump_inrun', 'graduation_tower', 'historic_water_pipeline', 'watchtower', 'fortification_castle_ruin', 'historic_wall', 'city_wall', 'other_historic_wall', 'canopy', 'carport', 'wall', 'monument', 'ship_lift', 'chamber_lock', 'bridge', 'swing_bridge', 'lifting_bridge', 'drawbridge', 'elevated_railway_elevated_road', 'lock_chamber', 'dam', 'weir', 'security_gate', 'sewer_drain', 'barrage'],\n description: `\nThe \\`building_function_class\\` field specifies the standardized English classification of the building function according to the German GFK (Gebäudefunktionsklasse) standard.\n\nThis field categorizes buildings by their primary use or purpose, such as residential, commercial, industrial, public, or mixed-use functions.\n\nThe field is set to \\`null\\` if the building function class is unknown.`,\n example: 'residential_building'\n }\n },\n required: ['street', 'city', 'street_number', 'postcode', 'roof_type', 'type', 'type_class', 'water_protected', 'heated', 'heat_demand', 'height_category', 'height_category_class', 'levels', 'household_count', 'net_area', 'footprint_area', 'usage', 'usage_class', 'characteristics', 'characteristics_class', 'development_layout', 'development_layout_class', 'construction_year_range', 'construction_year_range_class', 'construction_year', 'heritage', 'geo_conductivity_100', 'heat_pump_air_possible', 'heat_pump_maximal_distance_drillings', 'heat_pump_maximal_distance_drillings_5m', 'heat_pump_minimal_number_possible_drillings', 'heat_pump_minimal_number_possible_drillings_5m', 'heat_pump_minimal_number_possible_drillings_2m', 'heat_pump_minimal_number_possible_drillings_no_distance', 'heat_pump_collector_free_area', 'flood_potential', 'photovoltaic_potential', 'solarthermal_potential', 'matching_addresses', 'eave_above_ground_weighted', 'eave_above_ground_min', 'eave_above_ground_max', 'ridge_above_ground_weighted', 'ridge_above_ground_min', 'ridge_above_ground_max', 'number_original_geometries', 'roof_area', 'ogc_fid', 'outer_wall_area_free', 'outer_wall_area_shared_heated', 'outer_wall_area_shared_non_heated', 'plinth_length_free', 'plinth_length_shared_heated', 'plinth_length_shared_non_heated', 'building_function', 'building_function_class']\n} as const;\n\nexport const $LookupPropertiesV3 = {\n type: 'object',\n properties: {\n street: {\n type: ['string', 'null'],\n description: `\nThe \\`street\\` field specifies the street name of a building.\n\nThe field is set to \\`null\\` if the street is unknown.`,\n example: 'Friedrich Ebert Straße'\n },\n city: {\n type: ['string', 'null'],\n description: `\nThe \\`city\\` field specifies the city name of a building.\n\nThe field is set to \\`null\\` if the city is unknown.`,\n example: 'Wuppertal'\n },\n street_number: {\n type: ['string', 'null'],\n description: `\nThe \\`street_number\\` field specifies the street number name of a building.\n\nThe field is set to \\`null\\` if the street number is unknown.`,\n example: '107'\n },\n postcode: {\n type: ['string', 'null'],\n description: `\nThe \\`postcode\\` field specifies the postcode of a building.\n\nThe field is set to \\`null\\` if the postcode is unknown.`,\n example: '107'\n },\n roof_type: {\n type: ['string', 'null'],\n enum: ['flat', 'pitched', 'mixed'],\n description: `\nThe \\`roof_type\\` field specifies the type of roof of a building. This field can have one of the following values:\n\n- **flat**: Flat roof\n- **pitched**: Pitched roof\n- **mixed**: Mixed types of roofs\n\nThe field is set to \\`null\\` if the building type is unknown.`,\n example: 'flat'\n },\n type: {\n type: ['string', 'null'],\n enum: ['single_family', 'multi_family', 'non_residential', 'mixed_use'],\n description: `\nThe \\`type\\` field specifies the type of building. This field can have one of the following values:\n\n- **single_family**: Single-family house\n- **multi_family**: Multi-family house\n- **non_residential**: Non-residential building\n- **mixed_use**: Mixed-use building\n\nThe field is set to \\`null\\` if the building type is unknown.`,\n example: 'single_family'\n },\n type_class: {\n type: ['number', 'null'],\n minimum: 1,\n maximum: 4,\n description: `\nThe \\`type_class\\` field specifies the class of the building type. This field can have one of the following values:\n\n- **1**: Single-family house\n- **2**: Multi-family house\n- **3**: Non-residential building\n- **4**: Mixed-use building\n\nThe field is set to \\`null\\` if the building type is unknown.`,\n example: 1\n },\n water_protected: {\n type: ['boolean', 'null'],\n description: `\nThe \\`water_protected\\` field specifies whether the building is within a water protection area.\n\nIf the field is set to \\`null\\`, no water protection area could be assigned.`,\n example: true\n },\n heated: {\n type: ['boolean', 'null'],\n description: `\nThe \\`heated\\` field specifies whether the building is heated or not.\n\nThe field is set to \\`null\\` if the heating status is unknown.`,\n example: true\n },\n heat_demand: {\n type: ['number', 'null'],\n minimum: 0,\n description: `\nThe \\`heat_demand\\` field specifies the heat demand of the building in [kWh/m²a].\n\nThe field is set to \\`null\\` if the heat demand is unknown.`,\n example: 127.42\n },\n levels: {\n type: ['number', 'null'],\n minimum: 1,\n description: `\nThe \\`levels\\` field specifies the number of levels in the building.\n\nThe field is set to \\`null\\` if the number of levels is unknown.`,\n example: 4\n },\n household_count: {\n type: ['number', 'null'],\n minimum: 0,\n description: `\nThe \\`household_count\\` field specifies the number of households in the building.\n\nThe field is set to \\`null\\` if the number of households is unknown.`,\n example: 3\n },\n net_area: {\n type: ['number', 'null'],\n minimum: 0,\n description: `\nThe \\`net_area\\` field specifies the net area of the building in m².\n\nThe field is set to \\`null\\` if the net area is unknown.\n\nThe \\`net_area\\` was modeled according to the Raumwärmebedarfsmodell NRW as: \n\\`footprint_area\\` * \\`levels\\` * factors between 0.7 (inhabited) and 0.8 (non-inhabited)\nthe latter was done to concider e.g., inner wall area or staircases.`,\n example: 127.42\n },\n footprint_area: {\n type: ['number', 'null'],\n minimum: 0,\n description: `\nThe \\`footprint_area\\` field specifies the footprint area of the building in m².\n\nThe field is set to \\`null\\` if the footprint area is unknown.`,\n example: 127.42\n },\n characteristics: {\n type: ['string', 'null'],\n enum: ['single_two_family', 'row_semi_detached', 'multi_family', 'residential_block', 'high_rise', 'terrace', 'farmhouse', 'office_other', 'factory_warehouse'],\n description: `\nThe \\`characteristics\\` field defines the different types of building characteristics. This classification includes \nvarious types of residential and non-residential buildings. This field can have one of the following values:\n\n- **single_two_family**: Single- or two-family house\n- **row_semi_detached**: Row or semi-detached house\n- **multi_family**: Multi-family house\n- **residential_block**: Residential block\n- **high_rise**: High-rise residential building\n- **terrace**: Terrace house\n- **farmhouse**: Farmhouse\n- **office_other**: Office or other building\n- **factory_warehouse**: Factory or warehouse building\n\nIf the characteristics is unknown, the field is set to \\`null\\`.`,\n example: 'residential_block'\n },\n characteristics_class: {\n type: ['number', 'null'],\n minimum: 1,\n maximum: 9,\n description: `\nThe \\`characteristics_class\\` field defines the different types of building characteristics. This classification includes \nvarious types of residential and non-residential buildings. This field can have one of the following values:\n\n- **1**: Single- or two-family house\n- **2**: Row or semi-detached house\n- **3**: Multi-family house\n- **4**: Residential block\n- **5**: High-rise residential building\n- **6**: Terrace house\n- **7**: Farmhouse\n- **8**: Office or other building\n- **9**: Factory or warehouse building\n\nIf the characteristics_class is unknown, the field is set to \\`null\\`.`,\n example: 1\n },\n development_layout: {\n type: ['string', 'null'],\n enum: ['non_detached', 'semi_detached', 'detached'],\n description: `\nThe \\`development_layout\\` field specifies the layout of the building. This field can have one of the following values:\n\n- **non_detached**: Non-detached building\n- **semi_detached**: Semi-detached building\n- **detached**: Detached building\n\nIf the development layout is unknown, the field is set to \\`null\\`.\n\nThe \\`development_layout\\` was modeled based on the number and length of intersections with heated (and buildings with unknown heating status)\n neighbouring buildings and the perimeter of a geometry as follows:\n\n**detached** = intersection_length / outline_length < 0.085\n**semi_detached** = intersection_length / outline_length >= 0.085 AND intersection_length / outline_length < 0.45 for buildings with exactly 1 intersection\n**semi_detached** = intersection_length / outline_length >= 0.085 AND intersection_length / outline_length < 0.15 for buildings with more than 1 intersections\n**non_detached** = for all other buildings`,\n example: 'non_detached'\n },\n development_layout_class: {\n type: ['number', 'null'],\n minimum: 1,\n maximum: 3,\n description: `\nThe \\`development_layout_class\\` field specifies the layout of the building. This field can have one of the following values:\n\n- **1**: Non-detached building\n- **2**: Semi-detached building\n- **3**: Detached building\n\nIf the development layout is unknown, the field is set to \\`null\\`.\n\nThe \\`development_layout_class\\` was modeled based on the number and length of intersections with heated (and buildings with unknown heating status)\n neighbouring buildings and the perimeter of a geometry as follows:\n\n**1** = intersection_length / outline_length < 0.085\n**2** = intersection_length / outline_length >= 0.085 AND intersection_length / outline_length < 0.45 for buildings with exactly 1 intersection\n**2** = intersection_length / outline_length >= 0.085 AND intersection_length / outline_length < 0.15 for buildings with more than 1 intersections\n**3** = for all other buildings`,\n example: 1\n },\n construction_year_range: {\n type: ['array', 'null'],\n prefixItems: [\n {\n type: ['number', 'null']\n },\n {\n type: 'number'\n }\n ],\n description: `\nThe \\`construction_year_range\\` field specifies the approximate construction year of the building. The field is a tuple with two\nvalues: the lower and upper bound of the construction year and can have one of the following value:\n\n- **[*null*, 1899]**: Construction year is somewhere up to 1899\n- **[1900, 1945]**\n- **[1946, 1960]**\n- **[1961, 1970]**\n- **[1971, 1980]**\n- **[1981, 1985]**\n- **[1986, 1995]**\n- **[1996, 2000]**\n- **[2001, 2005]**\n- **[2006, 2010]**\n- **[2011, 2015]**\n- **[2016, 2024]**\n\nIf the construction year class is unknown, the field is set to \\`null\\`.`,\n example: [1990, 1995]\n },\n construction_year_range_class: {\n type: ['number', 'null'],\n minimum: 1,\n maximum: 12,\n description: `\nThe \\`construction_year_range_class\\` field specifies the approximate construction year of the building and can have one of the following values: \n\n- **1**: < 1899\n- **2**: 1900 - 1945\n- **3**: 1946 - 1960\n- **4**: 1961 - 1970\n- **5**: 1971 - 1980\n- **6**: 1981 - 1985\n- **7**: 1986 - 1995\n- **8**: 1996 - 2000\n- **9**: 2001 - 2005\n- **10**: 2006 - 2010\n- **11**: 2011 - 2015\n- **12**: 2016 - 2024\n\nIf the construction year range class is unknown, the field is set to \\`null\\`.`,\n example: 1\n },\n construction_year: {\n type: ['number', 'null'],\n minimum: 0,\n description: `\nThe \\`construction_year\\` field specifies the construction year of the building.\n\nIf the construction year is unknown, the field is set to \\`null\\`.`,\n example: 1993\n },\n heritage: {\n type: ['boolean', 'null'],\n description: `\nThe \\`heritage\\` field specifies whether the building is under monumental protection.\n\nThe field is set to \\`null\\` if the heritage status is unknown.`,\n example: true\n },\n geo_conductivity_100: {\n type: ['number', 'null'],\n minimum: 0,\n description: `\nThe \\`geo_conductivity_100\\` field specifies the geothermal conductivity in 100 m depth.\n\nThe field is set to \\`null\\` if the geothermal conductivity is unknown.`,\n example: 2\n },\n heat_pump_air_possible: {\n type: ['boolean', 'null'],\n description: `\nThe \\`heat_pump_air_possible\\` field indicates whether an air-source heat pump is a viable option for the building.\n\n- Set to \\`true\\` if an air-source heat pump is feasible.\n- Set to \\`false\\` if an air-source heat pump is not feasible.\n- Set to \\`null\\` if the information is unknown.`,\n example: true\n },\n heat_pump_maximal_distance_drillings: {\n type: ['number', 'null'],\n minimum: 0,\n description: `\nThe \\`heat_pump_maximal_distance_drillings\\` field specifies the maximum allowable distance between drillings for a heat pump installation, measured in meters.\nThis field will be deprecated in future versions. Please use \\`heat_pump_maximal_distance_drillings_5m\\` instead.\n\nThe field is set to \\`null\\` if the information is unknown.`,\n example: 100\n },\n heat_pump_maximal_distance_drillings_5m: {\n type: ['number', 'null'],\n minimum: 0,\n description: `\nThe \\`heat_pump_maximal_distance_drillings_5m\\` field specifies the maximum allowable distance between drillings for a heat pump installation, measured in meters.\n\nThe field is set to \\`null\\` if the information is unknown.`,\n example: 100.35\n },\n heat_pump_minimal_number_possible_drillings: {\n type: ['number', 'null'],\n minimum: 0,\n description: `\nThe \\`heat_pump_minimal_number_possible_drillings\\` field specifies the minimum \nnumber of drillings required for a heat pump installation with a distance of 5m \nto the parcel border.\nThis field will be deprecated in future versions. Please use \\`heat_pump_minimal_number_possible_drillings_5m\\` instead.\n\nThe field is set to \\`null\\` if the information is unknown.\n\n<br /><br />**Deprecation Warning:**<br /><br />\n\nPlease use \\`heat_pump_minimal_number_possible_drillings_5m\\` instead of this field.`,\n example: 1,\n deprecated: true\n },\n heat_pump_minimal_number_possible_drillings_5m: {\n type: ['number', 'null'],\n minimum: 0,\n description: `\nThe \\`heat_pump_minimal_number_possible_drillings_5m\\` field specifies the minimum \nnumber of drillings required for a heat pump installation with a distance of 5m \nto the parcel border.\n\nThe field is set to \\`null\\` if the information is unknown.`,\n example: 1\n },\n heat_pump_minimal_number_possible_drillings_2m: {\n type: ['number', 'null'],\n minimum: 0,\n description: `\nThe \\`heat_pump_minimal_number_possible_drillings_2m\\` field specifies the minimum \nnumber of drillings required for a heat pump installation with a distance of 2m \nto the parcel border.\n\nThe field is set to \\`null\\` if the information is unknown.`,\n example: 1\n },\n heat_pump_minimal_number_possible_drillings_no_distance: {\n type: ['number', 'null'],\n minimum: 0,\n description: `\nThe \\`heat_pump_minimal_number_possible_drillings_no_distance\\` field specifies the minimum \nnumber of drillings required for a heat pump installation with no distance to the parcel border.\n\nThe field is set to \\`null\\` if the information is unknown.`,\n example: 1\n },\n heat_pump_collector_free_area: {\n type: ['number', 'null'],\n minimum: 0,\n description: `\nThe \\`heat_pump_collector_free_area\\` field specifies the sum of the free area suitable \nfor a collector heat pump on parcels associated to a building.\n\nThe field is set to \\`null\\` if the information is unknown.`,\n example: 100\n },\n flood_potential: {\n type: ['array', 'null'],\n items: {\n type: 'object',\n properties: {\n min_recurrence: {\n type: ['number', 'null'],\n minimum: 0\n },\n max_recurrence: {\n type: ['number', 'null'],\n minimum: 0\n },\n protection_against_floods: {\n type: ['boolean', 'null']\n }\n }\n },\n minItems: 1,\n description: `\nThe \\`flood_potential\\` field is an array representing different flood risk scenarios for a given \nlocation. The objects in the array can contain the following fields:\n\n- \\`min_reccurence\\`: The minimum expected recurrence interval for flooding, measured in years. \n This field is optional and can be \\`null\\` if the data is unavailable. A lower value indicates more \n frequent flooding.\n \n- \\`max_reccurence\\`: The maximum expected recurrence interval for flooding, also in years. This \n field is optional and can be \\`null\\`. If provided, this value represents the upper bound of the \n flood risk interval. This field allows the specification of a range of recurrence intervals.\n \n- \\`protection_against_floods\\`: A boolean flag indicating whether flood protection measures are in \n place for the area. This field is optional and can be \\`null\\` if the information is not available. \n A value of \\`true\\` means flood defenses are present, while \\`false\\` indicates the absence of such \n measures.\n\nIf this array is set to \\`null\\`, it means that no data regarding flood potential is available for the location.`,\n example: [\n {\n min_recurrence: 100,\n max_recurrence: null,\n protection_against_floods: true\n },\n {\n min_recurrence: 101,\n max_recurrence: 1000,\n protection_against_floods: false\n }\n ]\n },\n photovoltaic_potential: {\n type: 'object',\n properties: {\n suitable_roof_area: {\n type: ['number', 'null'],\n minimum: 0,\n description: `\nThe \\`suitable_roof_area\\` field specifies the roof area suited for photovoltaics [m^2].\n\nThe field is set to \\`null\\` if the roof area suited for photovoltaics is unknown.`,\n example: 77\n },\n gross_collector_area: {\n type: ['number', 'null'],\n minimum: 0,\n description: `\nThe \\`gross_collector_area\\` field specifies the maximal collector area for photovoltaics including module frames [m^2].\n\nThe field is set to \\`null\\` if the maximal collector area for photovoltaics is unknown.`,\n example: 48\n },\n net_collector_area: {\n type: ['number', 'null'],\n minimum: 0,\n description: `\nThe \\`net_collector_area\\` field specifies the maximal collector area for photovoltaics excluding module frames [m^2].\n\nThe field is set to \\`null\\` if the maximal collector area for photovoltaics excluding module frames is unknown.`,\n example: 48\n },\n electricity_generation: {\n type: ['number', 'null'],\n minimum: 0,\n description: `\nThe \\`electricity_generation\\` field specifies the maximal electricity generation from photovoltaics of the building per year [kWh/a].\n\nThe field is set to \\`null\\` if the maximal electricity generation per year is unknown.`,\n example: 6401\n },\n nominal_power: {\n type: ['number', 'null'],\n minimum: 0,\n description: `\nThe \\`nominal_power\\` field specifies the nominal power a photovoltaics system could have at this building per year [kWp].\n\nThe field is set to \\`null\\` if the the nominal power is unknown.`,\n example: 7.5\n }\n },\n required: ['suitable_roof_area', 'gross_collector_area', 'net_collector_area', 'electricity_generation', 'nominal_power']\n },\n solarthermal_potential: {\n type: 'object',\n properties: {\n suitable_roof_area: {\n type: ['number', 'null'],\n minimum: 0,\n description: `\nThe \\`st_suitable_roof_area\\` field specifies the roof area suited for solarthermie [m^2].\n\nThe field is set to \\`null\\` if the roof area suited for solarthermie is unknown.`,\n example: 90\n },\n heat_generation: {\n type: ['number', 'null'],\n minimum: 0,\n description: `\nThe \\`st_heat_generation\\` field specifies the potential solarthermic heat generation on this bulding [kWh/a].\n\nThe field is set to \\`null\\` if the heat generation by solarthermie is unknown.`,\n example: 25201\n },\n net_collector_area: {\n type: ['number', 'null'],\n minimum: 0,\n description: `\nThe \\`st_net_collector_area\\` field specifies the maximal collector area for solarthermie [m^2].\n\nThe field is set to \\`null\\` if the maximal collector area for solarthermie is unknown.`,\n example: 25201\n }\n },\n required: ['suitable_roof_area', 'heat_generation', 'net_collector_area']\n },\n matching_addresses: {\n type: ['number', 'null'],\n minimum: 0,\n description: `\nThe \\`matching_addresses\\` field indicates the number of addresses associated with the geometry.\n\nThe field is set to \\`null\\` if no matching addresses are found.`,\n example: 1\n },\n eave_above_ground_weighted: {\n type: ['number', 'null'],\n minimum: 0,\n description: `\nThe \\`eave_above_ground_weighted\\` field specifies the weighted average height of the eave above ground [meters]. For weighting \nthe \\`footprint_area\\` of sub-geometries was used, if a building consists of multiple. This can be traced on the basis of the \nfield \\`number_original_geometries\\`. \n\n\nThe field is set to \\`null\\` if the height is unknown.`,\n example: 11.398919537428867\n },\n eave_above_ground_min: {\n type: ['number', 'null'],\n minimum: 0,\n description: `\nThe \\`eave_above_ground_min\\` field specifies the minimum height of the eave above ground [meters]. This is the minimal \n\\`eave_above_ground\\` within a group of sub-geometries, if a building consists of multiple. This can be traced on the basis \nof the field \\`number_original_geometries\\`.\n\nThe field is set to \\`null\\` if the height is unknown.`,\n example: 5.7899932861328125\n },\n eave_above_ground_max: {\n type: ['number', 'null'],\n minimum: 0,\n description: `\nThe \\`eave_above_ground_max\\` field specifies the maximum height of the eave above ground [meters]. This is the maximal \n\\`eave_above_ground\\` within a group of sub-geometries, if a building consists of multiple. This can be traced on the basis of \nthe field \\`number_original_geometries\\`.\n\n\nThe field is set to \\`null\\` if the height is unknown.`,\n example: 13.722991943359375\n },\n ridge_above_ground_weighted: {\n type: ['number', 'null'],\n minimum: 0,\n description: `\nThe \\`ridge_above_ground_weighted\\` field specifies the weighted average height of the ridge above ground [meters]. For \nweighting the \\`footprint_area\\` of sub-geometries was used, if a building consists of multiple. This can be traced on the basis \nof the field \\`number_original_geometries\\`. \n\nThe field is set to \\`null\\` if the height is unknown.`,\n example: 13.619256575276214\n },\n ridge_above_ground_min: {\n type: ['number', 'null'],\n minimum: 0,\n description: `\nThe \\`ridge_above_ground_min\\` field specifies the minimum height of the ridge above ground [meters]. This is the minimal \n\\`ridge_above_ground within\\` a group of sub-geometries, if a building consists of multiple. This can be traced on the basis of the \nfield \\`number_original_geometries\\`. \n\nThe field is set to \\`null\\` if the height is unknown.`,\n example: 6.64300537109375\n },\n ridge_above_ground_max: {\n type: ['number', 'null'],\n minimum: 0,\n description: `\nThe \\`ridge_above_ground_max\\` field specifies the maximum height of the ridge above ground [meters]. This is the maximal \n\\`ridge_above_ground\\` within a group of sub-geometries, if a building consists of multiple. This can be traced on the basis of the \nfield \\`number_original_geometries\\`. \n\nThe field is set to \\`null\\` if the height is unknown.`,\n example: 16.987991333007812\n },\n number_original_geometries: {\n type: ['number', 'null'],\n minimum: 0,\n description: `\nThe \\`number_original_geometries\\` field specifies the number of original geometries used for weighted calculations.\n\nThe field is set to \\`null\\` if the count is unknown.`,\n example: 3\n },\n roof_area: {\n type: ['number', 'null'],\n minimum: 0,\n description: `\nThe \\`roof_area\\` field specifies the total roof area of the building [square meters].\n\nThe field is set to \\`null\\` if the roof area is unknown.`,\n example: 355.37342071533203\n },\n outer_wall_area_free: {\n type: ['number', 'null'],\n minimum: 0,\n description: `\nThe \\`outer_wall_area_free\\` field specifies the facade area free of adjacent structures [square meters]. \n\nThe field is set to \\`null\\` if the area is unknown.`,\n example: 690.5686635568186\n },\n outer_wall_area_shared_heated: {\n type: ['number', 'null'],\n minimum: 0,\n description: `\nThe \\`outer_wall_area_shared_heated\\` field specifies the facade area shared with heated adjacent structures [square meters]. \n\nThe field is set to \\`null\\` if the area is unknown.`,\n example: 202.10705297163204\n },\n outer_wall_area_shared_non_heated: {\n type: ['number', 'null'],\n minimum: 0,\n description: `\nThe \\`outer_wall_area_shared_non_heated\\` field specifies the facade area shared with non-heated adjacent structures [square meters].\n\nThe field is set to \\`null\\` if the area is unknown.`,\n example: 298.6121580931941\n },\n plinth_length_free: {\n type: ['number', 'null'],\n minimum: 0,\n description: `\nThe \\`plinth_length_free\\` field specifies the length of the building's plinth that is not shared with adjacent structures [meters].\n\nThe field is set to \\`null\\` if the length is unknown.`,\n example: 48.672734987814366\n },\n plinth_length_shared_heated: {\n type: ['number', 'null'],\n minimum: 0,\n description: `\nThe \\`plinth_length_shared_heated\\` field specifies the length of the building's plinth shared with heated adjacent structures [meters].\n\nThe field is set to \\`null\\` if the length is unknown.`,\n example: 13.16187444425839\n },\n plinth_length_shared_non_heated: {\n type: ['number', 'null'],\n minimum: 0,\n description: `\nThe \\`plinth_length_shared_non_heated\\` field specifies the length of the building's plinth shared with non-heated adjacent structures [meters].\n\nThe field is set to \\`null\\` if the length is unknown.`,\n example: 31.994775355440325\n },\n building_function: {\n type: ['string', 'null'],\n description: `\nThe \\`building_function\\` field contains the original German building function name (GFK - Gebäudefunktionsklasse) from the source data.\n\nThis is the raw German value. For the standardized English classification, use the \\`building_function_class\\` field.\n\nThe field is set to \\`null\\` if the building function is unknown.`,\n example: 'Wohngebäude'\n },\n building_function_class: {\n type: ['string', 'null'],\n enum: ['residential_building', 'residential_house', 'dormitory', 'childrens_home', 'nursing_home', 'nurses_dormitory', 'student_dormitory', 'school_country_home', 'mixed_use_building_with_residential', 'residential_building_with_public_amenities', 'residential_building_with_commerce_services', 'residential_and_administrative_building', 'residential_and_office_building', 'residential_and_commercial_building', 'residential_commercial_industrial_building', 'agricultural_forestry_residential_building', 'agricultural_forestry_residential_commercial_building', 'farmhouse', 'residential_and_agricultural_building', 'forest_house', 'leisure_facility_building', 'holiday_home', 'weekend_house', 'garden_house', 'commercial_building', 'commercial_and_service_building', 'office_building', 'credit_institution', 'insurance_office', 'department_store', 'shopping_center', 'market_hall', 'shop', 'kiosk', 'pharmacy', 'exhibition_hall', 'accommodation_building', 'hotel_motel_guesthouse', 'youth_hostel', 'hut_with_overnight_stay', 'campground_building', 'catering_building', 'restaurant', 'hut_no_overnight_stay', 'canteen', 'leisure_and_entertainment_venue', 'banquet_hall', 'cinema', 'bowling_alley', 'casino', 'arcade', 'commercial_and_industrial_building', 'production_building', 'factory', 'operations_building', 'brewery', 'distillery', 'workshop', 'sawmill', 'gas_station', 'car_wash', 'storage_building', 'cold_storage', 'warehouse', 'freight_forwarding_building', 'research_building', 'raw_material_extraction_building', 'mine', 'saltworks', 'company_social_facility_building', 'other_commercial_industrial_building', 'mill', 'windmill', 'watermill', 'pumping_station', 'weather_station', 'commercial_service_residential_building', 'commercial_industrial_residential_building', 'traffic_facility_operations_building_general', 'road_traffic_operations_building', 'road_maintenance_depot', 'waiting_hall', 'rail_traffic_operations_building', 'railroad_crossing_keeper_house', 'locomotive_shed_carriage_hall', 'signal_box_block_post', 'freight_yard_operations_building', 'air_traffic_operations_building', 'aircraft_hangar', 'maritime_traffic_operations_building', 'shipyard_hall', 'dock_hall', 'lock_operations_building', 'boathouse', 'cable_car_operations_building', 'cable_car_tensioning_station', 'parking_building', 'parking_garage', 'garage', 'vehicle_hall', 'supply_building', 'energy_supply_building', 'water_supply_building', 'waterworks', 'water_reservoir', 'electricity_supply_building', 'power_plant', 'substation', 'transformer', 'reactor_building', 'turbine_house', 'boiler_house', 'telecommunications_building', 'building_at_underground_lines', 'gas_supply_building', 'gas_works', 'heating_plant', 'utility_building', 'pumping_station_non_water_supply', 'disposal_building', 'wastewater_treatment_building', 'sewage_treatment_plant_building', 'public_toilet', 'waste_treatment_building', 'waste_bunker', 'waste_incineration_plant', 'landfill_building', 'agricultural_forestry_building', 'agricultural_forestry_commercial_building', 'barn', 'shed', 'stable', 'barn_and_stable', 'large_scale_animal_housing', 'riding_hall', 'alpine_hut', 'hunting_lodge_cabin', 'greenhouse', 'moveable_greenhouse', 'public_building', 'administrative_building', 'parliament_building', 'town_hall', 'post_office', 'customs_office', 'court_building', 'embassy_consulate', 'district_administration', 'regional_government', 'tax_office', 'education_research_building', 'general_education_school', 'vocational_school', 'higher_education_building_university', 'research_institute', 'cultural_building', 'palace', 'theater_opera', 'concert_hall', 'museum', 'broadcasting_television', 'event_building', 'library', 'castle_fortress', 'religious_building', 'church', 'synagogue', 'chapel', 'community_hall', 'house_of_worship', 'mosque', 'temple', 'monastery', 'healthcare_building', 'hospital', 'sanatorium_nursing_home_nursing_station', 'doctors_office_polyclinic', 'rescue_station', 'social_services_building', 'youth_center', 'leisure_club_community_center', 'senior_center', 'homeless_shelter', 'daycare_kindergarten', 'refugee_shelter', 'security_and_order_building', 'police_station', 'fire_station', 'barracks', 'air_raid_shelter', 'correctional_facility', 'cemetery_building', 'funeral_hall', 'crematorium', 'reception_building', 'railway_station_building', 'airport_building', 'subway_station_building', 'suburban_railway_station_building', 'bus_station_building', 'maritime_terminal_building', 'public_purpose_residential_building', 'recreational_building', 'sports_building', 'sports_gymnasium', 'sports_field_building', 'bathhouse', 'indoor_swimming_pool', 'outdoor_pool_building', 'stadium_building', 'spa_facility_building', 'medical_bath_building', 'sanatorium', 'zoo_building', 'zoo_entrance_building', 'aquarium_terrarium_aviary', 'animal_exhibition_building', 'zoo_stable', 'botanical_garden_building', 'botanical_garden_entrance_building', 'botanical_greenhouse', 'conservatory', 'other_recreational_facility_building', 'mountain_hut_shelter', 'tourist_information_center', 'not_specified_due_to_source_situation', 'water_tower', 'church_tower', 'observation_tower', 'control_tower', 'cooling_tower', 'lighthouse', 'fire_watchtower', 'transmission_radio_tower', 'city_gate_tower', 'winding_tower', 'drilling_tower', 'castle_tower', 'other', 'biogas_plant', 'wind_turbine', 'solar_panels', 'mast', 'power_line_mast', 'radio_mast', 'radio_telescope', 'chimney', 'crane', 'slewing_crane', 'gantry_crane', 'traveling_crane', 'blast_furnace', 'silo', 'tank', 'gasometer', 'grandstand', 'covered_grandstand', 'uncovered_grandstand', 'stadium', 'covered_stadium', 'uncovered_stadium', 'ski_jump_inrun', 'graduation_tower', 'historic_water_pipeline', 'watchtower', 'fortification_castle_ruin', 'historic_wall', 'city_wall', 'other_historic_wall', 'canopy', 'carport', 'wall', 'monument', 'ship_lift', 'chamber_lock', 'bridge', 'swing_bridge', 'lifting_bridge', 'drawbridge', 'elevated_railway_elevated_road', 'lock_chamber', 'dam', 'weir', 'security_gate', 'sewer_drain', 'barrage'],\n description: `\nThe \\`building_function_class\\` field specifies the standardized English classification of the building function according to the German GFK (Gebäudefunktionsklasse) standard.\n\nThis field categorizes buildings by their primary use or purpose, such as residential, commercial, industrial, public, or mixed-use functions.\n\nThe field is set to \\`null\\` if the building function class is unknown.`,\n example: 'residential_building'\n },\n ogc_fid: {\n type: ['string', 'null'],\n description: `\nThe \\`ogc_fid\\` field specifies a unique identifier from the LOD2 dataset. **This field is deprecated** and should no longer be used for identifying buildings. \n\nFor current and future use, refer to \\`building_id\\` (for the building geometry) or \\`building_address_id\\` (for a unique building-address combination) instead. \n\nThe field is set to \\`null\\` if the identifier is unavailable.`,\n example: 'DENW29AL1000FzW2',\n deprecated: true\n },\n esg: {\n type: 'object',\n properties: {\n overall_class: {\n type: ['number', 'null'],\n minimum: 1,\n maximum: 5,\n description: `\nThe \\`overall_class\\` field specifies the overall ESG rating class of the building. This field can have one of the following values:\n\n- **1**: Negative\n- **2**: Rather negative\n- **3**: Average\n- **4**: Rather positive\n- **5**: Positive\n\nThe field is set to \\`null\\` if the overall ESG rating class is unknown.`,\n example: 1\n },\n overall: {\n type: ['string', 'null'],\n enum: ['negative', 'rather_negative', 'average', 'rather_positive', 'positive'],\n description: `\nThe \\`overall\\` field specifies the overall ESG rating of the building. This field can have one of the following values:\n\n- **negative**: Negative rating\n- **rather_negative**: Rather negative rating\n- **average**: Average rating\n- **rather_positive**: Rather positive rating\n- **positive**: Positive rating\n\nThe field is set to \\`null\\` if the overall ESG rating is unknown.`,\n example: 'rather_negative'\n },\n overall_rating: {\n type: ['number', 'null'],\n minimum: 0,\n maximum: 100,\n description: `\nThe \\`overall_rating\\` field specifies the overall ESG rating score of the building, ranging from 0 to 100.\n\nThe field is set to \\`null\\` if the overall ESG rating score is unknown.`,\n example: 1\n },\n environment_class: {\n type: ['number', 'null'],\n minimum: 1,\n maximum: 5,\n description: `\nThe \\`environment_class\\` field specifies the environmental ESG rating class of the building. This field can have one of the following values:\n\n- **1**: Negative\n- **2**: Rather negative\n- **3**: Average\n- **4**: Rather positive\n- **5**: Positive\n\nThe field is set to \\`null\\` if the environmental ESG rating class is unknown.`,\n example: 1\n },\n environment: {\n type: ['string', 'null'],\n enum: ['negative', 'rather_negative', 'average', 'rather_positive', 'positive'],\n description: `\nThe \\`environment\\` field specifies the environmental ESG rating of the building. This field can have one of the following values:\n\n- **negative**: Negative rating\n- **rather_negative**: Rather negative rating\n- **average**: Average rating\n- **rather_positive**: Rather positive rating\n- **positive**: Positive rating\n\nThe field is set to \\`null\\` if the environmental ESG rating is unknown.`,\n example: 'rather_positive'\n },\n environment_rating: {\n type: ['number', 'null'],\n minimum: 0,\n maximum: 100,\n description: `\nThe \\`environment_rating\\` field specifies the environmental ESG rating score of the building, ranging from 0 to 100.\n\nThe field is set to \\`null\\` if the environmental ESG rating score is unknown.`,\n example: 1\n },\n social_class: {\n type: ['number', 'null'],\n minimum: 1,\n maximum: 5,\n description: `\nThe \\`social_class\\` field specifies the social ESG rating class of the building. This field can have one of the following values:\n\n- **1**: Negative\n- **2**: Rather negative\n- **3**: Average\n- **4**: Rather positive\n- **5**: Positive\n\nThe field is set to \\`null\\` if the social ESG rating class is unknown.`,\n example: 1\n },\n social: {\n type: ['string', 'null'],\n enum: ['negative', 'rather_negative', 'average', 'rather_positive', 'positive'],\n description: `\nThe \\`social\\` field specifies the social ESG rating of the building. This field can have one of the following values:\n\n- **negative**: Negative rating\n- **rather_negative**: Rather negative rating\n- **average**: Average rating\n- **rather_positive**: Rather positive rating\n- **positive**: Positive rating\n\nThe field is set to \\`null\\` if the social ESG rating is unknown.`,\n example: 'positive'\n },\n social_rating: {\n type: ['number', 'null'],\n minimum: 0,\n maximum: 100,\n description: `\nThe \\`social_rating\\` field specifies the social ESG rating score of the building, ranging from 0 to 100.\n\nThe field is set to \\`null\\` if the social ESG rating score is unknown.`,\n example: 1\n },\n governance_class: {\n type: ['number', 'null'],\n minimum: 1,\n maximum: 5,\n description: `\nThe \\`governance_class\\` field specifies the governance ESG rating class of the building. This field can have one of the following values:\n\n- **1**: Negative\n- **2**: Rather negative\n- **3**: Average\n- **4**: Rather positive\n- **5**: Positive\n\nThe field is set to \\`null\\` if the governance ESG rating class is unknown.`,\n example: 1\n },\n governance: {\n type: ['string', 'null'],\n enum: ['negative', 'rather_negative', 'average', 'rather_positive', 'positive'],\n description: `\nThe \\`governance\\` field specifies the governance ESG rating of the building. This field can have one of the following values:\n\n- **negative**: Negative rating\n- **rather_negative**: Rather negative rating\n- **average**: Average rating\n- **rather_positive**: Rather positive rating\n- **positive**: Positive rating\n\nThe field is set to \\`null\\` if the governance ESG rating is unknown.`,\n example: 'negative'\n },\n governance_rating: {\n type: ['number', 'null'],\n minimum: 0,\n maximum: 100,\n description: `\nThe \\`governance_rating\\` field specifies the governance ESG rating score of the building, ranging from 0 to 100.\n\nThe field is set to \\`null\\` if the governance ESG rating score is unknown.`,\n example: 1\n }\n }\n },\n fuelling_types: {\n type: 'object',\n properties: {\n dominant: {\n type: ['string', 'null'],\n enum: ['renewable_chp', 'district_heating', 'liquified_gas', 'gas', 'wood', 'electricity', 'multiple_equal', 'oil', 'coal_coke', 'delivered_heat'],\n description: `\nThe \\`dominant\\` field specifies the dominant fuelling type of the building. This field can have one of the following values:\n\n- **renewable_chp**: Renewable energy and combined heat and power\n- **district_heating**: District heating\n- **liquified_gas**: Liquified gas\n- **gas**: Natural gas\n- **wood**: Wood\n- **electricity**: Electricity\n- **multiple_equal**: Multiple equal types\n- **oil**: Oil\n- **coal_coke**: Coal and coke\n- **delivered_heat**: Delivered heat\n\nThe field is set to \\`null\\` if the dominant fuelling type is unknown.`,\n example: 'renewable_chp'\n },\n number_listings_denominator: {\n type: ['number', 'null'],\n minimum: 1,\n description: `\nThe \\`number_listings_denominator\\` field specifies the number of listings used as denominator for calculating the shares.\n\nThe field is set to \\`null\\` if the number of listings is unknown.`,\n example: 1\n },\n coal_coke_share: {\n type: ['number', 'null'],\n minimum: 0,\n maximum: 100,\n description: `\nThe \\`coal_coke_share\\` field specifies the share of coal and coke in the building's energy mix, ranging from 0 to 100 [%].\n\nThe field is set to \\`null\\` if the share is unknown.`,\n example: 1\n },\n delivered_heat_share: {\n type: ['number', 'null'],\n minimum: 0,\n maximum: 100,\n description: `\nThe \\`delivered_heat_share\\` field specifies the share of delivered heat in the building's energy mix, ranging from 0 to 100 [%].\n\nThe field is set to \\`null\\` if the share is unknown.`,\n example: 1\n },\n district_heating_share: {\n type: ['number', 'null'],\n minimum: 0,\n maximum: 100,\n description: `\nThe \\`district_heating_share\\` field specifies the share of district heating in the building's energy mix, ranging from 0 to 100 [%].\n\nThe field is set to \\`null\\` if the share is unknown.`,\n example: 1\n },\n electricity_share: {\n type: ['number', 'null'],\n minimum: 0,\n maximum: 100,\n description: `\nThe \\`electricity_share\\` field specifies the share of electricity in the building's energy mix, ranging from 0 to 100 [%].\n\nThe field is set to \\`null\\` if the share is unknown.`,\n example: 1\n },\n gas_share: {\n type: ['number', 'null'],\n minimum: 0,\n maximum: 100,\n description: `\nThe \\`gas_share\\` field specifies the share of natural gas in the building's energy mix, ranging from 0 to 100 [%].\n\nThe field is set to \\`null\\` if the share is unknown.`,\n example: 1\n },\n wood_share: {\n type: ['number', 'null'],\n minimum: 0,\n maximum: 100,\n description: `\nThe \\`wood_share\\` field specifies the share of wood in the building's energy mix, ranging from 0 to 100 [%].\n\nThe field is set to \\`null\\` if the share is unknown.`,\n example: 1\n },\n renewable_chp_share: {\n type: ['number', 'null'],\n minimum: 0,\n maximum: 100,\n description: `\nThe \\`renewable_chp_share\\` field specifies the share of renewable combined heat and power in the building's energy mix, ranging from 0 to 100 [%].\n\nThe field is set to \\`null\\` if the share is unknown.`,\n example: 1\n },\n liquified_gas_share: {\n type: ['number', 'null'],\n minimum: 0,\n maximum: 100,\n description: `\nThe \\`liquified_gas_share\\` field specifies the share of liquified gas in the building's energy mix, ranging from 0 to 100 [%].\n\nThe field is set to \\`null\\` if the share is unknown.`,\n example: 1\n },\n oil_share: {\n type: ['number', 'null'],\n minimum: 0,\n maximum: 100,\n description: `\nThe \\`oil_share\\` field specifies the share of oil in the building's energy mix, ranging from 0 to 100 [%].\n\nThe field is set to \\`null\\` if the share is unknown.`,\n example: 1\n }\n }\n },\n location_rating: {\n type: 'object',\n properties: {\n overall: {\n type: ['number', 'null'],\n minimum: 0,\n maximum: 100,\n description: `\nThe \\`overall\\` field specifies the overall location rating of the building, ranging from 0 to 100.\n\nThe field is set to \\`null\\` if the overall location rating is unknown.`,\n example: 1\n },\n housing_market: {\n type: ['number', 'null'],\n minimum: 0,\n maximum: 100,\n description: `\nThe \\`housing_market\\` field specifies the housing market rating of the building's location, ranging from 0 to 100.\n\nThe field is set to \\`null\\` if the housing market rating is unknown.`,\n example: 1\n },\n infrastructure: {\n type: ['number', 'null'],\n minimum: 0,\n maximum: 100,\n description: `\nThe \\`infrastructure\\` field specifies the infrastructure rating of the building's location, ranging from 0 to 100.\n\nThe field is set to \\`null\\` if the infrastructure rating is unknown.`,\n example: 1\n },\n settlement_structure: {\n type: ['number', 'null'],\n minimum: 0,\n maximum: 100,\n description: `\nThe \\`settlement_structure\\` field specifies the settlement structure rating of the building's location, ranging from 0 to 100.\n\nThe field is set to \\`null\\` if the settlement structure rating is unknown.`,\n example: 1\n },\n social: {\n type: ['number', 'null'],\n minimum: 0,\n maximum: 100,\n description: `\nThe \\`social\\` field specifies the social rating of the building's location, ranging from 0 to 100.\n\nThe field is set to \\`null\\` if the social rating is unknown.`,\n example: 1\n },\n stressors: {\n type: ['number', 'null'],\n minimum: 0,\n maximum: 100,\n description: `\nThe \\`stressors\\` field specifies the stressors rating of the building's location, ranging from 0 to 100.\n\nThe field is set to \\`null\\` if the stressors rating is unknown.\n\nHigher values indicate a better location, similar to the other properties in \\`location_rating\\`.\n`,\n example: 1\n }\n }\n },\n investment_perspective_class: {\n type: ['number', 'null'],\n minimum: 1,\n maximum: 5,\n description: `\nThe \\`investment_perspective_class\\` field specifies the investment perspective class of the building. This field can have one of the following values:\n\n- **1**: Negative\n- **2**: Rather negative\n- **3**: Average\n- **4**: Rather positive\n- **5**: Positive\n\nThe field is set to \\`null\\` if the investment perspective class is unknown.`,\n example: 1\n },\n investment_perspective: {\n type: ['string', 'null'],\n enum: ['negative', 'rather_negative', 'average', 'rather_positive', 'positive'],\n description: `\nThe \\`investment_perspective\\` field specifies the investment perspective of the building. This field can have one of the following values:\n\n- **negative**: Negative perspective\n- **rather_negative**: Rather negative perspective\n- **average**: Average perspective\n- **rather_positive**: Rather positive perspective\n- **positive**: Positive perspective\n\nThe field is set to \\`null\\` if the investment perspective is unknown.`,\n example: 'rather_negative'\n },\n modernisation_potential_class: {\n type: ['number', 'null'],\n minimum: 1,\n maximum: 5,\n description: `\nThe \\`modernisation_potential_class\\` field specifies the modernisation potential class of the building. This field can have one of the following values:\n\n- **1**: Negative\n- **2**: Rather negative\n- **3**: Average\n- **4**: Rather positive\n- **5**: Positive\n\nThe field is set to \\`null\\` if the modernisation potential class is unknown.`,\n example: 1\n },\n modernisation_potential: {\n type: ['string', 'null'],\n enum: ['negative', 'rather_negative', 'average', 'rather_positive', 'positive'],\n description: `\nThe \\`modernisation_potential\\` field specifies the modernisation potential of the building. This field can have one of the following values:\n\n- **negative**: Negative potential\n- **rather_negative**: Rather negative potential\n- **average**: Average potential\n- **rather_positive**: Rather positive potential\n- **positive**: Positive potential\n\nThe field is set to \\`null\\` if the modernisation potential is unknown.`,\n example: 'positive'\n },\n milieus_dominant_class: {\n type: ['number', 'null'],\n minimum: 1,\n maximum: 6,\n description: `\nThe \\`milieus_dominant_class\\` field specifies the dominant milieu class of the building's location. This field can have one of the following values:\n\n- **1**: Communicative\n- **2**: Demanding\n- **3**: Domestic\n- **4**: Conventional\n- **5**: Modest\n- **6**: Functional\n\nThe field is set to \\`null\\` if the dominant milieu class is unknown.`,\n example: 1\n },\n milieus_dominant: {\n type: ['string', 'null'],\n enum: ['communicative', 'demanding', 'domestic', 'conventional', 'modest', 'functional'],\n description: `\nThe \\`milieus_dominant\\` field specifies the dominant milieu of the building's location. This field can have one of the following values:\n\n- **communicative**: Communicative milieu\n- **demanding**: Demanding milieu\n- **domestic**: Domestic milieu\n- **conventional**: Conventional milieu\n- **modest**: Modest milieu\n- **functional**: Functional milieu\n\nThe field is set to \\`null\\` if the dominant milieu is unknown.`,\n example: 'domestic'\n },\n building_address_id: {\n type: ['string', 'null'],\n description: `\nThe \\`building_address_id\\` field specifies the unique identifier for a building in relation to a specific address. This ID is used to distinguish buildings that may share the same parcel or geographic location but are associated with different addresses (for example, in cases of multiple entrances, sub-buildings, or address points within a single property).\n\nThis identifier is particularly useful for applications where the address context is essential to uniquely reference a building, such as postal services, delivery, or address-based lookup systems.\n\nThe field is set to \\`null\\` if the building address ID is unknown.`,\n example: '1234567890'\n },\n building_id: {\n type: ['string', 'null'],\n description: `\nThe \\`building_id\\` field specifies the identifier for the building as a physical structure or geometry, independent of address context. Note that this ID is not necessarily unique, as a single building can be associated with multiple addresses (for example, corner buildings or buildings with several entrances).\n\nThis identifier is typically used to reference the building as a physical entity for purposes such as property management, urban planning, or geospatial analysis, where the focus is on the structure itself rather than its address associations.\n\nFor a unique reference to a building at a specific address, use \\`building_address_id\\` instead.\n\nThe field is set to \\`null\\` if the building ID is unknown.`,\n example: '1234567890'\n },\n building_group_id: {\n type: ['string', 'null'],\n description: `\nThe \\`building_group_id\\` field specifies a SHA256 hash identifier for a group of buildings that are considered together for analysis, management, or reporting purposes.\n\nThis identifier is particularly useful for applications where buildings need to be analyzed or managed collectively, such as urban planning, property management, or resource allocation.\n\nThe field is set to \\`null\\` if the building group ID is unknown.`,\n example: 'a1b2c3d4e5f6g7h8i9j0k1l2m3n4o5p6q7r8s9t0u1v2w3x4y5z6a7b8c9d0e1f2'\n },\n inhabitants: {\n type: ['number', 'null'],\n minimum: 0,\n description: `\nThe \\`inhabitants\\` field specifies the number of inhabitants per building. This value represents the total number of people residing within the given building, regardless of the number of addresses or units it contains.\n\nThis information can be useful for demographic analysis, urban planning, emergency response, and resource allocation, where understanding the population density or occupancy of a building is important.\n\nThe field is set to \\`null\\` if the number of inhabitants is unknown.`,\n example: 14\n },\n number_companies: {\n type: ['number', 'null'],\n minimum: 0,\n description: `\nThe \\`number_companies\\` field specifies the total number of companies located within the building. This value reflects how many distinct companies are registered or operate in the building, regardless of the number of addresses, units, or floors.\n\nThis information is useful for economic analysis, business density studies, urban planning, and resource allocation, where understanding the commercial activity within a building is important.\n\nThe field is set to \\`null\\` if the number of companies is unknown.`,\n example: 14\n },\n purchasing_power: {\n type: ['number', 'null'],\n minimum: 0,\n description: `\nThe \\`purchasing_power\\` field specifies the average purchasing power (German: *Kaufkraft*) of the households of the building, measured in euros (EUR). Purchasing power refers to the estimated disposable income or financial capacity available to the households for spending and consumption, after taxes and social security contributions have been deducted.\n\nThis value is typically expressed as an annual amount per person or household and provides insight into the economic strength and consumption potential of the building's population. Understanding purchasing power is valuable for market analysis, retail site selection, urban planning, and resource allocation.\n\nThe field is set to \\`null\\` if the purchasing power is unknown.`,\n example: 14000\n },\n building_volume_ratio_weighted: {\n type: ['number', 'null'],\n minimum: 0,\n description: `\nThe \\`building_volume_ratio_weighted\\` field specifies the weighted building volume ratio (also known as \"Baumassezahl\") of the building. This value represents the density context a building is situated in, rather than isolating its individual volume contribution.\n\nThe building volume ratio is conceptually defined as building volume divided by parcel area, where building volume is calculated as footprint area multiplied by roof height (estimated as the average of ridge_above_ground_weighted and eave_above_ground_weighted).\n\nSince our data is associated with buildings rather than parcels, this weighted calculation accounts for cases where buildings share parcels. The value is computed by:\n1. Summing the building volume per parcel across all associated buildings\n2. Dividing by the sum of corresponding parcel areas across all associated buildings\n\nIf \\`number_parcels_per_building == 1\\`, then this value is equivalent to an unaggregated building volume ratio.\n\nThe field is set to \\`null\\` if the building volume ratio is unknown.`,\n example: 1.23\n },\n number_parcels_per_building: {\n type: ['number', 'null'],\n minimum: 0,\n description: `\nThe \\`number_parcels_per_building\\` field specifies the number of parcels a building is associated with. This value provides context for the weighted nature of the \\`building_volume_ratio_weighted\\` attribute.\n\nWhen \\`number_parcels_per_building == 1\\`, the \\`building_volume_ratio_weighted\\` is equivalent to an unaggregated building volume ratio. When the value is greater than 1, it indicates that the building is situated on multiple parcels, and the weighted calculation accounts for this shared context.\n\nThis information is useful for understanding the density context of a building and interpreting the weighted building volume ratio calculation.\n\nThe field is set to \\`null\\` if the number of parcels is unknown.`,\n example: 2\n }\n },\n required: ['street', 'city', 'street_number', 'postcode', 'roof_type', 'type', 'type_class', 'water_protected', 'heated', 'heat_demand', 'levels', 'household_count', 'net_area', 'footprint_area', 'characteristics', 'characteristics_class', 'development_layout', 'development_layout_class', 'construction_year_range', 'construction_year_range_class', 'construction_year', 'heritage', 'geo_conductivity_100', 'heat_pump_air_possible', 'heat_pump_maximal_distance_drillings', 'heat_pump_maximal_distance_drillings_5m', 'heat_pump_minimal_number_possible_drillings', 'heat_pump_minimal_number_possible_drillings_5m', 'heat_pump_minimal_number_possible_drillings_2m', 'heat_pump_minimal_number_possible_drillings_no_distance', 'heat_pump_collector_free_area', 'flood_potential', 'photovoltaic_potential', 'solarthermal_potential', 'matching_addresses', 'eave_above_ground_weighted', 'eave_above_ground_min', 'eave_above_ground_max', 'ridge_above_ground_weighted', 'ridge_above_ground_min', 'ridge_above_ground_max', 'number_original_geometries', 'roof_area', 'outer_wall_area_free', 'outer_wall_area_shared_heated', 'outer_wall_area_shared_non_heated', 'plinth_length_free', 'plinth_length_shared_heated', 'plinth_length_shared_non_heated', 'building_function', 'building_function_class', 'ogc_fid', 'esg', 'fuelling_types', 'location_rating']\n} as const;","// This file is auto-generated by @hey-api/openapi-ts\n\nimport { client, type Options } from '@hey-api/client-fetch';\nimport type { GetAddressLookupV2Data, GetAddressLookupV2Error, GetAddressLookupV2Response, GetCoordinateLookupV2Data, GetCoordinateLookupV2Error, GetCoordinateLookupV2Response, PostCoordinateBatchLookupV2Data, PostCoordinateBatchLookupV2Error, PostCoordinateBatchLookupV2Response, GetAddressLookupV3Data, GetAddressLookupV3Error, GetAddressLookupV3Response, GetCoordinateLookupV3Data, GetCoordinateLookupV3Error, GetCoordinateLookupV3Response, PostCoordinateBatchLookupV3Data, PostCoordinateBatchLookupV3Error, PostCoordinateBatchLookupV3Response } from './types.gen';\n\n/**\n * Retrieve building data based on a given address\n *\n * This endpoint allows users to retrieve detailed building data by providing an address.\n * The data includes information from both public and private sources, aggregated into a\n * comprehensive dataset.\n *\n * ### Permissions\n * - `api.lookup.address.read`: This permission grants the ability\n * to read and retrieve building data based on a provided address. It ensures that the\n * user has access rights to query the address-based lookup endpoint.\n *\n * ### Address-based Lookup\n * This endpoint is designed to retrieve building data based on a given address, focusing\n * solely on exact matches. If the address is not found, the endpoint will return an empty\n * response. For use cases involving un-geocoded addresses, we recommend using our\n * coordinate-based lookup endpoint.\n *\n * ### Response Structure\n * - **GeoJSON Type**: In v2, the response format has been simplified to a `Feature` object, representing a single feature, rather than the `FeatureCollection` type returned by v1. This change reflects the endpoint's focus on returning a single or no result based on the query.\n */\nexport const getAddressLookupV2 = (options: Options<GetAddressLookupV2Data>) => { return (options?.client ?? client).get<GetAddressLookupV2Response, GetAddressLookupV2Error>({\n ...options,\n url: '/v2/addressLookup'\n}); };\n\n/**\n * Retrieve building data based on a given coordinate\n *\n * This endpoint allows users to retrieve detailed building data by providing a geo coordinate.\n * The data includes information from both public and private sources, aggregated into a\n * comprehensive dataset.\n *\n * ### Key Changes in v2\n * In v2, the response format has been optimized to return a `Feature` rather than a `FeatureCollection`. This adjustment reflects the endpoint’s focus on retrieving a single result or no result, rather than a collection, simplifying client-side handling.\n *\n * ### Permissions\n * - `api.lookup.coordinate.read`: This permission grants the ability to\n * read and retrieve building data based on a provided coordinate. It ensures that the user has\n * access rights to query the coordinate-based lookup endpoint.\n *\n * ### Response Structure\n * - **GeoJSON Type**: The response in v2 is now a single `Feature` object representing one building result or an empty response if no match is found. This differs from v1, which returned a `FeatureCollection` object.\n */\nexport const getCoordinateLookupV2 = (options?: Options<GetCoordinateLookupV2Data>) => { return (options?.client ?? client).get<GetCoordinateLookupV2Response, GetCoordinateLookupV2Error>({\n ...options,\n url: '/v2/coordinateLookup'\n}); };\n\n/**\n * Retrieve building data for a batch of coordinates\n *\n * This endpoint allows users to retrieve detailed building data by providing a batch of\n * geo-coordinates. The response is a GeoJSON object containing a FeatureCollection, where each\n * feature represents a building and includes additional properties for tracking back to the\n * requested coordinates.\n *\n * ### Key Improvements in v2\n *\n * In v2, each coordinate can be assigned a unique reference ID in the request body, allowing for\n * more precise handling of results. The response includes a metadata section that provides:\n * - The total number of coordinates processed.\n * - A count of found and not-found coordinates.\n * - Lists of references for found and not-found coordinates, making it easier to manage unmatched\n * entries without requiring complex client-side matching logic.\n *\n * ### Request Body Format\n * The request body is structured as an object where each key is a unique reference ID for a\n * coordinate:\n *\n * ```json\n * {\n * \"reference_id1\": { \"lat\": 51.252258, \"lng\": 7.13107 },\n * \"reference_id2\": { \"lat\": 51.29342, \"lng\": 7.21936 },\n * \"reference_id3\": { \"lat\": 51.18941, \"lng\": 7.14259 }\n * }\n * ```\n *\n * ### Response Structure\n * - **GeoJSON Type**: The response includes a FeatureCollection containing matched features.\n * - **Metadata**:\n * - `counts`: Provides total, found, and not-found counts for the requested coordinates.\n * - `references`: Lists reference IDs of matched (`found`) and unmatched (`not_found`)\n * coordinates.\n *\n * #### Example Response:\n * ```json\n * {\n * \"type\": \"FeatureCollection\",\n * \"metadata\": {\n * \"counts\": {\n * \"total\": 3,\n * \"found\": 2,\n * \"not_found\": 1\n * },\n * \"references\": {\n * \"found\": [\"reference_id1\", \"reference_id2\"],\n * \"not_found\": [\"reference_id3\"]\n * }\n * },\n * \"features\": [\n * {\n * \"type\": \"Feature\",\n * \"geometry\": { * geometry details * },\n * \"properties\": {\n * \"ref\": \"reference_id1\",\n * ...\n * }\n * },\n * ...\n * ]\n * }\n * ```\n *\n * ### Handling Non-Matching Coordinates\n *\n * For unmatched coordinates, v2 includes metadata listing these coordinates, enabling clients to\n * easily filter out or handle non-matching entries. This improves upon v1, where clients had to\n * manage complex matching logic without clear references for non-matching coordinates.\n *\n * ### Limitations\n * This endpoint supports up to 500 coordinates per request. If more are needed, split into multiple\n * requests.\n *\n * ### Permissions\n * - `api.batch.lookup.coordinate.read`: Grants the ability to access this endpoint.\n */\nexport const postCoordinateBatchLookupV2 = (options: Options<PostCoordinateBatchLookupV2Data>) => { return (options?.client ?? client).post<PostCoordinateBatchLookupV2Response, PostCoordinateBatchLookupV2Error>({\n ...options,\n url: '/v2/coordinateBatchLookup'\n}); };\n\n/**\n * Retrieve building data based on a given address\n *\n * This endpoint allows users to retrieve detailed building data by providing an address.\n * The data includes information from both public and private sources, aggregated into a\n * comprehensive dataset.\n *\n * ### Permissions\n * - `api.lookup.address.read`: This permission grants the ability\n * to read and retrieve building data based on a provided address. It ensures that the\n * user has access rights to query the address-based lookup endpoint.\n *\n * ### Address-based Lookup\n * This endpoint is designed to retrieve building data based on a given address, focusing\n * solely on exact matches. If the address is not found, the endpoint will return an empty\n * response. For use cases involving un-geocoded addresses, we recommend using our\n * coordinate-based lookup endpoint.\n *\n * ### Key Changes in v3\n * In v3, the response format has been converted from a first-match `Feature` object, to an\n * all matches `FeatureCollection` type. This change reflects the endpoints focus on retrieving\n * all matches for a given address, e.g. when different addresses are on the same geometry. Also\n * we have introduced a new optional query parameter `resolution`, which allows to specify the\n * resolution to be precise on address or geometry level. If no resolution is provided, the\n * geometry precision will be used.\n *\n * ### Response Structure\n * - **GeoJSON Type**: In v3, the response format has been converted from a first-match `Feature` object, to an all matches `FeatureCollection` type.\n */\nexport const getAddressLookupV3 = (options: Options<GetAddressLookupV3Data>) => { return (options?.client ?? client).get<GetAddressLookupV3Response, GetAddressLookupV3Error>({\n ...options,\n url: '/v3/addressLookup'\n}); };\n\n/**\n * Retrieve building data based on a given coordinate\n *\n * This endpoint allows users to retrieve detailed building data by providing a geo coordinate.\n * The data includes information from both public and private sources, aggregated into a\n * comprehensive dataset.\n *\n * ### Key Changes in v3\n * In v3, the response format has been optimized to return a `FeatureCollection` object. This\n * adjustment reflects the endpoints focus on retrieving all matches for a given coordinate,\n * e.g. when different coordinates are on the same geometry.\n *\n * ### Permissions\n * - `api.lookup.coordinate.read`: This permission grants the ability to\n * read and retrieve building data based on a provided coordinate. It ensures that the user has\n * access rights to query the coordinate-based lookup endpoint.\n *\n * ### Key Changes in v3\n * In v3, the response format has been converted from a first-match `Feature` object, to an\n * all matches `FeatureCollection` type. This change reflects the endpoints focus on retrieving\n * all matches for a given coordinate, e.g. when different coordinates are on the same geometry. Also\n * we have introduced a new optional query parameter `resolution`, which allows to specify the\n * resolution to be precise on coordinate or geometry level. If no resolution is provided, the\n * geometry precision will be used.\n *\n * ### Response Structure\n * - **GeoJSON Type**: In v3, the response format has been converted from a first-match `Feature` object, to an all matches `FeatureCollection` type.\n */\nexport const getCoordinateLookupV3 = (options?: Options<GetCoordinateLookupV3Data>) => { return (options?.client ?? client).get<GetCoordinateLookupV3Response, GetCoordinateLookupV3Error>({\n ...options,\n url: '/v3/coordinateLookup'\n}); };\n\n/**\n * Retrieve building data for a batch of coordinates\n *\n * This endpoint allows users to retrieve detailed building data by providing a batch of\n * geo-coordinates. The response is a GeoJSON object containing a FeatureCollection, where each\n * feature represents a building and includes additional properties for tracking back to the\n * requested coordinates.\n *\n * ### Request Body Format\n * The request body is structured as an object where each key is a unique reference ID for a\n * coordinate:\n *\n * ```json\n * {\n * \"reference_id1\": { \"lat\": 51.252258, \"lng\": 7.13107 },\n * \"reference_id2\": { \"lat\": 51.29342, \"lng\": 7.21936 },\n * \"reference_id3\": { \"lat\": 51.18941, \"lng\": 7.14259 }\n * }\n * ```\n *\n * ### Response Structure\n * - **GeoJSON Type**: The response includes a FeatureCollection containing matched features.\n * - **Metadata**:\n * - `counts`: Provides total, found, and not-found counts for the requested coordinates.\n * - `references`: Lists reference IDs of matched (`found`) and unmatched (`not_found`)\n * coordinates.\n *\n * #### Example Response:\n * ```json\n * {\n * \"type\": \"FeatureCollection\",\n * \"metadata\": {\n * \"counts\": {\n * \"total\": 3,\n * \"found\": 2,\n * \"not_found\": 1\n * },\n * \"references\": {\n * \"found\": [\"reference_id1\", \"reference_id2\"],\n * \"not_found\": [\"reference_id3\"]\n * }\n * },\n * \"features\": [\n * {\n * \"type\": \"Feature\",\n * \"geometry\": { * geometry details * },\n * \"properties\": {\n * \"ref\": \"reference_id1\",\n * ...\n * }\n * },\n * ...\n * ]\n * }\n * ```\n *\n * ### Handling Non-Matching Coordinates\n *\n * For unmatched coordinates, v2 includes metadata listing these coordinates, enabling clients to\n * easily filter out or handle non-matching entries. This improves upon v1, where clients had to\n * manage complex matching logic without clear references for non-matching coordinates.\n *\n * ### Limitations\n * This endpoint supports up to 500 coordinates per request. If more are needed, split into multiple\n * requests.\n *\n * ### Permissions\n * - `api.batch.lookup.coordinate.read`: Grants the ability to access this endpoint.\n */\nexport const postCoordinateBatchLookupV3 = (options: Options<PostCoordinateBatchLookupV3Data>) => { return (options?.client ?? client).post<PostCoordinateBatchLookupV3Response, PostCoordinateBatchLookupV3Error>({\n ...options,\n url: '/v3/coordinateBatchLookup'\n}); };","// This file is auto-generated by @hey-api/openapi-ts\nexport * from './schemas.gen';\nexport * from './services.gen';\nexport * from './types.gen';\nexport {createClient} from '@hey-api/client-fetch';\n"],"mappings":"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","names":[]}
|
|
1
|
+
{"version":3,"sources":["../src/schemas.gen.ts","../src/services.gen.ts","../src/index.ts"],"sourcesContent":["// This file is auto-generated by @hey-api/openapi-ts\n\nexport const $LookupPropertiesV2 = {\n type: 'object',\n properties: {\n street: {\n type: ['string', 'null'],\n description: `\nThe \\`street\\` field specifies the street name of a building.\n\nThe field is set to \\`null\\` if the street is unknown.`,\n example: 'Friedrich Ebert Straße'\n },\n city: {\n type: ['string', 'null'],\n description: `\nThe \\`city\\` field specifies the city name of a building.\n\nThe field is set to \\`null\\` if the city is unknown.`,\n example: 'Wuppertal'\n },\n street_number: {\n type: ['string', 'null'],\n description: `\nThe \\`street_number\\` field specifies the street number name of a building.\n\nThe field is set to \\`null\\` if the street number is unknown.`,\n example: '107'\n },\n postcode: {\n type: ['string', 'null'],\n description: `\nThe \\`postcode\\` field specifies the postcode of a building.\n\nThe field is set to \\`null\\` if the postcode is unknown.`,\n example: '107'\n },\n roof_type: {\n type: ['string', 'null'],\n enum: ['flat', 'pitched', 'mixed'],\n description: `\nThe \\`roof_type\\` field specifies the type of roof of a building. This field can have one of the following values:\n\n- **flat**: Flat roof\n- **pitched**: Pitched roof\n- **mixed**: Mixed types of roofs\n\nThe field is set to \\`null\\` if the building type is unknown.`,\n example: 'flat'\n },\n type: {\n type: ['string', 'null'],\n enum: ['single_family', 'multi_family', 'non_residential', 'mixed_use'],\n description: `\nThe \\`type\\` field specifies the type of building. This field can have one of the following values:\n\n- **single_family**: Single-family house\n- **multi_family**: Multi-family house\n- **non_residential**: Non-residential building\n- **mixed_use**: Mixed-use building\n\nThe field is set to \\`null\\` if the building type is unknown.`,\n example: 'single_family'\n },\n type_class: {\n type: ['number', 'null'],\n minimum: 1,\n maximum: 4,\n description: `\nThe \\`type_class\\` field specifies the class of the building type. This field can have one of the following values:\n\n- **1**: Single-family house\n- **2**: Multi-family house\n- **3**: Non-residential building\n- **4**: Mixed-use building\n\nThe field is set to \\`null\\` if the building type is unknown.`,\n example: 1\n },\n water_protected: {\n type: ['boolean', 'null'],\n description: `\nThe \\`water_protected\\` field specifies whether the building is within a water protection area.\n\nIf the field is set to \\`null\\`, no water protection area could be assigned.`,\n example: true\n },\n heated: {\n type: ['boolean', 'null'],\n description: `\nThe \\`heated\\` field specifies whether the building is heated or not.\n\nThe field is set to \\`null\\` if the heating status is unknown.`,\n example: true\n },\n heat_demand: {\n type: ['number', 'null'],\n minimum: 0,\n description: `\nThe \\`heat_demand\\` field specifies the heat demand of the building in [kWh/m²a].\n\nThe field is set to \\`null\\` if the heat demand is unknown.`,\n example: 127.42\n },\n height_category: {\n type: ['string', 'null'],\n enum: ['<= 5m', '<= 7.5m', '<= 10m', '<= 12.5m', '<= 15m', '> 15m'],\n description: `\nThe \\`height_category\\` field specifies the height category of the building. The height category is a\nnumber between 1 and 6, where 1 is the lowest and 6 is the highest category.\n\n### Classifications\n\n- **1**: <= 5m\n- **2**: <= 7.5m\n- **3**: <= 10m\n- **4**: <= 12.5m\n- **5**: <= 15m\n- **6**: > 15m\n\nIf the height category is unknown, the field is set to \\`null\\`.\n\n<br /><br />**Warning:**<br /><br />\n\nThis field is deprecated and will be removed in future API versions. It is no longer actively supported and may be omitted from upcoming endpoints. We recommend updating your implementation to use the latest supported fields.\n `,\n example: '<= 5m',\n deprecated: true\n },\n height_category_class: {\n type: ['number', 'null'],\n minimum: 1,\n maximum: 6,\n description: `\nThe \\`height_category_class\\` field specifies the height category of the building. The height category is a\nnumber between 1 and 6, where 1 is the lowest and 6 is the highest category.\n\n### Classifications\n\n- **1**: <= 5m\n- **2**: <= 7.5m\n- **3**: <= 10m\n- **4**: <= 12.5m\n- **5**: <= 15m\n- **6**: > 15m\n\nThe field is set to \\`null\\` if the number of height category is unknown.\n\n<br /><br />**Warning:**<br /><br />\n\nThis field is deprecated and will be no longer supported in future datasets.`,\n example: 1,\n deprecated: true\n },\n levels: {\n type: ['number', 'null'],\n minimum: 1,\n description: `\nThe \\`levels\\` field specifies the number of levels in the building.\n\nThe field is set to \\`null\\` if the number of levels is unknown.`,\n example: 4\n },\n household_count: {\n type: ['number', 'null'],\n minimum: 0,\n description: `\nThe \\`household_count\\` field specifies the number of households in the building.\n\nThe field is set to \\`null\\` if the number of households is unknown.`,\n example: 3\n },\n net_area: {\n type: ['number', 'null'],\n minimum: 0,\n description: `\nThe \\`net_area\\` field specifies the net area of the building in m².\n\nThe field is set to \\`null\\` if the net area is unknown.\n\nThe \\`net_area\\` was modeled according to the Raumwärmebedarfsmodell NRW as: \n\\`footprint_area\\` * \\`levels\\` * factors between 0.7 (inhabited) and 0.8 (non-inhabited)\nthe latter was done to concider e.g., inner wall area or staircases.`,\n example: 127.42\n },\n footprint_area: {\n type: ['number', 'null'],\n minimum: 0,\n description: `\nThe \\`footprint_area\\` field specifies the footprint area of the building in m².\n\nThe field is set to \\`null\\` if the footprint area is unknown.`,\n example: 127.42\n },\n usage: {\n type: ['string', 'null'],\n enum: ['residential', 'non_residential', 'mixed_use'],\n description: `\nThe \\`usage\\` field specifies the usage of the building. This field can have one of the following values:\n\n- **residential**: Residential building\n- **non_residential**: Non-residential building\n- **mixed_use**: Mixed-use building\n\nIf the usage is unknown, the field is set to \\`null\\`.\n\n<br /><br />**Warning:**<br /><br />\n\nThis field is deprecated and will be removed in future API versions. It is no longer actively supported and may be omitted from upcoming endpoints. We recommend updating your implementation to use the latest supported fields.`,\n example: 'residential',\n deprecated: true\n },\n usage_class: {\n type: ['number', 'null'],\n minimum: 1,\n maximum: 3,\n description: `\nThe \\`usage_class\\` field specifies the usage of the building. This field can have one of the following values:\n\n- **1**: Residential building\n- **2**: Non-residential building\n- **3**: Mixed-use building\n\nIf the usage is unknown, the field is set to \\`null\\`.\n\n<br /><br />**Warning:**<br /><br />\n\nThis field is deprecated and will be removed in future API versions. It is no longer actively supported and may be omitted from upcoming endpoints. We recommend updating your implementation to use the latest supported fields.`,\n example: 1,\n deprecated: true\n },\n characteristics: {\n type: ['string', 'null'],\n enum: ['single_two_family', 'row_semi_detached', 'multi_family', 'residential_block', 'high_rise', 'terrace', 'farmhouse', 'office_other', 'factory_warehouse'],\n description: `\nThe \\`characteristics\\` field defines the different types of building characteristics. This classification includes \nvarious types of residential and non-residential buildings. This field can have one of the following values:\n\n- **single_two_family**: Single- or two-family house\n- **row_semi_detached**: Row or semi-detached house\n- **multi_family**: Multi-family house\n- **residential_block**: Residential block\n- **high_rise**: High-rise residential building\n- **terrace**: Terrace house\n- **farmhouse**: Farmhouse\n- **office_other**: Office or other building\n- **factory_warehouse**: Factory or warehouse building\n\nIf the characteristics is unknown, the field is set to \\`null\\`.`,\n example: 'residential_block'\n },\n characteristics_class: {\n type: ['number', 'null'],\n minimum: 1,\n maximum: 9,\n description: `\nThe \\`characteristics_class\\` field defines the different types of building characteristics. This classification includes \nvarious types of residential and non-residential buildings. This field can have one of the following values:\n\n- **1**: Single- or two-family house\n- **2**: Row or semi-detached house\n- **3**: Multi-family house\n- **4**: Residential block\n- **5**: High-rise residential building\n- **6**: Terrace house\n- **7**: Farmhouse\n- **8**: Office or other building\n- **9**: Factory or warehouse building\n\nIf the characteristics_class is unknown, the field is set to \\`null\\`.`,\n example: 1\n },\n development_layout: {\n type: ['string', 'null'],\n enum: ['non_detached', 'semi_detached', 'detached'],\n description: `\nThe \\`development_layout\\` field specifies the layout of the building. This field can have one of the following values:\n\n- **non_detached**: Non-detached building\n- **semi_detached**: Semi-detached building\n- **detached**: Detached building\n\nIf the development layout is unknown, the field is set to \\`null\\`.\n\nThe \\`development_layout\\` was modeled based on the number and length of intersections with heated (and buildings with unknown heating status)\n neighbouring buildings and the perimeter of a geometry as follows:\n\n**detached** = intersection_length / outline_length < 0.085\n**semi_detached** = intersection_length / outline_length >= 0.085 AND intersection_length / outline_length < 0.45 for buildings with exactly 1 intersection\n**semi_detached** = intersection_length / outline_length >= 0.085 AND intersection_length / outline_length < 0.15 for buildings with more than 1 intersections\n**non_detached** = for all other buildings`,\n example: 'non_detached'\n },\n development_layout_class: {\n type: ['number', 'null'],\n minimum: 1,\n maximum: 3,\n description: `\nThe \\`development_layout_class\\` field specifies the layout of the building. This field can have one of the following values:\n\n- **1**: Non-detached building\n- **2**: Semi-detached building\n- **3**: Detached building\n\nIf the development layout is unknown, the field is set to \\`null\\`.\n\nThe \\`development_layout_class\\` was modeled based on the number and length of intersections with heated (and buildings with unknown heating status)\n neighbouring buildings and the perimeter of a geometry as follows:\n\n**1** = intersection_length / outline_length < 0.085\n**2** = intersection_length / outline_length >= 0.085 AND intersection_length / outline_length < 0.45 for buildings with exactly 1 intersection\n**2** = intersection_length / outline_length >= 0.085 AND intersection_length / outline_length < 0.15 for buildings with more than 1 intersections\n**3** = for all other buildings`,\n example: 1\n },\n construction_year_range: {\n type: ['array', 'null'],\n prefixItems: [\n {\n type: ['number', 'null']\n },\n {\n type: 'number'\n }\n ],\n description: `\nThe \\`construction_year_range\\` field specifies the approximate construction year of the building. The field is a tuple with two\nvalues: the lower and upper bound of the construction year and can have one of the following value:\n\n- **[*null*, 1899]**: Construction year is somewhere up to 1899\n- **[1900, 1945]**\n- **[1946, 1960]**\n- **[1961, 1970]**\n- **[1971, 1980]**\n- **[1981, 1985]**\n- **[1986, 1995]**\n- **[1996, 2000]**\n- **[2001, 2005]**\n- **[2006, 2010]**\n- **[2011, 2015]**\n- **[2016, 2024]**\n\nIf the construction year class is unknown, the field is set to \\`null\\`.`,\n example: [1990, 1995]\n },\n construction_year_range_class: {\n type: ['number', 'null'],\n minimum: 1,\n maximum: 12,\n description: `\nThe \\`construction_year_range_class\\` field specifies the approximate construction year of the building and can have one of the following values: \n\n- **1**: < 1899\n- **2**: 1900 - 1945\n- **3**: 1946 - 1960\n- **4**: 1961 - 1970\n- **5**: 1971 - 1980\n- **6**: 1981 - 1985\n- **7**: 1986 - 1995\n- **8**: 1996 - 2000\n- **9**: 2001 - 2005\n- **10**: 2006 - 2010\n- **11**: 2011 - 2015\n- **12**: 2016 - 2024\n\nIf the construction year range class is unknown, the field is set to \\`null\\`.`,\n example: 1\n },\n construction_year: {\n type: ['number', 'null'],\n minimum: 0,\n description: `\nThe \\`construction_year\\` field specifies the construction year of the building.\n\nIf the construction year is unknown, the field is set to \\`null\\`.`,\n example: 1993\n },\n heritage: {\n type: ['boolean', 'null'],\n description: `\nThe \\`heritage\\` field specifies whether the building is under monumental protection.\n\nThe field is set to \\`null\\` if the heritage status is unknown.`,\n example: true\n },\n geo_conductivity_100: {\n type: ['number', 'null'],\n minimum: 0,\n description: `\nThe \\`geo_conductivity_100\\` field specifies the geothermal conductivity in 100 m depth.\n\nThe field is set to \\`null\\` if the geothermal conductivity is unknown.`,\n example: 2\n },\n heat_pump_air_possible: {\n type: ['boolean', 'null'],\n description: `\nThe \\`heat_pump_air_possible\\` field indicates whether an air-source heat pump is a viable option for the building.\n\n- Set to \\`true\\` if an air-source heat pump is feasible.\n- Set to \\`false\\` if an air-source heat pump is not feasible.\n- Set to \\`null\\` if the information is unknown.`,\n example: true\n },\n heat_pump_maximal_distance_drillings: {\n type: ['number', 'null'],\n minimum: 0,\n description: `\nThe \\`heat_pump_maximal_distance_drillings\\` field specifies the maximum allowable distance between drillings for a heat pump installation, measured in meters.\nThis field will be deprecated in future versions. Please use \\`heat_pump_maximal_distance_drillings_5m\\` instead.\n\nThe field is set to \\`null\\` if the information is unknown.`,\n example: 100\n },\n heat_pump_maximal_distance_drillings_5m: {\n type: ['number', 'null'],\n minimum: 0,\n description: `\nThe \\`heat_pump_maximal_distance_drillings_5m\\` field specifies the maximum allowable distance between drillings for a heat pump installation, measured in meters.\n\nThe field is set to \\`null\\` if the information is unknown.`,\n example: 100.35\n },\n heat_pump_minimal_number_possible_drillings: {\n type: ['number', 'null'],\n minimum: 0,\n description: `\nThe \\`heat_pump_minimal_number_possible_drillings\\` field specifies the minimum \nnumber of drillings required for a heat pump installation with a distance of 5m \nto the parcel border.\nThis field will be deprecated in future versions. Please use \\`heat_pump_minimal_number_possible_drillings_5m\\` instead.\n\nThe field is set to \\`null\\` if the information is unknown.\n\n<br /><br />**Deprecation Warning:**<br /><br />\n\nPlease use \\`heat_pump_minimal_number_possible_drillings_5m\\` instead of this field.`,\n example: 1,\n deprecated: true\n },\n heat_pump_minimal_number_possible_drillings_5m: {\n type: ['number', 'null'],\n minimum: 0,\n description: `\nThe \\`heat_pump_minimal_number_possible_drillings_5m\\` field specifies the minimum \nnumber of drillings required for a heat pump installation with a distance of 5m \nto the parcel border.\n\nThe field is set to \\`null\\` if the information is unknown.`,\n example: 1\n },\n heat_pump_minimal_number_possible_drillings_2m: {\n type: ['number', 'null'],\n minimum: 0,\n description: `\nThe \\`heat_pump_minimal_number_possible_drillings_2m\\` field specifies the minimum \nnumber of drillings required for a heat pump installation with a distance of 2m \nto the parcel border.\n\nThe field is set to \\`null\\` if the information is unknown.`,\n example: 1\n },\n heat_pump_minimal_number_possible_drillings_no_distance: {\n type: ['number', 'null'],\n minimum: 0,\n description: `\nThe \\`heat_pump_minimal_number_possible_drillings_no_distance\\` field specifies the minimum \nnumber of drillings required for a heat pump installation with no distance to the parcel border.\n\nThe field is set to \\`null\\` if the information is unknown.`,\n example: 1\n },\n heat_pump_collector_free_area: {\n type: ['number', 'null'],\n minimum: 0,\n description: `\nThe \\`heat_pump_collector_free_area\\` field specifies the sum of the free area suitable \nfor a collector heat pump on parcels associated to a building.\n\nThe field is set to \\`null\\` if the information is unknown.`,\n example: 100\n },\n flood_potential: {\n type: ['array', 'null'],\n items: {\n type: 'object',\n properties: {\n min_recurrence: {\n type: ['number', 'null'],\n minimum: 0\n },\n max_recurrence: {\n type: ['number', 'null'],\n minimum: 0\n },\n protection_against_floods: {\n type: ['boolean', 'null']\n }\n }\n },\n minItems: 1,\n description: `\nThe \\`flood_potential\\` field is an array representing different flood risk scenarios for a given \nlocation. The objects in the array can contain the following fields:\n\n- \\`min_reccurence\\`: The minimum expected recurrence interval for flooding, measured in years. \n This field is optional and can be \\`null\\` if the data is unavailable. A lower value indicates more \n frequent flooding.\n \n- \\`max_reccurence\\`: The maximum expected recurrence interval for flooding, also in years. This \n field is optional and can be \\`null\\`. If provided, this value represents the upper bound of the \n flood risk interval. This field allows the specification of a range of recurrence intervals.\n \n- \\`protection_against_floods\\`: A boolean flag indicating whether flood protection measures are in \n place for the area. This field is optional and can be \\`null\\` if the information is not available. \n A value of \\`true\\` means flood defenses are present, while \\`false\\` indicates the absence of such \n measures.\n\nIf this array is set to \\`null\\`, it means that no data regarding flood potential is available for the location.`,\n example: [\n {\n min_recurrence: 100,\n max_recurrence: null,\n protection_against_floods: true\n },\n {\n min_recurrence: 101,\n max_recurrence: 1000,\n protection_against_floods: false\n }\n ]\n },\n photovoltaic_potential: {\n type: 'object',\n properties: {\n suitable_roof_area: {\n type: ['number', 'null'],\n minimum: 0,\n description: `\nThe \\`suitable_roof_area\\` field specifies the roof area suited for photovoltaics [m^2].\n\nThe field is set to \\`null\\` if the roof area suited for photovoltaics is unknown.`,\n example: 77\n },\n gross_collector_area: {\n type: ['number', 'null'],\n minimum: 0,\n description: `\nThe \\`gross_collector_area\\` field specifies the maximal collector area for photovoltaics including module frames [m^2].\n\nThe field is set to \\`null\\` if the maximal collector area for photovoltaics is unknown.`,\n example: 48\n },\n net_collector_area: {\n type: ['number', 'null'],\n minimum: 0,\n description: `\nThe \\`net_collector_area\\` field specifies the maximal collector area for photovoltaics excluding module frames [m^2].\n\nThe field is set to \\`null\\` if the maximal collector area for photovoltaics excluding module frames is unknown.`,\n example: 48\n },\n electricity_generation: {\n type: ['number', 'null'],\n minimum: 0,\n description: `\nThe \\`electricity_generation\\` field specifies the maximal electricity generation from photovoltaics of the building per year [kWh/a].\n\nThe field is set to \\`null\\` if the maximal electricity generation per year is unknown.`,\n example: 6401\n },\n nominal_power: {\n type: ['number', 'null'],\n minimum: 0,\n description: `\nThe \\`nominal_power\\` field specifies the nominal power a photovoltaics system could have at this building per year [kWp].\n\nThe field is set to \\`null\\` if the the nominal power is unknown.`,\n example: 7.5\n }\n },\n required: ['suitable_roof_area', 'gross_collector_area', 'net_collector_area', 'electricity_generation', 'nominal_power']\n },\n solarthermal_potential: {\n type: 'object',\n properties: {\n suitable_roof_area: {\n type: ['number', 'null'],\n minimum: 0,\n description: `\nThe \\`st_suitable_roof_area\\` field specifies the roof area suited for solarthermie [m^2].\n\nThe field is set to \\`null\\` if the roof area suited for solarthermie is unknown.`,\n example: 90\n },\n heat_generation: {\n type: ['number', 'null'],\n minimum: 0,\n description: `\nThe \\`st_heat_generation\\` field specifies the potential solarthermic heat generation on this bulding [kWh/a].\n\nThe field is set to \\`null\\` if the heat generation by solarthermie is unknown.`,\n example: 25201\n },\n net_collector_area: {\n type: ['number', 'null'],\n minimum: 0,\n description: `\nThe \\`st_net_collector_area\\` field specifies the maximal collector area for solarthermie [m^2].\n\nThe field is set to \\`null\\` if the maximal collector area for solarthermie is unknown.`,\n example: 25201\n }\n },\n required: ['suitable_roof_area', 'heat_generation', 'net_collector_area']\n },\n matching_addresses: {\n type: ['number', 'null'],\n minimum: 0,\n description: `\nThe \\`matching_addresses\\` field indicates the number of addresses associated with the geometry.\n\nThe field is set to \\`null\\` if no matching addresses are found.`,\n example: 1\n },\n eave_above_ground_weighted: {\n type: ['number', 'null'],\n minimum: 0,\n description: `\nThe \\`eave_above_ground_weighted\\` field specifies the weighted average height of the eave above ground [meters]. For weighting \nthe \\`footprint_area\\` of sub-geometries was used, if a building consists of multiple. This can be traced on the basis of the \nfield \\`number_original_geometries\\`. \n\n\nThe field is set to \\`null\\` if the height is unknown.`,\n example: 11.398919537428867\n },\n eave_above_ground_min: {\n type: ['number', 'null'],\n minimum: 0,\n description: `\nThe \\`eave_above_ground_min\\` field specifies the minimum height of the eave above ground [meters]. This is the minimal \n\\`eave_above_ground\\` within a group of sub-geometries, if a building consists of multiple. This can be traced on the basis \nof the field \\`number_original_geometries\\`.\n\nThe field is set to \\`null\\` if the height is unknown.`,\n example: 5.7899932861328125\n },\n eave_above_ground_max: {\n type: ['number', 'null'],\n minimum: 0,\n description: `\nThe \\`eave_above_ground_max\\` field specifies the maximum height of the eave above ground [meters]. This is the maximal \n\\`eave_above_ground\\` within a group of sub-geometries, if a building consists of multiple. This can be traced on the basis of \nthe field \\`number_original_geometries\\`.\n\n\nThe field is set to \\`null\\` if the height is unknown.`,\n example: 13.722991943359375\n },\n ridge_above_ground_weighted: {\n type: ['number', 'null'],\n minimum: 0,\n description: `\nThe \\`ridge_above_ground_weighted\\` field specifies the weighted average height of the ridge above ground [meters]. For \nweighting the \\`footprint_area\\` of sub-geometries was used, if a building consists of multiple. This can be traced on the basis \nof the field \\`number_original_geometries\\`. \n\nThe field is set to \\`null\\` if the height is unknown.`,\n example: 13.619256575276214\n },\n ridge_above_ground_min: {\n type: ['number', 'null'],\n minimum: 0,\n description: `\nThe \\`ridge_above_ground_min\\` field specifies the minimum height of the ridge above ground [meters]. This is the minimal \n\\`ridge_above_ground within\\` a group of sub-geometries, if a building consists of multiple. This can be traced on the basis of the \nfield \\`number_original_geometries\\`. \n\nThe field is set to \\`null\\` if the height is unknown.`,\n example: 6.64300537109375\n },\n ridge_above_ground_max: {\n type: ['number', 'null'],\n minimum: 0,\n description: `\nThe \\`ridge_above_ground_max\\` field specifies the maximum height of the ridge above ground [meters]. This is the maximal \n\\`ridge_above_ground\\` within a group of sub-geometries, if a building consists of multiple. This can be traced on the basis of the \nfield \\`number_original_geometries\\`. \n\nThe field is set to \\`null\\` if the height is unknown.`,\n example: 16.987991333007812\n },\n number_original_geometries: {\n type: ['number', 'null'],\n minimum: 0,\n description: `\nThe \\`number_original_geometries\\` field specifies the number of original geometries used for weighted calculations.\n\nThe field is set to \\`null\\` if the count is unknown.`,\n example: 3\n },\n roof_area: {\n type: ['number', 'null'],\n minimum: 0,\n description: `\nThe \\`roof_area\\` field specifies the total roof area of the building [square meters].\n\nThe field is set to \\`null\\` if the roof area is unknown.`,\n example: 355.37342071533203\n },\n ogc_fid: {\n type: ['string', 'null'],\n description: `\nThe \\`ogc_fid\\` field specifies a unique identifier from the LOD2 dataset.\n\nThe field is set to \\`null\\` if the identifier is unavailable.`,\n example: 'DENW29AL1000FzW2'\n },\n outer_wall_area_free: {\n type: ['number', 'null'],\n minimum: 0,\n description: `\nThe \\`outer_wall_area_free\\` field specifies the facade area free of adjacent structures [square meters]. \n\nThe field is set to \\`null\\` if the area is unknown.`,\n example: 690.5686635568186\n },\n outer_wall_area_shared_heated: {\n type: ['number', 'null'],\n minimum: 0,\n description: `\nThe \\`outer_wall_area_shared_heated\\` field specifies the facade area shared with heated adjacent structures [square meters]. \n\nThe field is set to \\`null\\` if the area is unknown.`,\n example: 202.10705297163204\n },\n outer_wall_area_shared_non_heated: {\n type: ['number', 'null'],\n minimum: 0,\n description: `\nThe \\`outer_wall_area_shared_non_heated\\` field specifies the facade area shared with non-heated adjacent structures [square meters].\n\nThe field is set to \\`null\\` if the area is unknown.`,\n example: 298.6121580931941\n },\n plinth_length_free: {\n type: ['number', 'null'],\n minimum: 0,\n description: `\nThe \\`plinth_length_free\\` field specifies the length of the building's plinth that is not shared with adjacent structures [meters].\n\nThe field is set to \\`null\\` if the length is unknown.`,\n example: 48.672734987814366\n },\n plinth_length_shared_heated: {\n type: ['number', 'null'],\n minimum: 0,\n description: `\nThe \\`plinth_length_shared_heated\\` field specifies the length of the building's plinth shared with heated adjacent structures [meters].\n\nThe field is set to \\`null\\` if the length is unknown.`,\n example: 13.16187444425839\n },\n plinth_length_shared_non_heated: {\n type: ['number', 'null'],\n minimum: 0,\n description: `\nThe \\`plinth_length_shared_non_heated\\` field specifies the length of the building's plinth shared with non-heated adjacent structures [meters].\n\nThe field is set to \\`null\\` if the length is unknown.`,\n example: 31.994775355440325\n },\n building_function: {\n type: ['string', 'null'],\n description: `\nThe \\`building_function\\` field contains the original German building function name (GFK - Gebäudefunktionsklasse) from the source data.\n\nThis is the raw German value. For the standardized English classification, use the \\`building_function_class\\` field.\n\nThe field is set to \\`null\\` if the building function is unknown.`,\n example: 'Wohngebäude'\n },\n building_function_class: {\n type: ['string', 'null'],\n enum: ['residential_building', 'residential_house', 'dormitory', 'childrens_home', 'nursing_home', 'nurses_dormitory', 'student_dormitory', 'school_country_home', 'mixed_use_building_with_residential', 'residential_building_with_public_amenities', 'residential_building_with_commerce_services', 'residential_and_administrative_building', 'residential_and_office_building', 'residential_and_commercial_building', 'residential_commercial_industrial_building', 'agricultural_forestry_residential_building', 'agricultural_forestry_residential_commercial_building', 'farmhouse', 'residential_and_agricultural_building', 'forest_house', 'leisure_facility_building', 'holiday_home', 'weekend_house', 'garden_house', 'commercial_building', 'commercial_and_service_building', 'office_building', 'credit_institution', 'insurance_office', 'department_store', 'shopping_center', 'market_hall', 'shop', 'kiosk', 'pharmacy', 'exhibition_hall', 'accommodation_building', 'hotel_motel_guesthouse', 'youth_hostel', 'hut_with_overnight_stay', 'campground_building', 'catering_building', 'restaurant', 'hut_no_overnight_stay', 'canteen', 'leisure_and_entertainment_venue', 'banquet_hall', 'cinema', 'bowling_alley', 'casino', 'arcade', 'commercial_and_industrial_building', 'production_building', 'factory', 'operations_building', 'brewery', 'distillery', 'workshop', 'sawmill', 'gas_station', 'car_wash', 'storage_building', 'cold_storage', 'warehouse', 'freight_forwarding_building', 'research_building', 'raw_material_extraction_building', 'mine', 'saltworks', 'company_social_facility_building', 'other_commercial_industrial_building', 'mill', 'windmill', 'watermill', 'pumping_station', 'weather_station', 'commercial_service_residential_building', 'commercial_industrial_residential_building', 'traffic_facility_operations_building_general', 'road_traffic_operations_building', 'road_maintenance_depot', 'waiting_hall', 'rail_traffic_operations_building', 'railroad_crossing_keeper_house', 'locomotive_shed_carriage_hall', 'signal_box_block_post', 'freight_yard_operations_building', 'air_traffic_operations_building', 'aircraft_hangar', 'maritime_traffic_operations_building', 'shipyard_hall', 'dock_hall', 'lock_operations_building', 'boathouse', 'cable_car_operations_building', 'cable_car_tensioning_station', 'parking_building', 'parking_garage', 'garage', 'vehicle_hall', 'supply_building', 'energy_supply_building', 'water_supply_building', 'waterworks', 'water_reservoir', 'electricity_supply_building', 'power_plant', 'substation', 'transformer', 'reactor_building', 'turbine_house', 'boiler_house', 'telecommunications_building', 'building_at_underground_lines', 'gas_supply_building', 'gas_works', 'heating_plant', 'utility_building', 'pumping_station_non_water_supply', 'disposal_building', 'wastewater_treatment_building', 'sewage_treatment_plant_building', 'public_toilet', 'waste_treatment_building', 'waste_bunker', 'waste_incineration_plant', 'landfill_building', 'agricultural_forestry_building', 'agricultural_forestry_commercial_building', 'barn', 'shed', 'stable', 'barn_and_stable', 'large_scale_animal_housing', 'riding_hall', 'alpine_hut', 'hunting_lodge_cabin', 'greenhouse', 'moveable_greenhouse', 'public_building', 'administrative_building', 'parliament_building', 'town_hall', 'post_office', 'customs_office', 'court_building', 'embassy_consulate', 'district_administration', 'regional_government', 'tax_office', 'education_research_building', 'general_education_school', 'vocational_school', 'higher_education_building_university', 'research_institute', 'cultural_building', 'palace', 'theater_opera', 'concert_hall', 'museum', 'broadcasting_television', 'event_building', 'library', 'castle_fortress', 'religious_building', 'church', 'synagogue', 'chapel', 'community_hall', 'house_of_worship', 'mosque', 'temple', 'monastery', 'healthcare_building', 'hospital', 'sanatorium_nursing_home_nursing_station', 'doctors_office_polyclinic', 'rescue_station', 'social_services_building', 'youth_center', 'leisure_club_community_center', 'senior_center', 'homeless_shelter', 'daycare_kindergarten', 'refugee_shelter', 'security_and_order_building', 'police_station', 'fire_station', 'barracks', 'air_raid_shelter', 'correctional_facility', 'cemetery_building', 'funeral_hall', 'crematorium', 'reception_building', 'railway_station_building', 'airport_building', 'subway_station_building', 'suburban_railway_station_building', 'bus_station_building', 'maritime_terminal_building', 'public_purpose_residential_building', 'recreational_building', 'sports_building', 'sports_gymnasium', 'sports_field_building', 'bathhouse', 'indoor_swimming_pool', 'outdoor_pool_building', 'stadium_building', 'spa_facility_building', 'medical_bath_building', 'sanatorium', 'zoo_building', 'zoo_entrance_building', 'aquarium_terrarium_aviary', 'animal_exhibition_building', 'zoo_stable', 'botanical_garden_building', 'botanical_garden_entrance_building', 'botanical_greenhouse', 'conservatory', 'other_recreational_facility_building', 'mountain_hut_shelter', 'tourist_information_center', 'not_specified_due_to_source_situation', 'water_tower', 'church_tower', 'observation_tower', 'control_tower', 'cooling_tower', 'lighthouse', 'fire_watchtower', 'transmission_radio_tower', 'city_gate_tower', 'winding_tower', 'drilling_tower', 'castle_tower', 'other', 'biogas_plant', 'wind_turbine', 'solar_panels', 'mast', 'power_line_mast', 'radio_mast', 'radio_telescope', 'chimney', 'crane', 'slewing_crane', 'gantry_crane', 'traveling_crane', 'blast_furnace', 'silo', 'tank', 'gasometer', 'grandstand', 'covered_grandstand', 'uncovered_grandstand', 'stadium', 'covered_stadium', 'uncovered_stadium', 'ski_jump_inrun', 'graduation_tower', 'historic_water_pipeline', 'watchtower', 'fortification_castle_ruin', 'historic_wall', 'city_wall', 'other_historic_wall', 'canopy', 'carport', 'wall', 'monument', 'ship_lift', 'chamber_lock', 'bridge', 'swing_bridge', 'lifting_bridge', 'drawbridge', 'elevated_railway_elevated_road', 'lock_chamber', 'dam', 'weir', 'security_gate', 'sewer_drain', 'barrage'],\n description: `\nThe \\`building_function_class\\` field specifies the standardized English classification of the building function according to the German GFK (Gebäudefunktionsklasse) standard.\n\nThis field categorizes buildings by their primary use or purpose, such as residential, commercial, industrial, public, or mixed-use functions.\n\nThe field is set to \\`null\\` if the building function class is unknown.`,\n example: 'residential_building'\n }\n },\n required: ['street', 'city', 'street_number', 'postcode', 'roof_type', 'type', 'type_class', 'water_protected', 'heated', 'heat_demand', 'height_category', 'height_category_class', 'levels', 'household_count', 'net_area', 'footprint_area', 'usage', 'usage_class', 'characteristics', 'characteristics_class', 'development_layout', 'development_layout_class', 'construction_year_range', 'construction_year_range_class', 'construction_year', 'heritage', 'geo_conductivity_100', 'heat_pump_air_possible', 'heat_pump_maximal_distance_drillings', 'heat_pump_maximal_distance_drillings_5m', 'heat_pump_minimal_number_possible_drillings', 'heat_pump_minimal_number_possible_drillings_5m', 'heat_pump_minimal_number_possible_drillings_2m', 'heat_pump_minimal_number_possible_drillings_no_distance', 'heat_pump_collector_free_area', 'flood_potential', 'photovoltaic_potential', 'solarthermal_potential', 'matching_addresses', 'eave_above_ground_weighted', 'eave_above_ground_min', 'eave_above_ground_max', 'ridge_above_ground_weighted', 'ridge_above_ground_min', 'ridge_above_ground_max', 'number_original_geometries', 'roof_area', 'ogc_fid', 'outer_wall_area_free', 'outer_wall_area_shared_heated', 'outer_wall_area_shared_non_heated', 'plinth_length_free', 'plinth_length_shared_heated', 'plinth_length_shared_non_heated', 'building_function', 'building_function_class']\n} as const;\n\nexport const $LookupPropertiesV3 = {\n type: 'object',\n properties: {\n street: {\n type: ['string', 'null'],\n description: `\nThe \\`street\\` field specifies the street name of a building.\n\nThe field is set to \\`null\\` if the street is unknown.`,\n example: 'Friedrich Ebert Straße'\n },\n city: {\n type: ['string', 'null'],\n description: `\nThe \\`city\\` field specifies the city name of a building.\n\nThe field is set to \\`null\\` if the city is unknown.`,\n example: 'Wuppertal'\n },\n street_number: {\n type: ['string', 'null'],\n description: `\nThe \\`street_number\\` field specifies the street number name of a building.\n\nThe field is set to \\`null\\` if the street number is unknown.`,\n example: '107'\n },\n postcode: {\n type: ['string', 'null'],\n description: `\nThe \\`postcode\\` field specifies the postcode of a building.\n\nThe field is set to \\`null\\` if the postcode is unknown.`,\n example: '107'\n },\n roof_type: {\n type: ['string', 'null'],\n enum: ['flat', 'pitched', 'mixed'],\n description: `\nThe \\`roof_type\\` field specifies the type of roof of a building. This field can have one of the following values:\n\n- **flat**: Flat roof\n- **pitched**: Pitched roof\n- **mixed**: Mixed types of roofs\n\nThe field is set to \\`null\\` if the building type is unknown.`,\n example: 'flat'\n },\n type: {\n type: ['string', 'null'],\n enum: ['single_family', 'multi_family', 'non_residential', 'mixed_use'],\n description: `\nThe \\`type\\` field specifies the type of building. This field can have one of the following values:\n\n- **single_family**: Single-family house\n- **multi_family**: Multi-family house\n- **non_residential**: Non-residential building\n- **mixed_use**: Mixed-use building\n\nThe field is set to \\`null\\` if the building type is unknown.`,\n example: 'single_family'\n },\n type_class: {\n type: ['number', 'null'],\n minimum: 1,\n maximum: 4,\n description: `\nThe \\`type_class\\` field specifies the class of the building type. This field can have one of the following values:\n\n- **1**: Single-family house\n- **2**: Multi-family house\n- **3**: Non-residential building\n- **4**: Mixed-use building\n\nThe field is set to \\`null\\` if the building type is unknown.`,\n example: 1\n },\n water_protected: {\n type: ['boolean', 'null'],\n description: `\nThe \\`water_protected\\` field specifies whether the building is within a water protection area.\n\nIf the field is set to \\`null\\`, no water protection area could be assigned.`,\n example: true\n },\n heated: {\n type: ['boolean', 'null'],\n description: `\nThe \\`heated\\` field specifies whether the building is heated or not.\n\nThe field is set to \\`null\\` if the heating status is unknown.`,\n example: true\n },\n heat_demand: {\n type: ['number', 'null'],\n minimum: 0,\n description: `\nThe \\`heat_demand\\` field specifies the heat demand of the building in [kWh/m²a].\n\nThe field is set to \\`null\\` if the heat demand is unknown.`,\n example: 127.42\n },\n levels: {\n type: ['number', 'null'],\n minimum: 1,\n description: `\nThe \\`levels\\` field specifies the number of levels in the building.\n\nThe field is set to \\`null\\` if the number of levels is unknown.`,\n example: 4\n },\n household_count: {\n type: ['number', 'null'],\n minimum: 0,\n description: `\nThe \\`household_count\\` field specifies the number of households in the building.\n\nThe field is set to \\`null\\` if the number of households is unknown.`,\n example: 3\n },\n net_area: {\n type: ['number', 'null'],\n minimum: 0,\n description: `\nThe \\`net_area\\` field specifies the net area of the building in m².\n\nThe field is set to \\`null\\` if the net area is unknown.\n\nThe \\`net_area\\` was modeled according to the Raumwärmebedarfsmodell NRW as: \n\\`footprint_area\\` * \\`levels\\` * factors between 0.7 (inhabited) and 0.8 (non-inhabited)\nthe latter was done to concider e.g., inner wall area or staircases.`,\n example: 127.42\n },\n footprint_area: {\n type: ['number', 'null'],\n minimum: 0,\n description: `\nThe \\`footprint_area\\` field specifies the footprint area of the building in m².\n\nThe field is set to \\`null\\` if the footprint area is unknown.`,\n example: 127.42\n },\n characteristics: {\n type: ['string', 'null'],\n enum: ['single_two_family', 'row_semi_detached', 'multi_family', 'residential_block', 'high_rise', 'terrace', 'farmhouse', 'office_other', 'factory_warehouse'],\n description: `\nThe \\`characteristics\\` field defines the different types of building characteristics. This classification includes \nvarious types of residential and non-residential buildings. This field can have one of the following values:\n\n- **single_two_family**: Single- or two-family house\n- **row_semi_detached**: Row or semi-detached house\n- **multi_family**: Multi-family house\n- **residential_block**: Residential block\n- **high_rise**: High-rise residential building\n- **terrace**: Terrace house\n- **farmhouse**: Farmhouse\n- **office_other**: Office or other building\n- **factory_warehouse**: Factory or warehouse building\n\nIf the characteristics is unknown, the field is set to \\`null\\`.`,\n example: 'residential_block'\n },\n characteristics_class: {\n type: ['number', 'null'],\n minimum: 1,\n maximum: 9,\n description: `\nThe \\`characteristics_class\\` field defines the different types of building characteristics. This classification includes \nvarious types of residential and non-residential buildings. This field can have one of the following values:\n\n- **1**: Single- or two-family house\n- **2**: Row or semi-detached house\n- **3**: Multi-family house\n- **4**: Residential block\n- **5**: High-rise residential building\n- **6**: Terrace house\n- **7**: Farmhouse\n- **8**: Office or other building\n- **9**: Factory or warehouse building\n\nIf the characteristics_class is unknown, the field is set to \\`null\\`.`,\n example: 1\n },\n development_layout: {\n type: ['string', 'null'],\n enum: ['non_detached', 'semi_detached', 'detached'],\n description: `\nThe \\`development_layout\\` field specifies the layout of the building. This field can have one of the following values:\n\n- **non_detached**: Non-detached building\n- **semi_detached**: Semi-detached building\n- **detached**: Detached building\n\nIf the development layout is unknown, the field is set to \\`null\\`.\n\nThe \\`development_layout\\` was modeled based on the number and length of intersections with heated (and buildings with unknown heating status)\n neighbouring buildings and the perimeter of a geometry as follows:\n\n**detached** = intersection_length / outline_length < 0.085\n**semi_detached** = intersection_length / outline_length >= 0.085 AND intersection_length / outline_length < 0.45 for buildings with exactly 1 intersection\n**semi_detached** = intersection_length / outline_length >= 0.085 AND intersection_length / outline_length < 0.15 for buildings with more than 1 intersections\n**non_detached** = for all other buildings`,\n example: 'non_detached'\n },\n development_layout_class: {\n type: ['number', 'null'],\n minimum: 1,\n maximum: 3,\n description: `\nThe \\`development_layout_class\\` field specifies the layout of the building. This field can have one of the following values:\n\n- **1**: Non-detached building\n- **2**: Semi-detached building\n- **3**: Detached building\n\nIf the development layout is unknown, the field is set to \\`null\\`.\n\nThe \\`development_layout_class\\` was modeled based on the number and length of intersections with heated (and buildings with unknown heating status)\n neighbouring buildings and the perimeter of a geometry as follows:\n\n**1** = intersection_length / outline_length < 0.085\n**2** = intersection_length / outline_length >= 0.085 AND intersection_length / outline_length < 0.45 for buildings with exactly 1 intersection\n**2** = intersection_length / outline_length >= 0.085 AND intersection_length / outline_length < 0.15 for buildings with more than 1 intersections\n**3** = for all other buildings`,\n example: 1\n },\n construction_year_range: {\n type: ['array', 'null'],\n prefixItems: [\n {\n type: ['number', 'null']\n },\n {\n type: 'number'\n }\n ],\n description: `\nThe \\`construction_year_range\\` field specifies the approximate construction year of the building. The field is a tuple with two\nvalues: the lower and upper bound of the construction year and can have one of the following value:\n\n- **[*null*, 1899]**: Construction year is somewhere up to 1899\n- **[1900, 1945]**\n- **[1946, 1960]**\n- **[1961, 1970]**\n- **[1971, 1980]**\n- **[1981, 1985]**\n- **[1986, 1995]**\n- **[1996, 2000]**\n- **[2001, 2005]**\n- **[2006, 2010]**\n- **[2011, 2015]**\n- **[2016, 2024]**\n\nIf the construction year class is unknown, the field is set to \\`null\\`.`,\n example: [1990, 1995]\n },\n construction_year_range_class: {\n type: ['number', 'null'],\n minimum: 1,\n maximum: 12,\n description: `\nThe \\`construction_year_range_class\\` field specifies the approximate construction year of the building and can have one of the following values: \n\n- **1**: < 1899\n- **2**: 1900 - 1945\n- **3**: 1946 - 1960\n- **4**: 1961 - 1970\n- **5**: 1971 - 1980\n- **6**: 1981 - 1985\n- **7**: 1986 - 1995\n- **8**: 1996 - 2000\n- **9**: 2001 - 2005\n- **10**: 2006 - 2010\n- **11**: 2011 - 2015\n- **12**: 2016 - 2024\n\nIf the construction year range class is unknown, the field is set to \\`null\\`.`,\n example: 1\n },\n construction_year: {\n type: ['number', 'null'],\n minimum: 0,\n description: `\nThe \\`construction_year\\` field specifies the construction year of the building.\n\nIf the construction year is unknown, the field is set to \\`null\\`.`,\n example: 1993\n },\n heritage: {\n type: ['boolean', 'null'],\n description: `\nThe \\`heritage\\` field specifies whether the building is under monumental protection.\n\nThe field is set to \\`null\\` if the heritage status is unknown.`,\n example: true\n },\n geo_conductivity_100: {\n type: ['number', 'null'],\n minimum: 0,\n description: `\nThe \\`geo_conductivity_100\\` field specifies the geothermal conductivity in 100 m depth.\n\nThe field is set to \\`null\\` if the geothermal conductivity is unknown.`,\n example: 2\n },\n heat_pump_air_possible: {\n type: ['boolean', 'null'],\n description: `\nThe \\`heat_pump_air_possible\\` field indicates whether an air-source heat pump is a viable option for the building.\n\n- Set to \\`true\\` if an air-source heat pump is feasible.\n- Set to \\`false\\` if an air-source heat pump is not feasible.\n- Set to \\`null\\` if the information is unknown.`,\n example: true\n },\n heat_pump_maximal_distance_drillings: {\n type: ['number', 'null'],\n minimum: 0,\n description: `\nThe \\`heat_pump_maximal_distance_drillings\\` field specifies the maximum allowable distance between drillings for a heat pump installation, measured in meters.\nThis field will be deprecated in future versions. Please use \\`heat_pump_maximal_distance_drillings_5m\\` instead.\n\nThe field is set to \\`null\\` if the information is unknown.`,\n example: 100\n },\n heat_pump_maximal_distance_drillings_5m: {\n type: ['number', 'null'],\n minimum: 0,\n description: `\nThe \\`heat_pump_maximal_distance_drillings_5m\\` field specifies the maximum allowable distance between drillings for a heat pump installation, measured in meters.\n\nThe field is set to \\`null\\` if the information is unknown.`,\n example: 100.35\n },\n heat_pump_minimal_number_possible_drillings: {\n type: ['number', 'null'],\n minimum: 0,\n description: `\nThe \\`heat_pump_minimal_number_possible_drillings\\` field specifies the minimum \nnumber of drillings required for a heat pump installation with a distance of 5m \nto the parcel border.\nThis field will be deprecated in future versions. Please use \\`heat_pump_minimal_number_possible_drillings_5m\\` instead.\n\nThe field is set to \\`null\\` if the information is unknown.\n\n<br /><br />**Deprecation Warning:**<br /><br />\n\nPlease use \\`heat_pump_minimal_number_possible_drillings_5m\\` instead of this field.`,\n example: 1,\n deprecated: true\n },\n heat_pump_minimal_number_possible_drillings_5m: {\n type: ['number', 'null'],\n minimum: 0,\n description: `\nThe \\`heat_pump_minimal_number_possible_drillings_5m\\` field specifies the minimum \nnumber of drillings required for a heat pump installation with a distance of 5m \nto the parcel border.\n\nThe field is set to \\`null\\` if the information is unknown.`,\n example: 1\n },\n heat_pump_minimal_number_possible_drillings_2m: {\n type: ['number', 'null'],\n minimum: 0,\n description: `\nThe \\`heat_pump_minimal_number_possible_drillings_2m\\` field specifies the minimum \nnumber of drillings required for a heat pump installation with a distance of 2m \nto the parcel border.\n\nThe field is set to \\`null\\` if the information is unknown.`,\n example: 1\n },\n heat_pump_minimal_number_possible_drillings_no_distance: {\n type: ['number', 'null'],\n minimum: 0,\n description: `\nThe \\`heat_pump_minimal_number_possible_drillings_no_distance\\` field specifies the minimum \nnumber of drillings required for a heat pump installation with no distance to the parcel border.\n\nThe field is set to \\`null\\` if the information is unknown.`,\n example: 1\n },\n heat_pump_collector_free_area: {\n type: ['number', 'null'],\n minimum: 0,\n description: `\nThe \\`heat_pump_collector_free_area\\` field specifies the sum of the free area suitable \nfor a collector heat pump on parcels associated to a building.\n\nThe field is set to \\`null\\` if the information is unknown.`,\n example: 100\n },\n flood_potential: {\n type: ['array', 'null'],\n items: {\n type: 'object',\n properties: {\n min_recurrence: {\n type: ['number', 'null'],\n minimum: 0\n },\n max_recurrence: {\n type: ['number', 'null'],\n minimum: 0\n },\n protection_against_floods: {\n type: ['boolean', 'null']\n }\n }\n },\n minItems: 1,\n description: `\nThe \\`flood_potential\\` field is an array representing different flood risk scenarios for a given \nlocation. The objects in the array can contain the following fields:\n\n- \\`min_reccurence\\`: The minimum expected recurrence interval for flooding, measured in years. \n This field is optional and can be \\`null\\` if the data is unavailable. A lower value indicates more \n frequent flooding.\n \n- \\`max_reccurence\\`: The maximum expected recurrence interval for flooding, also in years. This \n field is optional and can be \\`null\\`. If provided, this value represents the upper bound of the \n flood risk interval. This field allows the specification of a range of recurrence intervals.\n \n- \\`protection_against_floods\\`: A boolean flag indicating whether flood protection measures are in \n place for the area. This field is optional and can be \\`null\\` if the information is not available. \n A value of \\`true\\` means flood defenses are present, while \\`false\\` indicates the absence of such \n measures.\n\nIf this array is set to \\`null\\`, it means that no data regarding flood potential is available for the location.`,\n example: [\n {\n min_recurrence: 100,\n max_recurrence: null,\n protection_against_floods: true\n },\n {\n min_recurrence: 101,\n max_recurrence: 1000,\n protection_against_floods: false\n }\n ]\n },\n photovoltaic_potential: {\n type: 'object',\n properties: {\n suitable_roof_area: {\n type: ['number', 'null'],\n minimum: 0,\n description: `\nThe \\`suitable_roof_area\\` field specifies the roof area suited for photovoltaics [m^2].\n\nThe field is set to \\`null\\` if the roof area suited for photovoltaics is unknown.`,\n example: 77\n },\n gross_collector_area: {\n type: ['number', 'null'],\n minimum: 0,\n description: `\nThe \\`gross_collector_area\\` field specifies the maximal collector area for photovoltaics including module frames [m^2].\n\nThe field is set to \\`null\\` if the maximal collector area for photovoltaics is unknown.`,\n example: 48\n },\n net_collector_area: {\n type: ['number', 'null'],\n minimum: 0,\n description: `\nThe \\`net_collector_area\\` field specifies the maximal collector area for photovoltaics excluding module frames [m^2].\n\nThe field is set to \\`null\\` if the maximal collector area for photovoltaics excluding module frames is unknown.`,\n example: 48\n },\n electricity_generation: {\n type: ['number', 'null'],\n minimum: 0,\n description: `\nThe \\`electricity_generation\\` field specifies the maximal electricity generation from photovoltaics of the building per year [kWh/a].\n\nThe field is set to \\`null\\` if the maximal electricity generation per year is unknown.`,\n example: 6401\n },\n nominal_power: {\n type: ['number', 'null'],\n minimum: 0,\n description: `\nThe \\`nominal_power\\` field specifies the nominal power a photovoltaics system could have at this building per year [kWp].\n\nThe field is set to \\`null\\` if the the nominal power is unknown.`,\n example: 7.5\n }\n },\n required: ['suitable_roof_area', 'gross_collector_area', 'net_collector_area', 'electricity_generation', 'nominal_power']\n },\n solarthermal_potential: {\n type: 'object',\n properties: {\n suitable_roof_area: {\n type: ['number', 'null'],\n minimum: 0,\n description: `\nThe \\`st_suitable_roof_area\\` field specifies the roof area suited for solarthermie [m^2].\n\nThe field is set to \\`null\\` if the roof area suited for solarthermie is unknown.`,\n example: 90\n },\n heat_generation: {\n type: ['number', 'null'],\n minimum: 0,\n description: `\nThe \\`st_heat_generation\\` field specifies the potential solarthermic heat generation on this bulding [kWh/a].\n\nThe field is set to \\`null\\` if the heat generation by solarthermie is unknown.`,\n example: 25201\n },\n net_collector_area: {\n type: ['number', 'null'],\n minimum: 0,\n description: `\nThe \\`st_net_collector_area\\` field specifies the maximal collector area for solarthermie [m^2].\n\nThe field is set to \\`null\\` if the maximal collector area for solarthermie is unknown.`,\n example: 25201\n }\n },\n required: ['suitable_roof_area', 'heat_generation', 'net_collector_area']\n },\n matching_addresses: {\n type: ['number', 'null'],\n minimum: 0,\n description: `\nThe \\`matching_addresses\\` field indicates the number of addresses associated with the geometry.\n\nThe field is set to \\`null\\` if no matching addresses are found.`,\n example: 1\n },\n eave_above_ground_weighted: {\n type: ['number', 'null'],\n minimum: 0,\n description: `\nThe \\`eave_above_ground_weighted\\` field specifies the weighted average height of the eave above ground [meters]. For weighting \nthe \\`footprint_area\\` of sub-geometries was used, if a building consists of multiple. This can be traced on the basis of the \nfield \\`number_original_geometries\\`. \n\n\nThe field is set to \\`null\\` if the height is unknown.`,\n example: 11.398919537428867\n },\n eave_above_ground_min: {\n type: ['number', 'null'],\n minimum: 0,\n description: `\nThe \\`eave_above_ground_min\\` field specifies the minimum height of the eave above ground [meters]. This is the minimal \n\\`eave_above_ground\\` within a group of sub-geometries, if a building consists of multiple. This can be traced on the basis \nof the field \\`number_original_geometries\\`.\n\nThe field is set to \\`null\\` if the height is unknown.`,\n example: 5.7899932861328125\n },\n eave_above_ground_max: {\n type: ['number', 'null'],\n minimum: 0,\n description: `\nThe \\`eave_above_ground_max\\` field specifies the maximum height of the eave above ground [meters]. This is the maximal \n\\`eave_above_ground\\` within a group of sub-geometries, if a building consists of multiple. This can be traced on the basis of \nthe field \\`number_original_geometries\\`.\n\n\nThe field is set to \\`null\\` if the height is unknown.`,\n example: 13.722991943359375\n },\n ridge_above_ground_weighted: {\n type: ['number', 'null'],\n minimum: 0,\n description: `\nThe \\`ridge_above_ground_weighted\\` field specifies the weighted average height of the ridge above ground [meters]. For \nweighting the \\`footprint_area\\` of sub-geometries was used, if a building consists of multiple. This can be traced on the basis \nof the field \\`number_original_geometries\\`. \n\nThe field is set to \\`null\\` if the height is unknown.`,\n example: 13.619256575276214\n },\n ridge_above_ground_min: {\n type: ['number', 'null'],\n minimum: 0,\n description: `\nThe \\`ridge_above_ground_min\\` field specifies the minimum height of the ridge above ground [meters]. This is the minimal \n\\`ridge_above_ground within\\` a group of sub-geometries, if a building consists of multiple. This can be traced on the basis of the \nfield \\`number_original_geometries\\`. \n\nThe field is set to \\`null\\` if the height is unknown.`,\n example: 6.64300537109375\n },\n ridge_above_ground_max: {\n type: ['number', 'null'],\n minimum: 0,\n description: `\nThe \\`ridge_above_ground_max\\` field specifies the maximum height of the ridge above ground [meters]. This is the maximal \n\\`ridge_above_ground\\` within a group of sub-geometries, if a building consists of multiple. This can be traced on the basis of the \nfield \\`number_original_geometries\\`. \n\nThe field is set to \\`null\\` if the height is unknown.`,\n example: 16.987991333007812\n },\n number_original_geometries: {\n type: ['number', 'null'],\n minimum: 0,\n description: `\nThe \\`number_original_geometries\\` field specifies the number of original geometries used for weighted calculations.\n\nThe field is set to \\`null\\` if the count is unknown.`,\n example: 3\n },\n roof_area: {\n type: ['number', 'null'],\n minimum: 0,\n description: `\nThe \\`roof_area\\` field specifies the total roof area of the building [square meters].\n\nThe field is set to \\`null\\` if the roof area is unknown.`,\n example: 355.37342071533203\n },\n outer_wall_area_free: {\n type: ['number', 'null'],\n minimum: 0,\n description: `\nThe \\`outer_wall_area_free\\` field specifies the facade area free of adjacent structures [square meters]. \n\nThe field is set to \\`null\\` if the area is unknown.`,\n example: 690.5686635568186\n },\n outer_wall_area_shared_heated: {\n type: ['number', 'null'],\n minimum: 0,\n description: `\nThe \\`outer_wall_area_shared_heated\\` field specifies the facade area shared with heated adjacent structures [square meters]. \n\nThe field is set to \\`null\\` if the area is unknown.`,\n example: 202.10705297163204\n },\n outer_wall_area_shared_non_heated: {\n type: ['number', 'null'],\n minimum: 0,\n description: `\nThe \\`outer_wall_area_shared_non_heated\\` field specifies the facade area shared with non-heated adjacent structures [square meters].\n\nThe field is set to \\`null\\` if the area is unknown.`,\n example: 298.6121580931941\n },\n plinth_length_free: {\n type: ['number', 'null'],\n minimum: 0,\n description: `\nThe \\`plinth_length_free\\` field specifies the length of the building's plinth that is not shared with adjacent structures [meters].\n\nThe field is set to \\`null\\` if the length is unknown.`,\n example: 48.672734987814366\n },\n plinth_length_shared_heated: {\n type: ['number', 'null'],\n minimum: 0,\n description: `\nThe \\`plinth_length_shared_heated\\` field specifies the length of the building's plinth shared with heated adjacent structures [meters].\n\nThe field is set to \\`null\\` if the length is unknown.`,\n example: 13.16187444425839\n },\n plinth_length_shared_non_heated: {\n type: ['number', 'null'],\n minimum: 0,\n description: `\nThe \\`plinth_length_shared_non_heated\\` field specifies the length of the building's plinth shared with non-heated adjacent structures [meters].\n\nThe field is set to \\`null\\` if the length is unknown.`,\n example: 31.994775355440325\n },\n building_function: {\n type: ['string', 'null'],\n description: `\nThe \\`building_function\\` field contains the original German building function name (GFK - Gebäudefunktionsklasse) from the source data.\n\nThis is the raw German value. For the standardized English classification, use the \\`building_function_class\\` field.\n\nThe field is set to \\`null\\` if the building function is unknown.`,\n example: 'Wohngebäude'\n },\n building_function_class: {\n type: ['string', 'null'],\n enum: ['residential_building', 'residential_house', 'dormitory', 'childrens_home', 'nursing_home', 'nurses_dormitory', 'student_dormitory', 'school_country_home', 'mixed_use_building_with_residential', 'residential_building_with_public_amenities', 'residential_building_with_commerce_services', 'residential_and_administrative_building', 'residential_and_office_building', 'residential_and_commercial_building', 'residential_commercial_industrial_building', 'agricultural_forestry_residential_building', 'agricultural_forestry_residential_commercial_building', 'farmhouse', 'residential_and_agricultural_building', 'forest_house', 'leisure_facility_building', 'holiday_home', 'weekend_house', 'garden_house', 'commercial_building', 'commercial_and_service_building', 'office_building', 'credit_institution', 'insurance_office', 'department_store', 'shopping_center', 'market_hall', 'shop', 'kiosk', 'pharmacy', 'exhibition_hall', 'accommodation_building', 'hotel_motel_guesthouse', 'youth_hostel', 'hut_with_overnight_stay', 'campground_building', 'catering_building', 'restaurant', 'hut_no_overnight_stay', 'canteen', 'leisure_and_entertainment_venue', 'banquet_hall', 'cinema', 'bowling_alley', 'casino', 'arcade', 'commercial_and_industrial_building', 'production_building', 'factory', 'operations_building', 'brewery', 'distillery', 'workshop', 'sawmill', 'gas_station', 'car_wash', 'storage_building', 'cold_storage', 'warehouse', 'freight_forwarding_building', 'research_building', 'raw_material_extraction_building', 'mine', 'saltworks', 'company_social_facility_building', 'other_commercial_industrial_building', 'mill', 'windmill', 'watermill', 'pumping_station', 'weather_station', 'commercial_service_residential_building', 'commercial_industrial_residential_building', 'traffic_facility_operations_building_general', 'road_traffic_operations_building', 'road_maintenance_depot', 'waiting_hall', 'rail_traffic_operations_building', 'railroad_crossing_keeper_house', 'locomotive_shed_carriage_hall', 'signal_box_block_post', 'freight_yard_operations_building', 'air_traffic_operations_building', 'aircraft_hangar', 'maritime_traffic_operations_building', 'shipyard_hall', 'dock_hall', 'lock_operations_building', 'boathouse', 'cable_car_operations_building', 'cable_car_tensioning_station', 'parking_building', 'parking_garage', 'garage', 'vehicle_hall', 'supply_building', 'energy_supply_building', 'water_supply_building', 'waterworks', 'water_reservoir', 'electricity_supply_building', 'power_plant', 'substation', 'transformer', 'reactor_building', 'turbine_house', 'boiler_house', 'telecommunications_building', 'building_at_underground_lines', 'gas_supply_building', 'gas_works', 'heating_plant', 'utility_building', 'pumping_station_non_water_supply', 'disposal_building', 'wastewater_treatment_building', 'sewage_treatment_plant_building', 'public_toilet', 'waste_treatment_building', 'waste_bunker', 'waste_incineration_plant', 'landfill_building', 'agricultural_forestry_building', 'agricultural_forestry_commercial_building', 'barn', 'shed', 'stable', 'barn_and_stable', 'large_scale_animal_housing', 'riding_hall', 'alpine_hut', 'hunting_lodge_cabin', 'greenhouse', 'moveable_greenhouse', 'public_building', 'administrative_building', 'parliament_building', 'town_hall', 'post_office', 'customs_office', 'court_building', 'embassy_consulate', 'district_administration', 'regional_government', 'tax_office', 'education_research_building', 'general_education_school', 'vocational_school', 'higher_education_building_university', 'research_institute', 'cultural_building', 'palace', 'theater_opera', 'concert_hall', 'museum', 'broadcasting_television', 'event_building', 'library', 'castle_fortress', 'religious_building', 'church', 'synagogue', 'chapel', 'community_hall', 'house_of_worship', 'mosque', 'temple', 'monastery', 'healthcare_building', 'hospital', 'sanatorium_nursing_home_nursing_station', 'doctors_office_polyclinic', 'rescue_station', 'social_services_building', 'youth_center', 'leisure_club_community_center', 'senior_center', 'homeless_shelter', 'daycare_kindergarten', 'refugee_shelter', 'security_and_order_building', 'police_station', 'fire_station', 'barracks', 'air_raid_shelter', 'correctional_facility', 'cemetery_building', 'funeral_hall', 'crematorium', 'reception_building', 'railway_station_building', 'airport_building', 'subway_station_building', 'suburban_railway_station_building', 'bus_station_building', 'maritime_terminal_building', 'public_purpose_residential_building', 'recreational_building', 'sports_building', 'sports_gymnasium', 'sports_field_building', 'bathhouse', 'indoor_swimming_pool', 'outdoor_pool_building', 'stadium_building', 'spa_facility_building', 'medical_bath_building', 'sanatorium', 'zoo_building', 'zoo_entrance_building', 'aquarium_terrarium_aviary', 'animal_exhibition_building', 'zoo_stable', 'botanical_garden_building', 'botanical_garden_entrance_building', 'botanical_greenhouse', 'conservatory', 'other_recreational_facility_building', 'mountain_hut_shelter', 'tourist_information_center', 'not_specified_due_to_source_situation', 'water_tower', 'church_tower', 'observation_tower', 'control_tower', 'cooling_tower', 'lighthouse', 'fire_watchtower', 'transmission_radio_tower', 'city_gate_tower', 'winding_tower', 'drilling_tower', 'castle_tower', 'other', 'biogas_plant', 'wind_turbine', 'solar_panels', 'mast', 'power_line_mast', 'radio_mast', 'radio_telescope', 'chimney', 'crane', 'slewing_crane', 'gantry_crane', 'traveling_crane', 'blast_furnace', 'silo', 'tank', 'gasometer', 'grandstand', 'covered_grandstand', 'uncovered_grandstand', 'stadium', 'covered_stadium', 'uncovered_stadium', 'ski_jump_inrun', 'graduation_tower', 'historic_water_pipeline', 'watchtower', 'fortification_castle_ruin', 'historic_wall', 'city_wall', 'other_historic_wall', 'canopy', 'carport', 'wall', 'monument', 'ship_lift', 'chamber_lock', 'bridge', 'swing_bridge', 'lifting_bridge', 'drawbridge', 'elevated_railway_elevated_road', 'lock_chamber', 'dam', 'weir', 'security_gate', 'sewer_drain', 'barrage'],\n description: `\nThe \\`building_function_class\\` field specifies the standardized English classification of the building function according to the German GFK (Gebäudefunktionsklasse) standard.\n\nThis field categorizes buildings by their primary use or purpose, such as residential, commercial, industrial, public, or mixed-use functions.\n\nThe field is set to \\`null\\` if the building function class is unknown.`,\n example: 'residential_building'\n },\n ogc_fid: {\n type: ['string', 'null'],\n description: `\nThe \\`ogc_fid\\` field specifies a unique identifier from the LOD2 dataset. **This field is deprecated** and should no longer be used for identifying buildings. \n\nFor current and future use, refer to \\`building_id\\` (for the building geometry) or \\`building_address_id\\` (for a unique building-address combination) instead. \n\nThe field is set to \\`null\\` if the identifier is unavailable.`,\n example: 'DENW29AL1000FzW2',\n deprecated: true\n },\n federal_state: {\n type: ['string', 'null'],\n description: `\nThe \\`federal_state\\` field specifies the German federal state (Bundesland) in which the building is located.\n\nGermany is divided into 16 federal states:\n\n- Baden-Württemberg\n- Bayern (Bavaria)\n- Berlin\n- Brandenburg\n- Bremen\n- Hamburg\n- Hessen\n- Mecklenburg-Vorpommern\n- Niedersachsen (Lower Saxony)\n- Nordrhein-Westfalen (North Rhine-Westphalia)\n- Rheinland-Pfalz (Rhineland-Palatinate)\n- Saarland\n- Sachsen (Saxony)\n- Sachsen-Anhalt (Saxony-Anhalt)\n- Schleswig-Holstein\n- Thüringen (Thuringia)\n\nThe field is set to \\`null\\` if the federal state is unknown.`,\n example: 'Nordrhein-Westfalen'\n },\n esg: {\n type: 'object',\n properties: {\n overall_class: {\n type: ['number', 'null'],\n minimum: 1,\n maximum: 5,\n description: `\nThe \\`overall_class\\` field specifies the overall ESG rating class of the building. This field can have one of the following values:\n\n- **1**: Negative\n- **2**: Rather negative\n- **3**: Average\n- **4**: Rather positive\n- **5**: Positive\n\nThe field is set to \\`null\\` if the overall ESG rating class is unknown.`,\n example: 1\n },\n overall: {\n type: ['string', 'null'],\n enum: ['negative', 'rather_negative', 'average', 'rather_positive', 'positive'],\n description: `\nThe \\`overall\\` field specifies the overall ESG rating of the building. This field can have one of the following values:\n\n- **negative**: Negative rating\n- **rather_negative**: Rather negative rating\n- **average**: Average rating\n- **rather_positive**: Rather positive rating\n- **positive**: Positive rating\n\nThe field is set to \\`null\\` if the overall ESG rating is unknown.`,\n example: 'rather_negative'\n },\n overall_rating: {\n type: ['number', 'null'],\n minimum: 0,\n maximum: 100,\n description: `\nThe \\`overall_rating\\` field specifies the overall ESG rating score of the building, ranging from 0 to 100.\n\nThe field is set to \\`null\\` if the overall ESG rating score is unknown.`,\n example: 1\n },\n environment_class: {\n type: ['number', 'null'],\n minimum: 1,\n maximum: 5,\n description: `\nThe \\`environment_class\\` field specifies the environmental ESG rating class of the building. This field can have one of the following values:\n\n- **1**: Negative\n- **2**: Rather negative\n- **3**: Average\n- **4**: Rather positive\n- **5**: Positive\n\nThe field is set to \\`null\\` if the environmental ESG rating class is unknown.`,\n example: 1\n },\n environment: {\n type: ['string', 'null'],\n enum: ['negative', 'rather_negative', 'average', 'rather_positive', 'positive'],\n description: `\nThe \\`environment\\` field specifies the environmental ESG rating of the building. This field can have one of the following values:\n\n- **negative**: Negative rating\n- **rather_negative**: Rather negative rating\n- **average**: Average rating\n- **rather_positive**: Rather positive rating\n- **positive**: Positive rating\n\nThe field is set to \\`null\\` if the environmental ESG rating is unknown.`,\n example: 'rather_positive'\n },\n environment_rating: {\n type: ['number', 'null'],\n minimum: 0,\n maximum: 100,\n description: `\nThe \\`environment_rating\\` field specifies the environmental ESG rating score of the building, ranging from 0 to 100.\n\nThe field is set to \\`null\\` if the environmental ESG rating score is unknown.`,\n example: 1\n },\n social_class: {\n type: ['number', 'null'],\n minimum: 1,\n maximum: 5,\n description: `\nThe \\`social_class\\` field specifies the social ESG rating class of the building. This field can have one of the following values:\n\n- **1**: Negative\n- **2**: Rather negative\n- **3**: Average\n- **4**: Rather positive\n- **5**: Positive\n\nThe field is set to \\`null\\` if the social ESG rating class is unknown.`,\n example: 1\n },\n social: {\n type: ['string', 'null'],\n enum: ['negative', 'rather_negative', 'average', 'rather_positive', 'positive'],\n description: `\nThe \\`social\\` field specifies the social ESG rating of the building. This field can have one of the following values:\n\n- **negative**: Negative rating\n- **rather_negative**: Rather negative rating\n- **average**: Average rating\n- **rather_positive**: Rather positive rating\n- **positive**: Positive rating\n\nThe field is set to \\`null\\` if the social ESG rating is unknown.`,\n example: 'positive'\n },\n social_rating: {\n type: ['number', 'null'],\n minimum: 0,\n maximum: 100,\n description: `\nThe \\`social_rating\\` field specifies the social ESG rating score of the building, ranging from 0 to 100.\n\nThe field is set to \\`null\\` if the social ESG rating score is unknown.`,\n example: 1\n },\n governance_class: {\n type: ['number', 'null'],\n minimum: 1,\n maximum: 5,\n description: `\nThe \\`governance_class\\` field specifies the governance ESG rating class of the building. This field can have one of the following values:\n\n- **1**: Negative\n- **2**: Rather negative\n- **3**: Average\n- **4**: Rather positive\n- **5**: Positive\n\nThe field is set to \\`null\\` if the governance ESG rating class is unknown.`,\n example: 1\n },\n governance: {\n type: ['string', 'null'],\n enum: ['negative', 'rather_negative', 'average', 'rather_positive', 'positive'],\n description: `\nThe \\`governance\\` field specifies the governance ESG rating of the building. This field can have one of the following values:\n\n- **negative**: Negative rating\n- **rather_negative**: Rather negative rating\n- **average**: Average rating\n- **rather_positive**: Rather positive rating\n- **positive**: Positive rating\n\nThe field is set to \\`null\\` if the governance ESG rating is unknown.`,\n example: 'negative'\n },\n governance_rating: {\n type: ['number', 'null'],\n minimum: 0,\n maximum: 100,\n description: `\nThe \\`governance_rating\\` field specifies the governance ESG rating score of the building, ranging from 0 to 100.\n\nThe field is set to \\`null\\` if the governance ESG rating score is unknown.`,\n example: 1\n }\n }\n },\n fuelling_types: {\n type: 'object',\n properties: {\n dominant: {\n type: ['string', 'null'],\n enum: ['renewable_chp', 'district_heating', 'liquified_gas', 'gas', 'wood', 'electricity', 'multiple_equal', 'oil', 'coal_coke', 'delivered_heat'],\n description: `\nThe \\`dominant\\` field specifies the dominant fuelling type of the building. This field can have one of the following values:\n\n- **renewable_chp**: Renewable energy and combined heat and power\n- **district_heating**: District heating\n- **liquified_gas**: Liquified gas\n- **gas**: Natural gas\n- **wood**: Wood\n- **electricity**: Electricity\n- **multiple_equal**: Multiple equal types\n- **oil**: Oil\n- **coal_coke**: Coal and coke\n- **delivered_heat**: Delivered heat\n\nThe field is set to \\`null\\` if the dominant fuelling type is unknown.`,\n example: 'renewable_chp'\n },\n number_listings_denominator: {\n type: ['number', 'null'],\n minimum: 1,\n description: `\nThe \\`number_listings_denominator\\` field specifies the number of listings used as denominator for calculating the shares.\n\nThe field is set to \\`null\\` if the number of listings is unknown.`,\n example: 1\n },\n coal_coke_share: {\n type: ['number', 'null'],\n minimum: 0,\n maximum: 100,\n description: `\nThe \\`coal_coke_share\\` field specifies the share of coal and coke in the building's energy mix, ranging from 0 to 100 [%].\n\nThe field is set to \\`null\\` if the share is unknown.`,\n example: 1\n },\n delivered_heat_share: {\n type: ['number', 'null'],\n minimum: 0,\n maximum: 100,\n description: `\nThe \\`delivered_heat_share\\` field specifies the share of delivered heat in the building's energy mix, ranging from 0 to 100 [%].\n\nThe field is set to \\`null\\` if the share is unknown.`,\n example: 1\n },\n district_heating_share: {\n type: ['number', 'null'],\n minimum: 0,\n maximum: 100,\n description: `\nThe \\`district_heating_share\\` field specifies the share of district heating in the building's energy mix, ranging from 0 to 100 [%].\n\nThe field is set to \\`null\\` if the share is unknown.`,\n example: 1\n },\n electricity_share: {\n type: ['number', 'null'],\n minimum: 0,\n maximum: 100,\n description: `\nThe \\`electricity_share\\` field specifies the share of electricity in the building's energy mix, ranging from 0 to 100 [%].\n\nThe field is set to \\`null\\` if the share is unknown.`,\n example: 1\n },\n gas_share: {\n type: ['number', 'null'],\n minimum: 0,\n maximum: 100,\n description: `\nThe \\`gas_share\\` field specifies the share of natural gas in the building's energy mix, ranging from 0 to 100 [%].\n\nThe field is set to \\`null\\` if the share is unknown.`,\n example: 1\n },\n wood_share: {\n type: ['number', 'null'],\n minimum: 0,\n maximum: 100,\n description: `\nThe \\`wood_share\\` field specifies the share of wood in the building's energy mix, ranging from 0 to 100 [%].\n\nThe field is set to \\`null\\` if the share is unknown.`,\n example: 1\n },\n renewable_chp_share: {\n type: ['number', 'null'],\n minimum: 0,\n maximum: 100,\n description: `\nThe \\`renewable_chp_share\\` field specifies the share of renewable combined heat and power in the building's energy mix, ranging from 0 to 100 [%].\n\nThe field is set to \\`null\\` if the share is unknown.`,\n example: 1\n },\n liquified_gas_share: {\n type: ['number', 'null'],\n minimum: 0,\n maximum: 100,\n description: `\nThe \\`liquified_gas_share\\` field specifies the share of liquified gas in the building's energy mix, ranging from 0 to 100 [%].\n\nThe field is set to \\`null\\` if the share is unknown.`,\n example: 1\n },\n oil_share: {\n type: ['number', 'null'],\n minimum: 0,\n maximum: 100,\n description: `\nThe \\`oil_share\\` field specifies the share of oil in the building's energy mix, ranging from 0 to 100 [%].\n\nThe field is set to \\`null\\` if the share is unknown.`,\n example: 1\n }\n }\n },\n location_rating: {\n type: 'object',\n properties: {\n overall: {\n type: ['number', 'null'],\n minimum: 0,\n maximum: 100,\n description: `\nThe \\`overall\\` field specifies the overall location rating of the building, ranging from 0 to 100.\n\nThe field is set to \\`null\\` if the overall location rating is unknown.`,\n example: 1\n },\n housing_market: {\n type: ['number', 'null'],\n minimum: 0,\n maximum: 100,\n description: `\nThe \\`housing_market\\` field specifies the housing market rating of the building's location, ranging from 0 to 100.\n\nThe field is set to \\`null\\` if the housing market rating is unknown.`,\n example: 1\n },\n infrastructure: {\n type: ['number', 'null'],\n minimum: 0,\n maximum: 100,\n description: `\nThe \\`infrastructure\\` field specifies the infrastructure rating of the building's location, ranging from 0 to 100.\n\nThe field is set to \\`null\\` if the infrastructure rating is unknown.`,\n example: 1\n },\n settlement_structure: {\n type: ['number', 'null'],\n minimum: 0,\n maximum: 100,\n description: `\nThe \\`settlement_structure\\` field specifies the settlement structure rating of the building's location, ranging from 0 to 100.\n\nThe field is set to \\`null\\` if the settlement structure rating is unknown.`,\n example: 1\n },\n social: {\n type: ['number', 'null'],\n minimum: 0,\n maximum: 100,\n description: `\nThe \\`social\\` field specifies the social rating of the building's location, ranging from 0 to 100.\n\nThe field is set to \\`null\\` if the social rating is unknown.`,\n example: 1\n },\n stressors: {\n type: ['number', 'null'],\n minimum: 0,\n maximum: 100,\n description: `\nThe \\`stressors\\` field specifies the stressors rating of the building's location, ranging from 0 to 100.\n\nThe field is set to \\`null\\` if the stressors rating is unknown.\n\nHigher values indicate a better location, similar to the other properties in \\`location_rating\\`.\n`,\n example: 1\n }\n }\n },\n investment_perspective_class: {\n type: ['number', 'null'],\n minimum: 1,\n maximum: 5,\n description: `\nThe \\`investment_perspective_class\\` field specifies the investment perspective class of the building. This field can have one of the following values:\n\n- **1**: Negative\n- **2**: Rather negative\n- **3**: Average\n- **4**: Rather positive\n- **5**: Positive\n\nThe field is set to \\`null\\` if the investment perspective class is unknown.`,\n example: 1\n },\n investment_perspective: {\n type: ['string', 'null'],\n enum: ['negative', 'rather_negative', 'average', 'rather_positive', 'positive'],\n description: `\nThe \\`investment_perspective\\` field specifies the investment perspective of the building. This field can have one of the following values:\n\n- **negative**: Negative perspective\n- **rather_negative**: Rather negative perspective\n- **average**: Average perspective\n- **rather_positive**: Rather positive perspective\n- **positive**: Positive perspective\n\nThe field is set to \\`null\\` if the investment perspective is unknown.`,\n example: 'rather_negative'\n },\n modernisation_potential_class: {\n type: ['number', 'null'],\n minimum: 1,\n maximum: 5,\n description: `\nThe \\`modernisation_potential_class\\` field specifies the modernisation potential class of the building. This field can have one of the following values:\n\n- **1**: Negative\n- **2**: Rather negative\n- **3**: Average\n- **4**: Rather positive\n- **5**: Positive\n\nThe field is set to \\`null\\` if the modernisation potential class is unknown.`,\n example: 1\n },\n modernisation_potential: {\n type: ['string', 'null'],\n enum: ['negative', 'rather_negative', 'average', 'rather_positive', 'positive'],\n description: `\nThe \\`modernisation_potential\\` field specifies the modernisation potential of the building. This field can have one of the following values:\n\n- **negative**: Negative potential\n- **rather_negative**: Rather negative potential\n- **average**: Average potential\n- **rather_positive**: Rather positive potential\n- **positive**: Positive potential\n\nThe field is set to \\`null\\` if the modernisation potential is unknown.`,\n example: 'positive'\n },\n milieus_dominant_class: {\n type: ['number', 'null'],\n minimum: 1,\n maximum: 6,\n description: `\nThe \\`milieus_dominant_class\\` field specifies the dominant milieu class of the building's location. This field can have one of the following values:\n\n- **1**: Communicative\n- **2**: Demanding\n- **3**: Domestic\n- **4**: Conventional\n- **5**: Modest\n- **6**: Functional\n\nThe field is set to \\`null\\` if the dominant milieu class is unknown.`,\n example: 1\n },\n milieus_dominant: {\n type: ['string', 'null'],\n enum: ['communicative', 'demanding', 'domestic', 'conventional', 'modest', 'functional'],\n description: `\nThe \\`milieus_dominant\\` field specifies the dominant milieu of the building's location. This field can have one of the following values:\n\n- **communicative**: Communicative milieu\n- **demanding**: Demanding milieu\n- **domestic**: Domestic milieu\n- **conventional**: Conventional milieu\n- **modest**: Modest milieu\n- **functional**: Functional milieu\n\nThe field is set to \\`null\\` if the dominant milieu is unknown.`,\n example: 'domestic'\n },\n building_address_id: {\n type: ['string', 'null'],\n description: `\nThe \\`building_address_id\\` field specifies the unique identifier for a building in relation to a specific address. This ID is used to distinguish buildings that may share the same parcel or geographic location but are associated with different addresses (for example, in cases of multiple entrances, sub-buildings, or address points within a single property).\n\nThis identifier is particularly useful for applications where the address context is essential to uniquely reference a building, such as postal services, delivery, or address-based lookup systems.\n\nThe field is set to \\`null\\` if the building address ID is unknown.`,\n example: '1234567890'\n },\n building_id: {\n type: ['string', 'null'],\n description: `\nThe \\`building_id\\` field specifies the identifier for the building as a physical structure or geometry, independent of address context. Note that this ID is not necessarily unique, as a single building can be associated with multiple addresses (for example, corner buildings or buildings with several entrances).\n\nThis identifier is typically used to reference the building as a physical entity for purposes such as property management, urban planning, or geospatial analysis, where the focus is on the structure itself rather than its address associations.\n\nFor a unique reference to a building at a specific address, use \\`building_address_id\\` instead.\n\nThe field is set to \\`null\\` if the building ID is unknown.`,\n example: '1234567890'\n },\n building_group_id: {\n type: ['string', 'null'],\n description: `\nThe \\`building_group_id\\` field specifies a SHA256 hash identifier for a group of buildings that are considered together for analysis, management, or reporting purposes.\n\nThis identifier is particularly useful for applications where buildings need to be analyzed or managed collectively, such as urban planning, property management, or resource allocation.\n\nThe field is set to \\`null\\` if the building group ID is unknown.`,\n example: 'a1b2c3d4e5f6g7h8i9j0k1l2m3n4o5p6q7r8s9t0u1v2w3x4y5z6a7b8c9d0e1f2'\n },\n inhabitants: {\n type: ['number', 'null'],\n minimum: 0,\n description: `\nThe \\`inhabitants\\` field specifies the number of inhabitants per building. This value represents the total number of people residing within the given building, regardless of the number of addresses or units it contains.\n\nThis information can be useful for demographic analysis, urban planning, emergency response, and resource allocation, where understanding the population density or occupancy of a building is important.\n\nThe field is set to \\`null\\` if the number of inhabitants is unknown.`,\n example: 14\n },\n number_companies: {\n type: ['number', 'null'],\n minimum: 0,\n description: `\nThe \\`number_companies\\` field specifies the total number of companies located within the building. This value reflects how many distinct companies are registered or operate in the building, regardless of the number of addresses, units, or floors.\n\nThis information is useful for economic analysis, business density studies, urban planning, and resource allocation, where understanding the commercial activity within a building is important.\n\nThe field is set to \\`null\\` if the number of companies is unknown.`,\n example: 14\n },\n purchasing_power: {\n type: ['number', 'null'],\n minimum: 0,\n description: `\nThe \\`purchasing_power\\` field specifies the average purchasing power (German: *Kaufkraft*) of the households of the building, measured in euros (EUR). Purchasing power refers to the estimated disposable income or financial capacity available to the households for spending and consumption, after taxes and social security contributions have been deducted.\n\nThis value is typically expressed as an annual amount per person or household and provides insight into the economic strength and consumption potential of the building's population. Understanding purchasing power is valuable for market analysis, retail site selection, urban planning, and resource allocation.\n\nThe field is set to \\`null\\` if the purchasing power is unknown.`,\n example: 14000\n },\n building_volume_ratio_weighted: {\n type: ['number', 'null'],\n minimum: 0,\n description: `\nThe \\`building_volume_ratio_weighted\\` field specifies the weighted building volume ratio (also known as \"Baumassezahl\") of the building. This value represents the density context a building is situated in, rather than isolating its individual volume contribution.\n\nThe building volume ratio is conceptually defined as building volume divided by parcel area, where building volume is calculated as footprint area multiplied by roof height (estimated as the average of ridge_above_ground_weighted and eave_above_ground_weighted).\n\nSince our data is associated with buildings rather than parcels, this weighted calculation accounts for cases where buildings share parcels. The value is computed by:\n1. Summing the building volume per parcel across all associated buildings\n2. Dividing by the sum of corresponding parcel areas across all associated buildings\n\nIf \\`number_parcels_per_building == 1\\`, then this value is equivalent to an unaggregated building volume ratio.\n\nThe field is set to \\`null\\` if the building volume ratio is unknown.`,\n example: 1.23\n },\n number_parcels_per_building: {\n type: ['number', 'null'],\n minimum: 0,\n description: `\nThe \\`number_parcels_per_building\\` field specifies the number of parcels a building is associated with. This value provides context for the weighted nature of the \\`building_volume_ratio_weighted\\` attribute.\n\nWhen \\`number_parcels_per_building == 1\\`, the \\`building_volume_ratio_weighted\\` is equivalent to an unaggregated building volume ratio. When the value is greater than 1, it indicates that the building is situated on multiple parcels, and the weighted calculation accounts for this shared context.\n\nThis information is useful for understanding the density context of a building and interpreting the weighted building volume ratio calculation.\n\nThe field is set to \\`null\\` if the number of parcels is unknown.`,\n example: 2\n }\n },\n required: ['street', 'city', 'street_number', 'postcode', 'roof_type', 'type', 'type_class', 'water_protected', 'heated', 'heat_demand', 'levels', 'household_count', 'net_area', 'footprint_area', 'characteristics', 'characteristics_class', 'development_layout', 'development_layout_class', 'construction_year_range', 'construction_year_range_class', 'construction_year', 'heritage', 'geo_conductivity_100', 'heat_pump_air_possible', 'heat_pump_maximal_distance_drillings', 'heat_pump_maximal_distance_drillings_5m', 'heat_pump_minimal_number_possible_drillings', 'heat_pump_minimal_number_possible_drillings_5m', 'heat_pump_minimal_number_possible_drillings_2m', 'heat_pump_minimal_number_possible_drillings_no_distance', 'heat_pump_collector_free_area', 'flood_potential', 'photovoltaic_potential', 'solarthermal_potential', 'matching_addresses', 'eave_above_ground_weighted', 'eave_above_ground_min', 'eave_above_ground_max', 'ridge_above_ground_weighted', 'ridge_above_ground_min', 'ridge_above_ground_max', 'number_original_geometries', 'roof_area', 'outer_wall_area_free', 'outer_wall_area_shared_heated', 'outer_wall_area_shared_non_heated', 'plinth_length_free', 'plinth_length_shared_heated', 'plinth_length_shared_non_heated', 'building_function', 'building_function_class', 'ogc_fid', 'federal_state', 'esg', 'fuelling_types', 'location_rating']\n} as const;","// This file is auto-generated by @hey-api/openapi-ts\n\nimport { client, type Options } from '@hey-api/client-fetch';\nimport type { GetAddressLookupV2Data, GetAddressLookupV2Error, GetAddressLookupV2Response, GetCoordinateLookupV2Data, GetCoordinateLookupV2Error, GetCoordinateLookupV2Response, PostCoordinateBatchLookupV2Data, PostCoordinateBatchLookupV2Error, PostCoordinateBatchLookupV2Response, GetAddressLookupV3Data, GetAddressLookupV3Error, GetAddressLookupV3Response, GetCoordinateLookupV3Data, GetCoordinateLookupV3Error, GetCoordinateLookupV3Response, PostCoordinateBatchLookupV3Data, PostCoordinateBatchLookupV3Error, PostCoordinateBatchLookupV3Response } from './types.gen';\n\n/**\n * Retrieve building data based on a given address\n *\n * This endpoint allows users to retrieve detailed building data by providing an address.\n * The data includes information from both public and private sources, aggregated into a\n * comprehensive dataset.\n *\n * ### Permissions\n * - `api.lookup.address.read`: This permission grants the ability\n * to read and retrieve building data based on a provided address. It ensures that the\n * user has access rights to query the address-based lookup endpoint.\n *\n * ### Address-based Lookup\n * This endpoint is designed to retrieve building data based on a given address, focusing\n * solely on exact matches. If the address is not found, the endpoint will return an empty\n * response. For use cases involving un-geocoded addresses, we recommend using our\n * coordinate-based lookup endpoint.\n *\n * ### Response Structure\n * - **GeoJSON Type**: In v2, the response format has been simplified to a `Feature` object, representing a single feature, rather than the `FeatureCollection` type returned by v1. This change reflects the endpoint's focus on returning a single or no result based on the query.\n */\nexport const getAddressLookupV2 = (options: Options<GetAddressLookupV2Data>) => { return (options?.client ?? client).get<GetAddressLookupV2Response, GetAddressLookupV2Error>({\n ...options,\n url: '/v2/addressLookup'\n}); };\n\n/**\n * Retrieve building data based on a given coordinate\n *\n * This endpoint allows users to retrieve detailed building data by providing a geo coordinate.\n * The data includes information from both public and private sources, aggregated into a\n * comprehensive dataset.\n *\n * ### Key Changes in v2\n * In v2, the response format has been optimized to return a `Feature` rather than a `FeatureCollection`. This adjustment reflects the endpoint’s focus on retrieving a single result or no result, rather than a collection, simplifying client-side handling.\n *\n * ### Permissions\n * - `api.lookup.coordinate.read`: This permission grants the ability to\n * read and retrieve building data based on a provided coordinate. It ensures that the user has\n * access rights to query the coordinate-based lookup endpoint.\n *\n * ### Response Structure\n * - **GeoJSON Type**: The response in v2 is now a single `Feature` object representing one building result or an empty response if no match is found. This differs from v1, which returned a `FeatureCollection` object.\n */\nexport const getCoordinateLookupV2 = (options?: Options<GetCoordinateLookupV2Data>) => { return (options?.client ?? client).get<GetCoordinateLookupV2Response, GetCoordinateLookupV2Error>({\n ...options,\n url: '/v2/coordinateLookup'\n}); };\n\n/**\n * Retrieve building data for a batch of coordinates\n *\n * This endpoint allows users to retrieve detailed building data by providing a batch of\n * geo-coordinates. The response is a GeoJSON object containing a FeatureCollection, where each\n * feature represents a building and includes additional properties for tracking back to the\n * requested coordinates.\n *\n * ### Key Improvements in v2\n *\n * In v2, each coordinate can be assigned a unique reference ID in the request body, allowing for\n * more precise handling of results. The response includes a metadata section that provides:\n * - The total number of coordinates processed.\n * - A count of found and not-found coordinates.\n * - Lists of references for found and not-found coordinates, making it easier to manage unmatched\n * entries without requiring complex client-side matching logic.\n *\n * ### Request Body Format\n * The request body is structured as an object where each key is a unique reference ID for a\n * coordinate:\n *\n * ```json\n * {\n * \"reference_id1\": { \"lat\": 51.252258, \"lng\": 7.13107 },\n * \"reference_id2\": { \"lat\": 51.29342, \"lng\": 7.21936 },\n * \"reference_id3\": { \"lat\": 51.18941, \"lng\": 7.14259 }\n * }\n * ```\n *\n * ### Response Structure\n * - **GeoJSON Type**: The response includes a FeatureCollection containing matched features.\n * - **Metadata**:\n * - `counts`: Provides total, found, and not-found counts for the requested coordinates.\n * - `references`: Lists reference IDs of matched (`found`) and unmatched (`not_found`)\n * coordinates.\n *\n * #### Example Response:\n * ```json\n * {\n * \"type\": \"FeatureCollection\",\n * \"metadata\": {\n * \"counts\": {\n * \"total\": 3,\n * \"found\": 2,\n * \"not_found\": 1\n * },\n * \"references\": {\n * \"found\": [\"reference_id1\", \"reference_id2\"],\n * \"not_found\": [\"reference_id3\"]\n * }\n * },\n * \"features\": [\n * {\n * \"type\": \"Feature\",\n * \"geometry\": { * geometry details * },\n * \"properties\": {\n * \"ref\": \"reference_id1\",\n * ...\n * }\n * },\n * ...\n * ]\n * }\n * ```\n *\n * ### Handling Non-Matching Coordinates\n *\n * For unmatched coordinates, v2 includes metadata listing these coordinates, enabling clients to\n * easily filter out or handle non-matching entries. This improves upon v1, where clients had to\n * manage complex matching logic without clear references for non-matching coordinates.\n *\n * ### Limitations\n * This endpoint supports up to 500 coordinates per request. If more are needed, split into multiple\n * requests.\n *\n * ### Permissions\n * - `api.batch.lookup.coordinate.read`: Grants the ability to access this endpoint.\n */\nexport const postCoordinateBatchLookupV2 = (options: Options<PostCoordinateBatchLookupV2Data>) => { return (options?.client ?? client).post<PostCoordinateBatchLookupV2Response, PostCoordinateBatchLookupV2Error>({\n ...options,\n url: '/v2/coordinateBatchLookup'\n}); };\n\n/**\n * Retrieve building data based on a given address\n *\n * This endpoint allows users to retrieve detailed building data by providing an address.\n * The data includes information from both public and private sources, aggregated into a\n * comprehensive dataset.\n *\n * ### Permissions\n * - `api.lookup.address.read`: This permission grants the ability\n * to read and retrieve building data based on a provided address. It ensures that the\n * user has access rights to query the address-based lookup endpoint.\n *\n * ### Address-based Lookup\n * This endpoint is designed to retrieve building data based on a given address, focusing\n * solely on exact matches. If the address is not found, the endpoint will return an empty\n * response. For use cases involving un-geocoded addresses, we recommend using our\n * coordinate-based lookup endpoint.\n *\n * ### Key Changes in v3\n * In v3, the response format has been converted from a first-match `Feature` object, to an\n * all matches `FeatureCollection` type. This change reflects the endpoints focus on retrieving\n * all matches for a given address, e.g. when different addresses are on the same geometry. Also\n * we have introduced a new optional query parameter `resolution`, which allows to specify the\n * resolution to be precise on address or geometry level. If no resolution is provided, the\n * geometry precision will be used.\n *\n * ### Response Structure\n * - **GeoJSON Type**: In v3, the response format has been converted from a first-match `Feature` object, to an all matches `FeatureCollection` type.\n */\nexport const getAddressLookupV3 = (options: Options<GetAddressLookupV3Data>) => { return (options?.client ?? client).get<GetAddressLookupV3Response, GetAddressLookupV3Error>({\n ...options,\n url: '/v3/addressLookup'\n}); };\n\n/**\n * Retrieve building data based on a given coordinate\n *\n * This endpoint allows users to retrieve detailed building data by providing a geo coordinate.\n * The data includes information from both public and private sources, aggregated into a\n * comprehensive dataset.\n *\n * ### Key Changes in v3\n * In v3, the response format has been optimized to return a `FeatureCollection` object. This\n * adjustment reflects the endpoints focus on retrieving all matches for a given coordinate,\n * e.g. when different coordinates are on the same geometry.\n *\n * ### Permissions\n * - `api.lookup.coordinate.read`: This permission grants the ability to\n * read and retrieve building data based on a provided coordinate. It ensures that the user has\n * access rights to query the coordinate-based lookup endpoint.\n *\n * ### Key Changes in v3\n * In v3, the response format has been converted from a first-match `Feature` object, to an\n * all matches `FeatureCollection` type. This change reflects the endpoints focus on retrieving\n * all matches for a given coordinate, e.g. when different coordinates are on the same geometry. Also\n * we have introduced a new optional query parameter `resolution`, which allows to specify the\n * resolution to be precise on coordinate or geometry level. If no resolution is provided, the\n * geometry precision will be used.\n *\n * ### Response Structure\n * - **GeoJSON Type**: In v3, the response format has been converted from a first-match `Feature` object, to an all matches `FeatureCollection` type.\n */\nexport const getCoordinateLookupV3 = (options?: Options<GetCoordinateLookupV3Data>) => { return (options?.client ?? client).get<GetCoordinateLookupV3Response, GetCoordinateLookupV3Error>({\n ...options,\n url: '/v3/coordinateLookup'\n}); };\n\n/**\n * Retrieve building data for a batch of coordinates\n *\n * This endpoint allows users to retrieve detailed building data by providing a batch of\n * geo-coordinates. The response is a GeoJSON object containing a FeatureCollection, where each\n * feature represents a building and includes additional properties for tracking back to the\n * requested coordinates.\n *\n * ### Request Body Format\n * The request body is structured as an object where each key is a unique reference ID for a\n * coordinate:\n *\n * ```json\n * {\n * \"reference_id1\": { \"lat\": 51.252258, \"lng\": 7.13107 },\n * \"reference_id2\": { \"lat\": 51.29342, \"lng\": 7.21936 },\n * \"reference_id3\": { \"lat\": 51.18941, \"lng\": 7.14259 }\n * }\n * ```\n *\n * ### Response Structure\n * - **GeoJSON Type**: The response includes a FeatureCollection containing matched features.\n * - **Metadata**:\n * - `counts`: Provides total, found, and not-found counts for the requested coordinates.\n * - `references`: Lists reference IDs of matched (`found`) and unmatched (`not_found`)\n * coordinates.\n *\n * #### Example Response:\n * ```json\n * {\n * \"type\": \"FeatureCollection\",\n * \"metadata\": {\n * \"counts\": {\n * \"total\": 3,\n * \"found\": 2,\n * \"not_found\": 1\n * },\n * \"references\": {\n * \"found\": [\"reference_id1\", \"reference_id2\"],\n * \"not_found\": [\"reference_id3\"]\n * }\n * },\n * \"features\": [\n * {\n * \"type\": \"Feature\",\n * \"geometry\": { * geometry details * },\n * \"properties\": {\n * \"ref\": \"reference_id1\",\n * ...\n * }\n * },\n * ...\n * ]\n * }\n * ```\n *\n * ### Handling Non-Matching Coordinates\n *\n * For unmatched coordinates, v2 includes metadata listing these coordinates, enabling clients to\n * easily filter out or handle non-matching entries. This improves upon v1, where clients had to\n * manage complex matching logic without clear references for non-matching coordinates.\n *\n * ### Limitations\n * This endpoint supports up to 500 coordinates per request. If more are needed, split into multiple\n * requests.\n *\n * ### Permissions\n * - `api.batch.lookup.coordinate.read`: Grants the ability to access this endpoint.\n */\nexport const postCoordinateBatchLookupV3 = (options: Options<PostCoordinateBatchLookupV3Data>) => { return (options?.client ?? client).post<PostCoordinateBatchLookupV3Response, PostCoordinateBatchLookupV3Error>({\n ...options,\n url: '/v3/coordinateBatchLookup'\n}); };","// This file is auto-generated by @hey-api/openapi-ts\nexport * from './schemas.gen';\nexport * from './services.gen';\nexport * from './types.gen';\nexport {createClient} from '@hey-api/client-fetch';\n"],"mappings":"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","names":[]}
|