{"action":"opened","issue":{"url":"https://api.github.com/repos/NServiceKit/NServiceKit/issues/41","labels_url":"https://api.github.com/repos/NServiceKit/NServiceKit/issues/41/labels{/name}","comments_url":"https://api.github.com/repos/NServiceKit/NServiceKit/issues/41/comments","events_url":"https://api.github.com/repos/NServiceKit/NServiceKit/issues/41/events","html_url":"https://github.com/NServiceKit/NServiceKit/issues/41","id":106162496,"number":41,"title":"Format extension is case sensitive","user":{"login":"timba","id":1921020,"avatar_url":"https://avatars.githubusercontent.com/u/1921020?v=3","gravatar_id":"","url":"https://api.github.com/users/timba","html_url":"https://github.com/timba","followers_url":"https://api.github.com/users/timba/followers","following_url":"https://api.github.com/users/timba/following{/other_user}","gists_url":"https://api.github.com/users/timba/gists{/gist_id}","starred_url":"https://api.github.com/users/timba/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/timba/subscriptions","organizations_url":"https://api.github.com/users/timba/orgs","repos_url":"https://api.github.com/users/timba/repos","events_url":"https://api.github.com/users/timba/events{/privacy}","received_events_url":"https://api.github.com/users/timba/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":0,"created_at":"2015-09-12T14:11:22Z","updated_at":"2015-09-12T14:11:22Z","closed_at":null,"body":"NServiceKit has ability to control format type of response through format extensions of URL:\r\n\r\n```\r\nhost/path.json?query\r\nhost/path.xml?query\r\n```\r\n\r\nThis is a very useful option. But it has one inconsistent behavior in the way how case sensitivity is handled in extension and the rest parts of URL.\r\n\r\nBasically, all parts of incoming request URL could be configured case insensitive using routing, while format extension is expected only in lower case. If let's say one specifies such URL which corresponds to one of routes:\r\n\r\n```\r\nhost/path.XML?query\r\n```\r\n\r\nthe service returns \"service not found\" error because format not recognised.\r\n\r\nUnfortunately there is no option to configure extensions because they're hardcoded.\r\n\r\nI have created pull request #40 which implements format extension case insensitivity by transforming incoming extension to lower case. This change fixes the issue.\r\n\r\nCould you please review it?"}}