{"id":517,"date":"2009-11-03T21:22:22","date_gmt":"2009-11-03T20:22:22","guid":{"rendered":"https:\/\/www.entropywins.wtf\/blog\/?p=517"},"modified":"2009-11-03T21:22:22","modified_gmt":"2009-11-03T20:22:22","slug":"finally-maps-and-semantic-maps-0-4","status":"publish","type":"post","link":"https:\/\/www.entropywins.wtf\/blog\/2009\/11\/03\/finally-maps-and-semantic-maps-0-4\/","title":{"rendered":"Finally! Maps and Semantic Maps 0.4!"},"content":{"rendered":"<p>It&#8217;s been almost 2 months since <a href=\"http:\/\/www.mediawiki.org\/wiki\/Extension:Maps\" target=\"_blank\">Maps<\/a> version 0.3.4 was released. Although I did waste a lot of my time at school, I managed to get quite some important work done in that period. Version 0.4 mainly addressed new functionality, and some thorough refactoring for Maps, and only introduced 2 bug fixes for <a href=\"http:\/\/www.mediawiki.org\/wiki\/Extension:Semantic_Maps\">Semantic Maps<\/a>. So lets have a look at everything that changed \ud83d\ude42<\/p>\n<p><strong>New features<\/strong><\/p>\n<ul>\n<li>I added a <a href=\"http:\/\/www.mediawiki.org\/wiki\/Extension:Maps#Displaying_a_map\" target=\"_blank\"><strong>display_map<\/strong> parser function<\/a>, that&#8217;s obviously meant to display maps. The code handling this parser function is optimized to display maps, and does not hold into account any possible markers, ect. The main reason for adding this function is that it&#8217;ll be used for the Wikimedia Foundation implementation of Maps.<\/li>\n<li><strong>Smart <a href=\"http:\/\/www.mediawiki.org\/wiki\/Extension:Maps#Geocoding\" target=\"_blank\">geocoding support<\/a><\/strong>. Maps is now able to determine if a value is a set of coordinates, or an address. This enables automatic geocoding of addresses, making the specification of the value type unneeded, and allows you to mix coordinates and addresses in location lists. This functionality is implemented for display_map&#8217;s default parameter, the one of display_point(s), and display_point(s) centre property.<\/li>\n<li><strong><a href=\"http:\/\/www.mediawiki.org\/wiki\/Extension:Maps\/OSM\" target=\"_blank\">OpenStreetMap<\/a> service<\/strong>. This service uses <a href=\"http:\/\/www.openlayers.org\/\" target=\"_blank\">OpenLayers<\/a> to display OpenStreetMap tiles. It&#8217;s optimized for OSM, and does not allow you to display other tile sources with it. This is another of the requirements for WF usage that&#8217;s now been completed. This service is only implemented in Maps ATM, and will be added to Semantic Maps in version 0.5.<\/li>\n<li>Support for DM (Decimal Minutes) and DD (Decimal Degrees) <a href=\"http:\/\/www.mediawiki.org\/wiki\/Extension:Maps#Coordinates\" target=\"_blank\">coordinate notations<\/a>. Someone requested these to be added. Several other variants, such as GPS coordinates, might be put into Maps in the future.<\/li>\n<li>Added a setting specifying the <a href=\"http:\/\/www.mediawiki.org\/wiki\/Extension:Maps#Map_size_restrictions\" target=\"_blank\">minimum and maximum width and height<\/a> of maps. When a value falls out of this range, it&#8217;ll be changed to the nearest allowed value. This is to prevent post-stamp or wallpaper maps, and is inspired by the similar functionality in the <a href=\"http:\/\/www.mediawiki.org\/wiki\/Extension:SlippyMap\" target=\"_blank\">SlippyMap<\/a> extension.<\/li>\n<li>Parsing of <a href=\"http:\/\/www.mediawiki.org\/wiki\/Extension:Maps#Point_specific_data\" target=\"_blank\">marker-specific title and label<\/a> values. I actually marked the lack of this feature a bug a while ago, which I changed at the point where I remembered I simply did not add such a thing yet, and only map-wide title and label value\u2019s got parsed.<\/li>\n<\/ul>\n<p><strong>Refactoring<\/strong> (&#8220;under the hood&#8221; changes)<\/p>\n<ul>\n<li>A new<strong> hook system for the parser functions<\/strong>, allowing the adding or removing of additional parser function support. Each mapping service will now have one class for handling on specific parser function. Again, the main reason behind this change is that it&#8217;s required for the WF usage of Maps, where at the start, only display_map will be used. Another great advantage is that you can now very easily add new parser functions without having to mess up the core extension code. An example of such a function is display_route, which might be added at some point to maps.<\/li>\n<li>Change the geocoding functionality into a true feature hook element, so it can be easily removed. This is not easy to do, since the geocoding functionality is currently used at various points by the parser functions. So before I can start making it a feature hook element, the parser function code will have to be restructured.<\/li>\n<li>Create service <strong>hook for the geocoding feature<\/strong> \u2013 separate from the mapping services hook. This will allow adding and removing support for a specific geocoding service.<\/li>\n<li>Since Maps is now able to distinguish coordinates from addresses, the display_address and display_addresses parser functions have been removed. For backward compatibility, calls to them will be routed to display_point(s). This will of course eventually be removed.<\/li>\n<li>Removed a redundant path variable. One of the messy remains of the initial Maps release, which even caused problems on some installations.<\/li>\n<\/ul>\n<p><strong>Bug fixes<\/strong><\/p>\n<ul>\n<li>Fixed a mayor bug in the initialization method causing hook code to get executed at a probably wrong moment. This bug can be the cause of some weird problems that surfaced since 0.3.3.<\/li>\n<li>Fixed a rather annoying issue with size of popups in <a href=\"http:\/\/en.wikipedia.org\/wiki\/Google_maps\" target=\"_blank\">Google Maps<\/a>. They did not stretch far enough vertically for large contents. I\u2019m happy I got this fixed now, since I\u2019ve been aware of it for quite a while now, but simply could not find a solution. <a href=\"http:\/\/www.mediawiki.org\/wiki\/User:Yaron_Koren\" target=\"_blank\">Yaron<\/a> pointed me to a helpful blog where a certain post set me on the right track. The solution was ridiculously simple, and one line (in the JS code) long.<\/li>\n<li>Fixed some problems with the display of the mapping result formats on the Special:Ask page of <a href=\"http:\/\/semantic-mediawiki.org\/wiki\/Semantic_MediaWiki\" target=\"_blank\">Semantic MediaWiki<\/a>. I&#8217;ve done this by <a href=\"https:\/\/www.entropywins.wtf\/blog\/2009\/10\/16\/result-format-aliases-for-smw\/\" target=\"_blank\">adding an aliasing system<\/a> for result formats to SMW itself. So to be able to benefit from this, you need to have that version of SMW, or later. Maps has a build in check to see if the aliasing functionality of SMW is present, and if not, uses the old, but a lot less efficient, solution.<\/li>\n<\/ul>\n<p>For the change log listing, see <a href=\"http:\/\/www.mediawiki.org\/wiki\/Extension:Maps\/Version_history#Maps_0.4\" target=\"_blank\">Maps version history<\/a> and <a href=\"http:\/\/www.mediawiki.org\/wiki\/Extension:Semantic_Maps\/Version_history#Semantic_Maps_0.4\" target=\"_blank\">Semantic Maps version history<\/a>.<\/p>\n<p>The documentation has been completely updated for both extensions. I only have to change the demo&#8217;s on my demo wiki to reflect the new syntaxis of the parser functions. After that I can get to work on the to-do&#8217;s for version 0.5, which will include the long awaited static map support \ud83d\ude42<\/p>\n<p>Did I mention Semantic Maps now supports over 50 languages? :p<\/p>\n<p><strong>Downloads<\/strong><\/p>\n<ul>\n<li>Maps 0.4 (<a href=\"http:\/\/code.bn2vs.com\/viewtopic.php?mode=attach&amp;id=218\">zip<\/a>, <a href=\"http:\/\/code.bn2vs.com\/viewtopic.php?mode=attach&amp;id=218\">7z<\/a>)<\/li>\n<li>Semantic Maps 0.4 (<a href=\"http:\/\/code.bn2vs.com\/viewtopic.php?mode=attach&amp;id=222\" target=\"_blank\">zip<\/a>, <a href=\"http:\/\/code.bn2vs.com\/viewtopic.php?mode=attach&amp;id=221\" target=\"_blank\">7z<\/a>)<\/li>\n<li>Maps and Semantic Maps 0.4 (<a href=\"http:\/\/code.bn2vs.com\/viewtopic.php?mode=attach&amp;id=220\" target=\"_blank\">zip<\/a>, <a href=\"http:\/\/code.bn2vs.com\/viewtopic.php?mode=attach&amp;id=219\">7z<\/a>)<\/li>\n<li><a href=\"http:\/\/svn.wikimedia.org\/viewvc\/mediawiki\/tags\/extensions\/Maps\/REL_0_4\/\" target=\"_blank\">Maps 0.4 SVN tag<\/a><\/li>\n<li><a href=\"http:\/\/svn.wikimedia.org\/viewvc\/mediawiki\/tags\/extensions\/SemanticMaps\/REL_0_4\/\" target=\"_blank\">Semantic Maps 0.4 SVN tag<\/a><\/li>\n<\/ul>\n<div id=\"_mcePaste\" style=\"overflow: hidden; position: absolute; left: -10000px; top: 853px; width: 1px; height: 1px;\">\n<p>Maps 0.4<\/p><\/div>\n","protected":false},"excerpt":{"rendered":"<p>It&#8217;s been almost 2 months since Maps version 0.3.4 was released. Although I did waste a lot of my time&hellip;<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"jetpack_post_was_ever_published":false,"_jetpack_newsletter_access":"","_jetpack_dont_email_post_to_subs":false,"_jetpack_newsletter_tier_id":0,"_jetpack_memberships_contains_paywalled_content":false,"_jetpack_memberships_contains_paid_content":false,"footnotes":"","jetpack_publicize_message":"","jetpack_publicize_feature_enabled":true,"jetpack_social_post_already_shared":false,"jetpack_social_options":{"image_generator_settings":{"template":"highway","default_image_id":0,"font":"","enabled":false},"version":2}},"categories":[7],"tags":[27,105,111,112,136,154,155,156,180,181,184,185,187,195,215,227,228,231,285,300],"class_list":["post-517","post","type-post","status-publish","format-standard","hentry","category-programming","tag-application-architecture","tag-geocoding","tag-google-earth","tag-google-maps","tag-javascript","tag-mapping","tag-maps","tag-mediawiki","tag-open-layers","tag-open-source","tag-openstreetmap","tag-openstreetmaps","tag-osm","tag-php","tag-refactoring","tag-semantic-maps","tag-semantic-mediawiki","tag-semantics","tag-wikimedia","tag-yahoo-maps"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.4 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Finally! Maps and Semantic Maps 0.4! - Blog of Jeroen De Dauw<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.entropywins.wtf\/blog\/2009\/11\/03\/finally-maps-and-semantic-maps-0-4\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Finally! Maps and Semantic Maps 0.4! - Blog of Jeroen De Dauw\" \/>\n<meta property=\"og:description\" content=\"It&#8217;s been almost 2 months since Maps version 0.3.4 was released. Although I did waste a lot of my time&hellip;\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.entropywins.wtf\/blog\/2009\/11\/03\/finally-maps-and-semantic-maps-0-4\/\" \/>\n<meta property=\"og:site_name\" content=\"Blog of Jeroen De Dauw\" \/>\n<meta property=\"article:published_time\" content=\"2009-11-03T20:22:22+00:00\" \/>\n<meta name=\"author\" content=\"Jeroen\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@https:\/\/twitter.com\/JeroenDeDauw\" \/>\n<meta name=\"twitter:site\" content=\"@JeroenDeDauw\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Jeroen\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"5 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/www.entropywins.wtf\\\/blog\\\/2009\\\/11\\\/03\\\/finally-maps-and-semantic-maps-0-4\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.entropywins.wtf\\\/blog\\\/2009\\\/11\\\/03\\\/finally-maps-and-semantic-maps-0-4\\\/\"},\"author\":{\"name\":\"Jeroen\",\"@id\":\"https:\\\/\\\/www.entropywins.wtf\\\/blog\\\/#\\\/schema\\\/person\\\/4e2ef14f2ca7dc3a0ac137d1692b66b7\"},\"headline\":\"Finally! Maps and Semantic Maps 0.4!\",\"datePublished\":\"2009-11-03T20:22:22+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/www.entropywins.wtf\\\/blog\\\/2009\\\/11\\\/03\\\/finally-maps-and-semantic-maps-0-4\\\/\"},\"wordCount\":918,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\\\/\\\/www.entropywins.wtf\\\/blog\\\/#\\\/schema\\\/person\\\/4e2ef14f2ca7dc3a0ac137d1692b66b7\"},\"keywords\":[\"Application architecture\",\"Geocoding\",\"Google Earth\",\"Google Maps\",\"JavaScript\",\"Mapping\",\"Maps\",\"MediaWiki\",\"Open Layers\",\"Open Source\",\"OpenStreetMap\",\"OpenStreetMaps\",\"OSM\",\"PHP\",\"Refactoring\",\"Semantic Maps\",\"Semantic MediaWiki\",\"Semantics\",\"Wikimedia\",\"Yahoo! Maps\"],\"articleSection\":[\"Programming\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/www.entropywins.wtf\\\/blog\\\/2009\\\/11\\\/03\\\/finally-maps-and-semantic-maps-0-4\\\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/www.entropywins.wtf\\\/blog\\\/2009\\\/11\\\/03\\\/finally-maps-and-semantic-maps-0-4\\\/\",\"url\":\"https:\\\/\\\/www.entropywins.wtf\\\/blog\\\/2009\\\/11\\\/03\\\/finally-maps-and-semantic-maps-0-4\\\/\",\"name\":\"Finally! Maps and Semantic Maps 0.4! - Blog of Jeroen De Dauw\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.entropywins.wtf\\\/blog\\\/#website\"},\"datePublished\":\"2009-11-03T20:22:22+00:00\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/www.entropywins.wtf\\\/blog\\\/2009\\\/11\\\/03\\\/finally-maps-and-semantic-maps-0-4\\\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/www.entropywins.wtf\\\/blog\\\/2009\\\/11\\\/03\\\/finally-maps-and-semantic-maps-0-4\\\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/www.entropywins.wtf\\\/blog\\\/2009\\\/11\\\/03\\\/finally-maps-and-semantic-maps-0-4\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/www.entropywins.wtf\\\/blog\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Finally! Maps and Semantic Maps 0.4!\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/www.entropywins.wtf\\\/blog\\\/#website\",\"url\":\"https:\\\/\\\/www.entropywins.wtf\\\/blog\\\/\",\"name\":\"Entropy Wins\",\"description\":\"A blog on Software Architecture, Design and Craftsmanship\",\"publisher\":{\"@id\":\"https:\\\/\\\/www.entropywins.wtf\\\/blog\\\/#\\\/schema\\\/person\\\/4e2ef14f2ca7dc3a0ac137d1692b66b7\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/www.entropywins.wtf\\\/blog\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":[\"Person\",\"Organization\"],\"@id\":\"https:\\\/\\\/www.entropywins.wtf\\\/blog\\\/#\\\/schema\\\/person\\\/4e2ef14f2ca7dc3a0ac137d1692b66b7\",\"name\":\"Jeroen\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/d62e6b5b8e332335cf17854fac850d9c70ba367c4692872613c3110ebd4e009b?s=96&d=mm&r=g\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/d62e6b5b8e332335cf17854fac850d9c70ba367c4692872613c3110ebd4e009b?s=96&d=mm&r=g\",\"contentUrl\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/d62e6b5b8e332335cf17854fac850d9c70ba367c4692872613c3110ebd4e009b?s=96&d=mm&r=g\",\"caption\":\"Jeroen\"},\"logo\":{\"@id\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/d62e6b5b8e332335cf17854fac850d9c70ba367c4692872613c3110ebd4e009b?s=96&d=mm&r=g\"},\"sameAs\":[\"https:\\\/\\\/www.linkedin.com\\\/in\\\/jeroendedauw\\\/\",\"https:\\\/\\\/x.com\\\/https:\\\/\\\/twitter.com\\\/JeroenDeDauw\"]}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Finally! Maps and Semantic Maps 0.4! - Blog of Jeroen De Dauw","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.entropywins.wtf\/blog\/2009\/11\/03\/finally-maps-and-semantic-maps-0-4\/","og_locale":"en_US","og_type":"article","og_title":"Finally! Maps and Semantic Maps 0.4! - Blog of Jeroen De Dauw","og_description":"It&#8217;s been almost 2 months since Maps version 0.3.4 was released. Although I did waste a lot of my time&hellip;","og_url":"https:\/\/www.entropywins.wtf\/blog\/2009\/11\/03\/finally-maps-and-semantic-maps-0-4\/","og_site_name":"Blog of Jeroen De Dauw","article_published_time":"2009-11-03T20:22:22+00:00","author":"Jeroen","twitter_card":"summary_large_image","twitter_creator":"@https:\/\/twitter.com\/JeroenDeDauw","twitter_site":"@JeroenDeDauw","twitter_misc":{"Written by":"Jeroen","Est. reading time":"5 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.entropywins.wtf\/blog\/2009\/11\/03\/finally-maps-and-semantic-maps-0-4\/#article","isPartOf":{"@id":"https:\/\/www.entropywins.wtf\/blog\/2009\/11\/03\/finally-maps-and-semantic-maps-0-4\/"},"author":{"name":"Jeroen","@id":"https:\/\/www.entropywins.wtf\/blog\/#\/schema\/person\/4e2ef14f2ca7dc3a0ac137d1692b66b7"},"headline":"Finally! Maps and Semantic Maps 0.4!","datePublished":"2009-11-03T20:22:22+00:00","mainEntityOfPage":{"@id":"https:\/\/www.entropywins.wtf\/blog\/2009\/11\/03\/finally-maps-and-semantic-maps-0-4\/"},"wordCount":918,"commentCount":0,"publisher":{"@id":"https:\/\/www.entropywins.wtf\/blog\/#\/schema\/person\/4e2ef14f2ca7dc3a0ac137d1692b66b7"},"keywords":["Application architecture","Geocoding","Google Earth","Google Maps","JavaScript","Mapping","Maps","MediaWiki","Open Layers","Open Source","OpenStreetMap","OpenStreetMaps","OSM","PHP","Refactoring","Semantic Maps","Semantic MediaWiki","Semantics","Wikimedia","Yahoo! Maps"],"articleSection":["Programming"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/www.entropywins.wtf\/blog\/2009\/11\/03\/finally-maps-and-semantic-maps-0-4\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/www.entropywins.wtf\/blog\/2009\/11\/03\/finally-maps-and-semantic-maps-0-4\/","url":"https:\/\/www.entropywins.wtf\/blog\/2009\/11\/03\/finally-maps-and-semantic-maps-0-4\/","name":"Finally! Maps and Semantic Maps 0.4! - Blog of Jeroen De Dauw","isPartOf":{"@id":"https:\/\/www.entropywins.wtf\/blog\/#website"},"datePublished":"2009-11-03T20:22:22+00:00","breadcrumb":{"@id":"https:\/\/www.entropywins.wtf\/blog\/2009\/11\/03\/finally-maps-and-semantic-maps-0-4\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.entropywins.wtf\/blog\/2009\/11\/03\/finally-maps-and-semantic-maps-0-4\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/www.entropywins.wtf\/blog\/2009\/11\/03\/finally-maps-and-semantic-maps-0-4\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.entropywins.wtf\/blog\/"},{"@type":"ListItem","position":2,"name":"Finally! Maps and Semantic Maps 0.4!"}]},{"@type":"WebSite","@id":"https:\/\/www.entropywins.wtf\/blog\/#website","url":"https:\/\/www.entropywins.wtf\/blog\/","name":"Entropy Wins","description":"A blog on Software Architecture, Design and Craftsmanship","publisher":{"@id":"https:\/\/www.entropywins.wtf\/blog\/#\/schema\/person\/4e2ef14f2ca7dc3a0ac137d1692b66b7"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.entropywins.wtf\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":["Person","Organization"],"@id":"https:\/\/www.entropywins.wtf\/blog\/#\/schema\/person\/4e2ef14f2ca7dc3a0ac137d1692b66b7","name":"Jeroen","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/secure.gravatar.com\/avatar\/d62e6b5b8e332335cf17854fac850d9c70ba367c4692872613c3110ebd4e009b?s=96&d=mm&r=g","url":"https:\/\/secure.gravatar.com\/avatar\/d62e6b5b8e332335cf17854fac850d9c70ba367c4692872613c3110ebd4e009b?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/d62e6b5b8e332335cf17854fac850d9c70ba367c4692872613c3110ebd4e009b?s=96&d=mm&r=g","caption":"Jeroen"},"logo":{"@id":"https:\/\/secure.gravatar.com\/avatar\/d62e6b5b8e332335cf17854fac850d9c70ba367c4692872613c3110ebd4e009b?s=96&d=mm&r=g"},"sameAs":["https:\/\/www.linkedin.com\/in\/jeroendedauw\/","https:\/\/x.com\/https:\/\/twitter.com\/JeroenDeDauw"]}]}},"jetpack_publicize_connections":[],"jetpack_featured_media_url":"","jetpack_shortlink":"https:\/\/wp.me\/p74TBF-8l","jetpack-related-posts":[{"id":1003,"url":"https:\/\/www.entropywins.wtf\/blog\/2010\/10\/06\/maps-and-semantic-maps-0-7-beta-1\/","url_meta":{"origin":517,"position":0},"title":"Maps and Semantic Maps 0.7 beta 1","author":"Jeroen","date":"2010-10-06","format":false,"excerpt":"An early beta of the next big release of the Maps and Semantic Maps extensions is now available for download. The most notable new features in this release are tag extension support for all the Maps parser functions, more consistent error handling via Validator 0.4 and compatibility with the upcoming\u2026","rel":"","context":"In &quot;Programming&quot;","block_context":{"text":"Programming","link":"https:\/\/www.entropywins.wtf\/blog\/category\/programming\/"},"img":{"alt_text":"Semantic Maps reporting a fatal error in a map form input.","src":"..\/wp-content\/uploads\/2010\/10\/fatal-form-error.png","width":350,"height":200},"classes":[]},{"id":1009,"url":"https:\/\/www.entropywins.wtf\/blog\/2010\/10\/15\/maps-and-semantic-maps-0-7-released\/","url_meta":{"origin":517,"position":1},"title":"Maps and Semantic Maps 0.7 released","author":"Jeroen","date":"2010-10-15","format":false,"excerpt":"Also check out the wiki version of this post. Version 0.7 of both the Maps and Semantic Maps extensions is now available for download. This release is made after 3 beta's and a release candidate, so should be stable. The most notable new features in this release are tag extension\u2026","rel":"","context":"In &quot;Programming&quot;","block_context":{"text":"Programming","link":"https:\/\/www.entropywins.wtf\/blog\/category\/programming\/"},"img":{"alt_text":"Maps showing a Google Maps map with multiple=","src":"..\/wp-content\/uploads\/2010\/10\/maps-google-map-tag-extension.png","width":350,"height":200,"srcset":"..\/wp-content\/uploads\/2010\/10\/maps-google-map-tag-extension.png 1x, ..\/wp-content\/uploads\/2010\/10\/maps-google-map-tag-extension.png 1.5x"},"classes":[]},{"id":479,"url":"https:\/\/www.entropywins.wtf\/blog\/2009\/10\/14\/working-on-maps-and-semantic-maps-0-4\/","url_meta":{"origin":517,"position":2},"title":"Working on Maps and Semantic Maps 0.4","author":"Jeroen","date":"2009-10-14","format":false,"excerpt":"Since the 0.3.4 release of both Maps and Semantic Maps, I've been putting the little free time I have to use by working on the to-do's for the next release. Originally this would have been 0.3.5, but I've added several things to it, that made me decide to make it\u2026","rel":"","context":"In &quot;Programming&quot;","block_context":{"text":"Programming","link":"https:\/\/www.entropywins.wtf\/blog\/category\/programming\/"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":849,"url":"https:\/\/www.entropywins.wtf\/blog\/2010\/06\/07\/maps-and-semantic-maps-0-6-2-released\/","url_meta":{"origin":517,"position":3},"title":"Maps and Semantic Maps 0.6.2 released","author":"Jeroen","date":"2010-06-07","format":false,"excerpt":"Maps and Semantic Maps 0.6.2 are now available for download. This release contains improvements to parameter handling, case insensitivity has been re-added, and using default parameters together with named ones will work more intuitive. In Maps the handling of distances has also been considerably improved: there is a new #distance\u2026","rel":"","context":"In &quot;Programming&quot;","block_context":{"text":"Programming","link":"https:\/\/www.entropywins.wtf\/blog\/category\/programming\/"},"img":{"alt_text":"Maps extension for MediaWiki","src":"https:\/\/i0.wp.com\/www.entropywins.wtf\/blog\/wp-content\/uploads\/2010\/06\/maps.jpg?resize=350%2C200&ssl=1","width":350,"height":200,"srcset":"https:\/\/i0.wp.com\/www.entropywins.wtf\/blog\/wp-content\/uploads\/2010\/06\/maps.jpg?resize=350%2C200&ssl=1 1x, https:\/\/i0.wp.com\/www.entropywins.wtf\/blog\/wp-content\/uploads\/2010\/06\/maps.jpg?resize=525%2C300&ssl=1 1.5x"},"classes":[]},{"id":936,"url":"https:\/\/www.entropywins.wtf\/blog\/2010\/07\/28\/maps-and-semantic-maps-0-6-5-released\/","url_meta":{"origin":517,"position":4},"title":"Maps and Semantic Maps 0.6.5 released","author":"Jeroen","date":"2010-07-28","format":false,"excerpt":"Maps and Semantic Maps 0.6.5 are now available for download. This release contains mainly internal changes to improve code modularity and fix some security concerns. Several bugs have been fixed as well, and a new hook has been added to Semantic Maps. This hook will get you the map format\u2026","rel":"","context":"In &quot;Programming&quot;","block_context":{"text":"Programming","link":"https:\/\/www.entropywins.wtf\/blog\/category\/programming\/"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":416,"url":"https:\/\/www.entropywins.wtf\/blog\/2009\/09\/12\/maps-and-semantic-maps-0-3-4-released\/","url_meta":{"origin":517,"position":5},"title":"Maps and Semantic Maps 0.3.4 released","author":"Jeroen","date":"2009-09-12","format":false,"excerpt":"Today a new version of Maps and Semantic Maps where released. This version, 0.3.4, mainly focused on the internal structure of the extensions, performance issues and bug fixes. Some small new features have been added though. Bug fixes Fixed some issues with invalid parameter handling. This comes down to 2\u2026","rel":"","context":"In &quot;Programming&quot;","block_context":{"text":"Programming","link":"https:\/\/www.entropywins.wtf\/blog\/category\/programming\/"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]}],"jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/www.entropywins.wtf\/blog\/wp-json\/wp\/v2\/posts\/517","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.entropywins.wtf\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.entropywins.wtf\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.entropywins.wtf\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.entropywins.wtf\/blog\/wp-json\/wp\/v2\/comments?post=517"}],"version-history":[{"count":0,"href":"https:\/\/www.entropywins.wtf\/blog\/wp-json\/wp\/v2\/posts\/517\/revisions"}],"wp:attachment":[{"href":"https:\/\/www.entropywins.wtf\/blog\/wp-json\/wp\/v2\/media?parent=517"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.entropywins.wtf\/blog\/wp-json\/wp\/v2\/categories?post=517"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.entropywins.wtf\/blog\/wp-json\/wp\/v2\/tags?post=517"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}