@startuml
skinparam monochrome true
skinparam ObjectFontStyle bold

left to right direction

map placex {
  place_id => BIGINT
  osm_type => CHAR(1)
  osm_id => BIGINT
  class => TEXT
  type => TEXT
  name => HSTORE
  address => HSTORE
  extratags => HSTORE
  admin_level => SMALLINT
  partition => SMALLINT
  geometry_sector => INT
  parent_place_id => BIGINT
  linked_place_id => BIGINT
  importance => DOUBLE
  rank_search => SMALLINT
  rank_address => SMALLINT
  wikipedia => TEXT
  country_code => VARCHAR(2)
  housenumber => TEXT
  postcode => TEXT
  indexed_status => SMALLINT
  indexed_date => TIMESTAMP
  centroid => GEOMETRY
  geometry => GEOMETRY
}

map search_name {
  place_id => BIGINT
  importance => DOUBLE
  search_rank => SMALLINT
  address_rank => SMALLINT
  name_vector => INT[]
  nameaddress_vector => INT[]
  country_code => VARCHAR(2)
  centroid => GEOMETRY
}

map word {
  word_id => INT
  word_token => TEXT
  ... =>
}

map location_property_osmline {
  place_id => BIGINT
  osm_id => BIGINT
  startnumber => INT
  endnumber => INT
  interpolationtype => TEXT
  address => HSTORE
  partition => SMALLINT
  geometry_sector => INT
  parent_place_id => BIGINT
  country_code => VARCHAR(2)
  postcode => text
  indexed_status => SMALLINT
  indexed_date => TIMESTAMP
  linegeo => GEOMETRY
}

map place_addressline {
  place_id => BIGINT
  address_place_id => BIGINT
  distance => DOUBLE
  cached_rank_address => SMALLINT
  fromarea => BOOLEAN
  isaddress => BOOLEAN
}

map location_postcode {
  place_id => BIGINT
  postcode => TEXT
  parent_place_id => BIGINT
  rank_search => SMALLINT
  rank_address => SMALLINT
  indexed_status => SMALLINT
  indexed_date => TIMESTAMP
  geometry => GEOMETRY
}

placex::place_id <-- search_name::place_id
placex::place_id <-- place_addressline::place_id
placex::place_id <-- place_addressline::address_place_id

search_name::name_vector --> word::word_id
search_name::nameaddress_vector --> word::word_id

place_addressline -[hidden]> location_property_osmline
search_name -[hidden]> place_addressline
location_property_osmline -[hidden]-> location_postcode

@enduml
