private function _nominatim (array $parts)
	{
		// Add any missing values
		$keys = [
			'house_number',
			'address29',
			'type',
			'pedestrian',
			'footway',
			'path',
			'road',
			'neighbourhood',
			'suburb',
			'village',
			'town',
			'city_district',
			'city',
			'postcode',
			'county',
			'state_district',
			'state',
			'country',
		];

		foreach ($keys as $key)
			if (!array_key_exists($key, $parts))
				$parts[$key] = null;

		$this->number = $this->_join([
			$parts['house_number'],
			$parts['address29'],
			in_array($parts['type'], [
				'pedestrian',
				'footway',
				'path',
				'road',
				'neighbourhood',
				'suburb',
				'village',
				'town',
				'city_district',
				'city',
			]) ? $parts[$parts['type']] : null,
		]);

		$this->address = $this->_join([
			$parts['pedestrian'],
			$parts['footway'],
			$parts['path'],
			$parts['road'],
			$parts['neighbourhood'],
			$parts['suburb'],
		]);

		$this->city = $this->_join([
			$parts['village'],
			$parts['town'],
			$parts['city_district'],
			$parts['city'],
		]);

		$this->postcode = $parts['postcode'];
		$this->county = $parts['county'];

		$this->state = $this->_join([
			$parts['state_district'],
			$parts['state'],
		]);

		$this->country = $parts['country'];
	}