There is one folder
your-GOAT-directory/app/database/data in which you can organize the data you want to load into the database.
The setup script will search for shapefiles (.shp) and SQL-table (.sql) dumps in this directory. All of the data will be uploaded as custom data tables into your database. In the following table schemas for the most important custom datasets are described:
Table name: study_area
Table name: landuse
Table name: landuse_additional
Table name: census
Table name: buildings_custom
Custom Population point data
Table name: population
All attributes labelled as “not null” are required attributes. The remaining attributes are option but are suggested if available as they will improve the results. The described custom tables are especially used for the provision of population data. It is important to keep the described naming convention as GOAT expects the attributes to be labeled as shown. Not all tables are required to run GOAT and depending on the availability of data one or the other option to process population data is used.
Accurate population data is of special importance for GOAT. Due to the variety of available data sets different options for handling population data are provided. There are defined four options for which the configuration file
your-GOAT-directory/app/config/goat_config.yaml can be adjusted:
Census Standard Data originating from a census grid is disaggregated proportionally on the building access level considering the residential gross floor area of buildings.
Census Extrapolation As census data is often out of data a procedure was developed that updates outdates census grids and disaggregates population on the building access level.
Population disaggregation Population is disaggregated from the districts of the study area to the building access level considering the residential gross floor area of buildings.
Custom population point data If custom population data sets is provided not disaggregation is performed.
For the modes “census_standard”, “census_extrapolation” and “disaggregation” buildings are classified into residential and non-residential. This is done based on a process called dasymetric mapping, which uses several filters and data such as landuse to properly label buildings.
In the configuration file
goat_config.yaml these filters can be adjusted. The default settings are mostly tailored to Munich therefore it is highly suggested to revise categorization if you work in another context.
- custom_landuse_no_residents: if you have the table “landuse” you can define landuse categories that are not residential
- custom_landuse_additional_no_residents: if you have the table “landuse_addition” you can define landuse categories that are not residential
- osm_landuse_no_residents: landuse categories from OSM that you label as not residential (Check: https://wiki.openstreetmap.org/wiki/landuse)
- building_types_potentially_residential: building type that should not be excluded – Note: many buildings are just labeled building=yes in OSM
- building_types_residential: building type that is for sure residential e.g. building=residential. This applied also to custom building data but mostly the OSM convention on building types is followed: https://wiki.openstreetmap.org/wiki/Key:building)
- tourism_no_residents: osm-tag tourism that has no residents (Check: https://wiki.openstreetmap.org/wiki/Tourism )
- amenity_no_residents: osm-tag amenity that has no residents (Check: https://wiki.openstreetmap.org/wiki/Key:amenity)
- minimum_building_size_residential: all buildings that have a smaller size than this are labeled as not residential (very often garages etc.)
- average_gross_living_area: the average gross living area in your study area per resident in m²
- average_building_levels: this is a fallback value in case no building levels are defined on the level of buildings or districts.
- average_roof_levels: this is a fallback value in case no roof levels are defined on the level of buildings or districts.
- average_height_per_level: this value is used to compute the number of building levels in case the height of buildings is know.