krickert opened a new pull request, #1154: URL: https://github.com/apache/opennlp/pull/1154
Adds the location-intelligence seam and its first implementation. **Contracts** in opennlp-api (`opennlp.tools.geo`): `GeoPoint`, `GazetteerEntry`, `AttributeValue`, `Gazetteer`, `GeoResolution`, `Geocoder`. Generic in shape: the dataset is an implementation, never the contract. Attributes are provenance-tagged, with a documented external-id key convention (`fips`, `geoid`, `zcta`, `wikidata`, `geonames`, `whosonfirst`) so downstream enrichment joins on stable keys, and ISO 3166-1 alpha-2 is the region join key shared with the emoji annotation layer. No new dependencies. **Implementation** in a new `opennlp-extensions/opennlp-geo` module: - `BundledGazetteer` over a project-authored 7,342-row public-domain table derived from Natural Earth Populated Places: fail-loud cursor parser, lazy single load, matching through the shared NFC/case/accent folding chain. - `PopulationPriorGeocoder`: deterministic population-plus-feature-class ranking, documented heuristic confidence, unresolved mentions omitted. LICENSE gains the Natural Earth public-domain section; audit tests enforce the data file's documented claims row by row. **Data derivation:** Natural Earth 1:10m Populated Places via the nvkelso GitHub mirror (upstream commit 789c9904, VERSION 5.2.0-pre), NAMEASCII canonical, wikidata/geonames/whosonfirst ids carried as published, no fabricated fips/geoid/zcta. Verification: api 328/0 (42 new), opennlp-geo 55/0, 19-module reactor verify green. Follow-ups (deliberately out of this PR): opennlp-distr wiring plus the binary LICENSE section, a context-minimization `Geocoder`, the Overture and GeoNames tiers, and the gRPC mirror after one review round. https://issues.apache.org/jira/browse/OPENNLP-1879 -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected]
