{"id":326,"date":"2009-08-16T22:41:03","date_gmt":"2009-08-16T21:41:03","guid":{"rendered":"https:\/\/www.entropywins.wtf\/blog\/?p=326"},"modified":"2009-08-16T22:41:03","modified_gmt":"2009-08-16T21:41:03","slug":"manual-extending-maps","status":"publish","type":"post","link":"https:\/\/www.entropywins.wtf\/blog\/2009\/08\/16\/manual-extending-maps\/","title":{"rendered":"Manual: Extending Maps"},"content":{"rendered":"<p>Today I finally announced the new releases of my extensions on a few wiki mailing lists. I also gave the Semantic Maps documentation another overhaul, and created <a href=\"http:\/\/www.mediawiki.org\/wiki\/Extension:Maps\/Extending_Maps#Introduction\" target=\"_blank\">a manual on how to extend maps<\/a>.<\/p>\n<p>This manual targets developers who want to add support for a mapping service to one of the features Maps and Semantic Maps support: parser functions, query printers and form inputs. I still have to create the manual for the later two features though. Currently, the subjects of <a href=\"http:\/\/www.mediawiki.org\/wiki\/Extension:Maps\/Extending_Maps#Adding_a_new_mapping_service\" target=\"_blank\">adding a new mapping service<\/a>, <a href=\"http:\/\/www.mediawiki.org\/wiki\/Extension:Maps\/Extending_Maps#Parser_functions\" target=\"_blank\">adding parser function support<\/a> and <a href=\"http:\/\/www.mediawiki.org\/wiki\/Extension:Maps\/Extending_Maps#Geocoding_services\" target=\"_blank\">creating new geocoder classes<\/a> are covered.<\/p>\n<p>I hope to get the Semantic Maps part done by tomorrow, as a nice conclusion to <a href=\"https:\/\/www.entropywins.wtf\/blog\/2009\/04\/26\/google-summer-of-code-2009\/\" target=\"_blank\">my GSoC project<\/a>.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Today I finally announced the new releases of my extensions on a few wiki mailing lists. I also gave the&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":[79,115,154,156,181,227,231,285],"class_list":["post-326","post","type-post","status-publish","format-standard","hentry","category-programming","tag-documentation","tag-gsoc","tag-mapping","tag-mediawiki","tag-open-source","tag-semantic-maps","tag-semantics","tag-wikimedia"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.4 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Manual: Extending Maps - 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\/08\/16\/manual-extending-maps\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Manual: Extending Maps - Blog of Jeroen De Dauw\" \/>\n<meta property=\"og:description\" content=\"Today I finally announced the new releases of my extensions on a few wiki mailing lists. I also gave the&hellip;\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.entropywins.wtf\/blog\/2009\/08\/16\/manual-extending-maps\/\" \/>\n<meta property=\"og:site_name\" content=\"Blog of Jeroen De Dauw\" \/>\n<meta property=\"article:published_time\" content=\"2009-08-16T21:41:03+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=\"1 minute\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/www.entropywins.wtf\\\/blog\\\/2009\\\/08\\\/16\\\/manual-extending-maps\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.entropywins.wtf\\\/blog\\\/2009\\\/08\\\/16\\\/manual-extending-maps\\\/\"},\"author\":{\"name\":\"Jeroen\",\"@id\":\"https:\\\/\\\/www.entropywins.wtf\\\/blog\\\/#\\\/schema\\\/person\\\/4e2ef14f2ca7dc3a0ac137d1692b66b7\"},\"headline\":\"Manual: Extending Maps\",\"datePublished\":\"2009-08-16T21:41:03+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/www.entropywins.wtf\\\/blog\\\/2009\\\/08\\\/16\\\/manual-extending-maps\\\/\"},\"wordCount\":119,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\\\/\\\/www.entropywins.wtf\\\/blog\\\/#\\\/schema\\\/person\\\/4e2ef14f2ca7dc3a0ac137d1692b66b7\"},\"keywords\":[\"Documentation\",\"GSoC\",\"Mapping\",\"MediaWiki\",\"Open Source\",\"Semantic Maps\",\"Semantics\",\"Wikimedia\"],\"articleSection\":[\"Programming\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/www.entropywins.wtf\\\/blog\\\/2009\\\/08\\\/16\\\/manual-extending-maps\\\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/www.entropywins.wtf\\\/blog\\\/2009\\\/08\\\/16\\\/manual-extending-maps\\\/\",\"url\":\"https:\\\/\\\/www.entropywins.wtf\\\/blog\\\/2009\\\/08\\\/16\\\/manual-extending-maps\\\/\",\"name\":\"Manual: Extending Maps - Blog of Jeroen De Dauw\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.entropywins.wtf\\\/blog\\\/#website\"},\"datePublished\":\"2009-08-16T21:41:03+00:00\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/www.entropywins.wtf\\\/blog\\\/2009\\\/08\\\/16\\\/manual-extending-maps\\\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/www.entropywins.wtf\\\/blog\\\/2009\\\/08\\\/16\\\/manual-extending-maps\\\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/www.entropywins.wtf\\\/blog\\\/2009\\\/08\\\/16\\\/manual-extending-maps\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/www.entropywins.wtf\\\/blog\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Manual: Extending Maps\"}]},{\"@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":"Manual: Extending Maps - 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\/08\/16\/manual-extending-maps\/","og_locale":"en_US","og_type":"article","og_title":"Manual: Extending Maps - Blog of Jeroen De Dauw","og_description":"Today I finally announced the new releases of my extensions on a few wiki mailing lists. I also gave the&hellip;","og_url":"https:\/\/www.entropywins.wtf\/blog\/2009\/08\/16\/manual-extending-maps\/","og_site_name":"Blog of Jeroen De Dauw","article_published_time":"2009-08-16T21:41:03+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":"1 minute"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.entropywins.wtf\/blog\/2009\/08\/16\/manual-extending-maps\/#article","isPartOf":{"@id":"https:\/\/www.entropywins.wtf\/blog\/2009\/08\/16\/manual-extending-maps\/"},"author":{"name":"Jeroen","@id":"https:\/\/www.entropywins.wtf\/blog\/#\/schema\/person\/4e2ef14f2ca7dc3a0ac137d1692b66b7"},"headline":"Manual: Extending Maps","datePublished":"2009-08-16T21:41:03+00:00","mainEntityOfPage":{"@id":"https:\/\/www.entropywins.wtf\/blog\/2009\/08\/16\/manual-extending-maps\/"},"wordCount":119,"commentCount":0,"publisher":{"@id":"https:\/\/www.entropywins.wtf\/blog\/#\/schema\/person\/4e2ef14f2ca7dc3a0ac137d1692b66b7"},"keywords":["Documentation","GSoC","Mapping","MediaWiki","Open Source","Semantic Maps","Semantics","Wikimedia"],"articleSection":["Programming"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/www.entropywins.wtf\/blog\/2009\/08\/16\/manual-extending-maps\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/www.entropywins.wtf\/blog\/2009\/08\/16\/manual-extending-maps\/","url":"https:\/\/www.entropywins.wtf\/blog\/2009\/08\/16\/manual-extending-maps\/","name":"Manual: Extending Maps - Blog of Jeroen De Dauw","isPartOf":{"@id":"https:\/\/www.entropywins.wtf\/blog\/#website"},"datePublished":"2009-08-16T21:41:03+00:00","breadcrumb":{"@id":"https:\/\/www.entropywins.wtf\/blog\/2009\/08\/16\/manual-extending-maps\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.entropywins.wtf\/blog\/2009\/08\/16\/manual-extending-maps\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/www.entropywins.wtf\/blog\/2009\/08\/16\/manual-extending-maps\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.entropywins.wtf\/blog\/"},{"@type":"ListItem","position":2,"name":"Manual: Extending Maps"}]},{"@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-5g","jetpack-related-posts":[{"id":369,"url":"https:\/\/www.entropywins.wtf\/blog\/2009\/08\/28\/manual-extending-semantic-maps\/","url_meta":{"origin":326,"position":0},"title":"Manual: Extending Semantic Maps","author":"Jeroen","date":"2009-08-28","format":false,"excerpt":"I just finished creating the developers manual to extend Semantic Maps. Like the manual for Maps, it targets developers who want to add support for a mapping service to one of the features Maps and Semantic Maps support. It goes over all the key aspects of the PHP code, like\u2026","rel":"","context":"In \"Mapping\"","block_context":{"text":"Mapping","link":"https:\/\/www.entropywins.wtf\/blog\/tag\/mapping\/"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":148,"url":"https:\/\/www.entropywins.wtf\/blog\/2009\/07\/08\/semantic-maps-project-progress\/","url_meta":{"origin":326,"position":1},"title":"Semantic Maps &#8211; project progress","author":"Jeroen","date":"2009-07-08","format":false,"excerpt":"I am currently busy with the last big chunk of work for the first release of Maps and Semantic Maps, which is Open Layers integration. I'll post about this as soon as I got more concrete results. The integration of Open Layers is proving, as expected, to be more challenging\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":517,"url":"https:\/\/www.entropywins.wtf\/blog\/2009\/11\/03\/finally-maps-and-semantic-maps-0-4\/","url_meta":{"origin":326,"position":2},"title":"Finally! Maps and Semantic Maps 0.4!","author":"Jeroen","date":"2009-11-03","format":false,"excerpt":"It's been almost 2 months since Maps 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\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":697,"url":"https:\/\/www.entropywins.wtf\/blog\/2010\/02\/01\/maps-and-semantic-maps-0-5-3-released\/","url_meta":{"origin":326,"position":3},"title":"Maps and Semantic Maps 0.5.3 released","author":"Jeroen","date":"2010-02-01","format":false,"excerpt":"Today I released Maps and Semantic Maps 0.5.3. Both releases mainly include bug-fixes, some of which quite important: Fixed JavaScript bug causing all OSM maps to fail. Pretty important yeah :) Fixed issue causing a fatal error when executing a query on Special:Ask with the \"map\" format. Fixed issue causing\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":1003,"url":"https:\/\/www.entropywins.wtf\/blog\/2010\/10\/06\/maps-and-semantic-maps-0-7-beta-1\/","url_meta":{"origin":326,"position":4},"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":479,"url":"https:\/\/www.entropywins.wtf\/blog\/2009\/10\/14\/working-on-maps-and-semantic-maps-0-4\/","url_meta":{"origin":326,"position":5},"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":[]}],"jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/www.entropywins.wtf\/blog\/wp-json\/wp\/v2\/posts\/326","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=326"}],"version-history":[{"count":0,"href":"https:\/\/www.entropywins.wtf\/blog\/wp-json\/wp\/v2\/posts\/326\/revisions"}],"wp:attachment":[{"href":"https:\/\/www.entropywins.wtf\/blog\/wp-json\/wp\/v2\/media?parent=326"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.entropywins.wtf\/blog\/wp-json\/wp\/v2\/categories?post=326"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.entropywins.wtf\/blog\/wp-json\/wp\/v2\/tags?post=326"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}