]> git.openstreetmap.org Git - nominatim.git/blob - docs/develop/osm2pgsql-tables.plantuml
release 5.3.2.post11
[nominatim.git] / docs / develop / osm2pgsql-tables.plantuml
1 @startuml
2 skinparam monochrome true
3 skinparam ObjectFontStyle bold
4
5 map planet_osm_nodes #eee {
6   id => BIGINT
7   lat => INT
8   lon => INT
9 }
10
11 map planet_osm_ways #eee {
12   id => BIGINT
13   nodes => BIGINT[]
14   tags => TEXT[]
15 }
16
17 map planet_osm_rels #eee {
18   id => BIGINT
19   parts => BIGINT[]
20   members => TEXT[]
21   tags => TEXT[]
22   way_off => SMALLINT
23   rel_off => SMALLINT
24 }
25
26 map place {
27   osm_type => CHAR(1)
28   osm_id => BIGINT
29   class => TEXT
30   type => TEXT
31   name => HSTORE
32   address => HSTORE
33   extratags => HSTORE
34   admin_level => SMALLINT
35   geometry => GEOMETRY
36   categories => LTREE[]
37 }
38
39 map place_entrance {
40   osm_id => BIGINT
41   type => TEXT
42   extratags => HSTORE
43   geometry => GEOMETRY
44 }
45
46 map place_associated_street {
47   relation_id => BIGINT
48   member_type => TEXT
49   member_id => BIGINT
50   member_role => TEXT
51 }
52
53 map place_postcode {
54   osm_type => CHAR(1)
55   osm_id => BIGINT
56   postcode => TEXT
57   country_code => TEXT
58   centroid => GEOMETRY
59   geometry => GEOMETRY
60 }
61
62 map place_interpolation {
63   osm_id => BIGINT
64   type => TEXT
65   address => HSTORE
66   nodes => BIGINT[]
67   geometry => GEOMETRY
68 }
69
70
71 planet_osm_nodes  -[hidden]> planet_osm_ways
72 planet_osm_ways  -[hidden]> planet_osm_rels
73 planet_osm_ways -[hidden]-> place
74 place -[hidden]-> place_postcode
75 place -[hidden]-> place_interpolation
76 place_postcode -[hidden]-> place_entrance
77 place_interpolation -[hidden]-> place_associated_street
78
79 planet_osm_nodes::id <- planet_osm_ways::nodes
80 planet_osm_nodes::id <- place_interpolation::nodes
81 planet_osm_nodes::id <- place_entrance::osm_id
82 planet_osm_rels::id <- place_associated_street::relation_id
83
84 @enduml