Bulk upload of development projects

Development projects can be bulk uploaded into the platform through a request here. The data schema below must be followed for the upload to occur. Development projects can either be uploaded as a CSV file or as a zipped (.zip) shapefile of polygons. CSV files and shapefiles use different methods to connect development projects to blocks, see below for details on the methods available:

Note

The ability to bulk upload development projects is not yet available in the user interface. If you would like to upload your development projects, please format them to fit the data schema and send the data with a request here.

Connecting development projects to blocks

Three methods are available to connect your development projects to specific blocks. The set of development projects to upload should be formatted to only utilize one method:

  1. CSV: use a block_id column to directly associate the project with the Census FIPS code of block polygons. This is the preferred and most accurate method of association. For projects that are associated with more than one block ID, denote multiple blocks using a semicolon ; as a delimiter, for example: 060014001001000; 060014001001001

  2. CSV: use columns x (longitude) and y (latitude) to hold coordinates of the project address or centroid to associate with the intersecting block ID FIPS code. Coordinates must be in the World Geodetic System 1984 (WGS84) coordinate system.

  3. Shapefile: use polygons denoting the project area to associate the project with intersecting block polygons block ID FIPS code. Development project polygon intersection occurs using a within block polygon centroid method.

Each method requires a different data schema for specific columns to include in your file to upload, see below:

Development Projects as CSV Method 1: block_id columns

Column Name

Data Type

Required

Description

block_id

String

Yes

block_id must be a properly formatted Census FIPS code.
For projects that are associated with more than one block id,
denote multiple blocks using a semicolon ; as a
delimiter, for example: 060014001001000; 060014001001001

Development Projects as CSV Method 2: xy coordinate columns

Column Name

Data Type

Required

Description

x

Float

Yes

Longitude coordinate of project address or centroid.

y

Float

Yes

Latitude coordinate of project address or centroid.

Development project attribute data schema

A basic set of columns are required to upload development projects and are identical to those required in the user interface development projects. Required and optional columns and their data schema are described separately below by category for interpretation purposes:

  1. General attributes: Required for all development project records.

  2. Residential building attributes: Required for development project records that are residential in the residential building types table.

  3. Non-residential building attributes: Required for development project records that are non-residential.

  4. Phased attributes (Optional): Requirement for development project records that should phase the construction of units or space over multiple years. See the development projects section for more on phases.

  5. AMI levels (Required only if project has inclusionary affordable units): Requirement for development project records that have inclusionary affordable units. See the development projects section for more on AMI levels.

General attributes

Regardless of development project building type, these general columns are required where indicated below:

Development Projects as CSV: General attributes

Column Name

Data Type

Required

Description

name

String

Yes

The name of the project.

building_type_id

Integer

Yes

The ID of the project building type. Must
correspond exactly to one of these types where 1: Own single-family; 2: Own multifamily;
3: Rent single-family; 4: Rent multifamily; 5: Non-residential

start_year

Integer

Yes

The construction start year of the
development.

duration

Integer

Yes

Construction duration in months. Must
be greater than 0.

status

String

Yes

The certainty that the project will be
constructed or that it has already been
constructed. Must be exactly one of either:
Committed, Completed, or Proposed

redevelopment

Boolean

Yes

Indicator that development is a
redevelopment. True if development project is
a redevelopment, else False. If True,
all existing residential units and employment
spaces on the selected blocks will be removed
and replaced with the values specified in
this development.

tags

String

Yes

Tags to use to link with scenarios. For setting
more than one tag on a project, list the tags and
separate each one using a semicolon ; as
a delimiter, for example: Baseline; High growth

phased

Boolean

Yes

Indicator that development residential units and
or employment spaces are phased over the construction
duration. True if development project is phased,
else False. If phased, record must utilize
the phased data schema

buildings_count

Integer

No

Total number of buildings in the
project. Must be greater than 0.

floors

Integer

No

Average number of floors in the buildings in
the project. Must be greater than 0.

descriptive_location

String

No

General description of project location.

street

String

No

Physical street address of project.

city

String

No

The city the project is located in.

state

String

No

The state or province the project is located in.

zip

String

No

The ZIP or postal code the project is located in.

identification

String

No

User specified identification (ID).
This ID can be different from that used by UrbanSim
and is intended to be used to connect or join the
development data to other external
data sources outside of the platform.

developer

String

No

Name of project developer.

source

String

No

The source of the information on the development
project.

notes

String

No

Notes can be added to include any other pertinent
information for context.

Residential

If the development project is a residential building type, additional columns are required:

Development Projects as CSV: Residential attributes

Column Name

Data Type

Required

Description

residential_units

Integer

Yes

Total number of residential units.
Must be greater than 0.

average_unit_size

Integer

Yes

Average unit size (square feet) in
the development. Must be greater than 100 sqft.

market_rate_units

Integer

Yes

Total number of units that will be
market rate. If none exist, set to 0. market_rate_units
and affordable_units cannot both be 0.

affordable_units

Integer

Yes

Total number of units that will be
affordable. If none exist, set to 0. market_rate_units
and affordable_units cannot both be 0.

affordable_program

String

No - Required only
if affordable_units
exist

Type of affordable housing program. Must be
exactly one of either: Inclusionary, Other, or Both. Affordable
programs of Inclusionary and Both types must also have
corresponding AMI level unit columns in this format

own_units

Integer

No

Total number of units that will be owner
occupied. If none exist, set to 0. own_units and
rent_units cannot both be 0.

rent_units

Integer

No

Total number of units that will be renter
occupied. If none exist, set to 0. own_units and
rent_units cannot both be 0.

building_program

String

No

Residential building program specific
to the development project. Must be exactly one of either:
Family, Senior, Veteran, Student, Homeless, or Other.
Additional categories can be added upon request.

group_quarters

String

No

If the project offers group-quarters,
specify the category. Must be exactly one of
either: Assisted Living,
Dormitory, Hospital,
Single room occupancy,
Homeless shelter, or Other.
Additional categories can be
added upon request.

population_or_beds

Integer

No - Required only
if development project
has group-quarters

Total number of people or beds
that can be accommodated
in group-quarters.

Non-residential

If the development project is a non-residential building type, additional columns are required. You may represent jobs using two methods:

Development Projects as CSV: Non-residential attributes - method 1

Column Name

Data Type

Required

Description

non_residential_space

Integer

Yes

Total non-residential square
footage of the development. Must be
greater than 0.

space_per_job

Integer

Yes

Average square feet per job in
the development. Must be
greater than 100 sqft.

Development Projects as CSV: Non-residential attributes - method 2

Column Name

Data Type

Required

Description

employment_capacity

Integer

Yes

Total employment capacity
of the development. Must be
greater than 0.

Phased construction

If the development project utilizes the optional phased construction of unit or space over the construction duration, additional columns are required. Only market rate, affordable, non-residential space, and employment capacity can be phased. The general syntax for columns follow this naming rule: “phases_[TYPE OF ATTRIBUTE]_[PHASED YEAR]” for example to phase market rate units over a two year construction period from 2011 to 2012 add the two columns: phases_market_rate_units_2011 and phases_market_rate_units_2012.

Development Projects as CSV: Phased attribute column

Column Name

Data Type

Description

phases_market_rate_units_[PHASED YEAR]

Integer

Total number of
market rate units constructed in phased year.
Phased units must sum across phased years to equal total
market rate units. Phased year must be between
start year and the end of the duration.

phases_affordable_units_[PHASED YEAR]

Integer

Total number of
affordable units constructed in phased year.
Phased units must sum across phased years to equal total
affordable units. Phased year must be between
start year and the end of the duration.

phases_non_residential_space_[PHASED YEAR]

Integer

Total number of
non-residential sqft constructed in phased year.
Phased space must sum across phased years to
equal total non-residential space. Phased year must
be between start year and the end of the duration.

phases_employment_capacity_[PHASED YEAR]

Integer

Total number of
jobs available in phased year.
Phased jobs must sum across phased years to
equal total jobs. Phased year must
be between start year and the end of the duration.

AMI levels

If the development project has inclusionary or both affordable program unit categories, you must specify the AMI levels of units with additional columns. The general syntax for columns follow this naming rule: “ami_[AMI LEVEL]_units” for example to set two different AMI levels such as 30% and 40% for different numbers of units, add the two columns: ami_30_units and ami_40_units.

Development Projects as CSV: AMI level attribute column

Column Name

Data Type

Description

ami_[AMI LEVEL]_units

Integer

Total number of affordable units at
specified AMI level. Units must sum across AMI levels
to equal total affordable units.