X-Git-Url: https://git.openstreetmap.org./nominatim.git/blobdiff_plain/558c42ec83a5a01e238af2fa4faa6a992af3f77a..54cb9a33b1f62b91ce7b3dd9e4773c46cc04c2b8:/nominatim/api/core.py?ds=sidebyside diff --git a/nominatim/api/core.py b/nominatim/api/core.py index fb03d2df..a6b49404 100644 --- a/nominatim/api/core.py +++ b/nominatim/api/core.py @@ -29,7 +29,7 @@ import nominatim.api.types as ntyp from nominatim.api.results import DetailedResult, ReverseResult, SearchResults -class NominatimAPIAsync: +class NominatimAPIAsync: #pylint: disable=too-many-instance-attributes """ The main frontend to the Nominatim database implements the functions for lookup, forward and reverse geocoding using asynchronous functions. @@ -58,6 +58,7 @@ class NominatimAPIAsync: self.config = Configuration(project_dir, environ) self.query_timeout = self.config.get_int('QUERY_TIMEOUT') \ if self.config.QUERY_TIMEOUT else None + self.reverse_restrict_to_country_area = self.config.get_bool('SEARCH_WITHIN_COUNTRIES') self.server_version = 0 if sys.version_info >= (3, 10): @@ -201,7 +202,8 @@ class NominatimAPIAsync: conn.set_query_timeout(self.query_timeout) if details.keywords: await make_query_analyzer(conn) - geocoder = ReverseGeocoder(conn, details) + geocoder = ReverseGeocoder(conn, details, + self.reverse_restrict_to_country_area) return await geocoder.lookup(coord) @@ -373,7 +375,8 @@ class NominatimAPI: or `None` if the place could not be found in the database. Parameters: - place: Description of the place to look up. See PlaceRef below + place: Description of the place to look up. See + [Place identification](Input-Parameter-Types.md#place-identification) for the various ways to reference a place. Other parameters: @@ -455,7 +458,8 @@ class NominatimAPI: Each result is a dataclass with the fields detailed below. Parameters: - places: List of descriptions of the place to look up. See PlaceRef below + places: List of descriptions of the place to look up. See + [Place identification](Input-Parameter-Types.md#place-identification) for the various ways to reference a place. Other parameters: @@ -615,10 +619,15 @@ class NominatimAPI: Other parameters: max_results (int): Maximum number of results to return. The actual number of results may be less. (Default: 10) - min_rank (int): Lowest [address rank](../customize/Ranking.md#address-rank) to return. - max_rank (int): Highest address rank to return. + min_rank (int): Lowest permissible rank for the result. + For addressable places this is the minimum + [address rank](../customize/Ranking.md#address-rank). For all + other places the [search rank](../customize/Ranking.md#search-rank) + is used. + max_rank (int): Highest permissible rank for the result. See min_rank above. layers (enum): Defines the kind of data to take into account. - See description of layers below. (Default: addresses and POIs) + See [layers section](Input-Parameter-Types.md#layers) for details. + (Default: addresses and POIs) countries (list[str]): Restrict search to countries with the given ISO 3166-1 alpha-2 country code. An empty list (the default) disables this filter. @@ -727,10 +736,15 @@ class NominatimAPI: Other parameters: max_results (int): Maximum number of results to return. The actual number of results may be less. (Default: 10) - min_rank (int): Lowest [address rank](../customize/Ranking.md#address-rank) to return. - max_rank (int): Highest address rank to return. + min_rank (int): Lowest permissible rank for the result. + For addressable places this is the minimum + [address rank](../customize/Ranking.md#address-rank). For all + other places the [search rank](../customize/Ranking.md#search-rank) + is used. + max_rank (int): Highest permissible rank for the result. See min_rank above. layers (enum): Defines the kind of data to take into account. - See description of layers below. (Default: addresses and POIs) + See [layers section](Input-Parameter-Types.md#layers) for details. + (Default: addresses and POIs) countries (list[str]): Restrict search to countries with the given ISO 3166-1 alpha-2 country code. An empty list (the default) disables this filter. Do not use, when the country parameter @@ -834,10 +848,15 @@ class NominatimAPI: Other parameters: max_results (int): Maximum number of results to return. The actual number of results may be less. (Default: 10) - min_rank (int): Lowest [address rank](../customize/Ranking.md#address-rank) to return. - max_rank (int): Highest address rank to return. + min_rank (int): Lowest permissible rank for the result. + For addressable places this is the minimum + [address rank](../customize/Ranking.md#address-rank). For all + other places the [search rank](../customize/Ranking.md#search-rank) + is used. + max_rank (int): Highest permissible rank for the result. See min_rank above. layers (enum): Defines the kind of data to take into account. - See description of layers below. (Default: addresses and POIs) + See [layers section](Input-Parameter-Types.md#layers) for details. + (Default: addresses and POIs) countries (list[str]): Restrict search to countries with the given ISO 3166-1 alpha-2 country code. An empty list (the default) disables this filter.