Hello,
We are using JMRTD 0.7.37 and building a TD3 MRZ, we verify that when personalNumber checkdigit is 0 it is replaced by '<'.
We read Doc9303 part 4 8º edition and saw that this should only by done when personalNumber is empty and all data is replaced by '<'.
In our case, personalNumber wasn't empty but checkdigit is 0.
Also, we saw on MRZInfo.class, this comment on checkdigit calculation
*
if (documentType == DocumentType.TD3 && optionalData1.length() < 15) {
this.personalNumberCheckDigit = checkDigit(mrzFormat(optionalData1, 14), true); / FIXME: Uses '<' over '0'. Where specified? /
}*
When the calculation of checkdigit results to 0 and personal number is not empty, this value should not be replaced by '<'.
Thank you for your support.
Best regards,
Ivo Ferreira
Anonymous
Hi Ivo,
Version 0.7.37 is pretty old. Do you see the same behavior in 0.8.3?