This box suggests the current best answer |
...
<description of the changes>
Who | What | Decision | |
|---|---|---|---|
| 1 | |||
| 2 | |||
| 3 |
Yes, there is comprehensive implementation documentation available for OpenLR. Here are some key resources:
The OpenLR GitHub repository contains the reference implementation of OpenLR. It includes modules for encoding and decoding OpenLR locations, as well as tools for map access and data handling [1].
The HOWTO.md file in the GitHub repository provides detailed instructions on how to encode and decode OpenLR locations on digital maps [2].
INRIX offers documentation on Dynamic Location Referencing, which includes information on OpenLR. This resource provides insights into the implementation tools available, such as the Java-based encoder/decoder and map access layer [3].
These resources should help you get started with implementing OpenLR in your projects.
References
[1] GitHub - tomtom-international/openlr: Reference implementation of ...
[2] openlr/HOWTO.md at master · tomtom-international/openlr - GitHub
[3] Dynamic Location Referencing - INRIX documentation
<description of the changes>
Who | What | Decision | |
|---|---|---|---|
| 1 | |||
| 2 | |||
| 3 |
The foundational document that explains:
The encoding/decoding process
Location reference types
Binary and XML formats
Algorithms for location matching
📍 Link: https://www.openlr.org/docs/OpenLR-whitepaper.pdf
TomTom’s open-source Java implementation of OpenLR
Includes:
Encoding/decoding tools
Sample map and test data
CLI tools
Great for understanding the logic and getting started with your own integration
📍 GitHub: https://github.com/TomTom/openlr
The whitepaper and GitHub repo include helpful flow diagrams and pseudo-code for:
Finding candidate locations
Generating location references
Decoding them onto different maps
This helps if you're implementing OpenLR in a language other than Java (e.g., C++, Python, JavaScript).
While OpenLR isn't widely discussed in public forums, you can find:
Example implementations or forks on GitHub (search "OpenLR").
Occasional integration notes in projects using OpenStreetMap or routing engines like GraphHopper or OSRM.
OpenLR is a specification and library, not a hosted API or web service.
You typically:
Integrate the encoder on your side (to generate references).
Transmit the encoded data (binary or base64).
Use the decoder on the recipient side to map-match to their own map data.
If your use case goes beyond what the core OpenLR offers, you might consider:
OpenLR+ (an extended version used internally by some companies)
Custom adaptations for area locations, GeoCoordinate encoding, etc.