]> git.openstreetmap.org Git - nominatim.git/blobdiff - docs/develop/overview.md
Merge remote-tracking branch 'upstream/master'
[nominatim.git] / docs / develop / overview.md
index 179eeb0b6328f8333037700c689d5ba577501e45..aedce9908c6cf73fdc635719572008c1f0356b14 100644 (file)
@@ -1,6 +1,6 @@
 # Basic Architecture
 
 # Basic Architecture
 
-Nominatim provides geocoding based on OpenStreetMap data. It uses a Postgresql
+Nominatim provides geocoding based on OpenStreetMap data. It uses a PostgreSQL
 database as a backend for storing the data.
 
 There are three basic parts to Nominatim's architecture: the data import,
 database as a backend for storing the data.
 
 There are three basic parts to Nominatim's architecture: the data import,
@@ -9,16 +9,16 @@ the address computation and the search frontend.
 The __data import__ stage reads the raw OSM data and extracts all information
 that is useful for geocoding. This part is done by osm2pgsql, the same tool
 that can also be used to import a rendering database. It uses the special
 The __data import__ stage reads the raw OSM data and extracts all information
 that is useful for geocoding. This part is done by osm2pgsql, the same tool
 that can also be used to import a rendering database. It uses the special
-gazetteer output plugin in `osm2pgsql/output-gazetter.[ch]pp`. The result of
+gazetteer output plugin in `osm2pgsql/src/output-gazetter.[ch]pp`. The result of
 the import can be found in the database table `place`.
 
 The __address computation__ or __indexing__ stage takes the data from `place`
 and adds additional information needed for geocoding. It ranks the places by
 importance, links objects that belong together and computes addresses and
 the import can be found in the database table `place`.
 
 The __address computation__ or __indexing__ stage takes the data from `place`
 and adds additional information needed for geocoding. It ranks the places by
 importance, links objects that belong together and computes addresses and
-the search index. Most of this work is done in Pl/pqSQL via database triggers
-and can be found in the file `sql/functions.sql`.
+the search index. Most of this work is done in PL/pgSQL via database triggers
+and can be found in the files in the `sql/functions/` directory.
 
 
-The __search frontend__ implements the actual API. It takes queries for
-search and reverse geocoding queries from the user, looks up the data and
-returns the results in the requested format. This part is written in PHP
-and can be found in the `lib/` and `website/` directories.
+The __search frontend__ implements the actual API. It takes search
+and reverse geocoding queries from the user, looks up the data and
+returns the results in the requested format. This part is located in the
+`nominatim-api` package. The source code can be found in `src/nominatim_api`.