<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	xmlns:georss="http://www.georss.org/georss" xmlns:geo="http://www.w3.org/2003/01/geo/wgs84_pos#" xmlns:media="http://search.yahoo.com/mrss/"
	>

<channel>
	<title>oegeo</title>
	<atom:link href="http://oegeo.wordpress.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://oegeo.wordpress.com</link>
	<description>researching VGI</description>
	<lastBuildDate>Thu, 08 Oct 2009 13:23:02 +0000</lastBuildDate>
	<generator>http://wordpress.com/</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<cloud domain='oegeo.wordpress.com' port='80' path='/?rsscloud=notify' registerProcedure='' protocol='http-post' />
<image>
		<url>http://www.gravatar.com/blavatar/bafaeadfc6473ecfabc938c23e22eb75?s=96&#038;d=http://s.wordpress.com/i/buttonw-com.png</url>
		<title>oegeo</title>
		<link>http://oegeo.wordpress.com</link>
	</image>
			<item>
		<title>Priceless?</title>
		<link>http://oegeo.wordpress.com/2009/10/02/priceless/</link>
		<comments>http://oegeo.wordpress.com/2009/10/02/priceless/#comments</comments>
		<pubDate>Fri, 02 Oct 2009 19:48:33 +0000</pubDate>
		<dc:creator>Martijn van Exel</dc:creator>
				<category><![CDATA[theme]]></category>

		<guid isPermaLink="false">http://martijnsdissertationdiary.wordpress.com/2009/10/02/priceless/</guid>
		<description><![CDATA[Volunteered Geographic Information
Free, Priceless Or Somewhere In Between?
This is the title that has been popping into my head since last summer. I am writing it down because it encompasses in a very general sense the themes that I want to cover in my dissertation, and thus serves me well in trying to guide me while [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=oegeo.wordpress.com&blog=3077892&post=4&subd=oegeo&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p style="text-align:center;"><span style="font-size:16pt;">Volunteered Geographic Information</span></p>
<p style="text-align:center;"><span style="font-size:16pt;">Free, Priceless Or Somewhere In Between?</span></p>
<p>This is the title that has been popping into my head since last summer. I am writing it down because it encompasses in a very general sense the themes that I want to cover in my dissertation, and thus serves me well in trying to guide me while I try to elaborate on them.</p>
<p>I have actually already written some paragraphs elaborating on the themes and ideas that follow, but I want to force myself to touch upon them concisely here.</p>
<p>Volunteered Geographic Information (VGI) is a concept that has not been around for a very long time. Geographic Information has, however: it is what maps are made out of, and what your car navigation device relies on to guide you. Traditionally, Geographic Information is collected, processed and used by professionals, but this no longer holds true: Geographic Information has undergone a process of democratization, both in the usage dimension and in the collection and processing dimension. People are now used to dealing with Geographic Information in different contexts, and have started to pool resources to collectively build repositories of Geographic Information, to facilitate the democratization of the entire ecosystem of Geographic Information.</p>
<p>OpenStreetMap is the most prominent of these efforts, and one in which I have been actively involved since early 2007. Since its conception in 2005, it has grown to a worldwide collaborative effort involving more than 100.000 contributors. In some regions, the maps available from OpenStreetMap are so rich and complete that they are used instead of commercially available map data.</p>
<p>I realize that I need to come up with some examples here, and some numbers that give an indication of how OpenStreetMap has grown, but I am on a train, blissfully disconnected from the internet, so you will just have to bear with me for now. But believe me, it&#8217;s getting big fast – at a rate that makes me worried about the validity of any quantitative research results that I might present in the context of this dissertation. But this will have to be dealt with in some future note.</p>
<p>Let us assume for now that OpenStreetMap – there are other VGI efforts around, and they will need to be touched upon as well – is indeed starting to occupy a significant share in the commercial market for Geographic Information. That means the OpenStreetMap data represent a commodity and as such, economic value. As OpenStreetMap data is available at no cost, this value is not quantified in the marketplace, however. This poses intriguing questions:</p>
<p style="text-align:center;"><em><strong>What is this freely available OpenStreetMap data actually worth? </strong></em></p>
<p style="text-align:center;"><em><strong>How do you even begin to measure the value of something that is not subject to the usual economic market mechanisms?</strong></em></p>
<p>When dealing with value, I believe I cannot omit the concept of quality, especially in this context. Any VGI effort relies on volunteers collecting data in their spare time. While some regions have very active communities, getting together to discuss progress and plan improvements to the map, checking and correcting each other&#8217;s contributions, other regions rely on single, isolated individuals contributing to the map – or worse: no-one contributing at all. The resulting picture is one of spotty coverage: very densely mapped regions exist side by side with tersely covered regions. More questions arise!</p>
<p style="text-align:center;"><em><strong>Is it possible to define the quality of volunteered geographic information in any satisfactory way?</strong></em></p>
<p style="text-align:center;"><em><strong>How?</strong></em></p>
<p style="text-align:center;"><em><strong>More generally: how do quality and value relate when dealing with geographic information?</strong></em></p>
<p>I think I cannot proceed from here without looking at real world situations. Economic value is defined in the marketplace where supply and demand meet, and thus cannot be studied without some understanding of how and where this demand arises.</p>
<p style="text-align:center;"><em><strong>There clearly is a demand for VGI, but where does it originate? </strong></em></p>
<p style="text-align:center;"><em><strong>Why would people want to use information that comes with no guarantees of completeness or even factual correctness, and that does not have a consistent quality? </strong></em></p>
<p>I will need to get to the bottom of this. Apparently it is &#8216;good enough&#8217; for some! If I&#8217;m not careful I will be entering into the domain of psychology. I think I need to stop soon, or I will have covered all domains of modern science and will have defined ample questions to last me three dissertations. But let me just finish this train of thought, and by then I will have arrived in Berlin – one of the best covered cities in OpenStreetMap, by the way; you can even get a detailed map of the zoo!</p>
<p style="text-align:center;"><em><strong>What drives the decision on the demand side to use volunteered geographic information instead of commercial offerings that do come with a quality label?</strong></em></p>
<p>I can think of a number of reasons. Firstly, there is a growing number of application domains that do not require extensive, nationwide coverage. The growing domain of location based services are often only relevant in metropolitan areas; consider for example pedestrian and bicycle routing, social networking applications, tourist guide services or restaurant / bar recommendation applications. Even many applications in professional domains operate only within a designated metropolitan area: local police, fire brigades and other public safety professionals operate only within their metro area.</p>
<p>Interestingly, supply and demand sync up really nicely here: in areas where there is likely to be a great demand for high quality – whatever that may mean – geographic information, there is also likely to be a large number of contributors to volunteered geographic information repositories. (This reminds me of my master&#8217;s thesis that dealt with the quality of public transportation in rural areas. There was a similar process at play: because of the limited and geographically thinly spread demand, the costs of maintaining a reasonable quality of service had become so high that cuts in service quality had become unavoidable, lowering the demand even further. Both Dutch and German regional governments were struggling to counter this downward spiral, and I did a comparative study on the results of those efforts.)</p>
<p>Secondly, because there is very little restrictions and limitations in terms of how and where you can use the data. Commercial data usage licenses are more often than not restricted to a certain type of application, device or to a limited number of users or devices, and the data can only be used as-is. OpenStreetMap data can be used in almost every context imaginable, and you are free to modify and adapt the data to suit your needs.</p>
<p>Lastly, of course, because it&#8217;s free.</p>
<p>I have mixed feelings about this post. It feels unfocused, but I guess that is to be expected. More importantly, I don&#8217;t feel comfortable in the domain of economics. Sure, I did my two years of high school accounting and economics, but it did not quite take. It does not particularly interest me, but I feel I need to deal with it anyway. Intuitively, I am drawn to the question of defining and measuring quality. I want to think about how to do that, write tools to analyze OSM data – that part I am really passionate about. It seems like a good moment to talk to Henk and maybe some other people I know that could help and advise me at this junction.</p>
  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/oegeo.wordpress.com/4/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/oegeo.wordpress.com/4/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/oegeo.wordpress.com/4/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/oegeo.wordpress.com/4/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/oegeo.wordpress.com/4/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/oegeo.wordpress.com/4/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/oegeo.wordpress.com/4/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/oegeo.wordpress.com/4/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/oegeo.wordpress.com/4/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/oegeo.wordpress.com/4/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=oegeo.wordpress.com&blog=3077892&post=4&subd=oegeo&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://oegeo.wordpress.com/2009/10/02/priceless/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/e82ea3ff4c122fabcab154dcdb1ed494?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">rhodes</media:title>
		</media:content>
	</item>
		<item>
		<title>So this is it!</title>
		<link>http://oegeo.wordpress.com/2009/10/02/so-this-is-it/</link>
		<comments>http://oegeo.wordpress.com/2009/10/02/so-this-is-it/#comments</comments>
		<pubDate>Fri, 02 Oct 2009 17:43:26 +0000</pubDate>
		<dc:creator>Martijn van Exel</dc:creator>
				<category><![CDATA[process]]></category>

		<guid isPermaLink="false">http://martijnsdissertationdiary.wordpress.com/2009/10/02/so-this-is-it/</guid>
		<description><![CDATA[So this is it. This is going to be my dissertation diary. I&#8217;m not going to make any commitments as to how often I will write in it; I just read that I should be spending at least 15 minutes every day on my dissertation. Every day for the next four, five, six years! Intriguing [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=oegeo.wordpress.com&blog=3077892&post=3&subd=oegeo&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p>So this is it. This is going to be my dissertation diary. I&#8217;m not going to make any commitments as to how often I will write in it; I just read that I should be spending at least 15 minutes every day on my dissertation. Every day for the next four, five, six years! Intriguing at least.</p>
<p>I&#8217;m at the very beginning of the process, and my thoughts are really unfocused at this point. In this first entry, I will not go into the theme itself, there will be ample opportunity for that. I would just, for a moment, like to ponder over the implications. At least four years of my life will be dedicated, at least to some degree, to researching and writing about this theme that has yet to unfold.</p>
<p>As I am writing this, I feel that I want to write, I like to explore my thoughts by putting them in writing, although writing in English makes it even harder for my fingers to keep up with my ever-wandering mind.</p>
<p>The first question that springs to mind as I embark on this diary is: should I publish it? Not the dissertation I mean, but these notes? It seems, on the one hand, pointless and vain. Who would want to read about the nitty-gritty details of my struggle towards acquiring a doctorate? Not many, probably, but there might be a reason or two to do it anyway.</p>
<p>Publishing my thoughts might help me overcome a feeling of awkwardness that I frequently have about this project: who am I to think I can do original, creative research? These isolated thoughts, rough outlines of a theme that I might want to pursue, seem so superficial and gratuitous! If I would just go ahead and publish my thoughts and ideas and processes &#8211; that would seem to provide some validity to them. An irrational thought maybe, but it works for me.</p>
<p>Publishing these notes may also invoke some sense of urgency. I know I have a tendency to keep thoughts and ideas to myself for too long, thinking they need to mature before they are ready to be shared with the world. This is an inhibition that will seriously slow me down and that I must learn to set aside. It has already happened and I have not even begun to formalize a proposal!</p>
<p>More than a year ago now, Henk Scholten invited me to come to the Vrije Universiteit to discuss the possibilities of him supervising my dissertation. We had a really nice and productive discussion and I felt both flattered and motivated, and told him I would write some ideas I had down for him to ingest. We would have a follow-up meeting soon.<br />
I explored the idea for a while, discussed implications with a couple of colleagues and friends, thought about interesting themes. I think I even wrote some things down, but I did not feel any of them were good or mature enough to even put forward to Henk.</p>
<p>Although the though of doing a dissertation was on my mind now and then over the months that followed, I found myself glad to be distracted by other things to occupy my mind and time. And so time passed, and here we are. I feel that I want to do this more strongly now, for reasons I will explain in a future post. So I am going to write. And explore. It will be beautiful. I can be that naive.</p>
  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/oegeo.wordpress.com/3/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/oegeo.wordpress.com/3/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/oegeo.wordpress.com/3/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/oegeo.wordpress.com/3/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/oegeo.wordpress.com/3/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/oegeo.wordpress.com/3/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/oegeo.wordpress.com/3/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/oegeo.wordpress.com/3/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/oegeo.wordpress.com/3/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/oegeo.wordpress.com/3/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=oegeo.wordpress.com&blog=3077892&post=3&subd=oegeo&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://oegeo.wordpress.com/2009/10/02/so-this-is-it/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/e82ea3ff4c122fabcab154dcdb1ed494?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">rhodes</media:title>
		</media:content>
	</item>
		<item>
		<title>Gemeentegrenzen uit OpenStreetMap</title>
		<link>http://oegeo.wordpress.com/2008/11/18/gemeentegrenzen-uit-openstreetmap/</link>
		<comments>http://oegeo.wordpress.com/2008/11/18/gemeentegrenzen-uit-openstreetmap/#comments</comments>
		<pubDate>Tue, 18 Nov 2008 13:17:43 +0000</pubDate>
		<dc:creator>Martijn van Exel</dc:creator>
				<category><![CDATA[geodata]]></category>
		<category><![CDATA[opensource]]></category>
		<category><![CDATA[openstandards]]></category>
		<category><![CDATA[openstreetmap]]></category>
		<category><![CDATA[creativecommons]]></category>
		<category><![CDATA[opencontent]]></category>
		<category><![CDATA[opengeodata]]></category>
		<category><![CDATA[osm]]></category>

		<guid isPermaLink="false">http://oegeo.wordpress.com/?p=51</guid>
		<description><![CDATA[OpenStreetMap is de vrije wereldkaart waaraan iedereen kan bijdragen. De geodata is vrij beschikbaar volgens een Creative Commons-licentie. OpenStreetMap (OSM) bevat allang niet meer alleen straten, maar is uitgegroeid tot een veelzijdige repository van vrij beschikbare geodata. Het is alleen nog niet zo makkelijk om er uit te pakken wat je nodig hebt.
Het standaard exportformaat [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=oegeo.wordpress.com&blog=3077892&post=51&subd=oegeo&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p>OpenStreetMap is de vrije wereldkaart waaraan iedereen kan bijdragen. De geodata is vrij beschikbaar volgens een Creative Commons-licentie. OpenStreetMap (OSM) bevat allang niet meer alleen straten, maar is uitgegroeid tot een veelzijdige repository van vrij beschikbare geodata. Het is alleen nog niet zo makkelijk om er uit te pakken wat je nodig hebt.<br />
Het standaard exportformaat van OpenStreetMap is een eigen XML-formaat. Dit is met allerlei open source tools, die beschikbaar zijn via de OSM-wiki op <a id="vt1j" title="http://wiki.openstreetmap.org" href="http://wiki.openstreetmap.org/">http://wiki.openstreetmap.org</a> of de subversion-repository op <a id="u7c0" title="http://svn.openstreetmap.org/" href="http://svn.openstreetmap.org/">http://svn.openstreetmap.org/</a>.<br />
Dit artikel illustreert hoe je de actuele Nederlandse gemeentegrenzen uit de live OSM-database haalt en deze importeert in een PostGIS-database.</p>
<h2>De database</h2>
<p>Het startpunt voor het zoeken naar specifieke informatie in de OSM-database is de Map Features-wikipagina: <a id="4" title="http://wiki.openstreetmap.org/wiki/Map_Features" href="http://wiki.openstreetmap.org/wiki/Map_Features">http://wiki.openstreetmap.org/wiki/Map_Features</a>. Deze pagina bevat een overzicht van alle gebruikte &#8216;tags&#8217; voor objecten in de database. Gemeentegrenzen vallen onder de Administrative Boundaries: <a id="f6zt" title="http://wiki.openstreetmap.org/wiki/Key:boundary" href="http://wiki.openstreetmap.org/wiki/Key:boundary">http://wiki.openstreetmap.org/wiki/Key:boundary</a>. Hoewel de op deze pagina bijgehouden tabel met de indeling per land hier niet helemaal specifiek over is &#8211; er wordt gesproken van &#8216;boundaries for cities like Amsterdam but also smaller like Volendam and Lutjebroek&#8217; &#8211; vallen de gemeentegrenzen onder admin_level=8. Op dezelfde pagina lezen we dat de modus operandi om administratieve grenzen in OSM te zetten is door gebruik te maken van &#8216;relations&#8217;. (OpenStreetMap kent slechts drie soorten objecten: nodes (punten), ways (lijnen) en relations (relaties tussen groepen van de andere twee types).)</p>
<h2>Extractie</h2>
<p>We weten nu dat we alle &#8216;relations&#8217; van het type &#8216;admin_level=8&#8242; willen hebben. Er zijn verschillende manieren om een dergelijke abstractie uit de live-database te maken. De ene is een actuele dump van het gewenste gebied downloaden (deze zijn beschikbaar via <a id="zjgc" title="http://downloads.cloudmade.com/" href="http://downloads.cloudmade.com/">http://downloads.cloudmade.com/</a> ) en hieruit vervolgens met de command-line tool &#8216;osmosis&#8217; (<a id="xjtu" title="http://wiki.openstreetmap.org/wiki/Osmosis" href="http://wiki.openstreetmap.org/wiki/Osmosis">http://wiki.openstreetmap.org/wiki/Osmosis</a> ) een selectie maken. Een andere manier is om gebruik te maken van de OSM Extended API (OSMXAPI, spreek uit OSM-Zappy, zie <a id="m4j1" title="http://wiki.openstreetmap.org/wiki/Osmxapi" href="http://wiki.openstreetmap.org/wiki/Osmxapi">http://wiki.openstreetmap.org/wiki/Osmxapi</a> ). De volgende URL levert dan de gemeentegrenzen op in OSM XML-formaat: <a href="http://www.informationfreeway.org/api/0.5/relation%5Badmin_level=8%5D%5Bbbox=3.35376,50.57484,7.22095,53.51513%5D" target="_blank">www.informationfreeway.org/api/0.5/relation[admin_level=8][bbox=3.35376,50.57484,7.22095,53.51513]</a>.</p>
<h2>Import</h2>
<p>Het resulterende OSM-XML-bestand kun je importeren in een PostGIS-database met behulp van OSM2PGSQL: <a id="l2cd" title="http://wiki.openstreetmap.org/wiki/Osm2pgsql" href="http://wiki.openstreetmap.org/wiki/Osm2pgsql">http://wiki.openstreetmap.org/wiki/Osm2pgsql</a>.<br />
Ervan uitgaande dat je al een spatial database hebt met de naam &#8216;postgis&#8217; gaat het dan als volgt:</p>
<p><span style="font-family:Courier New;">&gt; osm2pgsql -H tm-sr -U postgres -W -d postgis gemeentegrenzen_081118.osm</span></p>
<p><span style="font-family:Courier New;"> osm2pgsql SVN version 0.55-20081118 $Rev: 10464 $</span></p>
<p><span style="font-family:Courier New;"> Password:</span><br />
<span style="font-family:Courier New;"> Using projection SRS 900913 (Spherical Mercator)</span><br />
<span style="font-family:Courier New;"> Setting up table: planet_osm_point</span><br />
<span style="font-family:Courier New;"> Setting up table: planet_osm_line</span><br />
<span style="font-family:Courier New;"> Setting up table: planet_osm_polygon</span><br />
<span style="font-family:Courier New;"> Setting up table: planet_osm_roads</span><br />
<span style="font-family:Courier New;"> Mid: Ram, scale=100</span></p>
<p><span style="font-family:Courier New;"> Reading in file: gemeentegrenzen_081118.osm</span><br />
<span style="font-family:Courier New;"> Processing: Node(110k) Way(2k) Relation(0k)</span><br />
<span style="font-family:Courier New;"> Node stats: total(110573), max(312315964)</span><br />
<span style="font-family:Courier New;"> Way stats: total(2579), max(28446793)</span><br />
<span style="font-family:Courier New;"> Relation stats: total(690), max(51805)</span></p>
<p><span style="font-family:Courier New;"> Writing way(0k)</span></p>
<p><span style="font-family:Courier New;"> </span>Te zien is dat osm2pgsql vier tabellen aanmaakt (als deze al bestaan dan worden ze default leeggemaakt, let op dus!).<br />
We maken ons even niet druk om spatial indexes en bekijken het resultaat:</p>
<p><a href="http://docs.google.com/File?id=dfqbqmk2_69mm8cgxcx_b"><img class="alignnone" src="http://docs.google.com/File?id=dfqbqmk2_69mm8cgxcx_b" alt="" width="725" height="713" /></a></p>
<p><img src="/DOCUME%7E1/martijne/LOCALS%7E1/Temp/moz-screenshot-11.jpg" alt="" /></p>
<div id="jj_o" style="text-align:left;padding:1em 0;"><a href="http://docs.google.com/File?id=dfqbqmk2_69mm8cgxcx_b"></a></p>
<h2>Naschrift</h2>
<p>Op de site van Cloudmade zijn ook ready-made shapefiles beschikbaar per land. In dit pakket zit ook een administrative shapefile, maar deze is niet goed:</p>
<p><a href="http://oegeo.files.wordpress.com/2008/11/mwsnap-2008-11-18-14_03_39.png"><img class="alignnone size-full wp-image-53" title="mwsnap-2008-11-18-14_03_39" src="http://oegeo.files.wordpress.com/2008/11/mwsnap-2008-11-18-14_03_39.png?w=450&#038;h=365" alt="mwsnap-2008-11-18-14_03_39" width="450" height="365" /></a></p>
<p>Deze wat langere weg verdient dus nog steeds de voorkeur!<br />
Overigens zijn de Nederlandse OSM-ers (waaronder ondergetekende) ook bezig met het invoegen van andere officiële en niet-officiële indelingen in de database. Denk aan COROP-gebieden, wijken en buurten, EGG-gebieden, politieregio&#8217;s, postcodegebieden en bebouwdekomgrenzen.</p></div>
<p><span style="color:#888888;"><br />
</span></p>
  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/oegeo.wordpress.com/51/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/oegeo.wordpress.com/51/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/oegeo.wordpress.com/51/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/oegeo.wordpress.com/51/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/oegeo.wordpress.com/51/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/oegeo.wordpress.com/51/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/oegeo.wordpress.com/51/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/oegeo.wordpress.com/51/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/oegeo.wordpress.com/51/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/oegeo.wordpress.com/51/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=oegeo.wordpress.com&blog=3077892&post=51&subd=oegeo&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://oegeo.wordpress.com/2008/11/18/gemeentegrenzen-uit-openstreetmap/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/e82ea3ff4c122fabcab154dcdb1ed494?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">rhodes</media:title>
		</media:content>

		<media:content url="http://docs.google.com/File?id=dfqbqmk2_69mm8cgxcx_b" medium="image" />

		<media:content url="/DOCUME%7E1/martijne/LOCALS%7E1/Temp/moz-screenshot-11.jpg" medium="image" />

		<media:content url="http://oegeo.files.wordpress.com/2008/11/mwsnap-2008-11-18-14_03_39.png" medium="image">
			<media:title type="html">mwsnap-2008-11-18-14_03_39</media:title>
		</media:content>
	</item>
		<item>
		<title>Note To Self: The One And Only RD Projection String</title>
		<link>http://oegeo.wordpress.com/2008/05/20/note-to-self-the-one-and-only-rd-projection-string/</link>
		<comments>http://oegeo.wordpress.com/2008/05/20/note-to-self-the-one-and-only-rd-projection-string/#comments</comments>
		<pubDate>Tue, 20 May 2008 14:29:19 +0000</pubDate>
		<dc:creator>Martijn van Exel</dc:creator>
				<category><![CDATA[geodata]]></category>
		<category><![CDATA[mapping]]></category>
		<category><![CDATA[28992 rd]]></category>
		<category><![CDATA[datumshift]]></category>
		<category><![CDATA[dutch]]></category>
		<category><![CDATA[epsg]]></category>
		<category><![CDATA[mapserver]]></category>
		<category><![CDATA[projection]]></category>
		<category><![CDATA[rijksdriehoekstelsel]]></category>
		<category><![CDATA[wgs84]]></category>

		<guid isPermaLink="false">http://oegeo.wordpress.com/?p=45</guid>
		<description><![CDATA[EPSG:28992, or the Dutch double stereographic RD (RijksDriehoekstelsel) projection, is quite often incompletely or just plain badly defined.
My version of MapServer for Windows (2.2.6 from september last year) states
+proj=stere +lat_0=52.15616055555555 +lon_0=5.38763888888889 +k=0.999908 +x_0=155000 +y_0=463000 +ellps=bessel +units=m +no_defs  no_defs &#60;&#62;
Which yields the following result when a native 28992 dataset is projected onto a Microsoft Virtual Earth [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=oegeo.wordpress.com&blog=3077892&post=45&subd=oegeo&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p>EPSG:28992, or the Dutch double stereographic RD (RijksDriehoekstelsel) projection, is quite often incompletely or just plain badly defined.</p>
<p>My version of MapServer for Windows (2.2.6 from september last year) states</p>
<pre>+proj=stere +lat_0=52.15616055555555 +lon_0=5.38763888888889 +k=0.999908 +x_0=155000 +y_0=463000 +ellps=bessel +units=m +no_defs  no_defs &lt;&gt;</pre>
<p>Which yields the following result when a native 28992 dataset is projected onto a Microsoft Virtual Earth (EPSG:900913 or EPSG:3785 <a href="http://www.iter.dk/post/2008/05/SphericalWeb-Mercator-EPSG-code-3785.aspx">as it is now called</a>):</p>
<p><img style="border:0 none;margin:4px;" src="http://www.mvexel.dds.nl/schaaltreinen/ZZ1A12DF18.jpg" alt="" width="500" height="316" /></p>
<p>Note that the buildings layer on top of the VE aerial photos is shifted to the north, by about 100 metres.</p>
<p>Spatialreference.org has a <a href="http://spatialreference.org/ref/epsg/28992/">slightly different take </a>on EPSG:28992:</p>
<pre>+proj=sterea +lat_0=52.15616055555555 +lon_0=5.38763888888889 +k=0.9999079 +x_0=155000 +y_0=463000 +ellps=bessel +units=m +no_defs</pre>
<p>which yields an almost identical result:</p>
<p><img src="http://www.mvexel.dds.nl/schaaltreinen/ZZ20028195.jpg" alt="" /></p>
<p>These projection strings are both incomplete, because they do not take into account the datum shift that is used in the RD projection and can be approximated using the &#8216;towgs84&#8242; parameter in PROJ4.</p>
<p>The one and only right PROJ4 projection string is</p>
<pre>+proj=sterea +lat_0=52.15616055555555 +lon_0=5.38763888888889 +k=0.999908 +x_0=155000 +y_0=463000 +ellps=bessel +units=m +towgs84=565.2369,50.0087,465.658,-0.406857330322398,0.350732676542563,-1.8703473836068,4.0812 +no_defs &lt;&gt;</pre>
<p><img style="border:0 none;margin:4px;" src="http://www.mvexel.dds.nl/schaaltreinen/ZZ1C7E5B9E.jpg" alt="" width="500" height="313" /></p>
<p>Links</p>
<ul>
<li><a href="http://proj.maptools.org/gen_parms.html">Explanation</a> of the towgs84 parameter on this page</li>
<li>Some <a href="http://lists.maptools.org/pipermail/proj/2008-March/003324.html">discussion</a> about the RD datum shift on the PROJ.4 mailing list</li>
<li>A non-technical <a href="http://www.xs4all.nl/~keesvdm/boot/gpsdatum.htm">discourse</a> on datum shift and coordinate systems in Dutch.</li>
<li>The Dutch national survey has a <a href="https://rdinfo.kadaster.nl/">website</a> on the RD coordinate system.</li>
<li>There is also a <a href="http://www.rdnap.nl/">very Web 0.5 site</a> on the RD system and NAP (Normaal Amsterdams Peil, the Dutch standard sea water level which can be <a href="http://en.wikipedia.org/wiki/Normaal_Amsterdams_Peil">observed</a> in the Amsterdam City Hall)</li>
</ul>
<img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/oegeo.wordpress.com/45/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/oegeo.wordpress.com/45/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/oegeo.wordpress.com/45/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/oegeo.wordpress.com/45/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/oegeo.wordpress.com/45/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/oegeo.wordpress.com/45/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/oegeo.wordpress.com/45/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/oegeo.wordpress.com/45/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/oegeo.wordpress.com/45/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/oegeo.wordpress.com/45/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/oegeo.wordpress.com/45/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/oegeo.wordpress.com/45/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=oegeo.wordpress.com&blog=3077892&post=45&subd=oegeo&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://oegeo.wordpress.com/2008/05/20/note-to-self-the-one-and-only-rd-projection-string/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/e82ea3ff4c122fabcab154dcdb1ed494?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">rhodes</media:title>
		</media:content>

		<media:content url="http://www.mvexel.dds.nl/schaaltreinen/ZZ1A12DF18.jpg" medium="image" />

		<media:content url="http://www.mvexel.dds.nl/schaaltreinen/ZZ20028195.jpg" medium="image" />

		<media:content url="http://www.mvexel.dds.nl/schaaltreinen/ZZ1C7E5B9E.jpg" medium="image" />
	</item>
		<item>
		<title>The 5 minute guide to setting up GeoServer and GeoWebCache on Windows</title>
		<link>http://oegeo.wordpress.com/2008/05/20/the-5-minute-guide-to-setting-up-geoserver-and-geowebcache-on-windows/</link>
		<comments>http://oegeo.wordpress.com/2008/05/20/the-5-minute-guide-to-setting-up-geoserver-and-geowebcache-on-windows/#comments</comments>
		<pubDate>Tue, 20 May 2008 13:30:32 +0000</pubDate>
		<dc:creator>Martijn van Exel</dc:creator>
				<category><![CDATA[mapping]]></category>
		<category><![CDATA[opensource]]></category>
		<category><![CDATA[openstandards]]></category>
		<category><![CDATA[virtualearth]]></category>
		<category><![CDATA[web]]></category>
		<category><![CDATA[geoserver]]></category>
		<category><![CDATA[tilecache]]></category>
		<category><![CDATA[webmapping]]></category>
		<category><![CDATA[wfs]]></category>
		<category><![CDATA[wms]]></category>

		<guid isPermaLink="false">http://oegeo.wordpress.com/?p=44</guid>
		<description><![CDATA[I came across yet another tile caching implementation, GeoWebCache, through this article on the Google Open Source blog. It integrates nicely with the Geoserver OGC server, which should make it very easy to set up on a Windows box. So let&#8217;s try that.First, we need to get the Java SDK (not the runtime environment) from [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=oegeo.wordpress.com&blog=3077892&post=44&subd=oegeo&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p>I came across yet another tile caching implementation, <a href="http://geowebcache.org/trac">GeoWebCache</a>, through <a href="http://google-opensource.blogspot.com/2008/05/accelerate-your-maps-with-geowebcache.html">this</a> article on the Google Open Source blog. It integrates nicely with the <a href="http://geoserver.org/display/GEOS/Welcome">Geoserver</a> OGC server, which should make it very easy to set up on a Windows box. So let&#8217;s try that.<span id="more-44"></span>First, we need to get the Java SDK (not the runtime environment) from Sun; Geoserver needs it. An older 1.4.x version will do, but if you start a-fresh, you might as well get the Java 6 SDK from <a href="http://java.sun.com/javase/downloads/index.jsp">here</a>. Download and install it.</p>
<p>Then we grab a fresh copy of Geoserver from <a href="http://geoserver.org/display/GEOS/Stable">their web site</a>. (<a href="http://downloads.sourceforge.net/geoserver/geoserver-1.6.3.exe">direct download link</a> for 1.6.3)</p>
<p><span style="color:#ff0000;">UPDATE</span> <a href="http://blog.geoserver.org/2008/05/21/geoserver-164-released/">1.6.4 is out</a>, as Mike Pumphrey pointed out already in the comments section. Improved support for the GeoWebCache plug-in is among the new features. Read on for the implications for this guide.</p>
<p>While you&#8217;re there, download the <a href="http://downloads.sourceforge.net/geoserver/geoserver-1.6.0-gwc-plugin.zip?modtime=1209662579&amp;big_mirror=0">GeoWebCachce extension</a> as well.</p>
<p>Unzip the GeoWebCache extension, which comes as a zip file.</p>
<p>Install the Geoserver package. It will try and locate the Java SDK and notify you about it. I don&#8217;t think installing in the default location is such a nice solution, so I changed this to c:\geoserver\ instead. The data directory then defaults to c:\geoserver\data_dir which I left like that.</p>
<p><img style="border:0 none;margin:4px;" src="http://www.mvexel.dds.nl/schaaltreinen/ZZ4A8A109D.jpg" alt="" width="600" height="106" /></p>
<p>When Geoserver is installed, we need to add all the JAR files that comprise the GeoWebCache extension to C:\geoserver\webapps\geoserver\WEB-INF\lib.</p>
<p><span style="color:#ff0000;">UPDATE The following config file tweak is obsolete as of Geoserver 1.6.4. Only if you want to stick with 1.6.3 or earlier, the following paragraph applies:</span></p>
<p>We need to make a small manual change to one of the Geoserver config files, web.xml in C:\geoserver\webapps\geoserver\WEB-INF\web.xml. This is described in the extension README:</p>
<p>find</p>
<pre>
&lt;mime-mapping&gt;</pre>
<p>BEFORE, add</p>
<pre>&lt;servlet-mapping&gt;
&lt;servlet-name&gt;dispatcher&lt;/servlet-name&gt;
&lt;url-pattern&gt;/gwc/*&lt;/url-pattern&gt;
&lt;/servlet-mapping&gt;</pre>
<p>Before we start Geoserver, we are going to change the default admin credentials just to be on the safe side. To do this, we open C:\geoserver\data_dir\security\users.properties and change &#8216;admin=geoserver&#8217; to &#8216;admin=[yourpassword]&#8216;.</p>
<p>Now we&#8217;re ready to start Geoserver and try to call the tile cache. We&#8217;re not going to add our own layers just yet; Geoserver comes with some simple sample data. To stret Geoserver, use the Start Menu entry or call</p>
<pre>C:\geoserver\bin\startup.bat</pre>
<p>from the Run box or a command line.</p>
<p><img class="alignright" style="border:0 none;float:right;margin:4px;" src="http://www.mvexel.dds.nl/schaaltreinen/ZZ5706A769.jpg" alt="" width="600" height="303" /></p>
<p>This will open a Java command line which should remain opened. The output shown could also be useful when you start hacking the Geoserver configuration. Your Windows firewall could complain about Java, in which case you could &#8216;Unblock&#8217; Java to allow http access from outside your box.</p>
<p><img style="border:0 none;margin:4px;" src="http://www.mvexel.dds.nl/schaaltreinen/ZZ52F8AAC1.jpg" alt="" width="434" height="312" /></p>
<p>To confirm that it all works, type</p>
<pre>http://localhost:8080/geoserver/</pre>
<p>in your browser, which should yield your Geoserver Admin home page (no maps there).</p>
<p><img style="border:0 none;margin:4px;" src="http://www.mvexel.dds.nl/schaaltreinen/ZZ2F4B1676.jpg" alt="" width="600" height="377" /></p>
<p>Now type</p>
<pre>http://localhost:8080/geoserver/gwc/service/ve?layers=topp:states&amp;quadkey=02<img class="alignright" style="border:1px solid black;float:right;margin:4px;" src="http://www.mvexel.dds.nl/schaaltreinen/ZZ694C95E8.jpg" alt="" width="256" height="256" /></pre>
<p>which should yield a Microsoft Virtual Earth tile schema compliant tile:</p>
<p>The last thing I want to do right now is to integrate this into a Microsoft Virtual Earth map client. This is <a href="http://geowebcache.org/trac/wiki/virtual_earth">quite well described</a> in the GWC documentation and is dead simple anyway. Basically, you take a barebones VE map client template and add a VETileSourceSpecification:</p>
<p>var tileSourceSpec3 = new VETileSourceSpecification(&#8220;GeoserverSample&#8221;, &#8220;http://martijne:8080/geoserver/gwc/service/ve?quadkey=%4&amp;format=image/png&amp;layers=topp:states&#8221;);<br />
tileSourceSpec3.NumServers = 1;<br />
tileSourceSpec3.MinZoomLevel = 1;<br />
tileSourceSpec3.MaxZoomLevel = 16;<br />
tileSourceSpec3.Opacity = 0.3;<br />
tileSourceSpec3.ZIndex = 100;<br />
vemap.AddTileLayer(tileSourceSpec3, true);</p>
<p>You only need to change the server part of the URL in the first line to your computer name (or localhost if you&#8217;re only going to access the sample from your own machine).</p>
<p><img style="border:0 none;margin:4px;" src="http://www.mvexel.dds.nl/schaaltreinen/ZZ35D60B6F.jpg" alt="" width="600" height="377" /></p>
<p><strong>Next steps</strong></p>
<p>The major disadvantage of Geoserver for me is that it cannot do cascading WMS, although cascading WFS was recently implemented. So I&#8217;d like to set up GeoWebCache together with UMN MapServer to be able to do this.</p>
<p>When that&#8217;s done, I&#8217;d like to do some performance benchmarking and compare it to the Metacarta TileCache solution.</p>
<img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/oegeo.wordpress.com/44/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/oegeo.wordpress.com/44/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/oegeo.wordpress.com/44/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/oegeo.wordpress.com/44/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/oegeo.wordpress.com/44/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/oegeo.wordpress.com/44/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/oegeo.wordpress.com/44/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/oegeo.wordpress.com/44/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/oegeo.wordpress.com/44/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/oegeo.wordpress.com/44/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/oegeo.wordpress.com/44/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/oegeo.wordpress.com/44/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=oegeo.wordpress.com&blog=3077892&post=44&subd=oegeo&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://oegeo.wordpress.com/2008/05/20/the-5-minute-guide-to-setting-up-geoserver-and-geowebcache-on-windows/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/e82ea3ff4c122fabcab154dcdb1ed494?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">rhodes</media:title>
		</media:content>

		<media:content url="http://www.mvexel.dds.nl/schaaltreinen/ZZ4A8A109D.jpg" medium="image" />

		<media:content url="http://www.mvexel.dds.nl/schaaltreinen/ZZ5706A769.jpg" medium="image" />

		<media:content url="http://www.mvexel.dds.nl/schaaltreinen/ZZ52F8AAC1.jpg" medium="image" />

		<media:content url="http://www.mvexel.dds.nl/schaaltreinen/ZZ2F4B1676.jpg" medium="image" />

		<media:content url="http://www.mvexel.dds.nl/schaaltreinen/ZZ694C95E8.jpg" medium="image" />

		<media:content url="http://www.mvexel.dds.nl/schaaltreinen/ZZ35D60B6F.jpg" medium="image" />
	</item>
		<item>
		<title>The End Of Flickr?</title>
		<link>http://oegeo.wordpress.com/2008/05/16/the-end-of-flickr/</link>
		<comments>http://oegeo.wordpress.com/2008/05/16/the-end-of-flickr/#comments</comments>
		<pubDate>Fri, 16 May 2008 07:19:22 +0000</pubDate>
		<dc:creator>Martijn van Exel</dc:creator>
				<category><![CDATA[web]]></category>
		<category><![CDATA[flickr]]></category>
		<category><![CDATA[geographicweb]]></category>
		<category><![CDATA[georeferencing]]></category>
		<category><![CDATA[geoweb]]></category>
		<category><![CDATA[googlemaps]]></category>
		<category><![CDATA[mashup]]></category>
		<category><![CDATA[panoramio]]></category>

		<guid isPermaLink="false">http://oegeo.wordpress.com/?p=43</guid>
		<description><![CDATA[Well, certainly not today, and certainly not soon, but the introduction of georeferenced photos on Google Maps this week will certainly rock the online photo communities&#8217; boat. Sure, there are tons of websites overlaying flickr photos on top of a web map, and most are richer than what Google Maps currently offers. Take for example [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=oegeo.wordpress.com&blog=3077892&post=43&subd=oegeo&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p>Well, certainly not today, and certainly not soon, but the introduction of georeferenced photos on Google Maps this week will certainly rock the online photo communities&#8217; boat. Sure, there are tons of websites overlaying flickr photos on top of a web map, and most are richer than what Google Maps currently offers. <img class="alignright" style="border:0 none;float:right;margin:4px;" src="http://www.mvexel.dds.nl/ZZ6FEA3FCC.jpg" alt="loc.alize.us" width="396" height="218" />Take for example <a href="http://loc.alize.us/">loc.alize.us</a>, a flickr/Google Maps mashup that has been around for a while. It offers tag filtering, user filtering, and a very nice and clean interface. To top it off, it offers a bookmarklet that integrates georeferencing into flickr.com very nicely. I still use it, although Yahoo Maps, the mapper of choice for Flickr&#8217;s mapping needs, of course, has had adequate coverage of the Netherlands for some time now.</p>
<p>But still.. It&#8217;s not <strong>directly ON</strong> Google Maps, which is – at least in Western Europe at this time – the ubiquitous web map. The general public will rarely discover any layer of the geographic web beyond Google Maps and Google Earth. &#8216;So, if I want my photos to show up on the web, I need to be on Panoramio.&#8217; – Panoramio being the photo sharing community that has been showing off on Google Earth for as long as I can remember, and as from now on Google Maps as well. Panoramio was acquired by Google in May, 2007.</p>
<p>No, I don&#8217;t expect a mass flux of flickr users towards Panoramio. The latter will see a good number of new members though, and if Google remains as picky about which photos to display within Maps – I&#8217;m still confused as to where this leaves Picasa; I guess the user base is not large enough – Panoramio might become a force to be reckoned with in the online photo community universe.</p>
<img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/oegeo.wordpress.com/43/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/oegeo.wordpress.com/43/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/oegeo.wordpress.com/43/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/oegeo.wordpress.com/43/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/oegeo.wordpress.com/43/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/oegeo.wordpress.com/43/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/oegeo.wordpress.com/43/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/oegeo.wordpress.com/43/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/oegeo.wordpress.com/43/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/oegeo.wordpress.com/43/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/oegeo.wordpress.com/43/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/oegeo.wordpress.com/43/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=oegeo.wordpress.com&blog=3077892&post=43&subd=oegeo&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://oegeo.wordpress.com/2008/05/16/the-end-of-flickr/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/e82ea3ff4c122fabcab154dcdb1ed494?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">rhodes</media:title>
		</media:content>

		<media:content url="http://www.mvexel.dds.nl/ZZ6FEA3FCC.jpg" medium="image">
			<media:title type="html">loc.alize.us</media:title>
		</media:content>
	</item>
		<item>
		<title>OpenStreetMap Mapping Party &#8216;Saendelft&#8217;</title>
		<link>http://oegeo.wordpress.com/2008/05/09/openstreetmap-mapping-party-saendelft/</link>
		<comments>http://oegeo.wordpress.com/2008/05/09/openstreetmap-mapping-party-saendelft/#comments</comments>
		<pubDate>Fri, 09 May 2008 14:24:28 +0000</pubDate>
		<dc:creator>Martijn van Exel</dc:creator>
				<category><![CDATA[mapping]]></category>
		<category><![CDATA[openstreetmap]]></category>
		<category><![CDATA[assendelft]]></category>
		<category><![CDATA[geodata]]></category>
		<category><![CDATA[gps]]></category>
		<category><![CDATA[krommenie]]></category>
		<category><![CDATA[netherlands]]></category>
		<category><![CDATA[noordholland]]></category>
		<category><![CDATA[opencontent]]></category>
		<category><![CDATA[webmapping]]></category>

		<guid isPermaLink="false">http://oegeo.wordpress.com/?p=42</guid>
		<description><![CDATA[The Dutch like to live in new, modern homes with a garden front and back. This leaves the country with many a suburban jungle like the one depicted below. This also means steady jobs for surveyors with the commercial mapping companies – and many a free weekend spent mapping for a Dutch OpenStreetMap contributor.

So, although [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=oegeo.wordpress.com&blog=3077892&post=42&subd=oegeo&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p>The Dutch like to live in new, modern homes with a garden front and back. This leaves the country with many a suburban jungle like the one depicted below. This also means steady jobs for surveyors with the commercial mapping companies – and many a free weekend spent mapping for a <a href="http://www.openstreetmap.nl/">Dutch</a> <a href="http://www.openstreetmap.org/">OpenStreetMap</a> contributor.</p>
<p><a title="leidsche rijn 1.jpg by rhodes, on Flickr" href="http://www.flickr.com/photos/rhodes/2060229717/"><img src="http://farm3.static.flickr.com/2367/2060229717_3dc6a6f4f1.jpg" alt="leidsche rijn 1.jpg" width="500" height="333" /><span id="more-42"></span></a></p>
<p>So, although the Netherlands got a huge boost in OpenStreetMap when <a href="http://www.and.com/">AND</a> <a href="http://www.openstreetmap.nl/archives/31-AND-doneert-Nederland-aan-OpenStreetMap.html">donated</a> its dataset for the Netherlands to the community last year, we need to continue our efforts to keep the free world map up to date. And next Saturday is as good as any, so we are heading towards the &#8216;<a href="http://www.flickr.com/search/?q=saendelft&amp;w=all">Saendelft</a>&#8216; suburbia project just north of Amsterdam.</p>
<p>Jochen Topfs maps <a href="http://geo.topf.org/comparison/index.html?mt0=googlemap&amp;mt1=mapnik&amp;lon=4.7574663&amp;lat=52.487014&amp;z=14">comparison web application</a> shows that we are lagging behind the Big G here:</p>
<p><img class="alignleft" style="border:0 none;float:left;margin:4px;" src="http://www.mvexel.dds.nl/ZZ7A917157.png" alt="geo.topf.org" width="600" height="298" /></p>
<p>If you&#8217;d like to join, find all relevant info on the <a href="http://wiki.openstreetmap.org/index.php/Netherlands_Mapping_Parties_2008#MiniMapPinksterParty:_Saendelft">Wiki</a> (in Dutch). If you just want to see results, check OpenStreetMap in about a week&#8217;s time.</p>
<img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/oegeo.wordpress.com/42/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/oegeo.wordpress.com/42/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/oegeo.wordpress.com/42/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/oegeo.wordpress.com/42/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/oegeo.wordpress.com/42/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/oegeo.wordpress.com/42/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/oegeo.wordpress.com/42/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/oegeo.wordpress.com/42/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/oegeo.wordpress.com/42/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/oegeo.wordpress.com/42/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/oegeo.wordpress.com/42/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/oegeo.wordpress.com/42/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=oegeo.wordpress.com&blog=3077892&post=42&subd=oegeo&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://oegeo.wordpress.com/2008/05/09/openstreetmap-mapping-party-saendelft/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/e82ea3ff4c122fabcab154dcdb1ed494?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">rhodes</media:title>
		</media:content>

		<media:content url="http://farm3.static.flickr.com/2367/2060229717_3dc6a6f4f1.jpg" medium="image">
			<media:title type="html">leidsche rijn 1.jpg</media:title>
		</media:content>

		<media:content url="http://www.mvexel.dds.nl/ZZ7A917157.png" medium="image">
			<media:title type="html">geo.topf.org</media:title>
		</media:content>
	</item>
		<item>
		<title>Virtual Earth Custom Tile Layers in 3D mode &#8212; not anymore.</title>
		<link>http://oegeo.wordpress.com/2008/05/08/virtual-earth-custom-tile-layers-in-3d-mode-not-anymore/</link>
		<comments>http://oegeo.wordpress.com/2008/05/08/virtual-earth-custom-tile-layers-in-3d-mode-not-anymore/#comments</comments>
		<pubDate>Thu, 08 May 2008 15:28:14 +0000</pubDate>
		<dc:creator>Martijn van Exel</dc:creator>
				<category><![CDATA[mapping]]></category>
		<category><![CDATA[microsoft]]></category>
		<category><![CDATA[virtualearth]]></category>
		<category><![CDATA[web]]></category>
		<category><![CDATA[webdevelopment]]></category>
		<category><![CDATA[api]]></category>
		<category><![CDATA[javascript]]></category>
		<category><![CDATA[tilecache]]></category>
		<category><![CDATA[webmapping]]></category>

		<guid isPermaLink="false">http://oegeo.wordpress.com/?p=41</guid>
		<description><![CDATA[The Microsoft Virtual Earth API lets you add your own tile layer to your VE Map. My colleague StevenO wrote about preparing a suitable TileCache setup. This used to work in both 2D and 3D map modes. Recently, Microsoft introduced the latest version of the API, 6.1, along with a major data upgrade and a [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=oegeo.wordpress.com&blog=3077892&post=41&subd=oegeo&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p>The Microsoft Virtual Earth API lets you add your own tile layer to your VE Map. My colleague StevenO <a href="http://blog.minst.net/2008/02/22/using-tilecache-to-connect-virtualearth-and-arcims/">wrote about preparing a suitable TileCache setup. </a>This used to work in both 2D and 3D map modes. Recently, Microsoft introduced the <a href="http://msdn.microsoft.com/en-us/library/bb429619.aspx">latest version</a> of the API, 6.1, along with a major data upgrade and a new version of the 3D control. A step forward in many respects, but the tile layers will not show up in 3D mode anymore. Let&#8217;s investigate. <span style="color:#ff0000;">UPDATED 080508 11pm, see below</span></p>
<p><span id="more-41"></span></p>
<p>Let me start out by saying that I did not get the tile layers to display again in the new 3D control, so my preliminary conclusion is that this is a bug (read: feature) in the new VE version. But let me at least reiterate what I&#8217;ve tried. I&#8217;m also touching on some more general VE API topics that crossed my path.</p>
<p>First, I decided to define as many of the optional parameters for the VETileSourceSpecification as possible. Almost all are optional; only TileSource and ID are required and set in the constructor. I defined the <a href="http://msdn.microsoft.com/en-us/library/bb429647.aspx">Bounds</a> property, first as a simple <a href="http://msdn.microsoft.com/en-us/library/bb412411.aspx">VELatLongRectangle</a> (supplying only the top left and bottom right coordinates), that made no difference whatsoever.</p>
<p style="padding-left:30px;"><em>As a sidenote: having a GIS background, I can&#8217;t really get used to the way a bounding box, or a simple VELatLong point for that matter, are defined. I am used to defining bounding boxes by supplying their bottom-left and top-right points, but the VE API turns that all around and has you supply the top-left and bottom-right points. Those points, in turn, are defined as lat-long instead of long-lat. Does MS do this just to annoy us, or what?</em></p>
<p>The VELatLongRectangle can also be defined using four points, which is relevant for 3D mode, as you might not be looking straight down and the bounding box of your viewport might not be a rectangle at all. So I tried to define the full rectangle for the Bounds property as well, with no discernible effect:</p>
<pre style="padding-left:30px;">var bounds = [new VELatLongRectangle(new VELatLong(57,3),new VELatLong(50,7),new VELatLong(57,7),new VELatLong(50,3))];</pre>
<p><strong>Zoom Levels</strong></p>
<p>Next up is the MinZoom and MaxZoom properties. When not set, the tile layer will just show up in every zoom level, which is considered to be a possible performance issue. I don&#8217;t really see why, as the tiles will be generated by a tile caching mechanism in any decent implementation. I can see that you want to restrict the visibility of your tile layer to certain zoom levels for aesthetic reasons, however.</p>
<p style="padding-left:30px;"><em>In 3D mode, zooming is continuous, so I was wondering what the <a href="http://msdn.microsoft.com/en-us/library/bb412455.aspx">GetZoomLevel()</a> method would return. The SDK documentation states: &#8216;This method may not give the same value in 3D mode as in 2D mode.&#8217;, without elaborating. It must have something to do with the viewport bounding box in 3D being determined by three variables (heading, pitch and distance to the earth) instead of just one in 2D (just the distance). In any case, you can&#8217;t expect the zoom level to remain constant when switching between 2D and 3D modes. It does however provide you with an indication of scale to base layer visibility on. Also note that in 3D mode, the GetZoomLevel() returns a single value, whereas the control internally seems to use a more dynamic approach to zoom levels. Notice that when you tilt your view, tiles that are closer to the &#8216;camera&#8217; location are rendered with more detail than tiles that are nearer the horizon.</em></p>
<p>To get back on track; still no luck displaying our tile layers in 3D mode. Let&#8217;s see what options are left.  There are a couple more properties in the VETileSourceSpecification: NumServers, Opacity and ZIndex. Experimenting with those did not yield any results though. ZIndex looked somewhat promising, but whereas changing values does affect layer ordering in 2D, in 3D we still see no custom layers.</p>
<p><strong>API versions</strong></p>
<p>The last thing I tried was reverting to an older API version. The test page I was using only worked with versions 5 and 6, although older versions down to 3 <a href="http://blogs.msdn.com/virtualearth/archive/2008/03/03/deprecating-older-versions-of-virtual-earth.aspx">are still supported</a>. IIRC, the custom tile layer functionality was implemented in version 4, but there could be other backward compatibility issues that I don&#8217;t want to investigate right now. Anyway, switching to v6 and v5 did not yield any results in what I was actually trying to achieve: to get the custom tile layers to show up.</p>
<p>I asked <a href="http://johanneskebeck.spaces.live.com/default.aspx">Johannes Kebeck</a> about this issue, following the VE Technical Briefing that was held this morning.  For those just starting in VE API development, as well as for developers already somewhat experienced, sessions with Johannes are a really good introduction. Keep an eye on his blog or the MS Events site for future events. If and when Johannes gets back to me, I&#8217;ll update this post.</p>
<p><span style="color:#ff0000;">UPDATE</span></p>
<p>After having looked into the issue with Johannes Kebeck, we pinpointed the problem: the tile store was served up from a nonstandard port, 8080. Microsoft confirms that fetching tiles from a port other than 80 is disabled in the 3D control, for security reasons. We chose the nonstandard port in order to be able to serve both the VE web application and the tilecache from our VE appliance. Because TileCache prefers an Apache environment and VE an IIS server environment, different port numbers seemed the easy way to accomplish this.</p>
<img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/oegeo.wordpress.com/41/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/oegeo.wordpress.com/41/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/oegeo.wordpress.com/41/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/oegeo.wordpress.com/41/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/oegeo.wordpress.com/41/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/oegeo.wordpress.com/41/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/oegeo.wordpress.com/41/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/oegeo.wordpress.com/41/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/oegeo.wordpress.com/41/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/oegeo.wordpress.com/41/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/oegeo.wordpress.com/41/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/oegeo.wordpress.com/41/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=oegeo.wordpress.com&blog=3077892&post=41&subd=oegeo&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://oegeo.wordpress.com/2008/05/08/virtual-earth-custom-tile-layers-in-3d-mode-not-anymore/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/e82ea3ff4c122fabcab154dcdb1ed494?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">rhodes</media:title>
		</media:content>
	</item>
		<item>
		<title>Importing the GML 3.2.1 namespace into .NET</title>
		<link>http://oegeo.wordpress.com/2008/04/10/importing-the-gml-321-namespace-into-net/</link>
		<comments>http://oegeo.wordpress.com/2008/04/10/importing-the-gml-321-namespace-into-net/#comments</comments>
		<pubDate>Thu, 10 Apr 2008 16:24:08 +0000</pubDate>
		<dc:creator>Martijn van Exel</dc:creator>
				<category><![CDATA[.net]]></category>
		<category><![CDATA[openstandards]]></category>
		<category><![CDATA[gml ogc .net xsd xsd.exe serialization]]></category>

		<guid isPermaLink="false">http://oegeo.wordpress.com/?p=38</guid>
		<description><![CDATA[There comes a time for every geo-ict professional to have his first encounter with GML. Most of the time, this is not a pretty sight. Until now, I have managed to steer clear from GML when it comes to actually incorporating it into my own software. But today, this day dawned.
So here&#8217;s what I&#8217;m going [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=oegeo.wordpress.com&blog=3077892&post=38&subd=oegeo&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p>There comes a time for every geo-ict professional to have his first encounter with GML. Most of the time, this is not a pretty sight. Until now, I have managed to steer clear from GML when it comes to actually incorporating it into my own software. But today, this day dawned.</p>
<p><span id="more-38"></span>So here&#8217;s what I&#8217;m going to do.  I&#8217;m going to generate .NET classes for the GML 3.2.1 schema. When that&#8217;s done, I&#8217;ll try and actually read a GML 3.2.1 document and do something remotely useful and relevant with it. The second bit will be for a followup post, most probably.</p>
<p>To get started, we&#8217;re going to get the combined schemas in one zip file from <a href="http://schemas.opengis.net/SCHEMAS_OPENGIS_NET.zip">http://schemas.opengis.net/SCHEMAS_OPENGIS_NET.zip</a></p>
<p>Then, we unzip those into a directory, say c:\ogc\</p>
<p>We then navigate to C:\ogc\gml\3.2.1 and open a VS2008 command prompt there.</p>
<p>Now we are all set to startto generate .NET classes using <a href="http://msdn2.microsoft.com/en-us/library/x6c1kb0s.aspx">xsd.exe</a></p>
<p>First try is</p>
<pre>xsd.exe gml.xsd /classes</pre>
<p>This generates a whole bunch of error messages</p>
<p><a href="http://oegeo.files.wordpress.com/2008/04/mwsnap-2008-04-10-14_24_30.png"><img class="alignleft size-medium wp-image-39" src="http://oegeo.files.wordpress.com/2008/04/mwsnap-2008-04-10-14_24_30.png?w=400&#038;h=202" alt="Screenshot of VS2008 command line box" width="400" height="202" /></a></p>
<p>Some research into the limitations of xsd.exe reveals that the schemaLocation attribute in an import element is ignored by xsd.exe.</p>
<p>from <a href="http://msdn2.microsoft.com/en-us/library/ew6ts9yw.aspx">http://msdn2.microsoft.com/en-us/library/ew6ts9yw.aspx</a>:</p>
<blockquote><p>For the &lt;import&gt; element, the Xsd.exe tool ignores the schemaLocation attribute, expecting imported files instead as additional command-line arguments.</p></blockquote>
<p>from <a href="http://msdn2.microsoft.com/en-us/library/ms950721.aspx">http://msdn2.microsoft.com/en-us/library/ms950721.aspx</a></p>
<blockquote><p>Q: Why doesn&#8217;t XSD.exe support the schemaLocation attribute on imports and includes?</p>
<p>A: The W3C XML Schema recommendation describes this attribute as a hint, which can be ignored by processors that can use alternate means to locate schemas. XSD.exe only uses schemas that are specified through the command line to convert schema A.xsd, which imports schema B.xsd.</p>
<p>xsd.exe /c A.xsd B.xsd</p></blockquote>
<p>So it turns out we need to specify all schemas referenced using import elements need to be supplied as command line arguments to xsd.exe. That means we need to find all schema files referenced to using import elements in gml.xsd and &#8211; cascadingly &#8211; in all schema files referenced using include elements. This is one hell of a job which took me about an hour of concentrated gazing at XML schemas to complete.</p>
<p>The reward was an xsd.exe command line that actually worked:</p>
<pre>C:\ogc\gml\3.2.1&gt;xsd.exe gml.xsd ..\..\xlink/1.0.0\xlinks.xsd ..\..\iso\19139\20
070417\gmd\gmd.xsd ..\..\iso\19139\20070417\gco\gco.xsd ..\..\iso\19139\20070417
\gss\gss.xsd ..\..\iso\19139\20070417\gts\gts.xsd ..\..\iso\19139\20070417\gsr\g
sr.xsd /classes
Microsoft (R) Xml Schemas/DataTypes support utility
[Microsoft (R) .NET Framework, Version 2.0.50727.1432]
Copyright (C) Microsoft Corporation. All rights reserved.
Writing file 'C:\ogc\gml\3.2.1\gsr.cs'.

C:\ogc\gml\3.2.1&gt;</pre>
<p>The proof of the pudding is in the screenshot:</p>
<p><a href="http://oegeo.files.wordpress.com/2008/04/mwsnap-2008-04-10-16_33_10.png"><img class="alignleft size-medium wp-image-40" src="http://oegeo.files.wordpress.com/2008/04/mwsnap-2008-04-10-16_33_10.png?w=400&#038;h=101" alt="" width="400" height="101" /></a></p>
<p>The result is a gml.cs C#.NET class file that we shoul be able to use in an XmlSerializer. More in a future post.</p>
<img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/oegeo.wordpress.com/38/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/oegeo.wordpress.com/38/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/oegeo.wordpress.com/38/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/oegeo.wordpress.com/38/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/oegeo.wordpress.com/38/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/oegeo.wordpress.com/38/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/oegeo.wordpress.com/38/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/oegeo.wordpress.com/38/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/oegeo.wordpress.com/38/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/oegeo.wordpress.com/38/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/oegeo.wordpress.com/38/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/oegeo.wordpress.com/38/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=oegeo.wordpress.com&blog=3077892&post=38&subd=oegeo&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://oegeo.wordpress.com/2008/04/10/importing-the-gml-321-namespace-into-net/feed/</wfw:commentRss>
		<slash:comments>9</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/e82ea3ff4c122fabcab154dcdb1ed494?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">rhodes</media:title>
		</media:content>

		<media:content url="http://oegeo.files.wordpress.com/2008/04/mwsnap-2008-04-10-14_24_30.png?w=400" medium="image">
			<media:title type="html">Screenshot of VS2008 command line box</media:title>
		</media:content>

		<media:content url="http://oegeo.files.wordpress.com/2008/04/mwsnap-2008-04-10-16_33_10.png?w=400" medium="image" />
	</item>
		<item>
		<title>Benchmarking TileCache, part 1</title>
		<link>http://oegeo.wordpress.com/2008/03/17/benchmarking-tilecache-part-1/</link>
		<comments>http://oegeo.wordpress.com/2008/03/17/benchmarking-tilecache-part-1/#comments</comments>
		<pubDate>Mon, 17 Mar 2008 22:20:35 +0000</pubDate>
		<dc:creator>Martijn van Exel</dc:creator>
				<category><![CDATA[mapping]]></category>
		<category><![CDATA[opensource]]></category>
		<category><![CDATA[web]]></category>
		<category><![CDATA[apache]]></category>
		<category><![CDATA[benchmarking]]></category>
		<category><![CDATA[performance]]></category>
		<category><![CDATA[tilecache]]></category>

		<guid isPermaLink="false">http://oegeo.wordpress.com/?p=30</guid>
		<description><![CDATA[I have been doing some benchmarking in the wake of my TileCache installation &#8216;endeavor&#8217; of last week (part 1 &#8211; part 2). In a series – well, probably two – articles, I will try to provide some insight into the performance of the TileCache – Python – Apache  ensemble.
Let me lay out first how [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=oegeo.wordpress.com&blog=3077892&post=30&subd=oegeo&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p>I have been doing some benchmarking in the wake of my TileCache installation &#8216;endeavor&#8217; of last week (<a href="http://oegeo.wordpress.com/2008/03/08/the-5-minute-guide-to-setting-up-tilecache-on-windows/">part 1</a> &#8211; <a href="http://oegeo.wordpress.com/2008/03/10/tilecache-on-windows-part-2-mod_python/">part 2</a>). In a series – well, probably two – articles, I will try to provide some insight into the performance of the TileCache – Python – Apache  ensemble.<span id="more-30"></span></p>
<p>Let me lay out first how I went about getting the results below. I used <a href="http://httpd.apache.org/docs/2.2/programs/ab.html">ab</a> on my MacBook Pro to generate the HTTP requests. ab – or ApacheBench – is an extremely easy to use benchmarking tool, and don&#8217;t be fooled by the name, it will benchmark your lighttpd / iis  whatever-based server just as happily. I sent the requests to my desktop PC at the office, on which I danced the TileCache / mod_python setup dance I described in earlier posts. The connection was from my home through a VPN tunnel to the office, so it&#8217;s sort of remote – at least physically. I set ab to run for one minute for each session.</p>
<p>I wrote (ahem) a short shell script to do various ab sessions, with the following variables:</p>
<ul>
<li>using CGI or using mod_python</li>
<li> the number of concurrent requests</li>
</ul>
<p>The former is relevant because I want to show how much faster the mod_python solution actually is. I could not find any good numbers on this specifically related to TileCache. The latter is relevant because a tile server will typically receive many concurrent requests, even from a single client. This specifically applies when TileCache is employed as a caching layer between OpenLayers and a WMS server and OpenLayers is configured to cheat your server and fetch multiple tiles at once, <a href="http://docs.codehaus.org/display/GEOSDOC/TileCache+Tutorial">as described here</a>.</p>
<p>So now on to the results. I&#8217;ll show you some graphs  which are visualizations of ab&#8217;s CSV output. They show  a devision of the total number of requests in percentiles by time (in ms) needed to serve that percentile of the requests.</p>
<p>Note that the graphs are logarithmic (10logn). I did that to ensure optimal visibility of the results &#8211; the differences can be small for most of the percentile range, but will spike at the end of the graph.</p>
<p><img src="http://oegeo.files.wordpress.com/2008/03/c_1.png" alt="c_1.png" /></p>
<p>With 5 concurrent requests:</p>
<p><img src="http://oegeo.files.wordpress.com/2008/03/c_5.png" alt="c_5.png" /></p>
<p>&#8230;10 concurrent requests&#8230;</p>
<p><img src="http://oegeo.files.wordpress.com/2008/03/c_10.png" alt="c_10.png" /></p>
<p>&#8230;50&#8230;</p>
<p><img src="http://oegeo.files.wordpress.com/2008/03/c_50.png" alt="c_50.png" /></p>
<p>&#8230;and finally even 100 &#8212; which is already quite a heavy load, especially for my poor desktop with a single consumer SATA disk:</p>
<p><img src="http://oegeo.files.wordpress.com/2008/03/c_100.png" alt="c_100.png" /></p>
<p>I&#8217;ll write up my thoughts about these results, as well as ideas for further optimization, in a next post shortly. For now, I leave you to think about this yourselves <img src='http://s.wordpress.com/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' />  and – just because I like Excel so much – feed you two more graphs to summarize the mod_python and CGI results:</p>
<p><img src="http://oegeo.files.wordpress.com/2008/03/cgi.png" alt="cgi.png" /></p>
<p><img src="http://oegeo.files.wordpress.com/2008/03/modpython.png" alt="modpython.png" /></p>
<p>Still to come:</p>
<ul>
<li> Analysis of the results shown</li>
<li>Further optimization techniques (ideas welcome – I&#8217;m new at this!)</li>
<li>Check the log files – were all requests actually served?</li>
<li>Longer running benchmarks, how does TileCache hold up in the long run?</li>
</ul>
<img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/oegeo.wordpress.com/30/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/oegeo.wordpress.com/30/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/oegeo.wordpress.com/30/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/oegeo.wordpress.com/30/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/oegeo.wordpress.com/30/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/oegeo.wordpress.com/30/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/oegeo.wordpress.com/30/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/oegeo.wordpress.com/30/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/oegeo.wordpress.com/30/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/oegeo.wordpress.com/30/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/oegeo.wordpress.com/30/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/oegeo.wordpress.com/30/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=oegeo.wordpress.com&blog=3077892&post=30&subd=oegeo&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://oegeo.wordpress.com/2008/03/17/benchmarking-tilecache-part-1/feed/</wfw:commentRss>
		<slash:comments>10</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/e82ea3ff4c122fabcab154dcdb1ed494?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">rhodes</media:title>
		</media:content>

		<media:content url="http://oegeo.files.wordpress.com/2008/03/c_1.png" medium="image">
			<media:title type="html">c_1.png</media:title>
		</media:content>

		<media:content url="http://oegeo.files.wordpress.com/2008/03/c_5.png" medium="image">
			<media:title type="html">c_5.png</media:title>
		</media:content>

		<media:content url="http://oegeo.files.wordpress.com/2008/03/c_10.png" medium="image">
			<media:title type="html">c_10.png</media:title>
		</media:content>

		<media:content url="http://oegeo.files.wordpress.com/2008/03/c_50.png" medium="image">
			<media:title type="html">c_50.png</media:title>
		</media:content>

		<media:content url="http://oegeo.files.wordpress.com/2008/03/c_100.png" medium="image">
			<media:title type="html">c_100.png</media:title>
		</media:content>

		<media:content url="http://oegeo.files.wordpress.com/2008/03/cgi.png" medium="image">
			<media:title type="html">cgi.png</media:title>
		</media:content>

		<media:content url="http://oegeo.files.wordpress.com/2008/03/modpython.png" medium="image">
			<media:title type="html">modpython.png</media:title>
		</media:content>
	</item>
	</channel>
</rss>