I have a Bosnian passport with Binary-Coded Decimal (BCD) date fields. jMRTD already handles this case in AdditionalDetailDataGroup#readFullDate(...).
However, the passport’s DG12 file also contains the Date/Time of Personalization. Since this is not a simple yyyyMMdd date but a yyyyMMddHHmmss datetime, it is currently read as a raw string via AdditionalDetailDataGroup#readString(...), so the BCD fixup implemented in readFullDate(...) is not applied.
The fix should be fairly straightforward: introduce a readFullDateTime method and use it instead of readString(...). Alternatively, readFullDate(...) could be made more generic by adding an expected-length parameter.
I’d love to contribute this fix, but I’m unfamiliar with SVN and I’m not sure whether it even has a pull-request workflow.
Anonymous
Rev 1910.