Permanent ID: Unterschied zwischen den Versionen
Aus Geoinformation HSR
Stefan (Diskussion | Beiträge) K |
Stefan (Diskussion | Beiträge) K |
||
Zeile 15: | Zeile 15: | ||
where: | where: | ||
* N,W,R stands for Node, Way, or Relation. | * N,W,R stands for Node, Way, or Relation. | ||
− | * osm_id is left-padded with zeros to get 10 chars ("digits") | + | * osm_id is left-padded with zeros to get 10 chars ("digits"). |
− | * version is 4 | + | * version is 4 digits left padded with zeros. |
− | * coordinates have 5 fixed decimal places (lat is 2 and lon is 3 | + | * coordinates have 5 fixed decimal places (lat is 2 and lon is 3 digits wide, both are signed and left-padded with zeros). |
Example: "Schloss Kyburg" (Castle Kyburg) has relation 1169711, | Example: "Schloss Kyburg" (Castle Kyburg) has relation 1169711, |
Version vom 4. April 2019, 23:54 Uhr
This is an unofficial proposal for a "permanent ID" for OpenStreetMap (OSM).
See https://wiki.openstreetmap.org/wiki/Permanent_ID for a more official state of discussions.
The goal is to get an opaque fixed length ASCII string. And that are the design considerations:
- The OSM id alone is not stable enough (as probably most agree); and it can represent many concepts (and that's by design in OSM).
- The version no. of the object is needed which makes clear which tags are (or have been) referred to.
- Coordinates are needed, because a change of the geometry does not increment the version number.
So a stable Permanent ID could have the following form (which leads to a fixed length string of 35 chars in total):
[N|W|R]<osm_id>#<version>[+|-]<lon>[+|-]<lat>
where:
- N,W,R stands for Node, Way, or Relation.
- osm_id is left-padded with zeros to get 10 chars ("digits").
- version is 4 digits left padded with zeros.
- coordinates have 5 fixed decimal places (lat is 2 and lon is 3 digits wide, both are signed and left-padded with zeros).
Example: "Schloss Kyburg" (Castle Kyburg) has relation 1169711, version #5 at coordinates 47.4584, 8.74343 which becomes following Permanent ID:
R0001169711#0005+47.45840+008.74343