Zgodnie z Warunkami korzystania z usługi YahooMaps nie wolno przechowywać danych zebranych podczas korzystania z interfejsu API. (konkretnie viii) „NIE WOLNO:”
(vi) użyj Yahoo! Interfejsy API map z informacjami o lokalizacji, które są starsze niż 6 godzin i pochodzą z urządzenia GPS lub dowolnego innego urządzenia wykrywającego lokalizację;
(vii) użyj Yahoo! Interfejsy API Map z informacjami o lokalizacji pochodzącymi z urządzenia GPS lub dowolnego innego urządzenia wykrywającego lokalizację, w przypadku gdy takie informacje nie zostały przesłane do Twojej aplikacji lub usługi bezpośrednio przez użytkownika końcowego;
(viii) przechowuj lub zezwalaj użytkownikom końcowym na przechowywanie zdjęć map, danych map lub geokodowanych informacji o lokalizacji z Yahoo! Interfejsy API Map do wykorzystania w przyszłości;
(ix) używaj samodzielnego geokodera do jakichkolwiek celów innych niż wyświetlanie Yahoo! Mapy lub wyświetlanie punktów na Yahoo! Mapy;
(x) publikować lub wyświetlać lub zezwalać innym użytkownikom na publikowanie lub wyświetlanie dowolnych informacji o geokodowanej lokalizacji za pomocą dowolnego Yahoo! Interfejsy API Map;
Jest to zgodne z tym, co widziałem w TOS od Google, Bing, MapQuest i Yahoo. Powodem tego jest to, że korzystają bezpośrednio z możliwości przedstawienia wyników użytkownikowi końcowemu. Jeśli ich logo i „mapy Google” nie zostaną wyświetlone, nie otrzymają żadnego „ulicznego kredytu” ani ekspozycji. Tak więc ich motywacja do świadczenia usługi zniknęła. Ułatwiają korzystanie z usługi (niezwykle łatwe), ale także nakładają rozsądne ograniczenia. Tak długo, jak korzystasz z ich danych, aby zarabiać na nich pieniądze (nawet jeśli tylko dostają ujawnienie), jesteś zgodny z warunkami ich OWU. Jeśli spróbujesz ominąć te warunki, ryzykujesz, że zostaniesz odcięty w dowolnym momencie. Niezbyt szczęśliwa historia, jeśli twoja usługa opiera się na ich usłudze.
Nigdy nie korzystałem ze środowiska roboczego FME, wygląda on naprawdę potężnie (a jednocześnie bardziej skomplikowany niż jest to potrzebne), ale nadal będzie podlegał warunkom świadczenia usług przez dostawców danych. Porównaj przepływ pracy FME z tym prostym żądaniem HTTP do interfejsu API LiveAddress firmy SmartyStreets:
https://api.qualifiedaddress.com/street-address/?street=1600+Ampytheatr+Pkway+Mountain+Vew+ca&auth-token=23350695
Pobiera następujący adres i standaryzuje go (w tym oczywistą korektę pisowni), sprawdza, czy jest on możliwy do dostarczenia, a następnie geokoduje go i dzieli adres na różne komponenty, wysyłając go jako strumień JSON. (jeśli nie czytasz JSON, możesz podłączyć dane wyjściowe do formatyzatora JSON, aby uzyskać znacznie bardziej czytelne wyniki. (Możesz również użyć własnych danych w ciągu adresu URL do celów testowych)
1600 Ampytheatr Pkway Mountain Vew, Kalifornia
staje się
1600 Amfiteatr Pkwy Mountain View, CA 94043-1351
Istnieje wiele komercyjnych interfejsów API, które wykonują weryfikację adresu, SmartyStreets po prostu zdarza się, że parkuję samochód każdego ranka. (Cdyne, StrikeIron, QAS to kilka innych, które oferują podobną usługę.) Te usługi komercyjne oferują korzystanie z ich danych, które nie są związane nadmiernie restrykcyjnymi warunkami świadczenia usług. Zasadniczo możesz użyć wynikowego zestawu danych do prawie wszystkiego, co bezpośrednio konkuruje.
Masz rację, że dane geokodowania nie zmieniają się zbyt często i są czymś, co z pewnością można buforować lokalnie lub w bazie danych, aby zminimalizować liczbę żądań do serwera. Dobre myślenie.