Tutorial sobe os Serviços Yahoo!
PlaceMaker and Flickr API
DEI-IST 2009/2010
Organização do Tutorial

Yahoo! PlaceMaker e Yahoo! Geo Services
 Apresentação dos serviços


Java Topology Suite (JTS)



Invocação dos serviços através de XQuery
Introdução à biblioteca de software
Invocação da funcionalidades desde XQuery
Informação geo-referenciada no Flickr
 Introdução à API do Flickr

Invocação dos serviços através de XQuery
Parte 1
YAHOO! PLACEMAKER
Informação geográfica em textos

Reconhecer nomes de locais



Desambiguar nomes de locais reconhecidos




Delimitar ocorrências de nomes de locais
Problemas de ambiguidade geo/non-geo
Associar nomes de locais a coordenadas (ou outros ids)
Base de dados de nomes de locais (gazetteer)
Problemas de ambiguidade geo/geo
Abordagens recentes baseadas em técnicas de machine learning

Martins et al. (2010) A Machine Learning Approach for Handling Place References in
Text. In Proceedings of AGILE-2010.
http://developer.yahoo.com/geo
/placemaker/
Yahoo! PlaceMaker Service

Cobertura global, suporta 21 línguas
Utilização do serviço requer uma “API Key”

Para a frase “Walter Gropius was born in Berlin.”


Para o URL http://en.wikipedia.org/wiki/Walter_Gropius
Parâmetros do Serviço PlaceMaker
Parâmetros do Serviço PlaceMaker

Serviço acessível em http://wherein.yahooapis.com

Documentação detalhada sobre o formato de saída em
http://developer.yahoo.com/geo/placemaker/guide/apireference.html#api-summary
Invocação do serviço com XQuery

Função de extensão gti:htmlpost()


Executa um pedido HTTP POST ao URL do PlaceMaker
Linguagem XQuery facilita manipulação dos resultados


Filtragem dos locais reconhecidos num documento
Manipulação das coordenadas associadas aos locais (JTS API)
Serviço Yahoo! GeoPlanet

Serviço Web de acesso a uma base de dados de locais


http://developer.yahoo.com/geo/geoplanet/
Informação detalhada sobre nomes de locais ou woeids

Hierarquia administrativa e caixas delimitadoras
Parte 2
JAVA TOPOLOGY SUITE
Java Topology Suite

Uma API Java para processamento de representações de informação
geográfica (i.e., geometrias)

Implementa OpenGIS Consortium Simple Features for SQL


Modelo completo para geometria linear 2D
 Point, LineString, LinearRing, Polygon (with holes)
 MultiPoint, MultiLineString, MultiPolygon,
 GeometryCollection
Computação da relação espacial entre duas geometrias


Operações de conjuntos “Booleanas”
Modelo das 9 intersecções (DE-9IM)



Interior, Boundary, Exterior
Named predicates: Equals, Disjoint, Intersects, Touches, Crosses, Within,
Contains, Overlaps
Outras operações: Centroid, ConvexHull, Distance, ...
Java Topology Suite

URL : http://sourceforge.net/projects/jts-topo-suite

Documentação: http://tsusiatsoftware.net/jts/main.html

Invocação através da linguagem XQuery
Funções de extensão “geo”

Criação de geometrias


Funções de I/O



fromWKT(), toWKT(), fromGML(), toGML(), ...
Relações entre geometrias e operações “set-theoretic”

within(), touches(), overlaps(), intersects(), ...

union(), intersection(), difference(), ...
Outras operações de geometria computacional


createPoint(), createLine(), createPolygonFromPoints(), ...
distance(), convexHull(), area(), ...
Documentação na página da cadeira...
Parte 3
A API DO FLICKR E A
BIBLIOTECA FLICKRJ
A API do Flickr

O Flickr é um site de partilha de fotos:
 Fotos
têm timestamps
 Fotos estão associadas a tags e descriões textuais
 Muitas fotos estão associadas a coordenadas

Fonte de dados muito interessante para
aplicações de geo-processamento.

API de serviços (e um wrapper em Java).
A API do Flickr

Documentação em http://www.flickr.com/services/api/

Métodos da API agrupados por classe

Informação relacionada com utilizadores (people)


Pesquisa e informação sobre fotografias (photos)


flickr.photos.getWithGeoData , flickr.photos.search , flickr.photos.getInfo
Metadados sobre fotografias (photos.geo)


flickr.people.findByUsername , flickr.people.findByEmail
flickr.photos.geo.getLocation , flickr.photos.geo.photosForLocation
Vários critérios de pesquisa em flickr.photos.search

tags, text, bbox, woe_id, lat, lon, radius, ...
A API do Flickr

Invocação em programas Java
 Wrapper

sobre a API : http://flickrj.sourceforge.net/
Invovação através de XQuery
Um exemplo mais complexo...
Próximos passos...

Visualizar locais mencionados em documentos textuais
através do Google Earth, gerando um documento KML com
os resultados do PlaceMaker.

Procurar fotos relacionadas com os locais mencionados
num documento textual, através dos resultados do
PlaceMaker e usando a API do Flickr.

Visualizar o polígono correspondente à área associada a
um conceito geograficamente vago (e.g., baixa de Lisboa),
através do Google Earth e usando dados do Flickr.
Questões?
Download

Tutorial sobre Yahoo! PlaceMaker e Flickr API