OvertureMaps / OvertureMaps/data

Cartography Prominence

Open
#420 1 comment 0 reactions 1 assignee View on GitHub

@danabauer is already working on this.

Since Jan 30, 2026.

Dominant language
Python
Stars
1.2k
Forks
47
Avg merge
3h 42m
Merged PRs (30d)
1

Description

Greetings!

I've been trying to write an autocomplete using Overture data, and while it technically works, the experience isn't great. The main problem I have is ranking the results. I can do some flat boosting to boost certain types over others (e.g. a locality should rank higher than a neighborhood in most cases); but for a search like "San Francisco" I get multiple county level matches.

My users would like the one on the west coast of USA to show first, so I thought I might be able to use the Cartography Prominence field to be the "sort: for this kind of tie, and while it works great for other major cities it seems to be missing off a lot of divisions, including San Francisco. So I guess I'm asking is this coverage being improved upon like the ones missing is just a mapping bug? Or is this as good as it gets and the source of this is missing information for these other divisions so I should begin looking for another solution?

Here is sort of a scratch pad of my investigations using DuckDB

INSTALL httpfs;

CREATE TEMP TABLE divisions_tmp AS
SELECT
  id,
  cartography
FROM read_parquet(
  's3://overturemaps-us-west-2/release/2025-08-20.0/theme=divisions/type=division/*',
  filename=true,
  hive_partitioning=1
)
WHERE cartography IS NOT NULL;

Then query that temp table with

COPY (SELECT
        da.names.common.en AS name,
        da.names.primary as primary_name,
        da.country,
        d.cartography.prominence,
        da.id
      FROM divisions_tmp AS d
      JOIN read_parquet(
        's3://overturemaps-us-west-2/release/2025-08-20.0/theme=divisions/type=division_area/*',
        filename=true,
        hive_partitioning=1
      ) AS da
        ON d.id = da.division_id
      ORDER BY d.cartography.prominence DESC
      LIMIT 5000) TO 'places.csv' (HEADER, DELIMITER ',');

Looking through those results I see a San Francisco in AR, and "South San Francisco" which I assume is a neighborhood of the actual San Francisco I want.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.