diff --git a/hub/helpers/data/alkis_function_to_hub_function.py b/hub/helpers/data/alkis_function_to_hub_function.py new file mode 100644 index 00000000..04af61a2 --- /dev/null +++ b/hub/helpers/data/alkis_function_to_hub_function.py @@ -0,0 +1,185 @@ +""" +Dictionaries module for Alkis function to hub function +SPDX - License - Identifier: LGPL - 3.0 - or -later +Copyright © 2022 Concordia CERC group +Project Coder Guille Gutierrez Guillermo.GutierrezMorote@concordia.ca +""" + + +import hub.helpers.constants as cte + +class AlkisFunctionToHubFunction: + + def __init__(self): + self._dictionary = {"1000": cte.RESIDENTIAL, + "1010": "tenement", + "1020": "hostel", + "1030": "residential- and administration building", + "1040": "residential- and office building", + "1050": "residential- and business building", + "1060": "residential- and plant building", + "1070": "agrarian- and forestry building", + "1080": "residential- and commercial building", + "1090": "forester's lodge", + "1100": "holiday house", + "1110": "summer house", + "1120": "office building", + "1130": "credit institution", + "1140": "insurance", + "1150": "business building", + "1160": "department store", + "1170": "shopping centre", + "1180": "kiosk", + "1190": "pharmacy", + "1200": "pavilion", + "1210": cte.HOTEL, + "1220": "youth hostel", + "1230": "campsite building", + "1240": "restaurant", + "1250": "cantine", + "1260": "recreational site", + "1270": "function room", + "1280": "cinema", + "1290": "bowling alley", + "1300": "casino", + "1310": "industrial building", + "1320": "factory", + "1330": cte.WORKSHOP, + "1340": "petrol / gas station", + "1350": "washing plant", + "1360": "cold store", + "1370": "depot", + "1380": "building for research purposes", + "1390": "quarry", + "1400": "salt works", + "1410": "miscellaneous industrial building", + "1420": "mill", + "1430": "windmill", + "1440": "water mill", + "1450": "bucket elevator", + "1460": "weather station", + "1470": "traffic assets office", + "1480": "street maintenance", + "1490": "waiting hall", + "1500": "signal control box", + "1510": "engine shed", + "1520": "signal box or stop signal", + "1530": "plant building for air traffic", + "1540": "hangar", + "1550": "plant building for shipping", + "1560": "shipyard", + "1570": "dock", + "1580": "plant building for canal lock", + "1590": "boathouse", + "1600": "plant building for cablecar", + "1610": "multi-storey car park", + "1620": "parking level", + "1630": "garage", + "1640": "vehicle hall", + "1650": "underground garage", + "1660": "building for supply", + "1670": "waterworks", + "1680": "pump station", + "1690": "water basin", + "1700": "electric power station", + "1710": "transformer station", + "1720": "converter", + "1730": "reactor", + "1740": "turbine house", + "1750": "boiler house", + "1760": "building for telecommunications", + "1770": "gas works", + "1780": "heat plant", + "1790": "pumping station", + "1800": "building for disposal", + "1810": "building for effluent disposal", + "1820": "building for filter plant", + "1830": "toilet", + "1840": "rubbish bunker", + "1850": "building for rubbish incineration", + "1860": "building for rubbish disposal", + "1870": "building for agrarian and forestry", + "1880": "barn", + "1890": "stall", + "1900": "equestrian hall", + "1910": "alpine cabin", + "1920": "hunting lodge", + "1930": "arboretum", + "1940": "glass house", + "1950": "moveable glass house", + "1960": "public building", + "1970": "administration building", + "1980": "parliament", + "1990": "guildhall", + "2000": "post office", + "2010": "customs office", + "2020": "court", + "2030": "embassy or consulate", + "2040": "district administration", + "2050": "district government", + "2060": "tax office", + "2070": "building for education and research", + "2080": "comprehensive school", + "2090": "vocational school", + "2100": "college or university", + "2110": "research establishment", + "2120": "building for cultural purposes", + "2130": "castle", + "2140": "theatre or opera", + "2150": "concert building", + "2160": cte.MUSEUM, + "2170": "broadcasting building", + "2180": "activity building", + "2190": cte.LIBRARY, + "2200": "fort", + "2210": "religious building", + "2220": "church", + "2230": "synagogue", + "2240": "chapel", + "2250": "community center", + "2260": "place of worship", + "2270": "mosque", + "2280": "temple", + "2290": "convent", + "2300": "building for health care", + "2310": cte.HOSPITAL, + "2320": "healing centre or care home", + "2330": "health centre or outpatients clinic", + "2340": "building for social purposes", + "2350": "youth centre", + "2360": "seniors centre", + "2370": "homeless shelter", + "2380": "kindergarten or nursery", + "2390": "asylum seekers home", + "2400": cte.POLICE_STATION, + "2410": cte.FIRE_STATION, + "2420": "barracks", + "2430": "bunker", + "2440": cte.PENITENTIARY, + "2450": "cemetery building", + "2460": "funeral parlor", + "2470": "crematorium", + "2480": "train station", + "2490": "airport building", + "2500": "building for underground station", + "2510": "building for tramway", + "2520": "building for bus station", + "2530": "shipping terminal", + "2540": "building for recuperation purposes", + "2550": "building for sport purposes", + "2560": "sports hall", + "2570": "building for sports field", + "2580": "swimming baths", + "2590": "indoor swimming pool", + "2600": "sanatorium", + "2610": "zoo building", + "2620": cte.GREEN_HOUSE, + "2630": "botanical show house", + "2640": "bothy", + "2650": "tourist information centre", + "2700": "others", + } + + @property + def dictionary(self): + return self._dictionary diff --git a/hub/helpers/data/hft_function_to_hub_function.py b/hub/helpers/data/hft_function_to_hub_function.py new file mode 100644 index 00000000..3ea20071 --- /dev/null +++ b/hub/helpers/data/hft_function_to_hub_function.py @@ -0,0 +1,32 @@ +""" +Dictionaries module for Hft function to hub function +SPDX - License - Identifier: LGPL - 3.0 - or -later +Copyright © 2022 Concordia CERC group +Project Coder Guille Gutierrez Guillermo.GutierrezMorote@concordia.ca +""" + +import hub.helpers.constants as cte + + +class HftFunctionToHubFunction: + + def __init__(self): + self._dictionary = { + 'residential': cte.RESIDENTIAL, + 'single family house': cte.SINGLE_FAMILY_HOUSE, + 'multifamily house': cte.MULTI_FAMILY_HOUSE, + 'hotel': cte.HOTEL, + 'hospital': cte.HOSPITAL, + 'outpatient': cte.OUT_PATIENT_HEALTH_CARE, + 'commercial': cte.SUPERMARKET, + 'strip mall': cte.STRIP_MALL, + 'warehouse': cte.WAREHOUSE, + 'primary school': cte.PRIMARY_SCHOOL, + 'secondary school': cte.EDUCATION, + 'office': cte.MEDIUM_OFFICE, + 'large office': cte.LARGE_OFFICE + } + + @property + def dictionary(self): + return self._dictionary diff --git a/hub/helpers/data/hub_function_to_nrcan_construction_function.py b/hub/helpers/data/hub_function_to_nrcan_construction_function.py new file mode 100644 index 00000000..5c070c35 --- /dev/null +++ b/hub/helpers/data/hub_function_to_nrcan_construction_function.py @@ -0,0 +1,78 @@ +""" +Dictionaries module for hub function to nrcan construction function +SPDX - License - Identifier: LGPL - 3.0 - or -later +Copyright © 2022 Concordia CERC group +Project Coder Guille Gutierrez Guillermo.GutierrezMorote@concordia.ca +""" + +import hub.helpers.constants as cte + + +class HubFunctionToNrcanConstructionFunction: + + def __init__(self): + self._dictionary = { + cte.RESIDENTIAL: 'MidriseApartment', + cte.SINGLE_FAMILY_HOUSE: 'MidriseApartment', + cte.MULTI_FAMILY_HOUSE: 'HighriseApartment', + cte.ROW_HOUSE: 'MidriseApartment', + cte.MID_RISE_APARTMENT: 'MidriseApartment', + cte.HIGH_RISE_APARTMENT: 'HighriseApartment', + cte.OFFICE_AND_ADMINISTRATION: 'MediumOffice', + cte.SMALL_OFFICE: 'SmallOffice', + cte.MEDIUM_OFFICE: 'MediumOffice', + cte.LARGE_OFFICE: 'LargeOffice', + cte.COURTHOUSE: 'MediumOffice', + cte.FIRE_STATION: 'n/a', + cte.PENITENTIARY: 'LargeHotel', + cte.POLICE_STATION: 'n/a', + cte.POST_OFFICE: 'MediumOffice', + cte.LIBRARY: 'MediumOffice', + cte.EDUCATION: 'SecondarySchool', + cte.PRIMARY_SCHOOL: 'PrimarySchool', + cte.PRIMARY_SCHOOL_WITH_SHOWER: 'PrimarySchool', + cte.SECONDARY_SCHOOL: 'SecondarySchool', + cte.UNIVERSITY: 'SecondarySchool', + cte.LABORATORY_AND_RESEARCH_CENTER: 'SecondarySchool', + cte.STAND_ALONE_RETAIL: 'RetailStandalone', + cte.HOSPITAL: 'Hospital', + cte.OUT_PATIENT_HEALTH_CARE: 'Outpatient', + cte.HEALTH_CARE: 'Outpatient', + cte.RETIREMENT_HOME_OR_ORPHANAGE: 'SmallHotel', + cte.COMMERCIAL: 'RetailStripmall', + cte.STRIP_MALL: 'RetailStripmall', + cte.SUPERMARKET: 'RetailStripmall', + cte.RETAIL_SHOP_WITHOUT_REFRIGERATED_FOOD: 'RetailStandalone', + cte.RETAIL_SHOP_WITH_REFRIGERATED_FOOD: 'RetailStandalone', + cte.RESTAURANT: 'FullServiceRestaurant', + cte.QUICK_SERVICE_RESTAURANT: 'QuickServiceRestaurant', + cte.FULL_SERVICE_RESTAURANT: 'FullServiceRestaurant', + cte.HOTEL: 'SmallHotel', + cte.HOTEL_MEDIUM_CLASS: 'SmallHotel', + cte.SMALL_HOTEL: 'SmallHotel', + cte.LARGE_HOTEL: 'LargeHotel', + cte.DORMITORY: 'SmallHotel', + cte.EVENT_LOCATION: 'n/a', + cte.CONVENTION_CENTER: 'n/a', + cte.HALL: 'n/a', + cte.GREEN_HOUSE: 'n/a', + cte.INDUSTRY: 'n/a', + cte.WORKSHOP: 'n/a', + cte.WAREHOUSE: 'Warehouse', + cte.WAREHOUSE_REFRIGERATED: 'Warehouse', + cte.SPORTS_LOCATION: 'n/a', + cte.SPORTS_ARENA: 'n/a', + cte.GYMNASIUM: 'n/a', + cte.MOTION_PICTURE_THEATRE: 'n/a', + cte.MUSEUM: 'n/a', + cte.PERFORMING_ARTS_THEATRE: 'n/a', + cte.TRANSPORTATION: 'n/a', + cte.AUTOMOTIVE_FACILITY: 'n/a', + cte.PARKING_GARAGE: 'n/a', + cte.RELIGIOUS: 'n/a', + cte.NON_HEATED: 'n/a' + } + + @property + def dictionary(self): + return self._dictionary diff --git a/hub/helpers/data/hub_function_to_nrel_construction_function.py b/hub/helpers/data/hub_function_to_nrel_construction_function.py new file mode 100644 index 00000000..507c4e59 --- /dev/null +++ b/hub/helpers/data/hub_function_to_nrel_construction_function.py @@ -0,0 +1,78 @@ +""" +Dictionaries module for hub function to NREL construction function +SPDX - License - Identifier: LGPL - 3.0 - or -later +Copyright © 2022 Concordia CERC group +Project Coder Guille Gutierrez Guillermo.GutierrezMorote@concordia.ca +""" + +import hub.helpers.constants as cte + + +class HubFunctionToNrelConstructionFunction: + + def __init__(self): + self._dictionary = { + cte.RESIDENTIAL: 'residential', + cte.SINGLE_FAMILY_HOUSE: 'residential', + cte.MULTI_FAMILY_HOUSE: 'midrise apartment', + cte.ROW_HOUSE: 'midrise apartment', + cte.MID_RISE_APARTMENT: 'midrise apartment', + cte.HIGH_RISE_APARTMENT: 'high-rise apartment', + cte.OFFICE_AND_ADMINISTRATION: 'medium office', + cte.SMALL_OFFICE: 'small office', + cte.MEDIUM_OFFICE: 'medium office', + cte.LARGE_OFFICE: 'large office', + cte.COURTHOUSE: 'medium office', + cte.FIRE_STATION: 'n/a', + cte.PENITENTIARY: 'large hotel', + cte.POLICE_STATION: 'n/a', + cte.POST_OFFICE: 'medium office', + cte.LIBRARY: 'medium office', + cte.EDUCATION: 'secondary school', + cte.PRIMARY_SCHOOL: 'primary school', + cte.PRIMARY_SCHOOL_WITH_SHOWER: 'primary school', + cte.SECONDARY_SCHOOL: 'secondary school', + cte.UNIVERSITY: 'secondary school', + cte.LABORATORY_AND_RESEARCH_CENTER: 'secondary school', + cte.STAND_ALONE_RETAIL: 'stand-alone retail', + cte.HOSPITAL: 'hospital', + cte.OUT_PATIENT_HEALTH_CARE: 'outpatient healthcare', + cte.HEALTH_CARE: 'outpatient healthcare', + cte.RETIREMENT_HOME_OR_ORPHANAGE: 'small hotel', + cte.COMMERCIAL: 'strip mall', + cte.STRIP_MALL: 'strip mall', + cte.SUPERMARKET: 'supermarket', + cte.RETAIL_SHOP_WITHOUT_REFRIGERATED_FOOD: 'stand-alone retail', + cte.RETAIL_SHOP_WITH_REFRIGERATED_FOOD: 'stand-alone retail', + cte.RESTAURANT: 'full service restaurant', + cte.QUICK_SERVICE_RESTAURANT: 'quick service restaurant', + cte.FULL_SERVICE_RESTAURANT: 'full service restaurant', + cte.HOTEL: 'small hotel', + cte.HOTEL_MEDIUM_CLASS: 'small hotel', + cte.SMALL_HOTEL: 'small hotel', + cte.LARGE_HOTEL: 'large hotel', + cte.DORMITORY: 'small hotel', + cte.EVENT_LOCATION: 'n/a', + cte.CONVENTION_CENTER: 'n/a', + cte.HALL: 'n/a', + cte.GREEN_HOUSE: 'n/a', + cte.INDUSTRY: 'n/a', + cte.WORKSHOP: 'n/a', + cte.WAREHOUSE: 'warehouse', + cte.WAREHOUSE_REFRIGERATED: 'warehouse', + cte.SPORTS_LOCATION: 'n/a', + cte.SPORTS_ARENA: 'n/a', + cte.GYMNASIUM: 'n/a', + cte.MOTION_PICTURE_THEATRE: 'n/a', + cte.MUSEUM: 'n/a', + cte.PERFORMING_ARTS_THEATRE: 'n/a', + cte.TRANSPORTATION: 'n/a', + cte.AUTOMOTIVE_FACILITY: 'n/aquebec_to_hub', + cte.PARKING_GARAGE: 'n/a', + cte.RELIGIOUS: 'n/a', + cte.NON_HEATED: 'n/a' + } + + @property + def dictionary(self): + return self._dictionary diff --git a/hub/helpers/data/hub_usage_to_comnet_usage.py b/hub/helpers/data/hub_usage_to_comnet_usage.py new file mode 100644 index 00000000..dbdf6861 --- /dev/null +++ b/hub/helpers/data/hub_usage_to_comnet_usage.py @@ -0,0 +1,78 @@ +""" +Dictionaries module for hub usage to Comnet usage +SPDX - License - Identifier: LGPL - 3.0 - or -later +Copyright © 2022 Concordia CERC group +Project Coder Guille Gutierrez Guillermo.GutierrezMorote@concordia.ca +""" + +import hub.helpers.constants as cte + + +class HubUsageToComnetUsage: + + def __init__(self): + self._dictionary = { + cte.RESIDENTIAL: 'BA Multifamily', + cte.SINGLE_FAMILY_HOUSE: 'BA Multifamily', + cte.MULTI_FAMILY_HOUSE: 'BA Multifamily', + cte.ROW_HOUSE: 'BA Multifamily', + cte.MID_RISE_APARTMENT: 'BA Multifamily', + cte.HIGH_RISE_APARTMENT: 'BA Multifamily', + cte.OFFICE_AND_ADMINISTRATION: 'BA Office', + cte.SMALL_OFFICE: 'BA Office', + cte.MEDIUM_OFFICE: 'BA Office', + cte.LARGE_OFFICE: 'BA Office', + cte.COURTHOUSE: 'BA Courthouse', + cte.FIRE_STATION: 'BA Fire Station', + cte.PENITENTIARY: 'BA Penitentiary', + cte.POLICE_STATION: 'BA Police Station', + cte.POST_OFFICE: 'BA Post Office', + cte.LIBRARY: 'BA Library', + cte.EDUCATION: 'BA School/University', + cte.PRIMARY_SCHOOL: 'BA School/University', + cte.PRIMARY_SCHOOL_WITH_SHOWER: 'BA School/University', + cte.SECONDARY_SCHOOL: 'BA School/University', + cte.UNIVERSITY: 'BA School/University', + cte.LABORATORY_AND_RESEARCH_CENTER: 'BA School/University', + cte.STAND_ALONE_RETAIL: 'BA Retail', + cte.HOSPITAL: 'BA Hospital', + cte.OUT_PATIENT_HEALTH_CARE: 'BA Healthcare Clinic', + cte.HEALTH_CARE: 'BA Healthcare Clinic', + cte.RETIREMENT_HOME_OR_ORPHANAGE: 'BA Healthcare Clinic', + cte.COMMERCIAL: 'BA Retail', + cte.STRIP_MALL: 'BA Retail', + cte.SUPERMARKET: 'BA Retail', + cte.RETAIL_SHOP_WITHOUT_REFRIGERATED_FOOD: 'BA Retail', + cte.RETAIL_SHOP_WITH_REFRIGERATED_FOOD: 'BA Retail', + cte.RESTAURANT: 'BA Dining: Bar Lounge/Leisure', + cte.QUICK_SERVICE_RESTAURANT: 'BA Dining: Cafeteria/Fast Food', + cte.FULL_SERVICE_RESTAURANT: 'BA Dining: Bar Lounge/Leisure', + cte.HOTEL: 'BA Hotel', + cte.HOTEL_MEDIUM_CLASS: 'BA Motel', + cte.SMALL_HOTEL: 'BA Motel', + cte.LARGE_HOTEL: 'BA Hotel', + cte.DORMITORY: 'BA Dormitory', + cte.EVENT_LOCATION: 'BA Convention Center', + cte.CONVENTION_CENTER: 'BA Convention Center', + cte.HALL: 'BA Town Hall', + cte.GREEN_HOUSE: 'n/a', + cte.INDUSTRY: 'BA Manufacturing Facility', + cte.WORKSHOP: 'BA Workshop', + cte.WAREHOUSE: 'BA Warehouse', + cte.WAREHOUSE_REFRIGERATED: 'BA Warehouse', + cte.SPORTS_LOCATION: 'BA Exercise Center', + cte.SPORTS_ARENA: 'BA Sports Arena', + cte.GYMNASIUM: 'BA Gymnasium', + cte.MOTION_PICTURE_THEATRE: 'BA Motion Picture Theater', + cte.MUSEUM: 'BA Museum', + cte.PERFORMING_ARTS_THEATRE: 'BA Performing Arts Theater', + cte.TRANSPORTATION: 'BA Transportation', + cte.AUTOMOTIVE_FACILITY: 'BA Automotive Facility', + cte.PARKING_GARAGE: 'BA Parking Garage', + cte.RELIGIOUS: 'BA Religious Building', + cte.NON_HEATED: 'n/a' + } + + @property + def dictionary(self): + return self._dictionary diff --git a/hub/helpers/data/hub_usage_to_hft_usage.py b/hub/helpers/data/hub_usage_to_hft_usage.py new file mode 100644 index 00000000..bde32dc3 --- /dev/null +++ b/hub/helpers/data/hub_usage_to_hft_usage.py @@ -0,0 +1,78 @@ +""" +Dictionaries module for hub usage to Hft usage +SPDX - License - Identifier: LGPL - 3.0 - or -later +Copyright © 2022 Concordia CERC group +Project Coder Guille Gutierrez Guillermo.GutierrezMorote@concordia.ca +""" + +import hub.helpers.constants as cte + + +class HubUsageToHftUsage: + + def __init__(self): + self._dictionary = { + cte.RESIDENTIAL: 'residential', + cte.SINGLE_FAMILY_HOUSE: 'single family house', + cte.MULTI_FAMILY_HOUSE: 'multifamily house', + cte.ROW_HOUSE: 'single family house', + cte.MID_RISE_APARTMENT: 'multifamily house', + cte.HIGH_RISE_APARTMENT: 'multifamily house', + cte.OFFICE_AND_ADMINISTRATION: 'office and administration', + cte.SMALL_OFFICE: 'office and administration', + cte.MEDIUM_OFFICE: 'office and administration', + cte.LARGE_OFFICE: 'office and administration', + cte.COURTHOUSE: 'office and administration', + cte.FIRE_STATION: 'office and administration', + cte.PENITENTIARY: 'school with shower', + cte.POLICE_STATION: 'office and administration', + cte.POST_OFFICE: 'office and administration', + cte.LIBRARY: 'office and administration', + cte.EDUCATION: 'education', + cte.PRIMARY_SCHOOL: 'school without shower', + cte.PRIMARY_SCHOOL_WITH_SHOWER: 'school with shower', + cte.SECONDARY_SCHOOL: 'education', + cte.UNIVERSITY: 'education', + cte.LABORATORY_AND_RESEARCH_CENTER: 'laboratory and research centers', + cte.STAND_ALONE_RETAIL: 'retail', + cte.HOSPITAL: 'health care', + cte.OUT_PATIENT_HEALTH_CARE: 'health care', + cte.HEALTH_CARE: 'health care', + cte.RETIREMENT_HOME_OR_ORPHANAGE: 'Home for the aged or orphanage', + cte.COMMERCIAL: 'retail', + cte.STRIP_MALL: 'retail', + cte.SUPERMARKET: 'retail shop / refrigerated food', + cte.RETAIL_SHOP_WITHOUT_REFRIGERATED_FOOD: 'retail', + cte.RETAIL_SHOP_WITH_REFRIGERATED_FOOD: 'retail shop / refrigerated food', + cte.RESTAURANT: 'restaurant', + cte.QUICK_SERVICE_RESTAURANT: 'restaurant', + cte.FULL_SERVICE_RESTAURANT: 'restaurant', + cte.HOTEL: 'hotel', + cte.HOTEL_MEDIUM_CLASS: 'hotel (Medium-class)', + cte.SMALL_HOTEL: 'hotel', + cte.LARGE_HOTEL: 'hotel', + cte.DORMITORY: 'dormitory', + cte.EVENT_LOCATION: 'event location', + cte.CONVENTION_CENTER: 'event location', + cte.HALL: 'hall', + cte.GREEN_HOUSE: 'green house', + cte.INDUSTRY: 'industry', + cte.WORKSHOP: 'industry', + cte.WAREHOUSE: 'industry', + cte.WAREHOUSE_REFRIGERATED: 'industry', + cte.SPORTS_LOCATION: 'sport location', + cte.SPORTS_ARENA: 'sport location', + cte.GYMNASIUM: 'sport location', + cte.MOTION_PICTURE_THEATRE: 'event location', + cte.MUSEUM: 'event location', + cte.PERFORMING_ARTS_THEATRE: 'event location', + cte.TRANSPORTATION: 'n/a', + cte.AUTOMOTIVE_FACILITY: 'n/a', + cte.PARKING_GARAGE: 'n/a', + cte.RELIGIOUS: 'event location', + cte.NON_HEATED: 'non-heated' + } + + @property + def dictionary(self): + return self._dictionary diff --git a/hub/helpers/data/hub_usage_to_nrcan_usage.py b/hub/helpers/data/hub_usage_to_nrcan_usage.py new file mode 100644 index 00000000..f8594dc8 --- /dev/null +++ b/hub/helpers/data/hub_usage_to_nrcan_usage.py @@ -0,0 +1,78 @@ +""" +Dictionaries module for hub usage to NRCAN usage +SPDX - License - Identifier: LGPL - 3.0 - or -later +Copyright © 2022 Concordia CERC group +Project Coder Guille Gutierrez Guillermo.GutierrezMorote@concordia.ca +""" + +import hub.helpers.constants as cte + + +class HubUsageToNrcanUsage: + + def __init__(self): + self._dictionary = { + cte.RESIDENTIAL: 'Multi-unit residential building', + cte.SINGLE_FAMILY_HOUSE: 'Multi-unit residential building', + cte.MULTI_FAMILY_HOUSE: 'Multi-unit residential building', + cte.ROW_HOUSE: 'Multi-unit residential building', + cte.MID_RISE_APARTMENT: 'Multi-unit residential building', + cte.HIGH_RISE_APARTMENT: 'Multi-unit residential building', + cte.OFFICE_AND_ADMINISTRATION: 'Office', + cte.SMALL_OFFICE: 'Office', + cte.MEDIUM_OFFICE: 'Office', + cte.LARGE_OFFICE: 'Office', + cte.COURTHOUSE: 'Courthouse', + cte.FIRE_STATION: 'Fire station', + cte.PENITENTIARY: 'Penitentiary', + cte.POLICE_STATION: 'Police station', + cte.POST_OFFICE: 'Post office', + cte.LIBRARY: 'Library', + cte.EDUCATION: 'School/university', + cte.PRIMARY_SCHOOL: 'School/university', + cte.PRIMARY_SCHOOL_WITH_SHOWER: 'School/university', + cte.SECONDARY_SCHOOL: 'School/university', + cte.UNIVERSITY: 'School/university', + cte.LABORATORY_AND_RESEARCH_CENTER: 'School/university', + cte.STAND_ALONE_RETAIL: 'Retail', + cte.HOSPITAL: 'Hospital', + cte.OUT_PATIENT_HEALTH_CARE: 'Health-care clinic', + cte.HEALTH_CARE: 'Health-care clinic', + cte.RETIREMENT_HOME_OR_ORPHANAGE: 'Health-care clinic', + cte.COMMERCIAL: 'Retail', + cte.STRIP_MALL: 'Retail', + cte.SUPERMARKET: 'Retail', + cte.RETAIL_SHOP_WITHOUT_REFRIGERATED_FOOD: 'Retail', + cte.RETAIL_SHOP_WITH_REFRIGERATED_FOOD: 'Retail', + cte.RESTAURANT: 'Dining - bar/lounge', + cte.QUICK_SERVICE_RESTAURANT: 'Dining - cafeteria', + cte.FULL_SERVICE_RESTAURANT: 'Dining - bar/lounge', + cte.HOTEL: 'Hotel', + cte.HOTEL_MEDIUM_CLASS: 'Motel', + cte.SMALL_HOTEL: 'Motel', + cte.LARGE_HOTEL: 'Hotel', + cte.DORMITORY: 'Dormitory', + cte.EVENT_LOCATION: 'Convention centre', + cte.CONVENTION_CENTER: 'Convention centre', + cte.HALL: 'Town hall', + cte.GREEN_HOUSE: 'n/a', + cte.INDUSTRY: 'Manufacturing facility', + cte.WORKSHOP: 'Workshop', + cte.WAREHOUSE: 'Warehouse', + cte.WAREHOUSE_REFRIGERATED: 'Warehouse - refrigerated', + cte.SPORTS_LOCATION: 'Exercise centre', + cte.SPORTS_ARENA: 'Sports arena', + cte.GYMNASIUM: 'Gymnasium', + cte.MOTION_PICTURE_THEATRE: 'Motion picture theatre', + cte.MUSEUM: 'Museum', + cte.PERFORMING_ARTS_THEATRE: 'Performing arts theatre', + cte.TRANSPORTATION: 'Transportation', + cte.AUTOMOTIVE_FACILITY: 'Automotive facility', + cte.PARKING_GARAGE: 'Parking garage', + cte.RELIGIOUS: 'Religious', + cte.NON_HEATED: 'n/a' + } + + @property + def dictionary(self): + return self._dictionary diff --git a/hub/helpers/data/montreal_function_to_hub_function.py b/hub/helpers/data/montreal_function_to_hub_function.py new file mode 100644 index 00000000..a89fb030 --- /dev/null +++ b/hub/helpers/data/montreal_function_to_hub_function.py @@ -0,0 +1,550 @@ +""" +Dictionaries module for Montreal function to hub function +SPDX - License - Identifier: LGPL - 3.0 - or -later +Copyright © 2022 Concordia CERC group +Project Coder Guille Gutierrez Guillermo.GutierrezMorote@concordia.ca +""" + +import hub.helpers.constants as cte + + +class MontrealFunctionToHubFunction: + + # Todo: "office" and "hotel/motel" need to be replaced for a constant value. + def __init__(self): + self._dictionary = { + "Administration publique municipale et régionale": "Office", + "Administration publique provinciale": "Office", + "Agence de voyages ou d'expéditions": cte.RETAIL_SHOP_WITHOUT_REFRIGERATED_FOOD, + "Aiguillage et cour de triage de chemins de fer": cte.WAREHOUSE, + "Amphithéâtre et auditorium": cte.EVENT_LOCATION, + "Archives (incluant cinémathèquevidéothèque)": cte.EVENT_LOCATION, + "Aréna et activités connexes (patinage sur glace)": cte.SPORTS_LOCATION, + "Association civiquesociale et fraternelle": cte.OFFICE_AND_ADMINISTRATION, + "Associationunion ou coop d'épargne et de prêt (inclus caisses populaires locales)": cte.OFFICE_AND_ADMINISTRATION, + "Atelier d'artiste": cte.WAREHOUSE, + "Atelier d'artiste ou d'artisan": cte.WAREHOUSE, + "Atelier d'usinage": cte.WAREHOUSE, + "Atelier de mécanicien-dentiste": cte.WAREHOUSE, + "Auberge ou gîte touristique (Hôtel à caractère familiald'au plus 3 étages en hauteur de bâtiment)": cte.SMALL_HOTEL, + "Autoroute": cte.WAREHOUSE, + "Autres activités agricoles": cte.INDUSTRY, + "Autres activités culturelles": cte.EVENT_LOCATION, + "Autres activités d'hébergement": cte.MULTI_FAMILY_HOUSE, + "Autres activités d'impression commerciale": cte.WAREHOUSE, + "Autres activités de la restauration": cte.WAREHOUSE, + "Autres activités de récupération et de triage": cte.WAREHOUSE, + "Autres activités de vente au détail (inclus les kiosques d'autres choses que vêtements et accessoires de vêtements)": cte.STAND_ALONE_RETAIL, + "Autres activités de vente au détail de produits de l'alimentation": cte.STAND_ALONE_RETAIL, + "Autres activités de vente au détail de vêtements comme les accessoires": cte.STAND_ALONE_RETAIL, + "Autres activités de vente au détail reliées aux automobilesaux embarcationsaux avions et à leurs accessoires": cte.STAND_ALONE_RETAIL, + "Autres activités de vente en gros": cte.WAREHOUSE, + "Autres activités minières et extraction de carrières de minerais non métalliques (sauf le pétrole)": cte.INDUSTRY, + "Autres activités nautiques": cte.WAREHOUSE, + "Autres activités religieuses": cte.OFFICE_AND_ADMINISTRATION, + "Autres activités reliées au transport de matériaux par camion": cte.WAREHOUSE, + "Autres activités reliées au transport par autobus": cte.WAREHOUSE, + "Autres activités reliées au transport par chemin de fer": cte.WAREHOUSE, + "Autres activités sportives (inclus centres de tir à l'arc)": cte.SPORTS_LOCATION, + "Autres aménagements d'assemblées publiques": cte.OFFICE_AND_ADMINISTRATION, + "Autres aménagements publics pour différentes activités": cte.OFFICE_AND_ADMINISTRATION, + "Autres aéroports": cte.WAREHOUSE, + "Autres bases et réserves militaires": cte.WAREHOUSE, + "Autres centres de recherche": cte.SECONDARY_SCHOOL, + "Autres centres de services sociaux ou bureaux de travailleurs sociaux": cte.OFFICE_AND_ADMINISTRATION, + "Autres centres et réseaux de télévision et de radiodiffusion (système combiné)": "Office", + "Autres entreposages": cte.WAREHOUSE, + "Autres espaces de plancher inoccupé": cte.WAREHOUSE, + "Autres espaces de terrain et étendues d'eau inexploités": cte.WAREHOUSE, + "Autres expositions d'objets culturels": cte.EVENT_LOCATION, + "Autres immeubles résidentiels": cte.MID_RISE_APARTMENT, + "Autres industries d'appareils d'éclairage": cte.INDUSTRY, + "Autres industries de boissons": cte.INDUSTRY, + "Autres industries de la fabrication d'éléments de charpentes métalliques": cte.INDUSTRY, + "Autres industries de la fonte et de l'affinage de métaux non-ferreux": cte.INDUSTRY, + "Autres industries de la machinerie industrielle et de l'équipement industriel": cte.INDUSTRY, + "Autres industries de pièces et d'accessoires pour véhicules automobiles": cte.INDUSTRY, + "Autres industries de produits alimentaires": cte.INDUSTRY, + "Autres industries de produits alimentaires à base de fruits et de légumes": cte.INDUSTRY, + "Autres industries de produits chimiques": cte.INDUSTRY, + "Autres industries de produits du pétrole et du charbon": cte.INDUSTRY, + "Autres industries de produits en béton": cte.INDUSTRY, + "Autres industries de produits en caoutchouc": cte.INDUSTRY, + "Autres industries de produits en fil métallique": cte.INDUSTRY, + "Autres industries de produits en plastique": cte.INDUSTRY, + "Autres industries de produits manufacturés": cte.INDUSTRY, + "Autres industries de produits métalliques d'ornement et d'architecture": cte.INDUSTRY, + "Autres industries de produits métalliques divers": cte.INDUSTRY, + "Autres industries de produits textiles": cte.INDUSTRY, + "Autres industries de produits électriques.": cte.INDUSTRY, + "Autres industries de vêtements coupés cousus pour femmes et filles": cte.INDUSTRY, + "Autres industries du bois": cte.INDUSTRY, + "Autres industries du laminagedu moulage et de l'extrusion de métaux non-ferreux": cte.INDUSTRY, + "Autres industries du matériel de transport": cte.INDUSTRY, + "Autres industries du matériel scientifique et professionnel": cte.INDUSTRY, + "Autres industries du matériel électrique d'usage industriel": cte.INDUSTRY, + "Autres industries du matériel électronique et de communication": cte.INDUSTRY, + "Autres industries du meuble de bureau": cte.INDUSTRY, + "Autres industries du meuble et d'articles d'ameublement": cte.INDUSTRY, + "Autres industries du meuble résidentiel.": cte.INDUSTRY, + "Autres industries du papier": cte.INDUSTRY, + "Autres industries sidérurgiques": cte.INDUSTRY, + "Autres infrastructures de transport maritime": cte.INDUSTRY, + "Autres installations inhérentes aux ordures": cte.WAREHOUSE, + "Autres installations pour les sports": cte.SPORTS_LOCATION, + "Autres institutions de formation spécialisée (inclus écoles de langues de coutured'arts martiaux de combats et autres)": cte.SECONDARY_SCHOOL, + "Autres lieux d'assemblée pour les loisirs": cte.OFFICE_AND_ADMINISTRATION, + "Autres locaux de groupes": cte.OFFICE_AND_ADMINISTRATION, + "Autres maisons d'institutions religieuses": cte.OFFICE_AND_ADMINISTRATION, + "Autres maisons et locaux fraternels": cte.OFFICE_AND_ADMINISTRATION, + "Autres maisons pour personnes retraitées": cte.OFFICE_AND_ADMINISTRATION, + "Autres parcs": cte.WAREHOUSE, + "Autres routes et voies publiques": "Office", + "Autres résidences d'étudiants": "Office", + "Autres résidences provisoires": "Office", + "Autres services connexes aux valeurs mobilières et aux marchandises": cte.RETAIL_SHOP_WITHOUT_REFRIGERATED_FOOD, + "Autres services d'affaires": "Office", + "Autres services d'aqueduc et d'irrigation": cte.WAREHOUSE, + "Autres services de construction de bâtiments": cte.WAREHOUSE, + "Autres services de génie civil (entrepreneur général)": cte.WAREHOUSE, + "Autres services de l'automobile": cte.WAREHOUSE, + "Autres services de location (sauf entreposage)": cte.WAREHOUSE, + "Autres services de nettoyage": cte.WAREHOUSE, + "Autres services de réparation et d'entretien d'articles personnels et ménagers": cte.STAND_ALONE_RETAIL, + "Autres services de soins thérapeutiques": cte.OUT_PATIENT_HEALTH_CARE, + "Autres services de travaux de construction spécialisés": cte.WAREHOUSE, + "Autres services de travaux de finition de bâtiment (entrepreneur spécialisé)": cte.WAREHOUSE, + "Autres services de télécommunications": cte.STAND_ALONE_RETAIL, + "Autres services divers": cte.WAREHOUSE, + "Autres services du pétrole": cte.WAREHOUSE, + "Autres services gouvernementaux": cte.OFFICE_AND_ADMINISTRATION, + "Autres services immobiliersfinanciers et d'assurance": cte.OFFICE_AND_ADMINISTRATION, + "Autres services médicaux et de santé": cte.OUT_PATIENT_HEALTH_CARE, + "Autres services personnels": cte.OUT_PATIENT_HEALTH_CARE, + "Autres services pour animaux domestiques": cte.OUT_PATIENT_HEALTH_CARE, + "Autres services pour le transport": cte.WAREHOUSE, + "Autres services pour les bâtiments": cte.WAREHOUSE, + "Autres services professionnels": cte.OFFICE_AND_ADMINISTRATION, + "Autres services publics (infrastructure)": cte.WAREHOUSE, + "Autres services reliés à la foresterie": cte.WAREHOUSE, + "Autres terrains de jeux et pistes athlétiques": cte.SPORTS_LOCATION, + "Autres transports par avion (infrastructure)": cte.WAREHOUSE, + "Autres transports par véhicule automobile": cte.WAREHOUSE, + "Autres transportscommunications et services publics (infrastructure)": cte.GREEN_HOUSE, + "Autres types de production végétale": cte.GREEN_HOUSE, + "Autres ventes au détail de marchandises en général": cte.STAND_ALONE_RETAIL, + "Autres établissements avec service complet ou restreint": cte.STAND_ALONE_RETAIL, + "Autres établissements de débits de boissons alcoolisées": cte.STAND_ALONE_RETAIL, + "Aéroport et aérodrome": cte.EVENT_LOCATION, + "Bar à crème glacée": cte.QUICK_SERVICE_RESTAURANT, + "Bar à spectacles": cte.FULL_SERVICE_RESTAURANT, + "Bibliothèque": cte.OFFICE_AND_ADMINISTRATION, + "Bureau de poste": cte.OFFICE_AND_ADMINISTRATION, + "Bâtiment incendié et inutilisable": cte.NON_HEATED, + "C.E.G.E.P. (collège d'enseignement général et professionnel)": cte.SECONDARY_SCHOOL, + "Centre commercial de quartier (15 à 44 magasins)": cte.STRIP_MALL, + "Centre commercial de voisinage (14 magasins et moins)": cte.STAND_ALONE_RETAIL, + "Centre commercial local (45 à 99 magasins)": cte.STRIP_MALL, + "Centre commercial régional (100 à 199 magasins)": cte.STRIP_MALL, + "Centre commercial super régional (200 magasins et plus)": cte.STRIP_MALL, + "Centre communautaire ou de quartier (inclus Centre diocésain)": cte.OFFICE_AND_ADMINISTRATION, + "Centre d'accueil ou établissement curatif (inclus centre de réadaptation pour handicapés physiques et mentaux)": cte.OUT_PATIENT_HEALTH_CARE, + "Centre d'appels téléphoniques": "Office", + "Centre d'entraide et de ressources communautaires (inclus ressources d'hébergement de meubles et d'alimentation)": cte.OUT_PATIENT_HEALTH_CARE, + "Centre d'entreposage de produits pétroliers (pétrole brutgaz pétrole liquéfiémazout domestique et autres produits raffinés)": cte.WAREHOUSE, + "Centre d'entreposage du gaz (avant distrib.aux consommateurs)": cte.WAREHOUSE, + "Centre de distribution ou d'expédition de marchandises diverses": cte.WAREHOUSE, + "Centre de recherche d'activités émergentes (inclus technologies langagières et la photonique)": cte.SECONDARY_SCHOOL, + "Centre de santé (inclus saunas spas et bains thérapeutiques ou turcs)": cte.OUT_PATIENT_HEALTH_CARE, + "Centre de services sociaux (C.S.S. et C.R.S.S.S.)": cte.OUT_PATIENT_HEALTH_CARE, + "Centre de transfert ou d'entreposage de déchets dangereux": cte.WAREHOUSE, + "Centre de tri postal": cte.WAREHOUSE, + "Centre de vérification technique d'automobiles et d'estimation": cte.WAREHOUSE, + "Centre local de services communautaires (C.L.S.C.)": cte.OFFICE_AND_ADMINISTRATION, + "Centre militaire de transport et d'entreposage": cte.WAREHOUSE, + "Centre récréatif en général (activités récréatives diversifiées pour tous groupes d'âge)": cte.EVENT_LOCATION, + "Centre sportif multidisciplinaire (couvert).": cte.SPORTS_LOCATION, + "Chalet ou maison de villégiature": cte.SINGLE_FAMILY_HOUSE, + "Chemin de fer (sauf train touristiqueaiguillage et cour de triage)": cte.WAREHOUSE, + "Cimetière": cte.WAREHOUSE, + "Cinéma": cte.EVENT_LOCATION, + "Clinique médicale (cabinet de médecins généralistes)": cte.OUT_PATIENT_HEALTH_CARE, + "Commission scolaire": cte.OFFICE_AND_ADMINISTRATION, + "Conserveriemarinagesaumurage et séchage de fruits et de légumes": cte.WAREHOUSE, + "Construction d'immeubles pour revente": cte.WAREHOUSE, + "Couvent": cte.EVENT_LOCATION, + "Dépanneur (sans vente d'essence)": cte.RETAIL_SHOP_WITHOUT_REFRIGERATED_FOOD, + "Entreposage de tout genre": cte.WAREHOUSE, + "Entreposage du mobilier et d'appareils ménagersincluant les mini-entrepôts": cte.WAREHOUSE, + "Entreposage en vrac à l'extérieur": cte.WAREHOUSE, + "Entreposage frigorifique (sauf les armoires frigorifiques)": cte.WAREHOUSE, + "Entreprise d'excavationde nivellementde défrichage et installation de fosses septiques": cte.WAREHOUSE, + "Entrepôt pour le transport par camion": cte.WAREHOUSE, + "Entretien et équipement de chemins de fer": cte.WAREHOUSE, + "Espace de plancher inoccupé dont l'usage serait commercial autre": cte.NON_HEATED, + "Espace de plancher inoccupé dont l'usage serait industriel": cte.NON_HEATED, + "Espace de plancher inoccupé dont l'usage serait pour des fins culturelles": cte.NON_HEATED, + "Espace de plancher inoccupé dont l'usage serait pour services publics": cte.NON_HEATED, + "Espace de rangement (condo non résidentiel)": cte.NON_HEATED, + "Espace de rangement (condo)": cte.NON_HEATED, + "Espace de terrain non aménagé et non exploité (sauf l'exploitation non commerciale de la forêt)": cte.NON_HEATED, + "Espace pour le séchage des boues provenant de l'usine d'épuration": cte.WAREHOUSE, + "Fabrication de crème glacée et de desserts congelés": cte.INDUSTRY, + "Fondations et organismes de charité": cte.OFFICE_AND_ADMINISTRATION, + "Galerie d'art": cte.EVENT_LOCATION, + "Garage d'autobus et équipement d'entretien": cte.WAREHOUSE, + "Garage de stationnement pour automobiles (infrastructure)": cte.WAREHOUSE, + "Garage de stationnement pour véhicules lourds (Infrastructure)": cte.WAREHOUSE, + "Garage et équipement d'entretien pour le transport par camion (incluant garages municipaux)": cte.WAREHOUSE, + "Gare d'autobus pour passagers": cte.WAREHOUSE, + "Gare de chemins de fer": cte.WAREHOUSE, + "Gymnase et formation athlétique": cte.SPORTS_LOCATION, + "Hangar à avion": cte.WAREHOUSE, + "Hôtel (incluant les hôtels-motels)": "Hotel/Motel", + "Hôtel résidentiel": "Hotel/Motel", + "Immeuble commercial": cte.STAND_ALONE_RETAIL, + "Immeuble non résidentiel en construction": "Office", + "Immeuble résidentiel en construction": cte.RESIDENTIAL, + "Immeuble à bureaux": "Office", + "Immeuble à temps partagé («time share») Propriété ou copropriété ou groupe d'usufruitier ont chacun droit de jouissancepériodique et successif.": "Office", + "Incinérateur": cte.INDUSTRY, + "Industrie d'accessoires vestimentaires et d'autres vêtements": cte.INDUSTRY, + "Industrie d'alcools destinés à la consommation (distillerie)": cte.INDUSTRY, + "Industrie d'appareils d'éclairage (sauf ampoules et tubes)": cte.INDUSTRY, + "Industrie d'appareils orthopédiques et chirurgicaux": cte.INDUSTRY, + "Industrie d'armoires de placards de cuisine et de coiffeuses de salle de bains en bois": cte.INDUSTRY, + "Industrie d'articles de maison en textile et d'articles d'hygiène en textile": cte.INDUSTRY, + "Industrie d'articles de sport et d'athlétisme": cte.INDUSTRY, + "Industrie d'assaisonnements et de vinaigrettes": cte.INDUSTRY, + "Industrie d'autres produits de boulangerie et de pâtisseries": cte.INDUSTRY, + "Industrie d'autres vêtements coupés cousus pour hommes et garçons": cte.INDUSTRY, + "Industrie d'engrais chimique et d'engrais composé": cte.INDUSTRY, + "Industrie d'enseignes au néon (excluant les enseignes en bois) éclairage interne": cte.INDUSTRY, + "Industrie d'équipements de télécommunication": cte.INDUSTRY, + "Industrie de bas et de chaussettes": cte.INDUSTRY, + "Industrie de boissons gazeuses": cte.INDUSTRY, + "Industrie de boîtes en carton ondulé et en carton compact": cte.INDUSTRY, + "Industrie de boîtes pliantes et rigides": cte.INDUSTRY, + "Industrie de carrosseries de véhicules automobiles": cte.INDUSTRY, + "Industrie de chaudièresd'échangeurs de chaleur et de plaques métalliques": cte.INDUSTRY, + "Industrie de contenants en plastique (sauf en mousse)": cte.INDUSTRY, + "Industrie de contreplaqués en bois": cte.INDUSTRY, + "Industrie de fabrication de gaz industriel": cte.INDUSTRY, + "Industrie de fils et de câbles électriques": cte.INDUSTRY, + "Industrie de filés et de tissus tissés (coton)": cte.INDUSTRY, + "Industrie de garnitures et de raccords de plomberie en métal": cte.INDUSTRY, + "Industrie de jouets et de jeux": cte.INDUSTRY, + "Industrie de l'abattage et du conditionnement de la viande (sauf la volaille et le petit gibier)": cte.INDUSTRY, + "Industrie de l'abattage et du conditionnement de la volaille et du petit gibier": cte.INDUSTRY, + "Industrie de l'impression de formulaires commerciaux": cte.INDUSTRY, + "Industrie de l'équipement de manutention": cte.INDUSTRY, + "Industrie de l'étirage de l'extrusion et alliage de l'aluminiumfabriqué à partir d'aluminium acheté": cte.INDUSTRY, + "Industrie de la bijouterie et de l'orfèvrerie (sauf l'affinage secondaire de métaux précieux)": cte.INDUSTRY, + "Industrie de la bière": cte.INDUSTRY, + "Industrie de la chaussure": cte.INDUSTRY, + "Industrie de la confection à forfait de vêtements pour femmes et filles": cte.INDUSTRY, + "Industrie de la construction et de la réparation de navires": cte.INDUSTRY, + "Industrie de la fabrication de supports d'enregistrement de la reproduction du son et des instruments de musique": cte.INDUSTRY, + "Industrie de la glace": cte.INDUSTRY, + "Industrie de la machinerie pour la construction et du matériel d'entretien": cte.INDUSTRY, + "Industrie de la préparation et du conditionnement de poissons et de fruits de mer": cte.INDUSTRY, + "Industrie de la quincaillerie de base": cte.INDUSTRY, + "Industrie de la transformation de la viande et de la fonte des graisses animales": cte.INDUSTRY, + "Industrie de la tôlerie pour ventilation": cte.INDUSTRY, + "Industrie de lampes électriques (ampoules et tubes)": cte.INDUSTRY, + "Industrie de moteurs et de pièces de moteurs de véhicules automobiles": cte.INDUSTRY, + "Industrie de mélange de farine et de pâte": cte.INDUSTRY, + "Industrie de peinturede teinture et de vernis": cte.INDUSTRY, + "Industrie de pellicules et de feuilles non renforcées en plastique": cte.INDUSTRY, + "Industrie de pièces en plastique pour véhicules automobiles": cte.INDUSTRY, + "Industrie de pièces et de composantes électroniques": cte.INDUSTRY, + "Industrie de pneus et de chambres à air": cte.INDUSTRY, + "Industrie de portes et de fenêtres en métal": cte.INDUSTRY, + "Industrie de portes et fenêtres en plastique": cte.INDUSTRY, + "Industrie de produits chimiques inorganiques d'usage industriel": cte.INDUSTRY, + "Industrie de produits d'architecture en plastique": cte.INDUSTRY, + "Industrie de produits de boulangerie commerciale de produits de boulangerie congelés et de pâtisseries": cte.INDUSTRY, + "Industrie de produits de toilette": cte.INDUSTRY, + "Industrie de produits en pierre": cte.INDUSTRY, + "Industrie de produits en plastique stratifié sous pression ou renforcé": cte.INDUSTRY, + "Industrie de produits en verre fabriqué à partir de verre acheté": cte.INDUSTRY, + "Industrie de produits pharmaceutiques et de médicaments": cte.INDUSTRY, + "Industrie de produits pétrochimiques": cte.INDUSTRY, + "Industrie de produits pétroliers raffinés (sauf les huiles de graissage et les graisses lubrifiantes)": cte.INDUSTRY, + "Industrie de pâtes alimentaires sèches": cte.INDUSTRY, + "Industrie de récipients et de boîtes en métal": cte.INDUSTRY, + "Industrie de résines synthétiques et de caoutchouc synthétique": cte.INDUSTRY, + "Industrie de sacs et de poches en matière textile": cte.INDUSTRY, + "Industrie de sacs et de sachets en plastique": cte.INDUSTRY, + "Industrie de savons et de détachants pour le nettoyage": cte.INDUSTRY, + "Industrie de sommiers et de matelas": cte.INDUSTRY, + "Industrie de soupapes en métal": cte.INDUSTRY, + "Industrie de tapis carpettes et moquettes": cte.INDUSTRY, + "Industrie de tous les autres produits divers en bois": cte.INDUSTRY, + "Industrie de tous les autres produits en papier transformé (sauf pour le bureau)": cte.INDUSTRY, + "Industrie de ventilateursde soufflantes et de purificateurs d'air industriels et commerciaux": cte.INDUSTRY, + "Industrie de vêtements de sport pour femmes et filles": cte.INDUSTRY, + "Industrie de vêtements professionnels coupés cousus": cte.INDUSTRY, + "Industrie des pièces et accessoires d'aéronefs (incluant avions et hélicoptères)": cte.INDUSTRY, + "Industrie du béton préparé": cte.INDUSTRY, + "Industrie du cannabis": cte.INDUSTRY, + "Industrie du ciment": cte.INDUSTRY, + "Industrie du clichagede la composition de la reliure et de la lithographie": cte.INDUSTRY, + "Industrie du fromage": cte.INDUSTRY, + "Industrie du lait de consommation": cte.INDUSTRY, + "Industrie du laminagede l'étirage et de l'extrusion du cuivre et de ses alliages": cte.INDUSTRY, + "Industrie du matériel de chauffage et du matériel de réfrigération commerciale": cte.INDUSTRY, + "Industrie du matériel de transport": cte.INDUSTRY, + "Industrie du matériel ferroviaire roulant": cte.INDUSTRY, + "Industrie du matériel électrique de communication et de protection": cte.INDUSTRY, + "Industrie du meuble de maison en bois": cte.INDUSTRY, + "Industrie du meuble et d'articles d'ameublement pour hôtelsrestaurants et institutions": cte.INDUSTRY, + "Industrie du pain": cte.INDUSTRY, + "Industrie du revêtement métallique sur commande": cte.INDUSTRY, + "Industrie du sucre de canne et de betterave à sucre": cte.INDUSTRY, + "Industrie du thé et du café": cte.INDUSTRY, + "Industries des appareils d'aéronefs (incluant avions et hélicoptères)": cte.INDUSTRY, + "Installation d'équipements de réfrigération commerciale": cte.WAREHOUSE, + "Installation portuaire en général": cte.WAREHOUSE, + "Jardin botanique": cte.WAREHOUSE, + "Ligne de l'oléoduc": cte.WAREHOUSE, + "Local pour les associations fraternelles": "Office", + "Logement": cte.RESIDENTIAL, + "Logement vacant dans un bâtiment comportant plusieurs logements ou autres locaux": cte.RESIDENTIAL, + "Loisir et autres activités culturelles": "Office", + "Maison d'agentsde courtiers et de services d'administration des biens-fonds": "Office", + "Maison d'étudiants (collège et université)": "Office", + "Maison de chambres et pension": "Office", + "Maison de chambres pour personnes ayant une déficience intellectuelle": "Office", + "Maison de courtiers et de négociants de marchandises": "Office", + "Maison de réhabilitation": "Office", + "Maison des jeunes": "Office", + "Maison pour personnes en difficulté (séjours périodes limitées)": "Office", + "Maison pour personnes retraitées autonomes": cte.DORMITORY, + "Maison pour personnes retraitées non autonomes (inclus les CHLSD)": cte.DORMITORY, + "Marché public": cte.STRIP_MALL, + "Meunerie et minoterie": "Office", + "Monastère": cte.DORMITORY, + "Monument et site historique": cte.EVENT_LOCATION, + "Motel": "hotel/Motel", + "Musée": cte.EVENT_LOCATION, + "Organisme international et autres organismes extraterritoriaux": "Office", + "Parc d'amusement (extérieur)": cte.NON_HEATED, + "Parc de maisons mobiles (fonds de terre seulement)": cte.NON_HEATED, + "Parc pour la récréation en général": cte.NON_HEATED, + "Parc à caractère récréatif et ornemental": cte.NON_HEATED, + "Passage": cte.NON_HEATED, + "Piscine extérieure et activités connexes": cte.NON_HEATED, + "Piscine intérieure et activités connexes": cte.SPORTS_LOCATION, + "Pose et réparation de parement métalliques et autres (entrepreneur spécialisé)": cte.WAREHOUSE, + "Poste et bureau de douanes": cte.OFFICE_AND_ADMINISTRATION, + "Pouponnière ou garderie de nuit": cte.HOSPITAL, + "Presbytère": cte.OFFICE_AND_ADMINISTRATION, + "Prison provinciale": cte.DORMITORY, + "Protection contre l'incendie et activités connexes": cte.WAREHOUSE, + "Raffinerie de pétrole": cte.INDUSTRY, + "Restaurant et établissement avec service complet (avec terrasse) - Établissements avec permis alcool inclus pub café et brasserie": cte.FULL_SERVICE_RESTAURANT, + "Restaurant et établissement avec service complet (sans terrasse) -Établissements avec permis alcoolinclus pub café et brasserie": cte.FULL_SERVICE_RESTAURANT, + "Restaurant et établissement avec service restreint ( commande au comptoir ou par téléphone)": cte.QUICK_SERVICE_RESTAURANT, + "Restaurant et établissement offrant des repas à libre-service (cafétéria cantine)": cte.QUICK_SERVICE_RESTAURANT, + "Rue et avenue pour l'accès local": cte.NON_HEATED, + "Ruelle": cte.NON_HEATED, + "Récupération et triage de matières polluantes et toxiques": cte.WAREHOUSE, + "Récupération et triage de métaux": cte.WAREHOUSE, + "Réparation et entretien des avions": cte.WAREHOUSE, + "Réserve pour la protection de la faune": cte.NON_HEATED, + "Réservoir d'eau (installation d'emmagasinage de l'eau par retenue et réservoirs)": cte.NON_HEATED, + "Résidence de tourismeappartement maison ou chalet (meublé et équipé pour repas)": "hotel/Motel", + "Salle d'exposition": cte.EVENT_LOCATION, + "Salle et terrain de squash de racquetball et de tennis": cte.SPORTS_LOCATION, + "Salle ou salon de quilles": cte.NON_HEATED, + "Salon de beauté (maquillagemanucureetc..)": cte.RETAIL_SHOP_WITHOUT_REFRIGERATED_FOOD, + "Salon de coiffure": cte.RETAIL_SHOP_WITHOUT_REFRIGERATED_FOOD, + "Salon funéraire": cte.RETAIL_SHOP_WITHOUT_REFRIGERATED_FOOD, + "Service bancaire (dépôts et prêtsincluant banque à charte)": cte.OFFICE_AND_ADMINISTRATION, + "Service d'ambulance": cte.WAREHOUSE, + "Service d'architecture": cte.OFFICE_AND_ADMINISTRATION, + "Service d'assainissement de l'environnement": cte.WAREHOUSE, + "Service d'emballage et de protection de marchandises": cte.WAREHOUSE, + "Service d'envoi de marchandises": cte.WAREHOUSE, + "Service d'hébergement des données (sites Web diffusion audio et vidéo en continu services d'application)": cte.WAREHOUSE, + "Service d'hôpital (inclus hôpitaux psychiatriques)": cte.HOSPITAL, + "Service d'optométrie": cte.OUT_PATIENT_HEALTH_CARE, + "Service de buanderie de nettoyage à sec et de teinture (sauf les tapis)": cte.WAREHOUSE, + "Service de comptabilitéde vérification et de tenue de livre": cte.OFFICE_AND_ADMINISTRATION, + "Service de construction de routesde rues et de pontsde trottoirs et de pistes (entrepreneur général)": cte.WAREHOUSE, + "Service de construction non résidentiellecommerciale et institutionnelle (entrepreneur général)": cte.WAREHOUSE, + "Service de construction non résidentielleindustrielle (entrepreneur général)": cte.WAREHOUSE, + "Service de construction résidentielle (entrepreneur)": cte.WAREHOUSE, + "Service de débosselage et de peinture d'automobiles": cte.WAREHOUSE, + "Service de garderie (prématernelle moins de 50 % de poupons)": cte.PRIMARY_SCHOOL, + "Service de génie": cte.OFFICE_AND_ADMINISTRATION, + "Service de holding et d'investissement et de fiducie": cte.OFFICE_AND_ADMINISTRATION, + "Service de laboratoire dentaire": cte.OUT_PATIENT_HEALTH_CARE, + "Service de laboratoire médical": cte.OUT_PATIENT_HEALTH_CARE, + "Service de lavage d'automobiles": cte.WAREHOUSE, + "Service de limousine": cte.WAREHOUSE, + "Service de lingerie et de buanderie industrielle": cte.WAREHOUSE, + "Service de location d'automobiles": cte.WAREHOUSE, + "Service de location d'outils ou d'équipements": cte.WAREHOUSE, + "Service de location d'équipements": cte.WAREHOUSE, + "Service de location de boites postales (sauf le publipostage) et centre de courrier privé": cte.OFFICE_AND_ADMINISTRATION, + "Service de location de camions de remorques utilitaires et de véhicules de plaisance": cte.WAREHOUSE, + "Service de maçonnerie (entrepreneur spécialisé)": cte.INDUSTRY, + "Service de messagers": "Office", + "Service de notaires": "Office", + "Service de paysagement ou de déneigement": cte.WAREHOUSE, + "Service de petite menuiserie et de finition (entrepreneur spécialisé)": cte.RETAIL_SHOP_WITHOUT_REFRIGERATED_FOOD, + "Service de plomberie de chauffagede climatisation et de ventilation (entrepreneur spécialisé)": cte.RETAIL_SHOP_WITHOUT_REFRIGERATED_FOOD, + "Service de police fédérale et activités connexes": cte.OFFICE_AND_ADMINISTRATION, + "Service de police municipale et activités connexes": cte.OFFICE_AND_ADMINISTRATION, + "Service de pose de portesde fenêtres et de panneaux de verre": cte.WAREHOUSE, + "Service de publicité en général": "Office", + "Service de recherche de développement et d'essais": cte.SECONDARY_SCHOOL, + "Service de remplacement de pièces et d'accessoires d'automobiles (amortisseurs silencieux toits ouvrants glacespare-brises...)": cte.WAREHOUSE, + "Service de revêtement en asphalte et en bitume": cte.WAREHOUSE, + "Service de réparation d'automobiles (garage) sans pompes à essence(5531)": cte.WAREHOUSE, + "Service de réparation d'autres véhicules légers": cte.WAREHOUSE, + "Service de réparation de véhicules légers motorisés (motocyclettemotoneige véhicule tout terrain)": cte.WAREHOUSE, + "Service de réparation et d'entretien de machines et de matériel d'usage commercial et industriel": "Office", + "Service de réparation et d'entretien de matériel informatique": "Office", + "Service de réparation et d'entretien de systèmes de plomberieschauffageventilation et climatisation.(entrepreneur spécialisé)": cte.WAREHOUSE, + "Service de réparation et d'entretien de véhicules lourds": cte.WAREHOUSE, + "Service de réparation et de rembourrage de meubles": cte.WAREHOUSE, + "Service de soudure": cte.WAREHOUSE, + "Service de toilettage pour animaux domestiques": cte.OUT_PATIENT_HEALTH_CARE, + "Service de traitement pour automobiles (antirouilleetc.)": cte.WAREHOUSE, + "Service de travaux d'électricité et installation de câblage (entrepreneur spécialisé)": cte.WAREHOUSE, + "Service de travaux de toiture (entrepreneur spécialisé)": cte.WAREHOUSE, + "Service de télécommunication sans fil (appareil mobile sauf par Internet)": cte.WAREHOUSE, + "Service de vétérinaires (animaux domestiques)": cte.OUT_PATIENT_HEALTH_CARE, + "Service de vétérinaires et d'hôpital pour animaux de ferme": cte.OUT_PATIENT_HEALTH_CARE, + "Service dentaire (inclus chirurgie et hygiène)": cte.OUT_PATIENT_HEALTH_CARE, + "Service en santé mentale (cabinet) (comprend tous services professionnelspsychiatre psychologuepsychanalyste)": cte.OUT_PATIENT_HEALTH_CARE, + "Service en travaux de fondation et de structures en béton (entrepreneur spécialisé)": "Office", + "Service informatique (location ou utilisation partagée services auxiliaires programmation planification et analyse de système)": "Office", + "Service médical (cabinet de médecins et chirurgiens spécialisés)": cte.OUT_PATIENT_HEALTH_CARE, + "Service photographique (incluant les services commerciaux)": cte.RETAIL_SHOP_WITHOUT_REFRIGERATED_FOOD, + "Service pour l'entretien ménager": cte.RETAIL_SHOP_WITHOUT_REFRIGERATED_FOOD, + "Service éducationnel et de recherche scientifique": cte.SECONDARY_SCHOOL, + "Services spécialisés reliés à l'activité bancaire": cte.OFFICE_AND_ADMINISTRATION, + "Stade": cte.SPORTS_LOCATION, + "Station de contrôle de la pression de l'eau": cte.WAREHOUSE, + "Station de contrôle de la pression des eaux usées": cte.WAREHOUSE, + "Station de métro": cte.WAREHOUSE, + "Station libre-serviceou avec service et dépanneur sans réparation de véhicules automobiles": cte.RETAIL_SHOP_WITHOUT_REFRIGERATED_FOOD, + "Station libre-serviceou avec service sans réparation de véhicules automobiles": cte.RETAIL_SHOP_WITHOUT_REFRIGERATED_FOOD, + "Station-service avec réparation de véhicules automobiles": cte.WAREHOUSE, + "Stationnement extérieur (condo non résidentiel)": cte.NON_HEATED, + "Stationnement extérieur (condo)": cte.NON_HEATED, + "Stationnement intérieur ( condo non résidentiel)": cte.WAREHOUSE, + "Stationnement intérieur (condo)": cte.WAREHOUSE, + "Studio d'enregistrement du son (disque cassette et disque compact)": "Office", + "Studio de production de filmsde vidéos ou de publicités (ne comprends pas le laboratoire de production)": "Office", + "Studio de télévision (sans public)": "Office", + "Syndicat et organisation similaire": "Office", + "Terminus maritime (passagers) incluant les gares de traversiers": cte.WAREHOUSE, + "Terrain de golf (avec chalet et autres aménagements sportifs)": cte.NON_HEATED, + "Terrain de sport (jeux et pistes pour compétitions et sportgradins)": cte.NON_HEATED, + "Terrain de stationnement pour automobiles": cte.WAREHOUSE, + "Terrains de stationnement pour véhicules lourds": cte.WAREHOUSE, + "Théâtre": cte.EVENT_LOCATION, + "Tour de relais (micro-ondes)": cte.NON_HEATED, + "Tous les autres services d'information": cte.NON_HEATED, + "Transport et gestion d'électricité en bloc": cte.NON_HEATED, + "Transport et gestion du gaz par canalisation": cte.NON_HEATED, + "Université": cte.SECONDARY_SCHOOL, + "Usine de traitement des eaux (filtration)": cte.INDUSTRY, + "Usine de traitement des eaux usées (épuration)": cte.INDUSTRY, + "Vente au détail (fleuriste)": cte.RETAIL_SHOP_WITHOUT_REFRIGERATED_FOOD, + "Vente au détail d'accessoires pour femmes": cte.RETAIL_SHOP_WITHOUT_REFRIGERATED_FOOD, + "Vente au détail d'animaux de maison (animalerie)": cte.RETAIL_SHOP_WITHOUT_REFRIGERATED_FOOD, + "Vente au détail d'antiquités (sauf le marché aux puces)": cte.RETAIL_SHOP_WITHOUT_REFRIGERATED_FOOD, + "Vente au détail d'appareils orthopédiques et articles spécialisés de santé": cte.RETAIL_SHOP_WITHOUT_REFRIGERATED_FOOD, + "Vente au détail d'articles de sport": cte.RETAIL_SHOP_WITHOUT_REFRIGERATED_FOOD, + "Vente au détail d'articles d'accessoires d'aménagement paysager et de jardin": cte.RETAIL_SHOP_WITHOUT_REFRIGERATED_FOOD, + "Vente au détail d'instruments et de matériel médical": cte.RETAIL_SHOP_WITHOUT_REFRIGERATED_FOOD, + "Vente au détail d'équipements de ferme": cte.RETAIL_SHOP_WITHOUT_REFRIGERATED_FOOD, + "Vente au détail d'équipements de plomberie de chauffagede ventilationde climatisation et de foyer": cte.RETAIL_SHOP_WITHOUT_REFRIGERATED_FOOD, + "Vente au détail d'équipements et d'accessoires de chasse et pêche": cte.RETAIL_SHOP_WITHOUT_REFRIGERATED_FOOD, + "Vente au détail de bicyclettes": cte.RETAIL_SHOP_WITHOUT_REFRIGERATED_FOOD, + "Vente au détail de boissons alcoolisées": cte.RETAIL_SHOP_WITHOUT_REFRIGERATED_FOOD, + "Vente au détail de chaussures": cte.RETAIL_SHOP_WITHOUT_REFRIGERATED_FOOD, + "Vente au détail de fruits et de légumes": cte.RETAIL_SHOP_WITH_REFRIGERATED_FOOD, + "Vente au détail de la viande": cte.RETAIL_SHOP_WITH_REFRIGERATED_FOOD, + "Vente au détail de livres et de papeterie": cte.RETAIL_SHOP_WITHOUT_REFRIGERATED_FOOD, + "Vente au détail de marchandises en général (sauf les marchés aux puces)": cte.RETAIL_SHOP_WITHOUT_REFRIGERATED_FOOD, + "Vente au détail de matériaux de construction": cte.RETAIL_SHOP_WITHOUT_REFRIGERATED_FOOD, + "Vente au détail de matériaux de construction (cour à bois)": cte.RETAIL_SHOP_WITHOUT_REFRIGERATED_FOOD, + "Vente au détail de matériel électrique": cte.RETAIL_SHOP_WITHOUT_REFRIGERATED_FOOD, + "Vente au détail de meubles": cte.RETAIL_SHOP_WITHOUT_REFRIGERATED_FOOD, + "Vente au détail de motocyclettes de motoneiges et de leurs accessoires": cte.RETAIL_SHOP_WITHOUT_REFRIGERATED_FOOD, + "Vente au détail de médicaments et d'articles divers (pharmacie)": cte.RETAIL_SHOP_WITHOUT_REFRIGERATED_FOOD, + "Vente au détail de peinturede verre et de papier tenture": cte.RETAIL_SHOP_WITHOUT_REFRIGERATED_FOOD, + "Vente au détail de piscinesde spas et leurs accessoires": cte.RETAIL_SHOP_WITHOUT_REFRIGERATED_FOOD, + "Vente au détail de pièces de véhicules automobiles et d'accessoires usagés": cte.RETAIL_SHOP_WITHOUT_REFRIGERATED_FOOD, + "Vente au détail de pneus de batteries et d'accessoires": cte.RETAIL_SHOP_WITHOUT_REFRIGERATED_FOOD, + "Vente au détail de produits d'épicerie (avec boucherie)": cte.RETAIL_SHOP_WITH_REFRIGERATED_FOOD, + "Vente au détail de produits d'épicerie (sans boucherie)": cte.RETAIL_SHOP_WITH_REFRIGERATED_FOOD, + "Vente au détail de produits de la boulangerie et de la pâtisserie (manufacturés sur place en totalité ou non)": cte.RETAIL_SHOP_WITH_REFRIGERATED_FOOD, + "Vente au détail de quincaillerie": cte.RETAIL_SHOP_WITHOUT_REFRIGERATED_FOOD, + "Vente au détail de radiosde téléviseurssystèmes de son et appareils électroniques": cte.RETAIL_SHOP_WITHOUT_REFRIGERATED_FOOD, + "Vente au détail de revêtements de planchers et de murs (bois franc plancher flottant carreaux céramiques tapisserie)": cte.RETAIL_SHOP_WITHOUT_REFRIGERATED_FOOD, + "Vente au détail de serruresde clés et d'accessoires": cte.RETAIL_SHOP_WITHOUT_REFRIGERATED_FOOD, + "Vente au détail de véhicules automobiles neufs et usagés": cte.RETAIL_SHOP_WITHOUT_REFRIGERATED_FOOD, + "Vente au détail de véhicules automobiles usagés seulement": cte.RETAIL_SHOP_WITHOUT_REFRIGERATED_FOOD, + "Vente au détail de vêtement prêt-à-porter pour femmes": cte.RETAIL_SHOP_WITHOUT_REFRIGERATED_FOOD, + "Vente au détail de vêtements et d'accessoires pour hommes": cte.RETAIL_SHOP_WITHOUT_REFRIGERATED_FOOD, + "Vente au détail de vêtements et d'articles usagésfriperies (sauf le marché aux puces)": cte.RETAIL_SHOP_WITHOUT_REFRIGERATED_FOOD, + "Vente au détail de vêtements unisexes": cte.RETAIL_SHOP_WITHOUT_REFRIGERATED_FOOD, + "Vente au détail du cafédu théd'épices et d'aromates": cte.RETAIL_SHOP_WITH_REFRIGERATED_FOOD, + "Vente au détailclubs de gros et hypermarchés (entrepôt-club)": cte.RETAIL_SHOP_WITH_REFRIGERATED_FOOD, + "Vente au détailfournitures pour la maison et l'auto": cte.RETAIL_SHOP_WITHOUT_REFRIGERATED_FOOD, + "Vente au détailmagasin à rayons": cte.RETAIL_SHOP_WITHOUT_REFRIGERATED_FOOD, + "Vente en gros d'ameublements de matériels de bureau et de magasin": cte.STRIP_MALL, + "Vente en gros d'appareils et d'équipements de plomberie et de chauffage": cte.STRIP_MALL, + "Vente en gros d'appareils et d'équipements électriques de fils et de matériel électronique de construction": cte.STRIP_MALL, + "Vente en gros d'appareils électriquesde téléviseurs et de radios": cte.STRIP_MALL, + "Vente en gros d'automobiles et autres véhicules automobiles neufs ou d'occasions incluent VR)": cte.STRIP_MALL, + "Vente en gros d'autres appareils ou matériels électriques et électroniques": cte.STRIP_MALL, + "Vente en gros d'autres médicaments de produits chimiques et de produits connexes": cte.STRIP_MALL, + "Vente en gros d'autres pièces d'équipement ou de machinerie (incluant machinerie lourde)": cte.STRIP_MALL, + "Vente en gros d'autres produits reliés à l'épicerie": cte.STRIP_MALL, + "Vente en gros d'équipements et de pièces de machinerie commercialeindustrielle ou agricole (incluant machinerie lourde)": cte.STRIP_MALL, + "Vente en gros d'équipements et de pièces pour la réfrigération ventilation la climatisation et le chauffage (système combiné)": cte.STRIP_MALL, + "Vente en gros d'équipements et de pièces pour les entreprises de services": cte.STRIP_MALL, + "Vente en gros de bois et de matériaux de construction": cte.STRIP_MALL, + "Vente en gros de chaussures": cte.STRIP_MALL, + "Vente en gros de fruits et de légumes frais": cte.STRIP_MALL, + "Vente en gros de médicaments et de produits médicamenteux": cte.STRIP_MALL, + "Vente en gros de pièces et d'accessoires neufs pour véhicules automobiles": cte.STRIP_MALL, + "Vente en gros de pièces et d'équipements électroniques": cte.STRIP_MALL, + "Vente en gros de pneus et de chambres à air": cte.STRIP_MALL, + "Vente en gros de poissons et de fruits de mer": cte.STRIP_MALL, + "Vente en gros de produits de beauté": cte.STRIP_MALL, + "Vente en gros de produits de boulangerie et de pâtisserie": cte.STRIP_MALL, + "Vente en gros de produits laitiers": cte.STRIP_MALL, + "Vente en gros de quincaillerie": cte.STRIP_MALL, + "Vente en gros de tissus et de textiles": cte.STRIP_MALL, + "Vente en gros de viandes et de produits de la viande": cte.STRIP_MALL, + "Vente en gros de vêtements de lingerie de bas et d'accessoires": cte.STRIP_MALL, + "Vente en gros pour l'épicerie en général": cte.STRIP_MALL, + "École commerciale et de secrétariat (non intégrée aux polyvalentes)": cte.SECONDARY_SCHOOL, + "École de beaux-arts et de musique (exclus arts publicitaires arts graphiques et photographie publicitaire)": cte.SECONDARY_SCHOOL, + "École de danse": cte.SECONDARY_SCHOOL, + "École de métiers (non intégrée aux polyvalentes)": cte.SECONDARY_SCHOOL, + "École maternelle": cte.SECONDARY_SCHOOL, + "École polyvalente": cte.SECONDARY_SCHOOL, + "École secondaire": cte.SECONDARY_SCHOOL, + "École à caractère familial (exploité par une personne physique dans sa résidence moins de 15 élèves)": cte.SECONDARY_SCHOOL, + "École élémentaire": cte.SECONDARY_SCHOOL, + "École élémentaire et secondaire": cte.SECONDARY_SCHOOL, + "Église synagogue mosquée et temple": cte.EVENT_LOCATION, + "Établissement avec salle de réception ou de banquet": cte.FULL_SERVICE_RESTAURANT, + "Établissement avec service de boissons alcoolisées (Bar)": cte.QUICK_SERVICE_RESTAURANT, + "Établissement dont l'activité principale est la danse (discothèque avec service alcool boite de nuit) sans alcool code 7397": cte.QUICK_SERVICE_RESTAURANT + } + + @property + def dictionary(self): + return self._dictionary diff --git a/hub/helpers/data/pluto_function_to_hub_function.py b/hub/helpers/data/pluto_function_to_hub_function.py new file mode 100644 index 00000000..131e6496 --- /dev/null +++ b/hub/helpers/data/pluto_function_to_hub_function.py @@ -0,0 +1,217 @@ +""" +Dictionaries module for Pluto function to hub function +SPDX - License - Identifier: LGPL - 3.0 - or -later +Copyright © 2022 Concordia CERC group +Project Coder Guille Gutierrez Guillermo.GutierrezMorote@concordia.ca +""" + +import hub.helpers.constants as cte + + +class PlutoFunctionToHubFunction: + + def __init__(self): + self._dictionary = { + 'A0': cte.SINGLE_FAMILY_HOUSE, + 'A1': cte.SINGLE_FAMILY_HOUSE, + 'A2': cte.SINGLE_FAMILY_HOUSE, + 'A3': cte.SINGLE_FAMILY_HOUSE, + 'A4': cte.SINGLE_FAMILY_HOUSE, + 'A5': cte.SINGLE_FAMILY_HOUSE, + 'A6': cte.SINGLE_FAMILY_HOUSE, + 'A7': cte.SINGLE_FAMILY_HOUSE, + 'A8': cte.SINGLE_FAMILY_HOUSE, + 'A9': cte.SINGLE_FAMILY_HOUSE, + 'B1': cte.MULTI_FAMILY_HOUSE, + 'B2': cte.MULTI_FAMILY_HOUSE, + 'B3': cte.MULTI_FAMILY_HOUSE, + 'B9': cte.MULTI_FAMILY_HOUSE, + 'C0': cte.RESIDENTIAL, + 'C1': cte.RESIDENTIAL, + 'C2': cte.RESIDENTIAL, + 'C3': cte.RESIDENTIAL, + 'C4': cte.RESIDENTIAL, + 'C5': cte.RESIDENTIAL, + 'C6': cte.RESIDENTIAL, + 'C7': cte.RESIDENTIAL, + 'C8': cte.RESIDENTIAL, + 'C9': cte.RESIDENTIAL, + 'D0': cte.RESIDENTIAL, + 'D1': cte.RESIDENTIAL, + 'D2': cte.RESIDENTIAL, + 'D3': cte.RESIDENTIAL, + 'D4': cte.RESIDENTIAL, + 'D5': cte.RESIDENTIAL, + 'D6': cte.RESIDENTIAL, + 'D7': cte.RESIDENTIAL, + 'D8': cte.RESIDENTIAL, + 'D9': cte.RESIDENTIAL, + 'E1': cte.WAREHOUSE, + 'E3': cte.WAREHOUSE, + 'E4': cte.WAREHOUSE, + 'E5': cte.WAREHOUSE, + 'E7': cte.WAREHOUSE, + 'E9': cte.WAREHOUSE, + 'F1': cte.WAREHOUSE, + 'F2': cte.WAREHOUSE, + 'F4': cte.WAREHOUSE, + 'F5': cte.WAREHOUSE, + 'F8': cte.WAREHOUSE, + 'F9': cte.WAREHOUSE, + 'G0': cte.SMALL_OFFICE, + 'G1': cte.SMALL_OFFICE, + 'G2': cte.SMALL_OFFICE, + 'G3': cte.SMALL_OFFICE, + 'G4': cte.SMALL_OFFICE, + 'G5': cte.SMALL_OFFICE, + 'G6': cte.SMALL_OFFICE, + 'G7': cte.SMALL_OFFICE, + 'G8': cte.SMALL_OFFICE, + 'G9': cte.SMALL_OFFICE, + 'H1': cte.HOTEL, + 'H2': cte.HOTEL, + 'H3': cte.HOTEL, + 'H4': cte.HOTEL, + 'H5': cte.HOTEL, + 'H6': cte.HOTEL, + 'H7': cte.HOTEL, + 'H8': cte.HOTEL, + 'H9': cte.HOTEL, + 'HB': cte.HOTEL, + 'HH': cte.HOTEL, + 'HR': cte.HOTEL, + 'HS': cte.HOTEL, + 'I1': cte.HOSPITAL, + 'I2': cte.OUT_PATIENT_HEALTH_CARE, + 'I3': cte.OUT_PATIENT_HEALTH_CARE, + 'I4': cte.RESIDENTIAL, + 'I5': cte.OUT_PATIENT_HEALTH_CARE, + 'I6': cte.OUT_PATIENT_HEALTH_CARE, + 'I7': cte.OUT_PATIENT_HEALTH_CARE, + 'I9': cte.OUT_PATIENT_HEALTH_CARE, + 'J1': cte.LARGE_OFFICE, + 'J2': cte.LARGE_OFFICE, + 'J3': cte.LARGE_OFFICE, + 'J4': cte.LARGE_OFFICE, + 'J5': cte.LARGE_OFFICE, + 'J6': cte.LARGE_OFFICE, + 'J7': cte.LARGE_OFFICE, + 'J8': cte.LARGE_OFFICE, + 'J9': cte.LARGE_OFFICE, + 'K1': cte.STRIP_MALL, + 'K2': cte.STRIP_MALL, + 'K3': cte.STRIP_MALL, + 'K4': cte.RESIDENTIAL, + 'K5': cte.RESTAURANT, + 'K6': cte.SUPERMARKET, + 'K7': cte.SUPERMARKET, + 'K8': cte.SUPERMARKET, + 'K9': cte.SUPERMARKET, + 'L1': cte.RESIDENTIAL, + 'L2': cte.RESIDENTIAL, + 'L3': cte.RESIDENTIAL, + 'L8': cte.RESIDENTIAL, + 'L9': cte.RESIDENTIAL, + 'M1': cte.LARGE_OFFICE, + 'M2': cte.LARGE_OFFICE, + 'M3': cte.LARGE_OFFICE, + 'M4': cte.LARGE_OFFICE, + 'M9': cte.LARGE_OFFICE, + 'N1': cte.RESIDENTIAL, + 'N2': cte.RESIDENTIAL, + 'N3': cte.RESIDENTIAL, + 'N4': cte.RESIDENTIAL, + 'N9': cte.RESIDENTIAL, + 'O1': cte.SMALL_OFFICE, + 'O2': cte.SMALL_OFFICE, + 'O3': cte.SMALL_OFFICE, + 'O4': cte.SMALL_OFFICE, + 'O5': cte.SMALL_OFFICE, + 'O6': cte.SMALL_OFFICE, + 'O7': cte.SMALL_OFFICE, + 'O8': cte.SMALL_OFFICE, + 'O9': cte.SMALL_OFFICE, + 'P1': cte.LARGE_OFFICE, + 'P2': cte.HOTEL, + 'P3': cte.SMALL_OFFICE, + 'P4': cte.SMALL_OFFICE, + 'P5': cte.SMALL_OFFICE, + 'P6': cte.SMALL_OFFICE, + 'P7': cte.LARGE_OFFICE, + 'P8': cte.LARGE_OFFICE, + 'P9': cte.SMALL_OFFICE, + 'Q0': cte.SMALL_OFFICE, + 'Q1': cte.SMALL_OFFICE, + 'Q2': cte.SMALL_OFFICE, + 'Q3': cte.SMALL_OFFICE, + 'Q4': cte.SMALL_OFFICE, + 'Q5': cte.SMALL_OFFICE, + 'Q6': cte.SMALL_OFFICE, + 'Q7': cte.SMALL_OFFICE, + 'Q8': cte.SMALL_OFFICE, + 'Q9': cte.SMALL_OFFICE, + 'R0': cte.RESIDENTIAL, + 'R1': cte.RESIDENTIAL, + 'R2': cte.RESIDENTIAL, + 'R3': cte.RESIDENTIAL, + 'R4': cte.RESIDENTIAL, + 'R5': cte.RESIDENTIAL, + 'R6': cte.RESIDENTIAL, + 'R7': cte.RESIDENTIAL, + 'R8': cte.RESIDENTIAL, + 'R9': cte.RESIDENTIAL, + 'RA': cte.RESIDENTIAL, + 'RB': cte.RESIDENTIAL, + 'RC': cte.RESIDENTIAL, + 'RD': cte.RESIDENTIAL, + 'RG': cte.RESIDENTIAL, + 'RH': cte.RESIDENTIAL, + 'RI': cte.RESIDENTIAL, + 'RK': cte.RESIDENTIAL, + 'RM': cte.RESIDENTIAL, + 'RR': cte.RESIDENTIAL, + 'RS': cte.RESIDENTIAL, + 'RW': cte.RESIDENTIAL, + 'RX': cte.RESIDENTIAL, + 'RZ': cte.RESIDENTIAL, + 'S0': cte.RESIDENTIAL, + 'S1': cte.RESIDENTIAL, + 'S2': cte.RESIDENTIAL, + 'S3': cte.RESIDENTIAL, + 'S4': cte.RESIDENTIAL, + 'S5': cte.RESIDENTIAL, + 'S9': cte.RESIDENTIAL, + 'U0': cte.WAREHOUSE, + 'U1': cte.WAREHOUSE, + 'U2': cte.WAREHOUSE, + 'U3': cte.WAREHOUSE, + 'U4': cte.WAREHOUSE, + 'U5': cte.WAREHOUSE, + 'U6': cte.WAREHOUSE, + 'U7': cte.WAREHOUSE, + 'U8': cte.WAREHOUSE, + 'U9': cte.WAREHOUSE, + 'W1': cte.PRIMARY_SCHOOL, + 'W2': cte.PRIMARY_SCHOOL, + 'W3': cte.SECONDARY_SCHOOL, + 'W4': cte.EDUCATION, + 'W5': cte.SECONDARY_SCHOOL, + 'W6': cte.SECONDARY_SCHOOL, + 'W7': cte.SECONDARY_SCHOOL, + 'W8': cte.PRIMARY_SCHOOL, + 'W9': cte.SECONDARY_SCHOOL, + 'Y1': cte.LARGE_OFFICE, + 'Y2': cte.LARGE_OFFICE, + 'Y3': cte.LARGE_OFFICE, + 'Y4': cte.LARGE_OFFICE, + 'Y5': cte.LARGE_OFFICE, + 'Y6': cte.LARGE_OFFICE, + 'Y7': cte.LARGE_OFFICE, + 'Y8': cte.LARGE_OFFICE, + 'Y9': cte.LARGE_OFFICE, + 'Z1': cte.LARGE_OFFICE + } + + @property + def dictionary(self): + return self._dictionary diff --git a/hub/helpers/dictionaries.py b/hub/helpers/dictionaries.py index 46588375..6fed7514 100644 --- a/hub/helpers/dictionaries.py +++ b/hub/helpers/dictionaries.py @@ -5,591 +5,88 @@ Copyright © 2022 Concordia CERC group Project Coder Pilar Monsalvete Alvarez de Uribarri pilar.monsalvete@concordia.ca """ -import hub.helpers.constants as cte - +from hub.helpers.data.hft_function_to_hub_function import HftFunctionToHubFunction +from hub.helpers.data.montreal_function_to_hub_function import MontrealFunctionToHubFunction +from hub.helpers.data.alkis_function_to_hub_function import AlkisFunctionToHubFunction +from hub.helpers.data.pluto_function_to_hub_function import PlutoFunctionToHubFunction +from hub.helpers.data.hub_function_to_nrel_construction_function import HubFunctionToNrelConstructionFunction +from hub.helpers.data.hub_function_to_nrcan_construction_function import HubFunctionToNrcanConstructionFunction +from hub.helpers.data.hub_usage_to_comnet_usage import HubUsageToComnetUsage +from hub.helpers.data.hub_usage_to_hft_usage import HubUsageToHftUsage +from hub.helpers.data.hub_usage_to_nrcan_usage import HubUsageToNrcanUsage class Dictionaries: """ Dictionaries class """ - _usage_to_hft_usage = { - cte.RESIDENTIAL: 'residential', - cte.SINGLE_FAMILY_HOUSE: 'single family house', - cte.MULTI_FAMILY_HOUSE: 'multifamily house', - cte.ROW_HOUSE: 'single family house', - cte.MID_RISE_APARTMENT: 'multifamily house', - cte.HIGH_RISE_APARTMENT: 'multifamily house', - cte.OFFICE_AND_ADMINISTRATION: 'office and administration', - cte.SMALL_OFFICE: 'office and administration', - cte.MEDIUM_OFFICE: 'office and administration', - cte.LARGE_OFFICE: 'office and administration', - cte.COURTHOUSE: 'office and administration', - cte.FIRE_STATION: 'office and administration', - cte.PENITENTIARY: 'school with shower', - cte.POLICE_STATION: 'office and administration', - cte.POST_OFFICE: 'office and administration', - cte.LIBRARY: 'office and administration', - cte.EDUCATION: 'education', - cte.PRIMARY_SCHOOL: 'school without shower', - cte.PRIMARY_SCHOOL_WITH_SHOWER: 'school with shower', - cte.SECONDARY_SCHOOL: 'education', - cte.UNIVERSITY: 'education', - cte.LABORATORY_AND_RESEARCH_CENTER: 'laboratory and research centers', - cte.STAND_ALONE_RETAIL: 'retail', - cte.HOSPITAL: 'health care', - cte.OUT_PATIENT_HEALTH_CARE: 'health care', - cte.HEALTH_CARE: 'health care', - cte.RETIREMENT_HOME_OR_ORPHANAGE: 'Home for the aged or orphanage', - cte.COMMERCIAL: 'retail', - cte.STRIP_MALL: 'retail', - cte.SUPERMARKET: 'retail shop / refrigerated food', - cte.RETAIL_SHOP_WITHOUT_REFRIGERATED_FOOD: 'retail', - cte.RETAIL_SHOP_WITH_REFRIGERATED_FOOD: 'retail shop / refrigerated food', - cte.RESTAURANT: 'restaurant', - cte.QUICK_SERVICE_RESTAURANT: 'restaurant', - cte.FULL_SERVICE_RESTAURANT: 'restaurant', - cte.HOTEL: 'hotel', - cte.HOTEL_MEDIUM_CLASS: 'hotel (Medium-class)', - cte.SMALL_HOTEL: 'hotel', - cte.LARGE_HOTEL: 'hotel', - cte.DORMITORY: 'dormitory', - cte.EVENT_LOCATION: 'event location', - cte.CONVENTION_CENTER: 'event location', - cte.HALL: 'hall', - cte.GREEN_HOUSE: 'green house', - cte.INDUSTRY: 'industry', - cte.WORKSHOP: 'industry', - cte.WAREHOUSE: 'industry', - cte.WAREHOUSE_REFRIGERATED: 'industry', - cte.SPORTS_LOCATION: 'sport location', - cte.SPORTS_ARENA: 'sport location', - cte.GYMNASIUM: 'sport location', - cte.MOTION_PICTURE_THEATRE: 'event location', - cte.MUSEUM: 'event location', - cte.PERFORMING_ARTS_THEATRE: 'event location', - cte.TRANSPORTATION: 'n/a', - cte.AUTOMOTIVE_FACILITY: 'n/a', - cte.PARKING_GARAGE: 'n/a', - cte.RELIGIOUS: 'event location', - cte.NON_HEATED: 'non-heated' - } - - _usage_to_comnet_usage = { - cte.RESIDENTIAL: 'BA Multifamily', - cte.SINGLE_FAMILY_HOUSE: 'BA Multifamily', - cte.MULTI_FAMILY_HOUSE: 'BA Multifamily', - cte.ROW_HOUSE: 'BA Multifamily', - cte.MID_RISE_APARTMENT: 'BA Multifamily', - cte.HIGH_RISE_APARTMENT: 'BA Multifamily', - cte.OFFICE_AND_ADMINISTRATION: 'BA Office', - cte.SMALL_OFFICE: 'BA Office', - cte.MEDIUM_OFFICE: 'BA Office', - cte.LARGE_OFFICE: 'BA Office', - cte.COURTHOUSE: 'BA Courthouse', - cte.FIRE_STATION: 'BA Fire Station', - cte.PENITENTIARY: 'BA Penitentiary', - cte.POLICE_STATION: 'BA Police Station', - cte.POST_OFFICE: 'BA Post Office', - cte.LIBRARY: 'BA Library', - cte.EDUCATION: 'BA School/University', - cte.PRIMARY_SCHOOL: 'BA School/University', - cte.PRIMARY_SCHOOL_WITH_SHOWER: 'BA School/University', - cte.SECONDARY_SCHOOL: 'BA School/University', - cte.UNIVERSITY: 'BA School/University', - cte.LABORATORY_AND_RESEARCH_CENTER: 'BA School/University', - cte.STAND_ALONE_RETAIL: 'BA Retail', - cte.HOSPITAL: 'BA Hospital', - cte.OUT_PATIENT_HEALTH_CARE: 'BA Healthcare Clinic', - cte.HEALTH_CARE: 'BA Healthcare Clinic', - cte.RETIREMENT_HOME_OR_ORPHANAGE: 'BA Healthcare Clinic', - cte.COMMERCIAL: 'BA Retail', - cte.STRIP_MALL: 'BA Retail', - cte.SUPERMARKET: 'BA Retail', - cte.RETAIL_SHOP_WITHOUT_REFRIGERATED_FOOD: 'BA Retail', - cte.RETAIL_SHOP_WITH_REFRIGERATED_FOOD: 'BA Retail', - cte.RESTAURANT: 'BA Dining: Bar Lounge/Leisure', - cte.QUICK_SERVICE_RESTAURANT: 'BA Dining: Cafeteria/Fast Food', - cte.FULL_SERVICE_RESTAURANT: 'BA Dining: Bar Lounge/Leisure', - cte.HOTEL: 'BA Hotel', - cte.HOTEL_MEDIUM_CLASS: 'BA Motel', - cte.SMALL_HOTEL: 'BA Motel', - cte.LARGE_HOTEL: 'BA Hotel', - cte.DORMITORY: 'BA Dormitory', - cte.EVENT_LOCATION: 'BA Convention Center', - cte.CONVENTION_CENTER: 'BA Convention Center', - cte.HALL: 'BA Town Hall', - cte.GREEN_HOUSE: 'n/a', - cte.INDUSTRY: 'BA Manufacturing Facility', - cte.WORKSHOP: 'BA Workshop', - cte.WAREHOUSE: 'BA Warehouse', - cte.WAREHOUSE_REFRIGERATED: 'BA Warehouse', - cte.SPORTS_LOCATION: 'BA Exercise Center', - cte.SPORTS_ARENA: 'BA Sports Arena', - cte.GYMNASIUM: 'BA Gymnasium', - cte.MOTION_PICTURE_THEATRE: 'BA Motion Picture Theater', - cte.MUSEUM: 'BA Museum', - cte.PERFORMING_ARTS_THEATRE: 'BA Performing Arts Theater', - cte.TRANSPORTATION: 'BA Transportation', - cte.AUTOMOTIVE_FACILITY: 'BA Automotive Facility', - cte.PARKING_GARAGE: 'BA Parking Garage', - cte.RELIGIOUS: 'BA Religious Building', - cte.NON_HEATED: 'n/a' - } - - _usage_to_nrcan_usage = { - cte.RESIDENTIAL: 'Multi-unit residential building', - cte.SINGLE_FAMILY_HOUSE: 'Multi-unit residential building', - cte.MULTI_FAMILY_HOUSE: 'Multi-unit residential building', - cte.ROW_HOUSE: 'Multi-unit residential building', - cte.MID_RISE_APARTMENT: 'Multi-unit residential building', - cte.HIGH_RISE_APARTMENT: 'Multi-unit residential building', - cte.OFFICE_AND_ADMINISTRATION: 'Office', - cte.SMALL_OFFICE: 'Office', - cte.MEDIUM_OFFICE: 'Office', - cte.LARGE_OFFICE: 'Office', - cte.COURTHOUSE: 'Courthouse', - cte.FIRE_STATION: 'Fire station', - cte.PENITENTIARY: 'Penitentiary', - cte.POLICE_STATION: 'Police station', - cte.POST_OFFICE: 'Post office', - cte.LIBRARY: 'Library', - cte.EDUCATION: 'School/university', - cte.PRIMARY_SCHOOL: 'School/university', - cte.PRIMARY_SCHOOL_WITH_SHOWER: 'School/university', - cte.SECONDARY_SCHOOL: 'School/university', - cte.UNIVERSITY: 'School/university', - cte.LABORATORY_AND_RESEARCH_CENTER: 'School/university', - cte.STAND_ALONE_RETAIL: 'Retail', - cte.HOSPITAL: 'Hospital', - cte.OUT_PATIENT_HEALTH_CARE: 'Health-care clinic', - cte.HEALTH_CARE: 'Health-care clinic', - cte.RETIREMENT_HOME_OR_ORPHANAGE: 'Health-care clinic', - cte.COMMERCIAL: 'Retail', - cte.STRIP_MALL: 'Retail', - cte.SUPERMARKET: 'Retail', - cte.RETAIL_SHOP_WITHOUT_REFRIGERATED_FOOD: 'Retail', - cte.RETAIL_SHOP_WITH_REFRIGERATED_FOOD: 'Retail', - cte.RESTAURANT: 'Dining - bar/lounge', - cte.QUICK_SERVICE_RESTAURANT: 'Dining - cafeteria', - cte.FULL_SERVICE_RESTAURANT: 'Dining - bar/lounge', - cte.HOTEL: 'Hotel', - cte.HOTEL_MEDIUM_CLASS: 'Motel', - cte.SMALL_HOTEL: 'Motel', - cte.LARGE_HOTEL: 'Hotel', - cte.DORMITORY: 'Dormitory', - cte.EVENT_LOCATION: 'Convention centre', - cte.CONVENTION_CENTER: 'Convention centre', - cte.HALL: 'Town hall', - cte.GREEN_HOUSE: 'n/a', - cte.INDUSTRY: 'Manufacturing facility', - cte.WORKSHOP: 'Workshop', - cte.WAREHOUSE: 'Warehouse', - cte.WAREHOUSE_REFRIGERATED: 'Warehouse - refrigerated', - cte.SPORTS_LOCATION: 'Exercise centre', - cte.SPORTS_ARENA: 'Sports arena', - cte.GYMNASIUM: 'Gymnasium', - cte.MOTION_PICTURE_THEATRE: 'Motion picture theatre', - cte.MUSEUM: 'Museum', - cte.PERFORMING_ARTS_THEATRE: 'Performing arts theatre', - cte.TRANSPORTATION: 'Transportation', - cte.AUTOMOTIVE_FACILITY: 'Automotive facility', - cte.PARKING_GARAGE: 'Parking garage', - cte.RELIGIOUS: 'Religious', - cte.NON_HEATED: 'n/a' - } - - _function_to_nrcan_construction_function = { - cte.RESIDENTIAL: 'MidriseApartment', - cte.SINGLE_FAMILY_HOUSE: 'MidriseApartment', - cte.MULTI_FAMILY_HOUSE: 'HighriseApartment', - cte.ROW_HOUSE: 'MidriseApartment', - cte.MID_RISE_APARTMENT: 'MidriseApartment', - cte.HIGH_RISE_APARTMENT: 'HighriseApartment', - cte.OFFICE_AND_ADMINISTRATION: 'MediumOffice', - cte.SMALL_OFFICE: 'SmallOffice', - cte.MEDIUM_OFFICE: 'MediumOffice', - cte.LARGE_OFFICE: 'LargeOffice', - cte.COURTHOUSE: 'MediumOffice', - cte.FIRE_STATION: 'n/a', - cte.PENITENTIARY: 'LargeHotel', - cte.POLICE_STATION: 'n/a', - cte.POST_OFFICE: 'MediumOffice', - cte.LIBRARY: 'MediumOffice', - cte.EDUCATION: 'SecondarySchool', - cte.PRIMARY_SCHOOL: 'PrimarySchool', - cte.PRIMARY_SCHOOL_WITH_SHOWER: 'PrimarySchool', - cte.SECONDARY_SCHOOL: 'SecondarySchool', - cte.UNIVERSITY: 'SecondarySchool', - cte.LABORATORY_AND_RESEARCH_CENTER: 'SecondarySchool', - cte.STAND_ALONE_RETAIL: 'RetailStandalone', - cte.HOSPITAL: 'Hospital', - cte.OUT_PATIENT_HEALTH_CARE: 'Outpatient', - cte.HEALTH_CARE: 'Outpatient', - cte.RETIREMENT_HOME_OR_ORPHANAGE: 'SmallHotel', - cte.COMMERCIAL: 'RetailStripmall', - cte.STRIP_MALL: 'RetailStripmall', - cte.SUPERMARKET: 'RetailStripmall', - cte.RETAIL_SHOP_WITHOUT_REFRIGERATED_FOOD: 'RetailStandalone', - cte.RETAIL_SHOP_WITH_REFRIGERATED_FOOD: 'RetailStandalone', - cte.RESTAURANT: 'FullServiceRestaurant', - cte.QUICK_SERVICE_RESTAURANT: 'QuickServiceRestaurant', - cte.FULL_SERVICE_RESTAURANT: 'FullServiceRestaurant', - cte.HOTEL: 'SmallHotel', - cte.HOTEL_MEDIUM_CLASS: 'SmallHotel', - cte.SMALL_HOTEL: 'SmallHotel', - cte.LARGE_HOTEL: 'LargeHotel', - cte.DORMITORY: 'SmallHotel', - cte.EVENT_LOCATION: 'n/a', - cte.CONVENTION_CENTER: 'n/a', - cte.HALL: 'n/a', - cte.GREEN_HOUSE: 'n/a', - cte.INDUSTRY: 'n/a', - cte.WORKSHOP: 'n/a', - cte.WAREHOUSE: 'Warehouse', - cte.WAREHOUSE_REFRIGERATED: 'Warehouse', - cte.SPORTS_LOCATION: 'n/a', - cte.SPORTS_ARENA: 'n/a', - cte.GYMNASIUM: 'n/a', - cte.MOTION_PICTURE_THEATRE: 'n/a', - cte.MUSEUM: 'n/a', - cte.PERFORMING_ARTS_THEATRE: 'n/a', - cte.TRANSPORTATION: 'n/a', - cte.AUTOMOTIVE_FACILITY: 'n/a', - cte.PARKING_GARAGE: 'n/a', - cte.RELIGIOUS: 'n/a', - cte.NON_HEATED: 'n/a' - } - - _function_to_nrel_construction_function = { - cte.RESIDENTIAL: 'residential', - cte.SINGLE_FAMILY_HOUSE: 'residential', - cte.MULTI_FAMILY_HOUSE: 'midrise apartment', - cte.ROW_HOUSE: 'midrise apartment', - cte.MID_RISE_APARTMENT: 'midrise apartment', - cte.HIGH_RISE_APARTMENT: 'high-rise apartment', - cte.OFFICE_AND_ADMINISTRATION: 'medium office', - cte.SMALL_OFFICE: 'small office', - cte.MEDIUM_OFFICE: 'medium office', - cte.LARGE_OFFICE: 'large office', - cte.COURTHOUSE: 'medium office', - cte.FIRE_STATION: 'n/a', - cte.PENITENTIARY: 'large hotel', - cte.POLICE_STATION: 'n/a', - cte.POST_OFFICE: 'medium office', - cte.LIBRARY: 'medium office', - cte.EDUCATION: 'secondary school', - cte.PRIMARY_SCHOOL: 'primary school', - cte.PRIMARY_SCHOOL_WITH_SHOWER: 'primary school', - cte.SECONDARY_SCHOOL: 'secondary school', - cte.UNIVERSITY: 'secondary school', - cte.LABORATORY_AND_RESEARCH_CENTER: 'secondary school', - cte.STAND_ALONE_RETAIL: 'stand-alone retail', - cte.HOSPITAL: 'hospital', - cte.OUT_PATIENT_HEALTH_CARE: 'outpatient healthcare', - cte.HEALTH_CARE: 'outpatient healthcare', - cte.RETIREMENT_HOME_OR_ORPHANAGE: 'small hotel', - cte.COMMERCIAL: 'strip mall', - cte.STRIP_MALL: 'strip mall', - cte.SUPERMARKET: 'supermarket', - cte.RETAIL_SHOP_WITHOUT_REFRIGERATED_FOOD: 'stand-alone retail', - cte.RETAIL_SHOP_WITH_REFRIGERATED_FOOD: 'stand-alone retail', - cte.RESTAURANT: 'full service restaurant', - cte.QUICK_SERVICE_RESTAURANT: 'quick service restaurant', - cte.FULL_SERVICE_RESTAURANT: 'full service restaurant', - cte.HOTEL: 'small hotel', - cte.HOTEL_MEDIUM_CLASS: 'small hotel', - cte.SMALL_HOTEL: 'small hotel', - cte.LARGE_HOTEL: 'large hotel', - cte.DORMITORY: 'small hotel', - cte.EVENT_LOCATION: 'n/a', - cte.CONVENTION_CENTER: 'n/a', - cte.HALL: 'n/a', - cte.GREEN_HOUSE: 'n/a', - cte.INDUSTRY: 'n/a', - cte.WORKSHOP: 'n/a', - cte.WAREHOUSE: 'warehouse', - cte.WAREHOUSE_REFRIGERATED: 'warehouse', - cte.SPORTS_LOCATION: 'n/a', - cte.SPORTS_ARENA: 'n/a', - cte.GYMNASIUM: 'n/a', - cte.MOTION_PICTURE_THEATRE: 'n/a', - cte.MUSEUM: 'n/a', - cte.PERFORMING_ARTS_THEATRE: 'n/a', - cte.TRANSPORTATION: 'n/a', - cte.AUTOMOTIVE_FACILITY: 'n/a', - cte.PARKING_GARAGE: 'n/a', - cte.RELIGIOUS: 'n/a', - cte.NON_HEATED: 'n/a' - } - - _pluto_function_to_hub_function = { - 'A0': cte.SINGLE_FAMILY_HOUSE, - 'A1': cte.SINGLE_FAMILY_HOUSE, - 'A2': cte.SINGLE_FAMILY_HOUSE, - 'A3': cte.SINGLE_FAMILY_HOUSE, - 'A4': cte.SINGLE_FAMILY_HOUSE, - 'A5': cte.SINGLE_FAMILY_HOUSE, - 'A6': cte.SINGLE_FAMILY_HOUSE, - 'A7': cte.SINGLE_FAMILY_HOUSE, - 'A8': cte.SINGLE_FAMILY_HOUSE, - 'A9': cte.SINGLE_FAMILY_HOUSE, - 'B1': cte.MULTI_FAMILY_HOUSE, - 'B2': cte.MULTI_FAMILY_HOUSE, - 'B3': cte.MULTI_FAMILY_HOUSE, - 'B9': cte.MULTI_FAMILY_HOUSE, - 'C0': cte.RESIDENTIAL, - 'C1': cte.RESIDENTIAL, - 'C2': cte.RESIDENTIAL, - 'C3': cte.RESIDENTIAL, - 'C4': cte.RESIDENTIAL, - 'C5': cte.RESIDENTIAL, - 'C6': cte.RESIDENTIAL, - 'C7': cte.RESIDENTIAL, - 'C8': cte.RESIDENTIAL, - 'C9': cte.RESIDENTIAL, - 'D0': cte.RESIDENTIAL, - 'D1': cte.RESIDENTIAL, - 'D2': cte.RESIDENTIAL, - 'D3': cte.RESIDENTIAL, - 'D4': cte.RESIDENTIAL, - 'D5': cte.RESIDENTIAL, - 'D6': cte.RESIDENTIAL, - 'D7': cte.RESIDENTIAL, - 'D8': cte.RESIDENTIAL, - 'D9': cte.RESIDENTIAL, - 'E1': cte.WAREHOUSE, - 'E3': cte.WAREHOUSE, - 'E4': cte.WAREHOUSE, - 'E5': cte.WAREHOUSE, - 'E7': cte.WAREHOUSE, - 'E9': cte.WAREHOUSE, - 'F1': cte.WAREHOUSE, - 'F2': cte.WAREHOUSE, - 'F4': cte.WAREHOUSE, - 'F5': cte.WAREHOUSE, - 'F8': cte.WAREHOUSE, - 'F9': cte.WAREHOUSE, - 'G0': cte.SMALL_OFFICE, - 'G1': cte.SMALL_OFFICE, - 'G2': cte.SMALL_OFFICE, - 'G3': cte.SMALL_OFFICE, - 'G4': cte.SMALL_OFFICE, - 'G5': cte.SMALL_OFFICE, - 'G6': cte.SMALL_OFFICE, - 'G7': cte.SMALL_OFFICE, - 'G8': cte.SMALL_OFFICE, - 'G9': cte.SMALL_OFFICE, - 'H1': cte.HOTEL, - 'H2': cte.HOTEL, - 'H3': cte.HOTEL, - 'H4': cte.HOTEL, - 'H5': cte.HOTEL, - 'H6': cte.HOTEL, - 'H7': cte.HOTEL, - 'H8': cte.HOTEL, - 'H9': cte.HOTEL, - 'HB': cte.HOTEL, - 'HH': cte.HOTEL, - 'HR': cte.HOTEL, - 'HS': cte.HOTEL, - 'I1': cte.HOSPITAL, - 'I2': cte.OUT_PATIENT_HEALTH_CARE, - 'I3': cte.OUT_PATIENT_HEALTH_CARE, - 'I4': cte.RESIDENTIAL, - 'I5': cte.OUT_PATIENT_HEALTH_CARE, - 'I6': cte.OUT_PATIENT_HEALTH_CARE, - 'I7': cte.OUT_PATIENT_HEALTH_CARE, - 'I9': cte.OUT_PATIENT_HEALTH_CARE, - 'J1': cte.LARGE_OFFICE, - 'J2': cte.LARGE_OFFICE, - 'J3': cte.LARGE_OFFICE, - 'J4': cte.LARGE_OFFICE, - 'J5': cte.LARGE_OFFICE, - 'J6': cte.LARGE_OFFICE, - 'J7': cte.LARGE_OFFICE, - 'J8': cte.LARGE_OFFICE, - 'J9': cte.LARGE_OFFICE, - 'K1': cte.STRIP_MALL, - 'K2': cte.STRIP_MALL, - 'K3': cte.STRIP_MALL, - 'K4': cte.RESIDENTIAL, - 'K5': cte.RESTAURANT, - 'K6': cte.SUPERMARKET, - 'K7': cte.SUPERMARKET, - 'K8': cte.SUPERMARKET, - 'K9': cte.SUPERMARKET, - 'L1': cte.RESIDENTIAL, - 'L2': cte.RESIDENTIAL, - 'L3': cte.RESIDENTIAL, - 'L8': cte.RESIDENTIAL, - 'L9': cte.RESIDENTIAL, - 'M1': cte.LARGE_OFFICE, - 'M2': cte.LARGE_OFFICE, - 'M3': cte.LARGE_OFFICE, - 'M4': cte.LARGE_OFFICE, - 'M9': cte.LARGE_OFFICE, - 'N1': cte.RESIDENTIAL, - 'N2': cte.RESIDENTIAL, - 'N3': cte.RESIDENTIAL, - 'N4': cte.RESIDENTIAL, - 'N9': cte.RESIDENTIAL, - 'O1': cte.SMALL_OFFICE, - 'O2': cte.SMALL_OFFICE, - 'O3': cte.SMALL_OFFICE, - 'O4': cte.SMALL_OFFICE, - 'O5': cte.SMALL_OFFICE, - 'O6': cte.SMALL_OFFICE, - 'O7': cte.SMALL_OFFICE, - 'O8': cte.SMALL_OFFICE, - 'O9': cte.SMALL_OFFICE, - 'P1': cte.LARGE_OFFICE, - 'P2': cte.HOTEL, - 'P3': cte.SMALL_OFFICE, - 'P4': cte.SMALL_OFFICE, - 'P5': cte.SMALL_OFFICE, - 'P6': cte.SMALL_OFFICE, - 'P7': cte.LARGE_OFFICE, - 'P8': cte.LARGE_OFFICE, - 'P9': cte.SMALL_OFFICE, - 'Q0': cte.SMALL_OFFICE, - 'Q1': cte.SMALL_OFFICE, - 'Q2': cte.SMALL_OFFICE, - 'Q3': cte.SMALL_OFFICE, - 'Q4': cte.SMALL_OFFICE, - 'Q5': cte.SMALL_OFFICE, - 'Q6': cte.SMALL_OFFICE, - 'Q7': cte.SMALL_OFFICE, - 'Q8': cte.SMALL_OFFICE, - 'Q9': cte.SMALL_OFFICE, - 'R0': cte.RESIDENTIAL, - 'R1': cte.RESIDENTIAL, - 'R2': cte.RESIDENTIAL, - 'R3': cte.RESIDENTIAL, - 'R4': cte.RESIDENTIAL, - 'R5': cte.RESIDENTIAL, - 'R6': cte.RESIDENTIAL, - 'R7': cte.RESIDENTIAL, - 'R8': cte.RESIDENTIAL, - 'R9': cte.RESIDENTIAL, - 'RA': cte.RESIDENTIAL, - 'RB': cte.RESIDENTIAL, - 'RC': cte.RESIDENTIAL, - 'RD': cte.RESIDENTIAL, - 'RG': cte.RESIDENTIAL, - 'RH': cte.RESIDENTIAL, - 'RI': cte.RESIDENTIAL, - 'RK': cte.RESIDENTIAL, - 'RM': cte.RESIDENTIAL, - 'RR': cte.RESIDENTIAL, - 'RS': cte.RESIDENTIAL, - 'RW': cte.RESIDENTIAL, - 'RX': cte.RESIDENTIAL, - 'RZ': cte.RESIDENTIAL, - 'S0': cte.RESIDENTIAL, - 'S1': cte.RESIDENTIAL, - 'S2': cte.RESIDENTIAL, - 'S3': cte.RESIDENTIAL, - 'S4': cte.RESIDENTIAL, - 'S5': cte.RESIDENTIAL, - 'S9': cte.RESIDENTIAL, - 'U0': cte.WAREHOUSE, - 'U1': cte.WAREHOUSE, - 'U2': cte.WAREHOUSE, - 'U3': cte.WAREHOUSE, - 'U4': cte.WAREHOUSE, - 'U5': cte.WAREHOUSE, - 'U6': cte.WAREHOUSE, - 'U7': cte.WAREHOUSE, - 'U8': cte.WAREHOUSE, - 'U9': cte.WAREHOUSE, - 'W1': cte.PRIMARY_SCHOOL, - 'W2': cte.PRIMARY_SCHOOL, - 'W3': cte.SECONDARY_SCHOOL, - 'W4': cte.EDUCATION, - 'W5': cte.SECONDARY_SCHOOL, - 'W6': cte.SECONDARY_SCHOOL, - 'W7': cte.SECONDARY_SCHOOL, - 'W8': cte.PRIMARY_SCHOOL, - 'W9': cte.SECONDARY_SCHOOL, - 'Y1': cte.LARGE_OFFICE, - 'Y2': cte.LARGE_OFFICE, - 'Y3': cte.LARGE_OFFICE, - 'Y4': cte.LARGE_OFFICE, - 'Y5': cte.LARGE_OFFICE, - 'Y6': cte.LARGE_OFFICE, - 'Y7': cte.LARGE_OFFICE, - 'Y8': cte.LARGE_OFFICE, - 'Y9': cte.LARGE_OFFICE, - 'Z1': cte.LARGE_OFFICE - } - _hft_function_to_hub_function = { - 'residential': cte.RESIDENTIAL, - 'single family house': cte.SINGLE_FAMILY_HOUSE, - 'multifamily house': cte.MULTI_FAMILY_HOUSE, - 'hotel': cte.HOTEL, - 'hospital': cte.HOSPITAL, - 'outpatient': cte.OUT_PATIENT_HEALTH_CARE, - 'commercial': cte.SUPERMARKET, - 'strip mall': cte.STRIP_MALL, - 'warehouse': cte.WAREHOUSE, - 'primary school': cte.PRIMARY_SCHOOL, - 'secondary school': cte.EDUCATION, - 'office': cte.MEDIUM_OFFICE, - 'large office': cte.LARGE_OFFICE - } @property def hub_usage_to_hft_usage(self): """ - Get HfT usage from the given internal usage + Hub usage to HfT usage, transformation dictionary :return: dict """ - return self._usage_to_hft_usage + return HubUsageToHftUsage.dictionary @property def hub_usage_to_comnet_usage(self): """ - Get Comnet usage from the given internal usage + Hub usage to Comnet usage, transformation dictionary :return: dict """ - return self._usage_to_comnet_usage + return HubUsageToComnetUsage.dictionary @property def hub_usage_to_nrcan_usage(self): """ - Get Nrcan usage from the given internal usage + Get hub usage to NRCAN usage, transformation dictionary :return: dict """ - return self._usage_to_nrcan_usage + return HubUsageToNrcanUsage.dictionary @property def hub_function_to_nrcan_construction_function(self): """ - Get Nrcan construction function from the given internal function + Get hub function to NRCAN construction function, transformation dictionary :return: dict """ - return self._function_to_nrcan_construction_function + return HubFunctionToNrcanConstructionFunction.dictionary @property def hub_function_to_nrel_construction_function(self): """ - Get Nrel construction function from the given internal function + Get hub function to NREL construction function, transformation dictionary :return: dict """ - return self._function_to_nrel_construction_function + return HubFunctionToNrelConstructionFunction.dictionary @property def pluto_function_to_hub_function(self): """ - Set internal function from pluto standard + Get Pluto function to hub function, transformation dictionary :return: dict """ - return self._pluto_function_to_hub_function + return PlutoFunctionToHubFunction.dictionary @property def hft_function_to_hub_function(self): """ - Set internal function from functions used in hft files + Get Hft function to hub function, transformation dictionary :return: dict """ - return self._hft_function_to_hub_function + return HftFunctionToHubFunction.dictionary + + @property + def montreal_function_to_hub_function(self): + """ + Get Montreal function to hub function, transformation dictionary + """ + return MontrealFunctionToHubFunction.dictionary + + @property + def alkis_function_to_hub_function(self): + """ + Get Alkis function to hub function, transformation dictionary + """ + return AlkisFunctionToHubFunction.dictionary + diff --git a/requirements.txt b/hub/requirements.txt similarity index 94% rename from requirements.txt rename to hub/requirements.txt index 4f16116c..aefb96c6 100644 --- a/requirements.txt +++ b/hub/requirements.txt @@ -22,4 +22,4 @@ bcrypt==4.0.1 shapely geopandas triangle - +psycopg2-binary \ No newline at end of file diff --git a/setup.py b/setup.py index ed618602..f1a5ca19 100644 --- a/setup.py +++ b/setup.py @@ -1,93 +1,110 @@ -from setuptools import setup, find_packages, convert_path -import os.path import glob +import pathlib +from distutils.util import convert_path + +import pkg_resources +from setuptools import setup + +with pathlib.Path('hub/requirements.txt').open() as r: + install_requires = [ + str(requirement) + for requirement + in pkg_resources.parse_requirements(r) + ] + +install_requires.append('setuptools') main_ns = {} version = convert_path('hub/version.py') with open(version) as f: - exec(f.read(), main_ns) + exec(f.read(), main_ns) + setup( - name='cerc-hub', - version=main_ns['__version__'], - description="CERC Hub consist in a set of classes (Central data model), importers and exporters to help researchers " - "to create better and sustainable cities", - long_description="CERC Hub consist in a set of classes (Central data model), importers and exporters to help " - "researchers to create better and sustainable cities.\n\nDevelop at Concordia university in canada " - "as part of the research group from the next generation cities institute our aim among others it's " - "to provide a comprehensive set of tools to help researchers and urban developers to make decisions " - "to improve the livability and efficiency of our cities", - classifiers=[ - "License :: OSI Approved :: GNU Library or Lesser General Public License (LGPL)", - "Programming Language :: Python", - "Programming Language :: Python :: 3", - ], - include_package_data=True, - packages=['hub', - 'hub.catalog_factories', - 'hub.catalog_factories.construction', - 'hub.catalog_factories.data_models', - 'hub.catalog_factories.data_models.construction', - 'hub.catalog_factories.data_models.greenery', - 'hub.catalog_factories.data_models.usages', - 'hub.catalog_factories.greenery', - 'hub.catalog_factories.greenery.ecore_greenery', - 'hub.catalog_factories.usage', - 'hub.city_model_structure', - 'hub.city_model_structure.attributes', - 'hub.city_model_structure.building_demand', - 'hub.city_model_structure.energy_systems', - 'hub.city_model_structure.greenery', - 'hub.city_model_structure.iot', - 'hub.city_model_structure.transport', - 'hub.config', - 'hub.data', - 'hub.exports', - 'hub.exports.building_energy', - 'hub.exports.building_energy.idf_files', - 'hub.exports.building_energy.insel', - 'hub.exports.energy_systems', - 'hub.exports.formats', - 'hub.helpers', - 'hub.hub_logger', - 'hub.imports', - 'hub.imports.construction', - 'hub.imports.construction.helpers', - 'hub.imports.construction.data_classes', - 'hub.imports.energy_systems', - 'hub.imports.geometry', - 'hub.imports.geometry.citygml_classes', - 'hub.imports.geometry.helpers', - 'hub.imports.usage', - 'hub.imports.weather', - 'hub.imports.weather.helpers', - 'hub.persistence', - 'hub.persistence.models', - 'hub.persistence.repositories', - 'hub.imports' - ], - data_files=[ - ('hub/config', glob.glob('hub/config/*.ini')), - ('hub/catalog_factories/greenery/ecore_greenery', glob.glob('hub/catalog_factories/greenery/ecore_greenery/*.ecore')), - ('hub/data/construction.', glob.glob('hub/data/construction/*.xml')), - ('hub/data/customized_imports/', glob.glob('hub/data/customized_imports/*.xml')), - ('hub/data/energy_systems/', glob.glob('hub/data/energy_systems/*.xml')), - ('hub/data/energy_systems/', glob.glob('hub/data/energy_systems/*.insel')), - ('hub/data/energy_systems/', glob.glob('hub/data/energy_systems/*.xlsx')), - ('hub/data/energy_systems/*', glob.glob('hub/data/energy_systems/*.txt')), - ('hub/data/energy_systems/*', glob.glob('hub/data/energy_systems/*.yaml')), - ('hub/data/greenery/', glob.glob('hub/data/greenery/*.xml')), - ('hub/data/life_cycle_assessment/', glob.glob('hub/data/life_cycle_assessment/*.xml')), - ('hub/data/schedules/', glob.glob('hub/data/schedules/*.xml')), - ('hub/data/schedules/', glob.glob('hub/data/schedules/*.xlsx')), - ('hub/data/schedules/idf_files/', glob.glob('hub/data/schedules/idf_files/*.idf')), - ('hub/data/sensors/', glob.glob('hub/data/sensors/*.json')), - ('hub/data/usage/', glob.glob('hub/data/usage/*.xml')), - ('hub/data/usage/', glob.glob('hub/data/usage/*.xlsx')), - ('hub/data/weather/', glob.glob('hub/data/weather/*.dat')), - ('hub/data/weather/epw/', glob.glob('hub/data/weather/epw/*.epw')), - ('hub/data/weather/', glob.glob('hub/data/weather/*.dat')), - ('hub/exports/building_energy/idf_files', glob.glob('hub/exports/building_energy/idf_files/*.idf')) - ], - setup_requires=['setuptools'] + name='cerc-hub', + version=main_ns['__version__'], + description="CERC Hub consist in a set of classes (Central data model), importers and exporters to help researchers " + "to create better and sustainable cities", + long_description="CERC Hub consist in a set of classes (Central data model), importers and exporters to help " + "researchers to create better and sustainable cities.\n\nDevelop at Concordia university in canada " + "as part of the research group from the next generation cities institute our aim among others it's " + "to provide a comprehensive set of tools to help researchers and urban developers to make decisions " + "to improve the livability and efficiency of our cities", + classifiers=[ + "License :: OSI Approved :: GNU Library or Lesser General Public License (LGPL)", + "Programming Language :: Python", + "Programming Language :: Python :: 3", + ], + include_package_data=True, + packages=['hub', + 'hub.catalog_factories', + 'hub.catalog_factories.construction', + 'hub.catalog_factories.data_models', + 'hub.catalog_factories.data_models.construction', + 'hub.catalog_factories.data_models.greenery', + 'hub.catalog_factories.data_models.usages', + 'hub.catalog_factories.greenery', + 'hub.catalog_factories.greenery.ecore_greenery', + 'hub.catalog_factories.usage', + 'hub.city_model_structure', + 'hub.city_model_structure.attributes', + 'hub.city_model_structure.building_demand', + 'hub.city_model_structure.energy_systems', + 'hub.city_model_structure.greenery', + 'hub.city_model_structure.iot', + 'hub.city_model_structure.transport', + 'hub.config', + 'hub.data', + 'hub.exports', + 'hub.exports.building_energy', + 'hub.exports.building_energy.idf_files', + 'hub.exports.building_energy.insel', + 'hub.exports.energy_systems', + 'hub.exports.formats', + 'hub.helpers', + 'hub.hub_logger', + 'hub.imports', + 'hub.imports.construction', + 'hub.imports.construction.helpers', + 'hub.imports.construction.data_classes', + 'hub.imports.energy_systems', + 'hub.imports.geometry', + 'hub.imports.geometry.citygml_classes', + 'hub.imports.geometry.helpers', + 'hub.imports.usage', + 'hub.imports.weather', + 'hub.imports.weather.helpers', + 'hub.persistence', + 'hub.persistence.models', + 'hub.persistence.repositories', + 'hub.imports' + ], + setup_requires=install_requires, + data_files=[ + ('hub', glob.glob('hub/requirements.txt')), + ('hub/config', glob.glob('hub/config/*.ini')), + ('hub/catalog_factories/greenery/ecore_greenery', + glob.glob('hub/catalog_factories/greenery/ecore_greenery/*.ecore')), + ('hub/data/construction.', glob.glob('hub/data/construction/*.xml')), + ('hub/data/customized_imports/', glob.glob('hub/data/customized_imports/*.xml')), + ('hub/data/energy_systems/', glob.glob('hub/data/energy_systems/*.xml')), + ('hub/data/energy_systems/', glob.glob('hub/data/energy_systems/*.insel')), + ('hub/data/energy_systems/', glob.glob('hub/data/energy_systems/*.xlsx')), + ('hub/data/energy_systems/*', glob.glob('hub/data/energy_systems/*.txt')), + ('hub/data/energy_systems/*', glob.glob('hub/data/energy_systems/*.yaml')), + ('hub/data/greenery/', glob.glob('hub/data/greenery/*.xml')), + ('hub/data/life_cycle_assessment/', glob.glob('hub/data/life_cycle_assessment/*.xml')), + ('hub/data/schedules/', glob.glob('hub/data/schedules/*.xml')), + ('hub/data/schedules/', glob.glob('hub/data/schedules/*.xlsx')), + ('hub/data/schedules/idf_files/', glob.glob('hub/data/schedules/idf_files/*.idf')), + ('hub/data/sensors/', glob.glob('hub/data/sensors/*.json')), + ('hub/data/usage/', glob.glob('hub/data/usage/*.xml')), + ('hub/data/usage/', glob.glob('hub/data/usage/*.xlsx')), + ('hub/data/weather/', glob.glob('hub/data/weather/*.dat')), + ('hub/data/weather/epw/', glob.glob('hub/data/weather/epw/*.epw')), + ('hub/data/weather/', glob.glob('hub/data/weather/*.dat')), + ('hub/exports/building_energy/idf_files', glob.glob('hub/exports/building_energy/idf_files/*.idf')), + ('hub/helpers/data', glob.glob('hub/helpers/data/quebec_to_hub.json')) + ], + )