overturetoosm 0.2.2

Creator: railscoder56

Last updated:

Add to Cart

Description:

overturetoosm 0.2.2

Overture to OSM




This Python project translates objects from the Overture maps schema to the OpenStreetMap (OSM) tagging scheme. The goal is to provide a seamless way to convert map data from Overture's format to a format that can be utilized within the OSM ecosystem. The package currently only supports Overture's places, buildings, and addresses layers. You can improve the Overture categorization that this package uses by editing the Overture categories page on the OSM Wiki or submitting a pull request to the tags.json file.

[!NOTE]
Use of this package does not absolve you from following OSM's import guidelines.

Table of Contents

Features
Usage
Docs
License

Features

Translate Overture map places to OSM tags.
Handle various map object types, including buildings and points of interest.
Ensure compatibility with OSM data structures and conventions.

Usage
This package is meant to work with GeoJSON files containing Overture maps data, including those produced by the overturemaps Python package.
pip install overturetoosm

You will probably for the most part be handling features from a GeoJSON or other file, but for demonstration purposes I'll define it inline:
>>> import overturetoosm
>>> overture = {
"id": "123",
"version": 1,
"update_time": "2022-01-01T00:00:00Z",
"sources": [
{
"property": "property1",
"dataset": "dataset1",
"confidence": 0.8,
}
],
"names": {
"primary": "Primary Name",
},
"categories": {"main": "restaurant"},
"confidence": 0.8,
"addresses": [
{
"freeform": "123 E Main Blvd",
"locality": "City",
"postcode": "12345",
"region": "CA",
"country": "US",
}
],
}
>>> output = overturetoosm.process_place(overture)
{
"name": "Primary Name",
"addr:street_address": "123 E Main Blvd",
"addr:city": "City",
"addr:postcode": "12345",
"addr:state": "CA",
"addr:country": "US",
"source": "dataset1 via overturetoosm",
"amenity": "restaurant",
}

Note that the addr:street_address tag is not suitable for import into OSM, and thus will have to be parsed further. If you are working on places in the US, you can automatically parse the addr:street_address tag using the atlus package, a separate project I've worked on.
>>> import atlus
>>> atlus.get_address(output["addr:street_address"])[0]
{"addr:housenumber": "123", "addr:street": "East Main Boulevard"}

Docs
The documentation for our package is available online at our documentation page. We would greatly appreciate your contributions to help improve the auto-generated docs; please submit any updates or corrections via pull requests.
License
This project is licensed under the MIT License. See the LICENSE file for details.
See also

Overture Maps
OpenStreetMap
Overture categories wiki page

License

For personal and professional use. You cannot resell or redistribute these repositories in their original state.

Customer Reviews

There are no reviews.