osmcode / libosmium

Fast and flexible C++ library for working with OpenStreetMap data.
https://osmcode.org/libosmium/
Boost Software License 1.0
472 stars 114 forks source link

Fractional seconds in XML timestamps #364

Closed mibe closed 1 year ago

mibe commented 1 year ago

What version of libosmium are you using?

2.19.0 (in conjunction with osmium 1.15.0)

What operating system and compiler are you using?

Debian 12 with osmium-tool package

Tell us something about your system

irrelevant

What did you do exactly?

osmium sort srtm.osm -o asdf.osm

What did you expect to happen?

Osmium / libosmium should successfully parse the attached file. srtm.osm.zip

What did happen instead?

can not parse timestamp: XXX

What did you do to try analyzing the problem?

In osmium.detail.parse_timestamp() fractional seconds are not supported.

So I was wondering if the OSM XML is using xs:dateTime for the timestamps? Because the XML spec allows an (optional) fractional part of the seconds. Maybe they could be supported (and technically ignored) in libosmium too?

joto commented 1 year ago

Fractional seconds are not supported, because Osmium is for OSM data and OSM data doesn't have them. If you have other data that has more detailed timestamps, you have to convert that data somehow.

See also osmcode/osmium-tool#267.

mibe commented 1 year ago

Thanks for the clarification!