<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0">
<channel>
  <title>Jochen Topf</title>
  <link>http://blog.jochentopf.com/</link>
  <description>Personal blog of Jochen Topf</description>
  <language>en</language>
  <lastBuildDate>Sun, 02 Jun 2013 16:12:14 +0200</lastBuildDate>
  <generator>Rassmalog 12.0.1</generator>
    <item>
      <title>A New Website</title>
      <link>http://blog.jochentopf.com/2013-04-21-a-new-website.html</link>
      <guid>http://blog.jochentopf.com/2013-04-21-a-new-website.html</guid>
      <pubDate>Sun, 21 Apr 2013 18:14:51 +0200</pubDate>
      <description>&lt;p&gt;I have had a personal web page for a long time. I started creating web pages in 1993 when I was a student at Freiburg University. At that time I didn&amp;#8217;t have any way to publish it. But when I moved to Karlsruhe later that year I could put up my first real public home page on the university server there. In 1995 my web pages moved to the &lt;a href=&quot;http://www.inka.de/&quot;&gt;&lt;span class=&quot;caps&quot;&gt;INKA&lt;/span&gt;&lt;/a&gt; web server and in 1998 they moved again to my new home in cyberspace on &lt;a href=&quot;http://www.remote.org/&quot;&gt;remote.org&lt;/a&gt;. In 2005 I added a web page for my &amp;#8220;professional self&amp;#8221; at www.jtic.de.&lt;/p&gt; &lt;p&gt;As these things are, time for and interest in my own web pages waxed and waned over the years and I often neglected to update them. For many years now my web sites have been totally out of date &amp;ndash; I was busy with other things. Two and a half years ago I registered a new domain &lt;tt&gt;jochentopf.com&lt;/tt&gt; and started moving my web pages over. That took longer than I had planned, but I am happy to announce that I finally made it. The &lt;a href=&quot;http://www.jochentopf.com/&quot;&gt;new web site&lt;/a&gt; is online!&lt;/p&gt; &lt;p&gt;&lt;a href=&quot;http://blog.jochentopf.com/img/2013-04-21-homepage.png&quot;&gt;&lt;img style=&quot;float: right; margin: 5px 0 4px 4px; border: 1px solid #888888;&quot; src=&quot;http://blog.jochentopf.com/img/2013-04-21-homepage-t.png&quot; alt=&quot;&quot;/&gt;&lt;/a&gt; &lt;p&gt;I had decided to join my personal and professional web sites into one. It is often difficult to keep private and commercial projects apart, as my hobbies tend to turn into work and my work influences my hobbies. I have moved over everything from my &lt;tt&gt;jtic.de&lt;/tt&gt; site and it only redirects to the new site now. I moved large parts from &lt;tt&gt;remote.org&lt;/tt&gt;, too, but there is still some stuff to do before I can retire that site. And, of course, there is some new information on the page and more to come.&lt;/p&gt; &lt;p&gt;The new web page got a new logo, a new design and some Javascript gimmicks, we have to go with the times&amp;#8230; These days it is actually fun fiddling around with &lt;span class=&quot;caps&quot;&gt;CSS&lt;/span&gt; and Javascript. Of course, this blog needed a new design as well, so everything fits together. As it has been the case with my former web sites, most of the pages on my new site are available in English and German.&lt;/p&gt;&lt;/p&gt;</description>
      <category>web</category>
    </item>
    <item>
      <title>Upcoming talks at FOSSGIS</title>
      <link>http://blog.jochentopf.com/2013-04-10-upcoming-talks-at-fossgis.html</link>
      <guid>http://blog.jochentopf.com/2013-04-10-upcoming-talks-at-fossgis.html</guid>
      <pubDate>Wed, 10 Apr 2013 10:28:23 +0200</pubDate>
      <description>&lt;p&gt;The yearly &lt;a href=&quot;http://www.fossgis.de/konferenz/2013/&quot;&gt;&lt;span class=&quot;caps&quot;&gt;FOSSGIS&lt;/span&gt; conference&lt;/a&gt;, the German language conference for Open Source &lt;span class=&quot;caps&quot;&gt;GIS&lt;/span&gt;, Open Data and OpenStreetMap, will take place from June 12th to June 14th 2013 in Rapperswil, Switzerland near Zurich.&lt;/p&gt; &lt;p&gt;Yesterday &lt;a href=&quot;http://www.fossgis.de/konferenz/2013/programm/&quot;&gt;the program&lt;/a&gt; was announced. I&amp;#8217;ll be giving a talk about &lt;a href=&quot;http://www.fossgis.de/konferenz/2013/programm/events/589.de.html&quot;&gt;the OpenStreetMap data model&lt;/a&gt; and together with Tim Alder will also talk about &lt;a href=&quot;http://www.fossgis.de/konferenz/2013/programm/events/546.de.html&quot;&gt;our multilingual map project&lt;/a&gt;.&lt;/p&gt; &lt;p&gt;There are some interesting topics on the program and I am looking forward to the conference and to seeing you there!&lt;/p&gt;</description>
      <category>fossgis</category>
      <category>osm</category>
    </item>
    <item>
      <title>State of the OSM Coastline</title>
      <link>http://blog.jochentopf.com/2013-03-11-state-of-the-osm-coastline.html</link>
      <guid>http://blog.jochentopf.com/2013-03-11-state-of-the-osm-coastline.html</guid>
      <pubDate>Mon, 11 Mar 2013 17:08:48 +0100</pubDate>
      <description>&lt;p&gt;&lt;a href=&quot;http://blog.jochentopf.com/2012-03-07-osm-coastlines.html&quot;&gt;A year ago&lt;/a&gt; I released the first version of the &lt;a href=&quot;http://wiki.openstreetmap.org/wiki/OSMCoastline&quot;&gt;OSMCoastline&lt;/a&gt; program that extracts and assembles coastlines from &lt;span class=&quot;caps&quot;&gt;OSM&lt;/span&gt; data. Since then I have learned more about coastlines in &lt;span class=&quot;caps&quot;&gt;OSM&lt;/span&gt; than I ever wanted to know, fixed numerous coastline bugs myself and added more features to the software. OSMCoastline has been in production use at &lt;a href=&quot;http://www.geofabrik.de/&quot;&gt;Geofabrik&lt;/a&gt; and the &lt;a href=&quot;http://www.openstreetmap.de/karte.html&quot;&gt;German map server&lt;/a&gt; for more six months now.&lt;/p&gt; &lt;h2&gt;&lt;span class=&quot;caps&quot;&gt;OSM&lt;/span&gt; Inspector&lt;/h2&gt; &lt;p&gt;While assembling the coastline data, OSMCoastline spits out information about errors in the &lt;span class=&quot;caps&quot;&gt;OSM&lt;/span&gt; data, such as self-intersections of the coastline or ways that are oriented the wrong way around. In September 2012 I added a &lt;a href=&quot;http://wiki.openstreetmap.org/wiki/OSM_Inspector/Views/Coastline&quot;&gt;coastline view&lt;/a&gt; to the &lt;a href=&quot;http://tools.geofabrik.de/osmi/?view=coastline&quot;&gt;&lt;span class=&quot;caps&quot;&gt;OSM&lt;/span&gt; Inspector&lt;/a&gt;. This view shows those (potential) and real problems. Since I made this data easily available, people have been very diligent at fixing the problems. Unfortunately new problems crop up again and again as people are working on the &lt;span class=&quot;caps&quot;&gt;OSM&lt;/span&gt; data who either don&amp;#8217;t know how to correctly tag the coastline or they are not paying enough attention to what they are doing.&lt;/p&gt; &lt;p&gt;Currently we have reached a sort of stalemate. Most days the coastline is broken in a few places, but people fix those problems quickly. OSMCoastline automatically fixes some problems (not in &lt;span class=&quot;caps&quot;&gt;OSM&lt;/span&gt;, just in its output) and some problems only affect very small areas, so the situation is not too bad. But it needs constant attention. If we don&amp;#8217;t keep up with fixes, the coastline data is unusable after a few days.&lt;/p&gt; &lt;h2&gt;Lakes tagged as coastlines&lt;/h2&gt; &lt;p&gt;When I started work on the coastline there were a lot of small and large lakes incorrectly tagged with &lt;tt&gt;natural=coastline&lt;/tt&gt; instead of &lt;tt&gt;natural=water&lt;/tt&gt; or similar. There were two common cases: Very large lakes (like the Great Lakes in North America) that were created before the introduction of multipolygon relations. Without multipolygon relations there was no way these large lakes could be modelled in &lt;span class=&quot;caps&quot;&gt;OSM&lt;/span&gt;. The other case are inlets, lagoons, etc. that were tagged as coastline but they are actually not connected to the sea, maybe there is a dam that cuts them off or so. In some cases it is not immediately obvious whether these features are part of the coastline or separate entities. But by looking closely at the aerial images you can usually see whether there is a connection or not. Sometimes these connections are seasonal, though, or change with the tides, and it is not always clear what the best tagging is.&lt;/p&gt; &lt;p&gt;Since then I added the display of &amp;#8220;small lakes&amp;#8221; tagged as coastline to the &lt;span class=&quot;caps&quot;&gt;OSM&lt;/span&gt; Inspector, they show up as &amp;#8220;Questionable&amp;#8221; because I want people to use their judgement in fixing them. First I displayed only features with less than 1,000 nodes, those were all converted to proper lakes quickly. Currently I show those kinds of features with less than 10,000 nodes.&lt;/p&gt; &lt;p&gt;&lt;a href=&quot;http://blog.jochentopf.com/img/2013-03-11-lakes-tagged-as-coastline.png&quot;&gt;&lt;img style=&quot;border: 1px solid #808080;&quot; src=&quot;http://blog.jochentopf.com/img/2013-03-11-lakes-tagged-as-coastline-t.png&quot;/&gt;&lt;/a&gt;&lt;/p&gt; &lt;p&gt;There are only a few of those cases left in the world and I am not sure whether it is a good idea to fix them all. Those lakes are huge and having multipolygons that big could make editing the data difficult. Ultimately this can only be fixed in my opinion by &lt;a href=&quot;http://wiki.openstreetmap.org/wiki/The_Future_of_Areas&quot;&gt; adding a proper multipolygon object type&lt;/a&gt; to &lt;span class=&quot;caps&quot;&gt;OSM&lt;/span&gt;.&lt;/p&gt; &lt;p&gt;You can see the remaining large features tagged as coastlines in the image above and here is a list:&lt;/p&gt; &lt;ul&gt;
    &lt;li&gt;&lt;a href=&quot;http://www.openstreetmap.org/?lat=52.19&amp;lon=-97.17&amp;zoom=6&amp;layers=M&quot;&gt;Lake Winnipeg, Lake Winnipegosis, Cedar Lake&lt;/a&gt; (Canada)&lt;/li&gt;
    &lt;li&gt;&lt;a href=&quot;http://www.openstreetmap.org/?lat=49.73&amp;lon=-88.67&amp;zoom=8&amp;layers=M&quot;&gt;Lake Nipigon&lt;/a&gt; (Canada)&lt;/li&gt;
    &lt;li&gt;&lt;a href=&quot;http://www.openstreetmap.org/?lat=45.17&amp;lon=-81.93&amp;zoom=6&amp;layers=M&quot;&gt;Great Lakes&lt;/a&gt; (North America)&lt;/li&gt;
    &lt;li&gt;&lt;a href=&quot;http://www.openstreetmap.org/?lat=45.816&amp;lon=-60.693&amp;zoom=10&amp;layers=M&quot;&gt;Bras d&amp;#8217;Or Lake&lt;/a&gt; (Canada)&lt;/li&gt;
    &lt;li&gt;&lt;a href=&quot;http://www.openstreetmap.org/?lat=52.88&amp;lon=5.19&amp;zoom=8&amp;layers=M&quot;&gt;IJsselmeer&lt;/a&gt; (Netherlands)&lt;/li&gt;
    &lt;li&gt;&lt;a href=&quot;http://www.openstreetmap.org/?lat=61.37&amp;lon=33.21&amp;zoom=7&amp;layers=M&quot;&gt;Lake Ladoga and Lake Onega&lt;/a&gt; (Russia)&lt;/li&gt;
    &lt;li&gt;&lt;a href=&quot;http://www.openstreetmap.org/?lat=41.5&amp;lon=50.7&amp;zoom=5&amp;layers=M&quot;&gt;Caspian Sea&lt;/a&gt;&lt;/li&gt;
&lt;p&gt;&lt;/ul&gt; &lt;p&gt;There is some debate whether the &lt;a href=&quot;http://en.wikipedia.org/wiki/Caspian_Sea&quot;&gt;Caspian Sea&lt;/a&gt; is to be classified as lake or as a sea, which might have important consequences for its use by neighboring states, but all the other features are definitly lakes.&lt;/p&gt; &lt;p&gt;Another issue is that properly tagged lakes will not show up in small zoom levels any more, because coastlines are rendered in all zoom levels, but lakes are only rendered in zoom level 6 and up. But this can and should be solved by creating properly generalized water polygons of large lakes that can be used in lower zoom levels.&lt;/p&gt; &lt;h2&gt;Antarctica&lt;/h2&gt; &lt;p&gt;The coastline of Antarctica in &lt;span class=&quot;caps&quot;&gt;OSM&lt;/span&gt; is quite bad and &lt;a href=&quot;http://blog.jochentopf.com/2013-03-06-antarctica-import.html&quot;&gt;we are working on fixing this&lt;/a&gt;. But the quality of the data is not the only issue here. The following map sketch illustrates this issue.&lt;/p&gt; &lt;p&gt;&lt;img src=&quot;http://blog.jochentopf.com/img/2013-03-11-antarctica-85-degree-problem.png&quot; style=&quot;border: 1px solid #808080;&quot;/&gt;&lt;/p&gt; &lt;p&gt;First, the current coastline is cut off at 85.0511° South, so the dark blue area on the map sketch above is lost. The commonly used web maps can&amp;#8217;t show anything below this line, so you can&amp;#8217;t see this.  But if you use a different map projection this is a problem. Second, to support these maps the coastline is &amp;#8220;closed&amp;#8221; by adding a fake coastline (the &amp;#8220;red lines&amp;#8221; in the image above). So in &lt;span class=&quot;caps&quot;&gt;OSM&lt;/span&gt; the land area of Antarctica actually ends at 85.0511° S, there is a round ocean around the South Pole&amp;#8230;&lt;/p&gt; &lt;p&gt;The Antarctica import mentioned above will change the coastline to use the outer line of the ice shelves (the green line in the map sketch, see &lt;a href=&quot;http://wiki.openstreetmap.org/wiki/Antarctica/Tagging&quot;&gt;the wiki&lt;/a&gt; for the reasoning). As a nice side effect this will solve the first problem. The second problem is solved by leaving the coastline open (ie not connecting the ends at 180°W and 180°E to anything) and adding a special case to the software using the coastline. OSMCoastline already knows how to handle this case. It internally closes the coastline creating an Antarctica polygon that either goes to the 85.0511° line or to 90° depending on which output projection you have chosen. So the result will be usable in the usual tiled web maps as well as in other maps.&lt;/p&gt; &lt;h2&gt;Antimeridian&lt;/h2&gt; &lt;p&gt;Similar to the Antarctica case but slightly different is the case at the Antimeridian (180th meridian). The antimeridian crosses Russia, Fiji, and Antarctica. I&amp;#8217;ll leave this problem as an exercise for the reader&amp;#8230;&lt;/p&gt; &lt;h2&gt;Statistics&lt;/h2&gt; &lt;p&gt;There are currently about 716,000 ways tagged &lt;tt&gt;natural=coastline&lt;/tt&gt; with together 30 million nodes representing 1.2 million kilometers of coastline. This means that on average there is a node every 41 meters in the coastline, an extraordinary achievement for the &lt;span class=&quot;caps&quot;&gt;OSM&lt;/span&gt; community!&lt;/p&gt; &lt;p&gt;There are nearly 480,000 islands, most rather small. The largest single object created from this coastline is the polygon for the land mass of Asia+Africa+Europe containing 4.3 million nodes followed by the 3.5 million node polygon of the American continent.&lt;/p&gt; &lt;h2&gt;OSMCoastline&lt;/h2&gt; &lt;p&gt;The &lt;a href=&quot;http://wiki.openstreetmap.org/wiki/OSMCoastline&quot;&gt;OSMCoastline&lt;/a&gt; tool has been around for a year now and has proven to be very stable. It is easier to install, better documented, runs much faster and has more features than its predecessor &lt;a href=&quot;http://svn.openstreetmap.org/applications/utils/coastcheck/&quot;&gt;coastcheck&lt;/a&gt;. Of course as the author of OSMCoastline I am biased but I can only recommend that everybody who still uses coastcheck switch to OSMCoastline.&lt;/p&gt; &lt;a href=&quot;http://blog.jochentopf.com/img/2013-03-11-split-land-polygons.png&quot;&gt;&lt;img style=&quot;float: right;&quot; src=&quot;http://blog.jochentopf.com/img/2013-03-11-split-land-polygons-t.png&quot;/&gt;&lt;/a&gt; &lt;p&gt;OSMCoastline does not only generate the coastline as line, but also land and water polygons. Optionally it can split up the huge polygons into manageable pieces. Unlike coastcheck which can only generate land polygons and splits them up in a grid of regularly tiled pieces, OSMCoastline will split the polygons recursively into smaller and smaller pieces until each has less points than a configurable limit.&lt;/p&gt; &lt;p&gt;OSMCoastline counts all problems detected while it runs. It will exit with different return codes depending on whether there were no problems at all, only a few warnings, or too many or larger errors. You can use the return code to decide whether the data is usable at all. This is far better than with coastcheck where you had to manually check whether the data is usable.&lt;/p&gt; &lt;p&gt;Results of a daily run of OSMCoastline are available at &lt;a href=&quot;http://www.openstreetmapdata.com/&quot;&gt;OpenStreetMapData.com&lt;/a&gt;. In addition to the check done by OSMCoastline itself, as explained above, OpenStreetMapData.com also checks a rendered bitmap of the coastline data against last days rendering to find out if there are large changes. If there are too many changes, OpenStreetMapData.com will keep the old data. It is better to keep older data than giving out a possibly broken coastline.&lt;/p&gt; &lt;p&gt;The &lt;a href=&quot;http://www.openstreetmap.de/karte.html&quot;&gt;German map/tile server&lt;/a&gt; has been updated automatically each night from OpenStreetMapData.com for several months now without any reported problems.&lt;/p&gt; &lt;h2&gt;Generalized Coastlines&lt;/h2&gt; &lt;p&gt;Christoph Hormann has been working on &lt;a href=&quot;http://blog.imagico.de/coastline_gen-tool-and-coastline-data/&quot;&gt;generalizing coastlines&lt;/a&gt;. These look very nice and I think we should work towards using them on &lt;span class=&quot;caps&quot;&gt;OSM&lt;/span&gt; maps. We probably need generalized lakes, too, and as coastlines often coincide with boundaries, generalized boundaries, to make this really look perfect.&lt;/p&gt;&lt;/p&gt;</description>
      <category>antarctica</category>
      <category>osm</category>
      <category>osmcoastline</category>
    </item>
    <item>
      <title>Antarctica Import</title>
      <link>http://blog.jochentopf.com/2013-03-06-antarctica-import.html</link>
      <guid>http://blog.jochentopf.com/2013-03-06-antarctica-import.html</guid>
      <pubDate>Wed, 06 Mar 2013 20:16:48 +0100</pubDate>
      <description>&lt;p&gt;I have &lt;a href=&quot;http://blog.jochentopf.com/2013-02-04-antarctica-in-openstreetmap.html&quot;&gt;written before&lt;/a&gt; about the mapping of Antarctia in &lt;span class=&quot;caps&quot;&gt;OSM&lt;/span&gt;. Since then there has been a lot of activity. &lt;a href=&quot;http://imagico.de/&quot;&gt;Christoph Hormann&lt;/a&gt; has prepared better Antarctica data for import and has documented the planned import extensively &lt;a href=&quot;http://wiki.openstreetmap.org/wiki/Antarctica/Import_2013&quot;&gt;on the wiki&lt;/a&gt;. Peter Körner has created a &lt;a href=&quot;http://polar.openstreetmap.de/&quot;&gt;web map&lt;/a&gt; in Polar Stereographic Projection.&lt;/p&gt; &lt;p&gt;Some of that work was done during the recent &lt;a href=&quot;http://wiki.openstreetmap.org/wiki/Karlsruhe_Hack_Weekend_February_2013&quot;&gt;Karlsruhe Hack Weekend&lt;/a&gt; where we also discussed the &lt;a href=&quot;http://wiki.openstreetmap.org/wiki/Antarctica/Tagging&quot;&gt;tagging&lt;/a&gt; for the new Antarctica features.&lt;/p&gt; &lt;p&gt;At the hack weekend, Christoph and I were interviewed on this topic by Peter Körner and Andreas Hubel for Radio &lt;span class=&quot;caps&quot;&gt;OSM&lt;/span&gt;, the German language &lt;span class=&quot;caps&quot;&gt;OSM&lt;/span&gt; podcast, you can listen to the interview &lt;a href=&quot;http://blog.openstreetmap.de/2013/02/osmde012-osm-talk-die-antarktis/&quot;&gt;here&lt;/a&gt; (Interview is in German).&lt;/p&gt; &lt;p&gt;There are still things to discuss and do before we can do the actual import, but I am very optimistic that we will soon have better Antarctica data.&lt;/p&gt;</description>
      <category>antarctica</category>
      <category>osm</category>
      <category>osmcoastline</category>
    </item>
    <item>
      <title>Using Taginfo to Create Map Feature Tables</title>
      <link>http://blog.jochentopf.com/2013-02-25-using-taginfo-to-create-map-feature-tables.html</link>
      <guid>http://blog.jochentopf.com/2013-02-25-using-taginfo-to-create-map-feature-tables.html</guid>
      <pubDate>Mon, 25 Feb 2013 18:31:41 +0100</pubDate>
      <description>&lt;p&gt;The &lt;a href=&quot;http://wiki.openstreetmap.org/wiki/Map_Features&quot;&gt;Map Features&lt;/a&gt; wiki page is one of the oldest pages on the &lt;span class=&quot;caps&quot;&gt;OSM&lt;/span&gt; wiki and it has been getting larger and larger over time. And more and more wiki templates are used to create it and its language variants. Very similar tables can also be found on many &amp;#8220;Key:*&amp;#8221; pages on the wiki to list the tags used with this key.&lt;/p&gt;
&lt;h2&gt;The Problem&lt;/h2&gt; &lt;p&gt;All these lists are hard to maintain. You have to dig through multiple levels of wiki templates to understand what is going on. It is practically impossible to keep this information consistent throughout the different places in the wiki.&lt;/p&gt; &lt;p&gt;At the recent &lt;a href=&quot;http://wiki.openstreetmap.org/wiki/Karlsruhe_Hack_Weekend_February_2013&quot;&gt;Karlsruhe Hack Weekend&lt;/a&gt; Andreas (&lt;a href=&quot;http://wiki.openstreetmap.org/wiki/User:Saerdnaer&quot;&gt;Andi&lt;/a&gt;) Hubel and I had a good discussion about this issue and possible ways to improve the situation.&lt;/p&gt; &lt;p&gt;Andi did some statistics and found out that there are about 3800 templates and about 15000 cases where one template includes another template! Much of that is due to the Map Features pages. This is not only hard do understand for a human, it is hard on the MediaWiki software, too, because changes in one page affect other pages and MediaWiki has to keep track of all this, re-render them when needed etc.&lt;/p&gt;
&lt;h2&gt;Using Taginfo&lt;/h2&gt; &lt;p&gt;An obvious solution would be to auto-generate the tables on the Map Features pages using &lt;a href=&quot;http://taginfo.openstreetmap.org&quot;&gt;taginfo&lt;/a&gt;. Taginfo gets most of the necessary information already from the &amp;#8220;Key:*&amp;#8221; and &amp;#8220;Tag:*&amp;#8221; wiki pages. (The only information missing is the little map snippets that show how features are rendered. This picture is currently not referenced from the infoboxes on the key and tag pages where taginfo gets its information.) If taginfo generates those tables, we&amp;#8217;d make sure the information is always consistent. And we can get rid of lots of unwieldy templates. What we do need in this case are wiki pages for all tags with info boxes on them so that taginfo can find all this information.&lt;/p&gt; &lt;p&gt;So I gave it a try and added a new &lt;span class=&quot;caps&quot;&gt;API&lt;/span&gt; call to taginfo that allows easy access to this information in &lt;span class=&quot;caps&quot;&gt;JSON&lt;/span&gt; format and I created a test web page that takes this information and displays it in a form similar to the current Map Features pages. You can give it a try at &lt;a href=&quot;http://mf.jochentopf.com/&quot;&gt;mf.jochentopf.com&lt;/a&gt;.&lt;/p&gt; &lt;p&gt;You can set the language you want the descriptions in by entering the usual language code. If the description is not available in that language it falls back to the English description.&lt;/p&gt; &lt;p&gt;To choose which tags to show there are several possible ways. If you just enter a key such as &lt;a href=&quot;http://mf.jochentopf.com/?tags=highway&quot;&gt;highway&lt;/a&gt; or &lt;a href=&quot;http://mf.jochentopf.com/?tags=boundary&quot;&gt;boundary&lt;/a&gt; you will get all tags with that key that are documented in the wiki. Or you can enter a comma-separated list of tags in the form &lt;span class=&quot;caps&quot;&gt;KEY&lt;/span&gt;=&lt;span class=&quot;caps&quot;&gt;VALUE&lt;/span&gt;. If you just give a &lt;span class=&quot;caps&quot;&gt;VALUE&lt;/span&gt; in the list it uses the &lt;span class=&quot;caps&quot;&gt;KEY&lt;/span&gt; from the tag before. So &lt;a href=&quot;http://mf.jochentopf.com/?tags=boundary%3Dadministrative,national_park,landuse%3Dresidential&quot;&gt;boundary=administrative,national_park,landuse=residential&lt;/a&gt; will show you both &lt;tt&gt;boundary&lt;/tt&gt; tags and the &lt;tt&gt;landuse=residential&lt;/tt&gt; tag.&lt;/p&gt; &lt;p&gt;All of this is just a quick proof-of-concepts. There are multiple problems still to be resolved. Feel free to play around and give me feedback.&lt;/p&gt;
&lt;h2&gt;What now?&lt;/h2&gt; &lt;p&gt;To completely replace the existing Map Features lists we have to decide where to place those autogenerated lists. We could either include them in the wiki somehow or they could live on a separate web page (for instance the taginfo web page).&lt;/p&gt; &lt;p&gt;If we integrate them in the wiki users will see the lists they are already used to and they can edit the text around those lists which would be a big plus. But it needs more work to make this possible. We&amp;#8217;d probably need some kind of MediaWiki plugin that creates those tables from the &lt;span class=&quot;caps&quot;&gt;JSON&lt;/span&gt; delivered by taginfo. We could include an iframe in the wiki page that gets its content from an external site. We already do this for those little taginfo info boxes on some pages in the wiki. Unfortunately we can&amp;#8217;t make this seemless because the main page doesn&amp;#8217;t know how big the iframe should be, so this isn&amp;#8217;t that great a solution.&lt;/p&gt; &lt;p&gt;Maybe you have an idea how to do this?&lt;/p&gt;</description>
      <category>osm</category>
    </item>
    <item>
      <title>Antarctica in OpenStreetMap</title>
      <link>http://blog.jochentopf.com/2013-02-04-antarctica-in-openstreetmap.html</link>
      <guid>http://blog.jochentopf.com/2013-02-04-antarctica-in-openstreetmap.html</guid>
      <pubDate>Mon, 04 Feb 2013 12:33:08 +0100</pubDate>
      <description>&lt;p&gt;OpenStreetMap wants to map the whole world, but there is a whole continent that has been neglected a bit: Antarctica. Of course there isn&amp;#8217;t much there besides rocks, ice, and penguins and not too many people live there. But still, it is a huge area and it should appear properly on our maps.&lt;/p&gt; &lt;p&gt;I have looked into the current situation and what could be done and want to write that up here as a first step towards improving the situation.&lt;/p&gt;
&lt;h2&gt;Mercator Projection&lt;/h2&gt;
&lt;p&gt;The Mercator projection generally used in online maps only covers the area between about 85.0511 degrees South and 85.0511 degrees North. While this is not a problem in most cases, it obviously is a problem for Antarctica. &lt;span class=&quot;caps&quot;&gt;JOSM&lt;/span&gt; can edit data South of -85.0511 degrees when you change the projection from Mercator to &amp;#8220;WGS84 Geographic&amp;#8221; (&lt;span class=&quot;caps&quot;&gt;EPSG&lt;/span&gt;:4326), but Potlatch can&amp;#8217;t. And the usual aerial images aren&amp;#8217;t available, because they also use the same Mercator projection.&lt;/p&gt;
&lt;h2&gt;The Coastline&lt;/h2&gt;
&lt;p&gt;If the source tags are right, the coastline seems to have been mostly imported from &lt;a href=&quot;http://www.gadm.org/&quot;&gt;&lt;span class=&quot;caps&quot;&gt;GADM&lt;/span&gt;&lt;/a&gt;. Apart of the licensing issues, this data seems to be old and not very accurate. The real coastline dips below 85.0511 degrees South in the Ross sea, but in &lt;span class=&quot;caps&quot;&gt;OSM&lt;/span&gt; it is cut off there, probably because not many people are actually creating maps not using the Mercator projection. There are newer and better sources for the Antarctica coastline around and it should not be too difficult to throw the current one out and replace it by a better one.&lt;/p&gt;
&lt;h2&gt;Ice Shelves&lt;/h2&gt;
&lt;p&gt;There are huge ocean areas around the land mass of the continent that are covered in ice shelves. They should be tagged and appear on the map because they are large features and they affect the way we perceive Antarctica.&lt;/p&gt; &lt;p&gt;There is no tag for ice shelves yet, there is &lt;a href=&quot;http://taginfo.openstreetmap.org/tags/natural=glacier&quot;&gt;natural=glacier&lt;/a&gt;, but that is not the same. I propose adding a tag natural=ice_shelf for this. There are sources for the borders of the ice-shelf, so it wouldn&amp;#8217;t be a big problem to add them.&lt;/p&gt;
&lt;h2&gt;Available Aerial Images&lt;/h2&gt;
&lt;p&gt;Bing and Mapbox seem to be using older and not very detailed Landsat images. There are newer Landsat images with better resolution available, see below. Landsat images don&amp;#8217;t go below 82.5 degrees South because of the orbit of the Landsat satellites. The images from MapQuest Open are better, they are from Landsat and mostly from NASA&amp;#8217;s &lt;a href=&quot;http://visibleearth.nasa.gov/view.php?id=73909&quot;&gt;BlueMarble NG&lt;/a&gt;.&lt;br /&gt;
&lt;h2&gt;Data Sources&lt;/h2&gt;
&lt;p&gt;If you want to have a look around, maybe try out some of the data yourself, here are some pointers.&lt;/p&gt;
&lt;p&gt;I have asked Frederik and he has added Antarctica to the list of &lt;span class=&quot;caps&quot;&gt;OSM&lt;/span&gt; extracts that are generated daily and published on &lt;a href=&quot;http://download.geofabrik.de/&quot;&gt;download.geofabrik.de&lt;/a&gt;. It is not much data and you can load all of it into &lt;span class=&quot;caps&quot;&gt;JOSM&lt;/span&gt;, though it will be a bit slow then.&lt;/p&gt;
&lt;p&gt;The current &lt;span class=&quot;caps&quot;&gt;OSM&lt;/span&gt; coastline is available from &lt;a href=&quot;http://openstreetmapdata.com/data&quot;&gt;OpenStreetMapData.com&lt;/a&gt;, it is usually updated daily.&lt;/p&gt;
&lt;p&gt;There are several sources of reasonably current data that seem to be quite accurate and detailed.&lt;/p&gt;
&lt;p&gt;The &lt;a href=&quot;http://nsidc.org/data/moa/&quot;&gt;Mosaic of Antarctica (&lt;span class=&quot;caps&quot;&gt;MOA&lt;/span&gt;)&lt;/a&gt; contains good satellite images for Antarctica and, derived from it, shapefiles. You can &lt;a href=&quot;http://nsidc.org/data/atlas/news/antarctic_coastlines.html&quot;&gt;look at them&lt;/a&gt; and &lt;a href=&quot;ftp://sidads.colorado.edu/pub/DATASETS/MOA/coastlines/&quot;&gt;download the shape files&lt;/a&gt;. It seems that &lt;a href=&quot;http://naturalearthdata.com/&quot;&gt;Natural Earth Data&lt;/a&gt; derives their Antarctica coastlines from these. The shape files can&amp;#8217;t be used directly for import, though, because the vectorization is bad and the data contains lots of ziggzaggy lines.&lt;/p&gt;
&lt;p&gt;Another data source could be the &lt;a href=&quot;http://lima.usgs.gov/&quot;&gt;Landsat Image Mosaic Of Antarctica (&lt;span class=&quot;caps&quot;&gt;LIMA&lt;/span&gt;)&lt;/a&gt; and derived data. You can look at the &lt;a href=&quot;http://lima.usgs.gov/view_lima.php&quot;&gt;images&lt;/a&gt; or the &lt;a href=&quot;http://lima.usgs.gov/antarctic_research_atlas/&quot;&gt;Research Atlas&lt;/a&gt;. There are also downloads and &lt;span class=&quot;caps&quot;&gt;WMS&lt;/span&gt; available.&lt;/p&gt;
&lt;p&gt;(Thanks to &lt;a href=&quot;http://www.imagico.de/&quot;&gt;Christoph Hormann&lt;/a&gt; for these links and insights into the data.)&lt;/p&gt;
&lt;p&gt;There are also several more links on the wiki on the &lt;a href=&quot;http://wiki.openstreetmap.org/wiki/Antarctica&quot;&gt;Antarctica page&lt;/a&gt;. I haven&amp;#8217;t looked at all of them yet.&lt;/p&gt;
&lt;h2&gt;Licensing&lt;/h2&gt;
&lt;p&gt;Of course we have to look into the details, but licensing should not be a big issue. Almost all of this data is ultimately derived from &lt;span class=&quot;caps&quot;&gt;NASA&lt;/span&gt; satellite images or other satellite data which is in the Public Domain. Either &lt;span class=&quot;caps&quot;&gt;NASA&lt;/span&gt; themselves or other US government or research agencies have been processing this data to create the data that is available at the places mentioned above.&lt;/p&gt;
&lt;h2&gt;Displaying data&lt;/h2&gt;
&lt;p&gt;I can display all of this data in &lt;span class=&quot;caps&quot;&gt;EPSG&lt;/span&gt;:4326 in Quantum &lt;span class=&quot;caps&quot;&gt;GIS&lt;/span&gt; (&lt;a href=&quot;http://qgis.org&quot;&gt;&lt;span class=&quot;caps&quot;&gt;QGIS&lt;/span&gt;&lt;/a&gt;). The Antarctic Polar Stereographic Projection &lt;span class=&quot;caps&quot;&gt;EPSG&lt;/span&gt;:3031 is much better, though. Unfortunately there are some rendering problems with it in &lt;span class=&quot;caps&quot;&gt;QGIS&lt;/span&gt;. I haven&amp;#8217;t tried Mapnik or other renderers yet. This is something I must explore some more.&lt;/p&gt;
&lt;h2&gt;Bogus data&lt;/h2&gt;
&lt;p&gt;There is one other problem with &lt;span class=&quot;caps&quot;&gt;OSM&lt;/span&gt; data in Antarctica: Just like the spot in the Atlantic with 0 degrees latitude and 0 degrees longitude, Antarctica seems to attract some bogus data. Most probably from software bugs, but it is also a likely spot to add bogus things for the fun of it without anybody noticing. Last time I looked, I found (and removed), among other strange things, a restaurant, a restroom, and a pub called &amp;#8220;Very Cold&amp;#8221; somewhere in Antarctica and a parking lot and a tree from failed imports at the South Pole.&lt;/p&gt;
&lt;h2&gt;Where to go from here?&lt;/h2&gt;
&lt;p&gt;I think we can probably just throw away the existing coastline and import the coastline and ice-shelf data from NaturalEarth. We don&amp;#8217;t actually need that much detail in Antarctica. If and when we need it we can always add the more detailed data from &lt;span class=&quot;caps&quot;&gt;MOA&lt;/span&gt; either in the whole of Antarctica or just in selected areas. This is much less work than cleaning up the better &lt;span class=&quot;caps&quot;&gt;MOA&lt;/span&gt; data and making it ready for &lt;span class=&quot;caps&quot;&gt;OSM&lt;/span&gt; and we&amp;#8217;d still have a large improvement over the current situation. If it turns out that there are areas where the data currently existing in &lt;span class=&quot;caps&quot;&gt;OSM&lt;/span&gt; is better than the NaturalEarth data, we should, of course, keep that, or check with the better &lt;span class=&quot;caps&quot;&gt;MOA&lt;/span&gt; data.&lt;/p&gt;
&lt;p&gt;So far these are just some notes from my research. There is more work to be done. I hope this article will start a discussion. Please tell me if you have any other knowledge, ideas, insights. Before actually doing any kind of import, I will, of course, write up in some more detail what is planned and discuss that according to the &lt;a href=&quot;http://wiki.openstreetmap.org/wiki/Import/Guidelines&quot;&gt;Import Guidelines&lt;/a&gt;.&lt;/p&gt;</description>
      <category>antarctica</category>
      <category>osm</category>
      <category>osmcoastline</category>
    </item>
    <item>
      <title>Public Transit Mapping</title>
      <link>http://blog.jochentopf.com/2013-01-23-public-transit-mapping.html</link>
      <guid>http://blog.jochentopf.com/2013-01-23-public-transit-mapping.html</guid>
      <pubDate>Wed, 23 Jan 2013 16:09:51 +0100</pubDate>
      <description>&lt;p&gt;A &lt;a href=&quot;http://yatayat.monsooncollective.org/&quot;&gt;map and routing service&lt;/a&gt; for the Kathmandu public transport system. And &lt;a href=&quot;http://monsooncollective.org/2012/07/public-transit-mapping-a-first-person-perspective/&quot;&gt;how the data was collected&lt;/a&gt;. This is why I love &lt;span class=&quot;caps&quot;&gt;OSM&lt;/span&gt;.&lt;/p&gt;</description>
      <category>osm</category>
    </item>
    <item>
      <title>Taginfo News</title>
      <link>http://blog.jochentopf.com/2013-01-10-taginfo-news.html</link>
      <guid>http://blog.jochentopf.com/2013-01-10-taginfo-news.html</guid>
      <pubDate>Thu, 10 Jan 2013 12:09:52 +0100</pubDate>
      <description>&lt;p&gt;&lt;a href=&quot;http://taginfo.openstreetmap.org/&quot;&gt;&lt;img src=&quot;http://blog.jochentopf.com/img/2013-01-10-taginfo-cloud.png&quot; style=&quot;float:right; padding: 0 0 4px 4px;&quot; width=&quot;300&quot;/&gt;&lt;/a&gt; &lt;p&gt;It has been nearly a year since I did some serious work on &lt;a href=&quot;http://taginfo.openstreetmap.org/&quot;&gt;taginfo&lt;/a&gt;. Taginfo works well, but there has been and still is a backlog of todo items. And I get new ideas on how to improve it all the time. So I spent the first days of the new year doing some work on it. A lot of this work has been &amp;#8220;behind the scenes&amp;#8221;, improving code here or there, so there isn&amp;#8217;t actually that much to see. (If you are taking a look remember that you might have to clear your browser cache for all the goodies to show up properly.) But here are the larger improvements:&lt;/p&gt;&lt;br /&gt;
&lt;h2&gt;Switch from Protovis to D3&lt;/h2&gt; &lt;p&gt;Taginfo had been using the &lt;a href=&quot;http://mbostock.github.com/protovis/&quot;&gt;Protovis&lt;/a&gt; Javascript library for the graphs you can see on some pages. But Protovis is not developed any further. Instead the author started from scratch and created &lt;a href=&quot;http://d3js.org/&quot;&gt;D3&lt;/a&gt; which is even more awesome!&lt;/p&gt; &lt;p&gt;I switched all the graphs over to the new library. This took some work without much visual change, but should make it easier to build on in the future.&lt;/p&gt; &lt;p&gt;I also introduced a new and improved shiny colorful tag cloud on the front page based on D3 and the supercool &lt;a href=&quot;http://www.jasondavies.com/wordcloud/&quot;&gt;D3 Wordcloud&lt;/a&gt; code. See the image above.&lt;/p&gt;&lt;br /&gt;
&lt;h2&gt;Support for Images from Wiki&lt;/h2&gt; &lt;a href=&quot;http://taginfo.openstreetmap.org/keys/highway#wiki&quot;&gt;&lt;img src=&quot;http://blog.jochentopf.com/img/2013-01-10-image-popup.png&quot; style=&quot;float:left; padding: 0 8px 8px 0;&quot;/&gt;&lt;/a&gt; &lt;p&gt;The pages on the &lt;span class=&quot;caps&quot;&gt;OSM&lt;/span&gt; wiki describing keys and tags often have an image on them depicting what this key or tag is about. I now properly get the meta data about these images from the wiki and show the images in the user interface. Where images are available they are shown on the key and tag pages in the &lt;i&gt;Overview&lt;/i&gt; tab and if you mouse over the image links in the &lt;i&gt;Wiki&lt;/i&gt; tab they are also shown.&lt;/p&gt; &lt;p&gt;I added support for the images because of a question from Tom MacWright on osm-dev. He wants to use those images in the new &lt;a href=&quot;http://wiki.openstreetmap.org/wiki/ID&quot;&gt;iD Javascript editor&lt;/a&gt;. This is now easy to do as the image links etc. are also exported via the taginfo &lt;span class=&quot;caps&quot;&gt;API&lt;/span&gt;. Which brings me to the next chapter&amp;#8230;&lt;/p&gt;&lt;br /&gt;
&lt;h2&gt;New &lt;span class=&quot;caps&quot;&gt;API&lt;/span&gt; Version&lt;/h2&gt; &lt;p&gt;Taginfo always had an &lt;a href=&quot;http://wiki.openstreetmap.org/wiki/Taginfo/API&quot;&gt;&lt;span class=&quot;caps&quot;&gt;API&lt;/span&gt;&lt;/a&gt; that allows everybody to get at all the juicy data in taginfo. I internally use this &lt;span class=&quot;caps&quot;&gt;API&lt;/span&gt; to show most of the information you see on the site. But the &lt;span class=&quot;caps&quot;&gt;API&lt;/span&gt; was organized badly and never fully documented. So now I have re-organized the &lt;span class=&quot;caps&quot;&gt;API&lt;/span&gt; a bit, given it the new version 4 and &lt;a href=&quot;http://taginfo.openstreetmap.org/taginfo/apidoc&quot;&gt;documented every call&lt;/a&gt;. The changes for users aren&amp;#8217;t really that great, so it should be easy to change your code. In most cases you will only need to change the &lt;span class=&quot;caps&quot;&gt;URL&lt;/span&gt;. The &lt;a href=&quot;http://taginfo.openstreetmap.org/taginfo/apidoc?show_deprecated=true&quot;&gt;&lt;span class=&quot;caps&quot;&gt;API&lt;/span&gt; documentation&lt;/a&gt; optionally shows deprecated &lt;span class=&quot;caps&quot;&gt;API&lt;/span&gt; calls, too, and tells you which new call you should use instead of the old calls.&lt;/p&gt; &lt;p&gt;The old &lt;span class=&quot;caps&quot;&gt;API&lt;/span&gt; versions will be around for a while so you have some time to switch. But they will disappear at some point, so if you are using the &lt;span class=&quot;caps&quot;&gt;API&lt;/span&gt;, consider switching sooner than later.&lt;/p&gt;&lt;br /&gt;
&lt;h2&gt;Caching of Wiki Pages&lt;/h2&gt; &lt;p&gt;Taginfo reads thousands of wiki pages to get its information. This takes a lot of time and it strains the wiki server. The new version now caches the wiki pages and only reloads them if they have changed.&lt;/p&gt;&lt;/p&gt;</description>
      <category>osm</category>
      <category>taginfo</category>
    </item>
    <item>
      <title>Status of the Multilingual Maps Project</title>
      <link>http://blog.jochentopf.com/2012-12-19-status-of-the-multilingual-maps-project.html</link>
      <guid>http://blog.jochentopf.com/2012-12-19-status-of-the-multilingual-maps-project.html</guid>
      <pubDate>Wed, 19 Dec 2012 15:09:07 +0100</pubDate>
      <description>&lt;p&gt;It is high time I&amp;#8217;ll write something about the status of the &lt;a href=&quot;http://blog.jochentopf.com/2012-06-21-wikipedia-multilingual-maps-project.html&quot;&gt;Wikipedia Multilingual Maps project&lt;/a&gt; I have been working on for many months now.&lt;/p&gt; &lt;p&gt;On November, 30 2012 &lt;a href=&quot;http://gis.19327.n5.nabble.com/Multilingual-maps-demo-td5738451.html&quot;&gt;I announced&lt;/a&gt; a demo of the multilingual map at &lt;a href=&quot;http://mlm.jochentopf.com/&quot;&gt;mlm.jochentopf.com&lt;/a&gt;. This demo allows the user to choose the language or languages they want to see the map labels in. More then 500 people looked at the map in the first 24 hours and I got a lot of very positive feedback. Based on this feedback I improved the demo a bit, for instance allowing several labels at once.&lt;/p&gt; &lt;p&gt;&lt;a href=&quot;http://wiki.openstreetmap.org/wiki/File:Mlm-designdoc.pdf&quot;&gt;As planned&lt;/a&gt; all of this is implemented based on the &lt;a href=&quot;https://github.com/MapQuest/MapQuest-Render-Stack&quot;&gt;Mapquest Render Stack&lt;/a&gt;. Unfortunately my changes are not merged into the upstream tree yet, but you can get everything in &lt;a href=&quot;https://github.com/joto/MapQuest-Render-Stack&quot;&gt;my fork of the software&lt;/a&gt;. For the demo/test this software is running on a virtual machine on bessel.openstreetmap.de, the tile server used for the &lt;a href=&quot;http://www.openstreetmap.de/karte.html&quot;&gt;German &lt;span class=&quot;caps&quot;&gt;OSM&lt;/span&gt; map&lt;/a&gt;. Eventually the software should run on a Wikipedia server and the multilingual maps should be available for everybodies use. There are currently some issues to be resolved inside Wikipedia to get those servers.&lt;/p&gt; &lt;p&gt;The &lt;a href=&quot;http://wiki.openstreetmap.org/wiki/Multilingual_maps_wikipedia_project&quot;&gt;Wikipedia project&lt;/a&gt; itself is finished now, all its goals were implemented. I have written up a &lt;a href=&quot;http://wiki.openstreetmap.org/wiki/Multilingual_maps_Wikipedia_project/Final_Report&quot;&gt;final report&lt;/a&gt; that describes the work we did in more detail. But of course that doesn&amp;#8217;t mean that everything is done. There is always more to work on.&lt;/p&gt; &lt;p&gt;I am currently working on some changes to the Mapnik renderer that would allow &lt;a href=&quot;https://groups.google.com/forum/?fromgroups=#!topic/mapnik/JpikL0JZDYk&quot;&gt;flexible data transformation plugins&lt;/a&gt; to be added. These plugins can (among many other things) be used to do transliteration on-the-fly. My tests with that show promise and I hope to roll out transliteration to the demo server soon.&lt;/p&gt; &lt;p&gt;I am also working on on the demo/test-server, doing changes here or there, whats mainly missing is expiry of tiles, but that should stabilize pretty soon and then we are planning to open it up to a beta-test where others can use those tiles, too.&lt;/p&gt;</description>
      <category>multilingual maps</category>
      <category>osm</category>
      <category>wikipedia</category>
    </item>
    <item>
      <title>An Area Datatype for OSM</title>
      <link>http://blog.jochentopf.com/2012-11-26-an-area-datatype-for-osm.html</link>
      <guid>http://blog.jochentopf.com/2012-11-26-an-area-datatype-for-osm.html</guid>
      <pubDate>Mon, 26 Nov 2012 17:04:42 +0100</pubDate>
      <description>&lt;p&gt;One of the biggest problems with the &lt;span class=&quot;caps&quot;&gt;OSM&lt;/span&gt; data model is that there are no real polygons. Polygons or multipolygons are &amp;#8220;simulated&amp;#8221; using closed ways or multipolygon relations and several other methods. These multipolygon relations are often broken. Some of the problems resulting from this non-existence of multipolygons are affecting many people, for instance with broken coastlines and country or other boundaries.&lt;/p&gt;
&lt;p&gt;This is not a new problem. In March 2011 I created the wiki page &lt;a href=&quot;http://wiki.openstreetmap.org/wiki/The_Future_of_Areas&quot;&gt;The Future of Areas&lt;/a&gt; as a focal point for documentation and discussions around this and others built on it. There are some interesting ideas there, but until now no clear solution could be found. Every proposed solution has many drawbacks. At the &lt;a href=&quot;http://wiki.openstreetmap.org/wiki/Karlsruhe_Hack_Weekend_June_2012&quot;&gt;Karlsruhe hack weekend in June 2012&lt;/a&gt; a group of us discussed this problem during dinner and we made some good progress. Unfortunately nobody wrote down afterwards what we had talked about. In this blog post I try to build on this discussion and try to formulate the proposal.&lt;/p&gt;
&lt;h2&gt;Problems&lt;/h2&gt;
&lt;p&gt;Before we go into a solution we have to make clear what the problems are with current (multi-)polygons. First there are several ways of handling what is essentially a single issue. You can have simple (smallish) polygons using closed ways. For larger polygons (like whole countries) or multipolygon you need multipolygon (or boundary) relations. And there are some cases where we don&amp;#8217;t use either of those but have more special solutions again, coastlines ( which essentially describe land (or water) polygons) and river areas modelled by &amp;#8220;riverbank&amp;#8221; ways come to mind. Having several solutions for essentially the same problem is wasteful and complicated.&lt;/p&gt;
&lt;p&gt;The second problem is that some polygons are really small (say a rectangular building) and some are huge, like a whole continent. Any solution must take this into account. The third problem are the many broken multipolygons. There have been tools around for years to help fix those broken multipolygons, but they get broken again and again. We (the &lt;span class=&quot;caps&quot;&gt;OSM&lt;/span&gt; community) has failed to produce a solution that actually works.&lt;/p&gt;
&lt;p&gt;For any solution to be viable we must break with some conventions in the way our data model and our &lt;span class=&quot;caps&quot;&gt;API&lt;/span&gt; work. First, the way we edit &lt;span class=&quot;caps&quot;&gt;OSM&lt;/span&gt; data has always been: Download complete objects, edit them, and upload the new version of the objects. There have been discussions about partial downloads and partial edits, but that has never materialized. But to be able to edit huge objects like country-sized multipolygons, it will be essential that we are able to download and edit parts of an object.&lt;/p&gt;
&lt;p&gt;Another time-honored tradition has been that the central &lt;span class=&quot;caps&quot;&gt;OSM&lt;/span&gt; database and the &lt;span class=&quot;caps&quot;&gt;API&lt;/span&gt; are rather dumb. They do only minimal checking on the data that is being uploaded, allowing broken geometries to be uploaded, for instance, ways with a single node or polygons with self-intersections. If we ever want to have a chance of having country-sized objects without geometry errors, we have to change this. The central database (or the &lt;span class=&quot;caps&quot;&gt;API&lt;/span&gt;) has to make sure that we don&amp;#8217;t create objects with those problems.&lt;/p&gt;
&lt;h2&gt;Area objects&lt;/h2&gt;
&lt;p&gt;So, when we look at those requirements it becomes actually relatively straightforward to think about a solution for the polygon problem. Let&amp;#8217;s define an &amp;#8220;area&amp;#8221; object very similar to a &amp;#8220;way&amp;#8221; object. A list of references to nodes and some tags. In addition we require that the first and last  references nodes must be identical.&lt;/p&gt;
&lt;p&gt;How should the &lt;span class=&quot;caps&quot;&gt;API&lt;/span&gt; look for editing such things? A request goes to the &lt;span class=&quot;caps&quot;&gt;API&lt;/span&gt; to download a given bounding box that the user wants to edit. To be able to work with an area we need all nodes inside that bounding box plus at least the next node after the last nodes in the bounding box.  If we have the complete area all is fine, if not we need one more thing: We need to know which side is &amp;#8220;inside&amp;#8221; and which is &amp;#8220;outside&amp;#8221;.  To define this we just define that the nodes in an area must be sorted so that they always go around the polygon in a clockwise order. (This is arbitrary, it could be counter-clockwise, but it is a common convention to use clockwise).  The editor can now always draw the area properly (inside the bounding box it has downloaded), together with the tags it has all information it needs.&lt;/p&gt;
&lt;p&gt;And this representation has another interesting property: If the whole polygon is valid (no self-intersections of the boundary etc.) and if all edits are restricted to the bounding box and the result of those edits is valid, the whole polygon will still be valid. If the user uploads some changes we don&amp;#8217;t have to check the validity of the whole polygon, only of the changes. This is very important because otherwise the check would be too expensive.&lt;/p&gt;
&lt;p&gt;Why is the whole polygon still valid? I am quite sure that this is the case, but I don&amp;#8217;t have a rigorous mathematical proof. Somebody should probably find one to make sure we are not forgetting anything here.&lt;/p&gt;
&lt;p&gt;There are, of course, many questions left. For instance I have described the &amp;#8220;area&amp;#8221; datatype just for simple polygons and I have only described outer rings. I think the area datatype should allow multiple outer and inner rings, so it should describe complete multipolygons as defined by the simple feature definition.&lt;/p&gt;
&lt;p&gt;We might also need some &lt;span class=&quot;caps&quot;&gt;API&lt;/span&gt; functions to migrate data, says change a closed way into an area. This might be done client-side but just adding an area and removing the way, but we&amp;#8217;ll see which approach is better.&lt;/p&gt;
&lt;h2&gt;Migration&lt;/h2&gt;
&lt;p&gt;Migration of existing &lt;span class=&quot;caps&quot;&gt;OSM&lt;/span&gt; data to the new model is relatively easy, because there is nothing taken away from the current data or &lt;span class=&quot;caps&quot;&gt;API&lt;/span&gt;.  First we need to implement the new area object in the central database and all the needed &lt;span class=&quot;caps&quot;&gt;API&lt;/span&gt; calls. We then need to change editors to allow working with the new areas including download and upload through the new &lt;span class=&quot;caps&quot;&gt;API&lt;/span&gt; calls. All other &lt;span class=&quot;caps&quot;&gt;OSM&lt;/span&gt; software such as osm2pgsql is changed to allow the new-style areas in addition to old-style areas.&lt;/p&gt;
&lt;p&gt;Once all of this is in-place and people can actually work with the new area datatype we automatically convert old-style way-based polygons and multipolygon relations to the new style. We can start with simple polygons (such as all closed ways that are valid polygons and are tagged with &lt;tt&gt;building=yes&lt;/tt&gt; and nothing else), and work our way to more and more complex cases. What&amp;#8217;s left over are polygons that are in some way broken or other corner-cases that have to be fixed manually. Mappers can just load those cases into an editor, add a new polygon and remove the old ways/relations. Once most of the data is migrated we remove support for old-style polygons from osm2pgsql and other such software. Data that&amp;#8217;s not yet converted will not show up on the map any more which should give the boost to the community to finish converting those cases, too.&lt;/p&gt;
&lt;h2&gt;Where do we go from here?&lt;/h2&gt;
&lt;p&gt;We obviously need a lot more discussion in the community to make sure this is a valid proposal and that we can solve all the problems with it that need solving. Maybe I have overlooked something important and it doesn&amp;#8217;t work at all? And once we are reasonably sure we have a valid way to go we need buy-in from all relevant parties.&lt;/p&gt;
&lt;p&gt;I think it would probably make a good diploma thesis (or something like it) to work out all the details of this new data model, the &lt;span class=&quot;caps&quot;&gt;API&lt;/span&gt; and the changes needed to the different kinds of software working with &lt;span class=&quot;caps&quot;&gt;OSM&lt;/span&gt; data.  (Feel free to approach me if you are interested.)&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Update:&lt;/b&gt; Several people have pointed out that this could break if there are edges of the polygon going through the downloaded bounding box but without nodes inside the bounding box. Of course we have to download the nodes at the end of those edges, too. Then what I am describing above still works. And of course we have to figure out how to implement all of this efficiently.&lt;/p&gt;</description>
      <category>osm</category>
    </item>
</channel>
</rss>
