SlideShare a Scribd company logo
Towards an Area Datatype
for OSM

Jochen
Topf
Fundamental Geometry Types
Point

Linestring

Polygon
Point

Node

Linestring

Way

Polygon

??
Polygon with Holes

1 outer ring, 2 inner rings
Multipolygon

2 outer rings, 2 inner rings
Definition
A polygon
devides
the surface of the planet
into
two regions:
inside - outside
Definition

A polygon is usually described by its border.
The border is a bunch of lines that never intersect.
Border line direction?
Definition

A polygon is usually described by its border.
The border is a bunch of lines that never intersect.
Border line direction?
Polygons in OSM:
There Is More Than One Way
To Do It!
Polygon Type #1:
Closed way
Polygon Type #1:
Closed way

No holes
Depends on tags...
Polygon Type #1:
Closed way

highway=residential

natural=wood

Linestring or polygon or maybe both...
Polygon Type #1:
area=yes

highway=pedestrian

highway=pedestrian
area=yes
Polygon Type #2:
Multipolygon Relation

type=multipolygon
Polygon Type #2:
Multipolygon Relation

type=multipolygon
Can have multiple inner and outer rings.
Polygon Type #3:
Boundary Relation

type=boundary
Polygon Type #3:
Boundary Relation

Role: subarea !

type=boundary
Polygon Type #4:
Coastline

Ways connected end-to-end.
Land always on left, water always on right.
Polygon Type #5:
Riverbank

waterway=riverbank
Polygon Type #5:
Riverbank

waterway=riverbank
Polygon Type #5:
Riverbank

waterway=riverbank
Types of Polygons

#1 Closed Ways
#2 Multipolygon Relation
#3 Boundary Relation
#4 Coastlines
#5 Riverbanks
Problems
Which polygon type to use?
(lakes?, rivers?, boundaries?)
What if several types
are in use at the same time?
Converting from one to another?
Problems with
Multipolygon Relations
Tags on relation + outer ways + inner ways
Broken geometries (Self-intersections, ...)
Inner/outer mixups
Subareas
Broken Multipolygon Relations

About 2% broken, another 2% warnings
Polygons in OSM are...
difficult to understand,
diffcult to edit,
difficult to use.
Some Numbers...
110 million (closed way) polygons
90 million are buildings
72 million have 6 points or less
900,000 area=yes
750,000 natural=coastline (31 million nodes)
260,000 waterway=riverbank
Relations
1,000,000 type=multipolygon
200,000 type=boundary
For together >2 million (multi-)polygons
1,100,000 landuse/natural=*
240,000 boundary=administrative
Largest multipolygon 300,000 points
What are we going to do about it?
A New
Area
Datatype
What Should it Look Like?
Referencing nodes? (Like a way?)
(What about huge areas?)
Referencing ways? (A bit like MP relations?)
(What about small areas?)
Not referencing anything, coordinates inside?
(Like Simple Feature)
Polygons are Problematic...
1. Because there are several ways to accomplish
the same thing.

2. Because they are hard to edit and keep valid.
Polygons are Problematic...
1. Because there are several ways to accomplish
the same thing.
→ One area datatype
2. Because they are hard to edit and keep valid.
Polygons are Problematic...
1. Because there are several ways to accomplish
the same thing.
→ One area datatype
2. Because they are hard to edit and keep valid.
→ Let the computer do the checking
Validation

In the editor

On the server

Partial download

Lightweight!?

Check locally

Check only
changes!
API

Full download of areas not always possible!
Download parts of areas in bbox
+
Upload changes of areas in bbox
I think this is doable!
*Details are left
as an exercise
for the reader.
Migration

1. Add support for new area type
2. Convert some areas automatically
3. Convert rest manually
4. Remove support for old areas
Thanks!
http://wiki.osm.org/wiki/The_Future_of_Areas

Jochen Topf
jochen@topf.org
jochentopf.com

More Related Content

More from OSMFstateofthemap

How does a Global Navigation Satellite know where it is to tell you where you...
How does a Global Navigation Satellite know where it is to tell you where you...How does a Global Navigation Satellite know where it is to tell you where you...
How does a Global Navigation Satellite know where it is to tell you where you...
OSMFstateofthemap
 
Presenting the work of OSMF Working Groups - State of the Map 2013
Presenting the work of OSMF Working Groups - State of the Map 2013Presenting the work of OSMF Working Groups - State of the Map 2013
Presenting the work of OSMF Working Groups - State of the Map 2013
OSMFstateofthemap
 
Disaggregate accessibility planning using OSM data and OpenTripPlanner - Stat...
Disaggregate accessibility planning using OSM data and OpenTripPlanner - Stat...Disaggregate accessibility planning using OSM data and OpenTripPlanner - Stat...
Disaggregate accessibility planning using OSM data and OpenTripPlanner - Stat...
OSMFstateofthemap
 
The Bronze Age of OpenStreetMap - Ilya zverik - State of the Map 2013
The Bronze Age of OpenStreetMap - Ilya zverik - State of the Map 2013The Bronze Age of OpenStreetMap - Ilya zverik - State of the Map 2013
The Bronze Age of OpenStreetMap - Ilya zverik - State of the Map 2013
OSMFstateofthemap
 
Martijn van Exel - Collaborate to compete: Regain your Competitive Edge with osm
Martijn van Exel - Collaborate to compete: Regain your Competitive Edge with osmMartijn van Exel - Collaborate to compete: Regain your Competitive Edge with osm
Martijn van Exel - Collaborate to compete: Regain your Competitive Edge with osm
OSMFstateofthemap
 
OSM2World - Tobias Knerr - State of the Map 2013
OSM2World - Tobias Knerr - State of the Map 2013OSM2World - Tobias Knerr - State of the Map 2013
OSM2World - Tobias Knerr - State of the Map 2013
OSMFstateofthemap
 
How and why governments should use OpenStreetMap - Pete Lancaster - State of ...
How and why governments should use OpenStreetMap - Pete Lancaster - State of ...How and why governments should use OpenStreetMap - Pete Lancaster - State of ...
How and why governments should use OpenStreetMap - Pete Lancaster - State of ...
OSMFstateofthemap
 
Open Historical Map: re-using obsolete information - State of the Map 2013
Open Historical Map: re-using obsolete information - State of the Map 2013Open Historical Map: re-using obsolete information - State of the Map 2013
Open Historical Map: re-using obsolete information - State of the Map 2013
OSMFstateofthemap
 
FixMyBarangay: OSM in Cebu Philippines - Neil Taylor (Integrated Transport Pl...
FixMyBarangay: OSM in Cebu Philippines - Neil Taylor (Integrated Transport Pl...FixMyBarangay: OSM in Cebu Philippines - Neil Taylor (Integrated Transport Pl...
FixMyBarangay: OSM in Cebu Philippines - Neil Taylor (Integrated Transport Pl...
OSMFstateofthemap
 
OpenStreetMap as base layer in a linked open data distribution platform - Ber...
OpenStreetMap as base layer in a linked open data distribution platform - Ber...OpenStreetMap as base layer in a linked open data distribution platform - Ber...
OpenStreetMap as base layer in a linked open data distribution platform - Ber...
OSMFstateofthemap
 
Smarter Cities - Rick Robinson, IBM - State of the Map 2013 (SotM 2013 Birmin...
Smarter Cities - Rick Robinson, IBM - State of the Map 2013 (SotM 2013 Birmin...Smarter Cities - Rick Robinson, IBM - State of the Map 2013 (SotM 2013 Birmin...
Smarter Cities - Rick Robinson, IBM - State of the Map 2013 (SotM 2013 Birmin...
OSMFstateofthemap
 

More from OSMFstateofthemap (11)

How does a Global Navigation Satellite know where it is to tell you where you...
How does a Global Navigation Satellite know where it is to tell you where you...How does a Global Navigation Satellite know where it is to tell you where you...
How does a Global Navigation Satellite know where it is to tell you where you...
 
Presenting the work of OSMF Working Groups - State of the Map 2013
Presenting the work of OSMF Working Groups - State of the Map 2013Presenting the work of OSMF Working Groups - State of the Map 2013
Presenting the work of OSMF Working Groups - State of the Map 2013
 
Disaggregate accessibility planning using OSM data and OpenTripPlanner - Stat...
Disaggregate accessibility planning using OSM data and OpenTripPlanner - Stat...Disaggregate accessibility planning using OSM data and OpenTripPlanner - Stat...
Disaggregate accessibility planning using OSM data and OpenTripPlanner - Stat...
 
The Bronze Age of OpenStreetMap - Ilya zverik - State of the Map 2013
The Bronze Age of OpenStreetMap - Ilya zverik - State of the Map 2013The Bronze Age of OpenStreetMap - Ilya zverik - State of the Map 2013
The Bronze Age of OpenStreetMap - Ilya zverik - State of the Map 2013
 
Martijn van Exel - Collaborate to compete: Regain your Competitive Edge with osm
Martijn van Exel - Collaborate to compete: Regain your Competitive Edge with osmMartijn van Exel - Collaborate to compete: Regain your Competitive Edge with osm
Martijn van Exel - Collaborate to compete: Regain your Competitive Edge with osm
 
OSM2World - Tobias Knerr - State of the Map 2013
OSM2World - Tobias Knerr - State of the Map 2013OSM2World - Tobias Knerr - State of the Map 2013
OSM2World - Tobias Knerr - State of the Map 2013
 
How and why governments should use OpenStreetMap - Pete Lancaster - State of ...
How and why governments should use OpenStreetMap - Pete Lancaster - State of ...How and why governments should use OpenStreetMap - Pete Lancaster - State of ...
How and why governments should use OpenStreetMap - Pete Lancaster - State of ...
 
Open Historical Map: re-using obsolete information - State of the Map 2013
Open Historical Map: re-using obsolete information - State of the Map 2013Open Historical Map: re-using obsolete information - State of the Map 2013
Open Historical Map: re-using obsolete information - State of the Map 2013
 
FixMyBarangay: OSM in Cebu Philippines - Neil Taylor (Integrated Transport Pl...
FixMyBarangay: OSM in Cebu Philippines - Neil Taylor (Integrated Transport Pl...FixMyBarangay: OSM in Cebu Philippines - Neil Taylor (Integrated Transport Pl...
FixMyBarangay: OSM in Cebu Philippines - Neil Taylor (Integrated Transport Pl...
 
OpenStreetMap as base layer in a linked open data distribution platform - Ber...
OpenStreetMap as base layer in a linked open data distribution platform - Ber...OpenStreetMap as base layer in a linked open data distribution platform - Ber...
OpenStreetMap as base layer in a linked open data distribution platform - Ber...
 
Smarter Cities - Rick Robinson, IBM - State of the Map 2013 (SotM 2013 Birmin...
Smarter Cities - Rick Robinson, IBM - State of the Map 2013 (SotM 2013 Birmin...Smarter Cities - Rick Robinson, IBM - State of the Map 2013 (SotM 2013 Birmin...
Smarter Cities - Rick Robinson, IBM - State of the Map 2013 (SotM 2013 Birmin...
 

Recently uploaded

Video Streaming: Then, Now, and in the Future
Video Streaming: Then, Now, and in the FutureVideo Streaming: Then, Now, and in the Future
Video Streaming: Then, Now, and in the Future
Alpen-Adria-Universität
 
Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!
Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!
Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!
SOFTTECHHUB
 
HCL Notes and Domino License Cost Reduction in the World of DLAU
HCL Notes and Domino License Cost Reduction in the World of DLAUHCL Notes and Domino License Cost Reduction in the World of DLAU
HCL Notes and Domino License Cost Reduction in the World of DLAU
panagenda
 
Mariano G Tinti - Decoding SpaceX
Mariano G Tinti - Decoding SpaceXMariano G Tinti - Decoding SpaceX
Mariano G Tinti - Decoding SpaceX
Mariano Tinti
 
“I’m still / I’m still / Chaining from the Block”
“I’m still / I’m still / Chaining from the Block”“I’m still / I’m still / Chaining from the Block”
“I’m still / I’m still / Chaining from the Block”
Claudio Di Ciccio
 
Mind map of terminologies used in context of Generative AI
Mind map of terminologies used in context of Generative AIMind map of terminologies used in context of Generative AI
Mind map of terminologies used in context of Generative AI
Kumud Singh
 
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdf
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdfUnlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdf
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdf
Malak Abu Hammad
 
みなさんこんにちはこれ何文字まで入るの?40文字以下不可とか本当に意味わからないけどこれ限界文字数書いてないからマジでやばい文字数いけるんじゃないの?えこ...
みなさんこんにちはこれ何文字まで入るの?40文字以下不可とか本当に意味わからないけどこれ限界文字数書いてないからマジでやばい文字数いけるんじゃないの?えこ...みなさんこんにちはこれ何文字まで入るの?40文字以下不可とか本当に意味わからないけどこれ限界文字数書いてないからマジでやばい文字数いけるんじゃないの?えこ...
みなさんこんにちはこれ何文字まで入るの?40文字以下不可とか本当に意味わからないけどこれ限界文字数書いてないからマジでやばい文字数いけるんじゃないの?えこ...
名前 です男
 
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdfObservability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Paige Cruz
 
UiPath Test Automation using UiPath Test Suite series, part 6
UiPath Test Automation using UiPath Test Suite series, part 6UiPath Test Automation using UiPath Test Suite series, part 6
UiPath Test Automation using UiPath Test Suite series, part 6
DianaGray10
 
Best 20 SEO Techniques To Improve Website Visibility In SERP
Best 20 SEO Techniques To Improve Website Visibility In SERPBest 20 SEO Techniques To Improve Website Visibility In SERP
Best 20 SEO Techniques To Improve Website Visibility In SERP
Pixlogix Infotech
 
Microsoft - Power Platform_G.Aspiotis.pdf
Microsoft - Power Platform_G.Aspiotis.pdfMicrosoft - Power Platform_G.Aspiotis.pdf
Microsoft - Power Platform_G.Aspiotis.pdf
Uni Systems S.M.S.A.
 
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
SOFTTECHHUB
 
GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...
GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...
GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...
Neo4j
 
20240607 QFM018 Elixir Reading List May 2024
20240607 QFM018 Elixir Reading List May 202420240607 QFM018 Elixir Reading List May 2024
20240607 QFM018 Elixir Reading List May 2024
Matthew Sinclair
 
Infrastructure Challenges in Scaling RAG with Custom AI models
Infrastructure Challenges in Scaling RAG with Custom AI modelsInfrastructure Challenges in Scaling RAG with Custom AI models
Infrastructure Challenges in Scaling RAG with Custom AI models
Zilliz
 
AI 101: An Introduction to the Basics and Impact of Artificial Intelligence
AI 101: An Introduction to the Basics and Impact of Artificial IntelligenceAI 101: An Introduction to the Basics and Impact of Artificial Intelligence
AI 101: An Introduction to the Basics and Impact of Artificial Intelligence
IndexBug
 
Let's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with Slack
Let's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with SlackLet's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with Slack
Let's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with Slack
shyamraj55
 
Serial Arm Control in Real Time Presentation
Serial Arm Control in Real Time PresentationSerial Arm Control in Real Time Presentation
Serial Arm Control in Real Time Presentation
tolgahangng
 
Artificial Intelligence for XMLDevelopment
Artificial Intelligence for XMLDevelopmentArtificial Intelligence for XMLDevelopment
Artificial Intelligence for XMLDevelopment
Octavian Nadolu
 

Recently uploaded (20)

Video Streaming: Then, Now, and in the Future
Video Streaming: Then, Now, and in the FutureVideo Streaming: Then, Now, and in the Future
Video Streaming: Then, Now, and in the Future
 
Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!
Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!
Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!
 
HCL Notes and Domino License Cost Reduction in the World of DLAU
HCL Notes and Domino License Cost Reduction in the World of DLAUHCL Notes and Domino License Cost Reduction in the World of DLAU
HCL Notes and Domino License Cost Reduction in the World of DLAU
 
Mariano G Tinti - Decoding SpaceX
Mariano G Tinti - Decoding SpaceXMariano G Tinti - Decoding SpaceX
Mariano G Tinti - Decoding SpaceX
 
“I’m still / I’m still / Chaining from the Block”
“I’m still / I’m still / Chaining from the Block”“I’m still / I’m still / Chaining from the Block”
“I’m still / I’m still / Chaining from the Block”
 
Mind map of terminologies used in context of Generative AI
Mind map of terminologies used in context of Generative AIMind map of terminologies used in context of Generative AI
Mind map of terminologies used in context of Generative AI
 
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdf
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdfUnlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdf
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdf
 
みなさんこんにちはこれ何文字まで入るの?40文字以下不可とか本当に意味わからないけどこれ限界文字数書いてないからマジでやばい文字数いけるんじゃないの?えこ...
みなさんこんにちはこれ何文字まで入るの?40文字以下不可とか本当に意味わからないけどこれ限界文字数書いてないからマジでやばい文字数いけるんじゃないの?えこ...みなさんこんにちはこれ何文字まで入るの?40文字以下不可とか本当に意味わからないけどこれ限界文字数書いてないからマジでやばい文字数いけるんじゃないの?えこ...
みなさんこんにちはこれ何文字まで入るの?40文字以下不可とか本当に意味わからないけどこれ限界文字数書いてないからマジでやばい文字数いけるんじゃないの?えこ...
 
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdfObservability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
 
UiPath Test Automation using UiPath Test Suite series, part 6
UiPath Test Automation using UiPath Test Suite series, part 6UiPath Test Automation using UiPath Test Suite series, part 6
UiPath Test Automation using UiPath Test Suite series, part 6
 
Best 20 SEO Techniques To Improve Website Visibility In SERP
Best 20 SEO Techniques To Improve Website Visibility In SERPBest 20 SEO Techniques To Improve Website Visibility In SERP
Best 20 SEO Techniques To Improve Website Visibility In SERP
 
Microsoft - Power Platform_G.Aspiotis.pdf
Microsoft - Power Platform_G.Aspiotis.pdfMicrosoft - Power Platform_G.Aspiotis.pdf
Microsoft - Power Platform_G.Aspiotis.pdf
 
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
 
GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...
GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...
GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...
 
20240607 QFM018 Elixir Reading List May 2024
20240607 QFM018 Elixir Reading List May 202420240607 QFM018 Elixir Reading List May 2024
20240607 QFM018 Elixir Reading List May 2024
 
Infrastructure Challenges in Scaling RAG with Custom AI models
Infrastructure Challenges in Scaling RAG with Custom AI modelsInfrastructure Challenges in Scaling RAG with Custom AI models
Infrastructure Challenges in Scaling RAG with Custom AI models
 
AI 101: An Introduction to the Basics and Impact of Artificial Intelligence
AI 101: An Introduction to the Basics and Impact of Artificial IntelligenceAI 101: An Introduction to the Basics and Impact of Artificial Intelligence
AI 101: An Introduction to the Basics and Impact of Artificial Intelligence
 
Let's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with Slack
Let's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with SlackLet's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with Slack
Let's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with Slack
 
Serial Arm Control in Real Time Presentation
Serial Arm Control in Real Time PresentationSerial Arm Control in Real Time Presentation
Serial Arm Control in Real Time Presentation
 
Artificial Intelligence for XMLDevelopment
Artificial Intelligence for XMLDevelopmentArtificial Intelligence for XMLDevelopment
Artificial Intelligence for XMLDevelopment
 

Towards an area datatype for OSM - State of the Map 2013