X-Git-Url: http://pere.pagekite.me/gitweb/homepage.git/blobdiff_plain/77752ece3065466a6ec48f8b335449f595de11c9..f03a349f945608d664fc3c74de0b8ef06f9f68ea:/blog/archive/2011/04/04.rss diff --git a/blog/archive/2011/04/04.rss b/blog/archive/2011/04/04.rss index b6ff7f8f41..439ddc0b3e 100644 --- a/blog/archive/2011/04/04.rss +++ b/blog/archive/2011/04/04.rss @@ -300,5 +300,112 @@ navnene fra %20 til %2B, slik at de fungerer i flere nettlesere.</p> + + Initial notes on adding Open311 server API on FixMyStreet + http://people.skolelinux.org/pere/blog/Initial_notes_on_adding_Open311_server_API_on_FixMyStreet.html + http://people.skolelinux.org/pere/blog/Initial_notes_on_adding_Open311_server_API_on_FixMyStreet.html + Fri, 29 Apr 2011 10:00:00 +0200 + +<p>The last few days I have spent some time trying to add support for +the <a href="http://www.open311.org/">Open311 API</a> in the +<a href="http://www.fiksgatami.no/">Norwegian FixMyStreet service</a>. +Earlier I believed Open311 would be a useful API to use to submit +reports to the municipalities, but when I noticed that the +<a href="http://fixmystreet.org.nz/">New Zealand version</a> of +FixMyStreet had implemented Open311 on the server side, it occurred to +me that this was a nice way to allow the public, press and +municipalities to do data mining directly in the FixMyStreet service. +Thus I went to work implementing the Open311 specification for +FixMyStreet. The implementation is not yet ready, but I am starting +to get a draft limping along. In the process, I have discovered a few +issues with the Open311 specification.</p> + +<p>One obvious missing feature is the lack of natural language +handling in the specification. The specification seem to assume all +reports will be written in English, and do not provide a way for the +receiving end to specify which languages are understood there. To be +able to use the same client and submit to several Open311 receivers, +it would be useful to know which language to use when writing reports. +I believe the specification should be extended to allow the receivers +of problem reports to specify which language they accept, and the +submitter to specify which language the report is written in. +Language of a text can also be automatically guessed using statistical +methods, but for multi-lingual persons like myself, it is useful to +know which language to use when writing a problem report. I suspect +some lang=nb,nn kind of attribute would solve it.</p> + +<p>A key part of the Open311 API is the list of services provided, +which is similar to the categories used by FixMyStreet. One issue I +run into is the need to specify both name and unique identifier for +each category. The specification do not state that the identifier +should be numeric, but all example implementations have used numbers +here. In FixMyStreet, there is no number associated with each +category. As the specification do not forbid it, I will use the name +as the unique identifier for now and see how open311 clients handle +it.</p> + +<p>The report format in open311 and the report format in FixMyStreet +differ in a key part. FixMyStreet have a title and a description, +while Open311 only have a description and lack the title. I'm not +quite sure how to best handle this yet. When asking for a FixMyStreet +report in Open311 format, I just merge title an description into the +open311 description, but this is not going to work if the open311 API +should be used for submitting new reports to FixMyStreet.</p> + +<p>The search feature in Open311 is missing a way to ask for problems +near a geographic location. I believe this is important if one is to +use Open311 as the query language for mobile units. The specification +should be extended to handle this, probably using some new lat=, lon= +and range= options.</p> + +<p>The final challenge I see is that the FixMyStreet code handle +several administrations in one interface, while the Open311 API seem +to assume only one administration. For FixMyStreet, this mean a +report can be sent to several administrations, and the categories +available depend on the location of the problem. Not quite sure how +to best handle this. I've noticed +<a href="http://seeclickfix.com/open311/">SeeClickFix</a> added +latitude and longitude options to the services request, but it do not +solve the problem of what to return when no location is specified. +Will have to investigate this a bit more.</p> + +<p>My distaste for web forums have kept me from bringing these issues +up with the open311 developer group. I really wish they had a email +list available via <a href="http://www.gmane.org/">Gmane</a> to use for +discussions instead of only +<a href="http://lists.open311.org/groups/discuss">a forum<a/>. Oh, +well. That will probably resolve itself, one way or another. I've +also tried visiting the IRC channel #open311 on FreeNode, but no-one +seem to reply to my questions there. This make me wonder if I just +fail to understand how the open311 community work. It sure do not +work like the free software project communities I am used to.</p> + + + + + Experimental Open311 API for the mySociety fixmystreet system + http://people.skolelinux.org/pere/blog/Experimental_Open311_API_for_the_mySociety_fixmystreet_system.html + http://people.skolelinux.org/pere/blog/Experimental_Open311_API_for_the_mySociety_fixmystreet_system.html + Sat, 30 Apr 2011 17:20:00 +0200 + +<p>Today, the first draft implementation of an +<a href="http://www.open311.org/">Open311 API</a> for the Norwegian +service <a href="http://www.fiksgatami.no/">FiksGataMi</a> started to +work. It is only available on the developer server for now, and I +have not tested it using any existing Open311 client (I lack the +platforms needed to run the clients I have found so far), but it is +able to query the database and extract a list of open and closed +requests within a given category and reported to a given municipality. +I believe that is a good start to create a useful service for those +that want to do data mining on the requests submitted so far.</p> + +<p>Where is it? Visit +<a href="http://fiksgatami-dev.nuug.no/open311.cgi/v2/">http://fiksgatami-dev.nuug.no/open311.cgi/v2/</a> +to have a look. Please send feedback to the +<a href="http://lists.nuug.no/mailman/listinfo/fiksgatami">fiksgatami +(at) nuug.no</a> mailing list.</p> + + +