diff options
Diffstat (limited to '')
| -rw-r--r-- | js/dojo-1.6/dojox/rpc/SMDLibrary/geonames.smd | 263 |
1 files changed, 263 insertions, 0 deletions
diff --git a/js/dojo-1.6/dojox/rpc/SMDLibrary/geonames.smd b/js/dojo-1.6/dojox/rpc/SMDLibrary/geonames.smd new file mode 100644 index 0000000..04f04db --- /dev/null +++ b/js/dojo-1.6/dojox/rpc/SMDLibrary/geonames.smd @@ -0,0 +1,263 @@ +{ + + // JSON REST services provided by geonames.org + // adapted from: http://www.geonames.org/export/JSON-webservices.html + // http://creativecommons.org/licenses/by/3.0/ + // INCOMPLETE IMPLEMENTATION + + "SMDVersion":"2.0", + "id":"/geonames", + "transport":"JSONP", + "envelope":"URL", + "target": "http://ws.geonames.org/", + + "parameters" : [ + {name:"type", optional: false, "default":"JSON"} + ], + + "services":{ + getCountryInfo:{ + // Result : returns info about a country such as name, population, etc. + // If country parameter is not specified, that information is returned for + // every country + "target": "countryInfoJSON", + "parameters": [ + { name: "country", type:"STRING", optional: true }, + { name: "lang", type:"STRING"}, // default: "en" + { name: "maxRows", type:"INTEGER", optional: true } // default: 10 + ] + }, + + getCities:{ + // Result : returns a list of cities and placenames in the bounding box, + // ordered by relevancy (capital/population). Placenames close together + // are filterered out and only the larger name is included in the resulting list. + "target": "citiesJSON", + "parameters": [ + { name: "north", type:"FLOAT"}, + { name: "south", type:"FLOAT"}, + { name: "east", type:"FLOAT"}, + { name: "west", type:"FLOAT"}, + { name: "lang", type:"STRING"}, // default: "en" + { name: "maxRows", type:"INTEGER", optional: true } // deault: 10 + ] + }, + + "getQuakes":{ + // Result : returns a list of earthquakes, ordered by magnitude + "target" : "earthquakesJSON", + "parameters" : [ + // bounding box coords: + { name: "north", type:"FLOAT" }, + { name: "south", type:"FLOAT" }, + { name: "east", type:"FLOAT" }, + { name: "west", type:"FLOAT" }, + { name: "date", type:"STRING",optional: true }, // yyyy-MM-dd + { name: "minMagniture", type:"INTERGER",optional: true }, + { name: "maxRows", type:"INTEGER", optional: true } // deault: 10 + ] + }, + + "getWeather":{ + // Weather data is provided in the METAR (METeorological Aerodrome Report) format. + // Result : returns a list of weather stations with the most recent weather observation + "target" : "weatherJSON", + "parameters" : [ + { name: "north", type:"FLOAT" }, + { name: "south", type:"FLOAT" }, + { name: "east", type:"FLOAT" }, + { name: "west", type:"FLOAT" }, + { name: "maxRows", type:"INTEGER",optional:true } // deault: 10 + ] + }, + + "getWeatherByICAO":{ + // Result : returns the weather station and the most recent weather observation for the ICAO code + "target": "weatherIcaoJSON", + "parameters": [ + { name:"ICAO", type:"STRING" } + ] + }, + + "getWeatherByCoords":{ + // Result : returns a weather station with the most recent weather observation + "target": "findNearByWeatherJSON", + "parameters": [ + { name:"lat", type:"FLOAT" }, + { name:"lng", type:"FLOAT" } + ] + }, + + "getChildren":{ + // Returns the children for a given geonameId. The children are the + // administrative divisions within an other administrative division. + // Like the counties (ADM2) in a state (ADM1) or also the countries + // in a continent. + "target": "childrenJSON", + "parameters": [ + { name:"geonameId", type:"INTEGER" } + ] + }, + + "getHierarchy":{ + // Result : returns a list of GeoName records, ordered by hierarchy + // level. The top hierarchy (continent) is the first element in the list + "target": "hierarchyJSON", + "parameters": [ + { name:"geonameId", type:"INTEGER" } + ] + }, + + "getNeighbours":{ + // The neighbourhood for US cities. Data provided by Zillow under cc-by-sa license. + "target":"neighboursJSON", + "parameters": [ + { name:"geonameId", type:"INTEGER" } + //{ name:"lat", type:"FLOAT" }, + //{ name:"long", type:"FLOAT" } + ] + }, + + "getNeighbourhood":{ + // returns the neighbourhood for the given latitude/longitude + // Example http://ws.geonames.org/neighbourhood?lat=40.78343&lng=-73.96625 + "target":"neighbourhoodJSON", + "parameters":[ + { name:"lat", type:"FLOAT" }, + { name:"lng", type:"FLOAT" }, + { name:"radius", type:"FLOAT" } + ] + }, + + "getSiblings":{ + // Result : returns a list of GeoNames records that have the same + // administrative level and the same father + "target":"siblingsJSON", + "parameters": [ + { name:"geonameId", type:"INTEGER" } + ] + }, + + "getCountryCode":{ + // returns the iso country code for the given latitude/longitude + // With the parameter type=xml this service returns an xml document + // with iso country code and country name. The optional parameter + // lang can be used to specify the language the country name should + // be in. JSON output is produced with type=JSON + "target":"countryCode", + "parameters": [ + { name:"lat", type:"FLOAT" }, + { name:"lng", type:"FLOAT" }, + { name:"lang", type:"STRING",optional:true }, + { name:"radius", type:"FLOAT" } + ] + }, + + "getCountrySubdivision":{ + // returns the country and the administrative subdivison (state, province,...) for the given latitude/longitude + // Example http://ws.geonames.org/countrySubdivisionJSON?lat=47.03&lng=10.2 + "target":"countrySubdivisionJSON", + "parameters":[ + { name:"lat", type:"FLOAT" }, + { name:"long", type:"FLOAT" }, + { name:"radius", type:"FLOAT" } + ] + }, + + "getWikipediaBoundingBox":{ + // returns the wikipedia entries within the bounding box as xml document + // Example http://ws.geonames.org/wikipediaBoundingBoxJSON?north=44.1&south=-9.9&east=-22.4&west=55.2 + "target":"wikipediaBoundingBoxJSON", + "parameters":[ + { name: "north", type:"FLOAT" }, + { name: "south", type:"FLOAT" }, + { name: "east", type:"FLOAT" }, + { name: "west", type:"FLOAT" }, + { name: "lang", type:"STRING",optional:true }, // default: "en" + { name: "maxRows", type:"INTEGER",optional:true } // default: 10 + ] + }, + + "searchWikipedia":{ + // returns the wikipedia entries found for the searchterm as xml document + // Example http://ws.geonames.org/wikipediaSearchJSON?q=london&maxRows=10 + "target":"wikipediaSearchJSON", + "parameters":[ + { name: "q", type:"STRING" }, // place name? + { name: "title", type:"STRING" }, // optional + { name: "lang", type:"FLOAT",optional:true }, // de or en + { name: "maxRows", type:"INTEGER",optional:true } // default: 10 + ] + }, + + "getTimezone":{ + // the timezone at the lat/lng with gmt offset (1. January) and dst offset (1. July) + "target":"timezoneJSON", + "parameters":[ + { name:"lat", type:"FLOAT" }, + { name:"lng", type:"FLOAT" } + ] + }, + + "search":{ + // returns the names found for the searchterm as xml or json document, + // the search is using an AND operator + "target":"searchJSON", + "parameters":[ + // exhaustive list. see: http://www.geonames.org/export/geonames-search.html + { name:"q", type:"STRING" }, + { name:"name", type:"STRING" }, + { name:"name_equals", type:"STRING" }, + // optional: + { name:"maxRows", type:"INTEGER",optional:true }, // def: 100, max:1000 + { name:"startRow", type:"INTEGER",optional:true }, // def: 0 + { name:"country", type:"STRING",optional:true }, // iso-3166, def: all + /* name:"adminCode..." */ + { name:"featureClass", type:"STRING",optional:true}, // ? multi, enum(a,h,l,p,r,s,t,u,v) + { name:"featureCode", type:"STRING",optional:true}, + { name:"lang", type:"STRING",optional:true}, // iso-636 + { name:"type", type:"STRING",optional:true}, // xml | json | rdf, def: xml + { name:"style", type:"STRING",optional:true }, // SHORT,MEDIUM,LONG,FULL def: MEDIUM + { name:"isNamedRequired", type:"BOOLEAN", optional:true } + ] + }, + + "postalCodeLookup":{ + // returns a list of places for the given postalcode in JSON format + // Example http://ws.geonames.org/postalCodeLookupJSON?postalcode=6600&country=AT + "target":"postalCodeLookupJSON", + "parameters":[ + { name:"postalcode", type:"STRING" }, + { name:"country", type:"STRING",optional:true}, + { name:"maxRows", type:"INTEGER", optional:true }, // def: 20 + { name:"charset", type:"STRING",optional:true } // def: utf-8 + ] + }, + + "postalCodeSearch":{ + "target":"postalCodeSearchJSON", + "parameters":[ + { name:"postalcode", type:"STRING",optional:true}, // one or the other + { name:"placename", type:"STRING",optional:true }, // one or the other + { name:"country", type:"STRING",optional:true}, + { name:"style", type:"STRING",optional:true}, // def: MEDIUM + { name:"maxRows", type:"INTEGER",optional:true}, // def: 20 + { name:"charset", type:"STRING",optional:true} // def: utf-8 + ] + } + + // TODO: implement: + // findNearby, + // findNearbyPlaceName + // findNearbyPostalCodes, + // findNearbyStreets, + // findNearByWeather + // findNearByWikipedia + // findNeareastAddress + // findNearestInterestion + // get + // gtop30 + // srtm3 + + } // end services +} |
