pelias / pelias/api

Problem with address parser (libpostal,elasticsearch)

Open
#1,235 1 comment 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
JavaScript
Stars
259
Forks
168
Avg merge
6h 15m
Merged PRs (30d)
1

Description

As I mantioned in title i have a some problem with parsing addresses corectly. I use Pelias geocoder in Poland where lots of address don't have a street name. So my problem is that when i want to geocode for exampe address "192 Droginia " where "Droginia " is name of village and "192" i house number the geocoder does not return correct value or return nothing, despite the fact that in the database there is such an addressees with specified coordinates (Openaddress data). If i geocode address with street name ever everything work correctly. The next problem is that when i try to geocode the addres above the api automaticaly change the parser from "libpostal" to "addressit" despite the fact that i set up in pelias.json file the "text_analyzer" to libpostal.
I tested this on Pelias in Docker and Pelias installed locally.

localhost:3100/v1/search?text=192%20Droginia
and api returned :
{"id":"pl/malopolski:3778b66c6a4ae1fa","gid":"openaddresses:address:pl/malopolski:3778b66c6a4ae1fa","layer":"address","source":"openaddresses","source_id":"pl/malopolski:3778b66c6a4ae1fa","name":"192 Ulica Śląska","housenumber":"192","street":"Ulica Śląska","postalcode":"00-000","confidence":0.1,"match_type":"unknown","distance":34.144,"accuracy":"point","label":"192 Ulica Śląska"}},{"type":"Feature","geometry":{"type":"Point","coordinates":[19.920276,49.995343]},"properties":{"id":"pl/malopolski:2ded7004c99d9bc9","gid":"openaddresses:address:pl/malopolski:2ded7004c99d9bc9","layer":"address","source":"openaddresses","source_id":"pl/malopolski:2ded7004c99d9bc9","name":"192B Ulica Zakopiańska","housenumber":"192B","street":"Ulica Zakopiańska","postalcode":"00-000","confidence":0.1,"match_type":"unknown","distance":17.553,"accuracy":"point","label":"192B Ulica Zakopiańska"}},{"type":"Feature","geometry":
but there is not this point that i woud like to geocode and have in database
the record from database :

LON : 20.0059715 | LAT : 49.8475493 |NUMBER: 192 |STREET   | UNIT   |CITY: Droginia |DISTRICT: myślenicki, Myślenice |REGION: małopolskie |POSTCODE: 00-000 |ID: 56495543 |HASH: 2ddf2ac613d44ded |  

If i geocode address with street name everething work corectly.
What should i do to fix this problem ?
Thanks for help in advance.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Reproduce the request at /v1/search?text=192%20Droginia using the reported Docker or local setup, then inspect pelias.json and the parser-selection path for the libpostal-to-addressit change. Done means the address without a street name resolves to the supplied Droginia record while the configured text analyzer remains effective.

Written by the indexing model from the issue text.

Assessment

Tech stack
docker, elasticsearch, javascript
Domain
api, backend, search
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.