260 likes | 438 Views
Yahoo! GeoPlanet Exploring Places (without Maps). Intro. Yahoo! Geo Technologies overview The issues in and around global geo data GeoPlanet Web Service. Yahoo! Geo Technologies. Expertise Maps : global mapping platform and geospatial technologies User Location :
E N D
Intro • Yahoo! Geo Technologies overview • The issues in and around global geo data • GeoPlanet Web Service
Yahoo! Geo Technologies • Expertise • Maps: • global mapping platform and geospatial technologies • User Location: • technologies and platforms for detecting and managing user location • Geo Informatics: • global ontology of named places, geoparsing & geo-enrichment • Mission • Collect the world’s geography as it is used by the worlds people • Make Location a core component of the entire Yahoo! experience • Connect the web world with the real world • Open up Geo Platforms
Geo-Parsing • Geo Parsing • Recognition, Identification, Disambiguation and Retrieval of named places in text Sounds easy, doesn’t it?
Geo Parsing – the problems Is it a place or not a place? • Person: JoeOrlando, Paris Hilton, Jack London • Title: Miss Ohio • Movie: Letters From Iwo Jima, Gran Torino • Song: 24 Hours From Tulsa • Company & Products:Waterford Crystal, Bryn Mawr Stereo • Cars: Chevy Malibu, Chevrolet Corsica • Clothing: Panama hat, Oxfordshoes • Food:YorkshirePudding • TV: LA Law, CSI Miami, CSI New York, Chicago Hope • Magazine: デューダ (Doda)
Geo Parsing – more problems OK, so what place do you mean? • Colorado, Texas • Oregon, Alaska • Peru, Bolivia • Peru, Argentina • Washington, Nevada County, California • Kansas, Delaware County, Oklahoma • East Texas, Pennsylvania • East London, South Africa • York, New York
Springfield…doh! Springfield, Illinois Springfield, Massachusetts? Springfield, Missouri? Springfield, Vermont? Springfield, Oregon? One of the other 77 Springfields in the US? Or one of the 35 other Springfields outside the US?
Overview Yahoo! GeoPlanet is a publicly available web service for managing named places around the globe in a consistent, language-neutral way. It provides the geographic developer community with the vocabulary and grammar to traverse the world's geography, facilitating the geo-enablement of applications relevant to users and their businesses, by providing a means to recognize, locate and exploit geo-relevant data across the Web http://where.yahooapis.com You’ll need a valid YDN app ID to use GeoPlanet
GeoPlanet in a Nutshell • REST API for geographic discovery and mining • Resource of over 6m named places in 21 languages • Permanent Identifiers • Global Coverage, Consistent Framework • Integrates with Flickr, FireEagle • Answers questions such as: • What zipcodes are in the city of Chicago? • How many ‘Springfields’ are in the US? • Which is most likely to be the ‘Springfield’ I mean? • What is the unique ID (WOEID) for ‘The Sydney Opera House’
the WOEID • The ‘Where on Earth’ identifier • assigned to every named place • 32-bit • Unique • Permanent • Language neutral • London = Londres = Londra = ロンドン • Non-Repetitive • Never Recycled • Deprecations mapped to successor/replacement • Requests to the service using a deprecated WOEID are served transparently.
WOEIDs – WhereHaus: Global Geographic Ontology 23424977 Arizona 2347561 2347563 Oregon 2347596 2347587 Nevada San Mateo 2488142 Santa Cruz 12587712 2488853 Alameda 2352559 2455920 95054 Santa Clara 2488836 Mountain View 94086 94089 2442043 Los Altos 95051 2388327 Cupertino 12797538 12797147 23424676 12797535 12797150 Country Pacific States (belongs to) Colloquial 23689940 USA (ancestor) State Bay Area (belongs to) California (ancestor) Colloquial 23511738 Santa Clara (parent) County Sunnyvale 2502265 City 94085 (child) ZIP
Resources and Collections Information in GeoPlanet is organized into collections and resources • Resources are unique objects that contain multiple attributes • Resources use singular names (…place) • Collections are lists of related resources • Collections use plural names (…places)
Place Resource Usage: • Get information about a place Template: • /v1/place/{woeid} Examples: • /v1/place/1 – Get information about the World • /v1/place/23424977 – Get information about the USA • /v1/place/2487956 – Get information about San Francisco
Place Relationship Collections Usage: • Get information about places related to a place Template: • /v1/place/{woeid}/{relation} Relations • Parent 1st degree containing entity • Children 1st degree contained entities • Neighbors adjacent peer place types • Siblings peer place types sharing same parent • Belongtos collection of containing entities • Ancestors higher administrative hierarchy
Some Examples • /v1/place/1/children.type(Country) Get list of countries • /v1/place/2487956/parent Get parent place of San Francisco • /v1/place/2487956/belongtos.type(Time+Zone) Get Olson timezone name for San Francisco
Some more Examples • /v1/place/2347563/siblings;count=0 Get list of states (siblings of California) • /v1/place/23424977/children.type(State) Get list of states (state children of United States) • /v1/place/12797497/neighbors Get list of zip code adjacent to 94089
Places Collection Usage: • Find places that match a place name, and optionally a place type Templates: • /v1/places.q({placename}[,{focus}])[;count={count}][;start={start}] • {placename}must be enclosed in single quotes if it contains a comma
Places Collection Usage: • Find places that match a place name, and optionally a place type • Templates: • /v1/places$and(.q({placename}[,{focus}]),.type({placetypes}))[;count={count}][;start={start}] • {placetypes} is a list of up to seven placetypes; each placetype can be either a place type id (e.g.7) or place type name (e.g. Town)
Place Type Names and Codes • http://where.yahooapis.com/v1/placetypes • Some examples • Continent 29 • Country 12 • Admin1 8 • Admin2 9 • Admin3 10 • Town 7 • Suburb 22 • Postal Code 11 • Supername 19 • Colloquial 24 • Time Zone 31
Some Examples • /v1/places.q(Springfield)– find most likely place named “Springfield” • /v1/places.q(Springfield);count=0– find all places named “Springfield” • /v1/places.q(‘Rome,Italy’)– find Rome, Italy (note quotes around place name) • /v1/places.q(‘Roma,Italia’)– find Rome, Italy (using Italian place name) • /v1/places$and(.q(Soho),.type(Suburb));count=0– find suburbs named “Soho”
Other Concepts • Representation - The short - contains only the most essential information - The long - includes additional elements • Language • RFC4646 • Positional Consistency • Centroid and Bounding Box • Longitude/Latitude to WGS84 datum • Response Formats • xml=XML • json=JSON • geojson=GeoJSON
References • YDN landing page – http://developer.yahoo.com/geo • Documentation – http://developer.yahoo.com/geo/guide • YDN Developer Reg – http://developer.yahoo.com/ysregapp • GeoPlanet Forum - http://developer.yahoo.net/forum/index.php?showforum=31 • Yahoo! Geo Technologies Blog - http://www.ygeoblog.com
Questions • Martin Barnes – Data Manager – Yahoo! Geo Technologies – UK • barnes@yahoo-inc.com • Gary Gale – Head of UK Engineering - Yahoo! Geo Technologies • garyg@ • Walter Andrag – Lead Engineer – Yahoo! Geo Technologies – UK • walter@ • Roman Kirillov – Senior Engineer – Yahoo! Geo Technologies – UK • kirillov@ • “Lots of knowledgeable YDN people” (S. Major – April 09)
…and Finally. The future. We will be at Where2.0 in San Jose later this month http://en.oreilly.com/where2009/ Watch out for more news from Geo Technologies!
Happy Hacking Hack Day Haiku… Give me your content With love, I will geoparse And return places