UgandaIDCardModel
A class derived from IDCardModel containing details specific to the Uganda ID card document
Declaration
Only relevant details are shown, boilerplate or standard Swift generated code is omitted
Summary
Public variables
Name | Type | Description | Data source |
String? | The top MRZ line of the ID card document. | MRZ | |
String? | The middle MRZ line of the ID card document. | MRZ | |
String? | The bottom MRZ line of the ID card document. | MRZ | |
String? | The issuing country code of the ID card document. | MRZ | |
String? | The card number of the ID card document. | MRZ | |
Int | The check digit for cardNumber. | MRZ | |
String? | Uncategorized data found on the ID card document. | MRZ | |
String? | Uncategorized data found on the ID card document. | MRZ | |
Int | The check digit for dateOfBirth. | MRZ | |
Date? | The date of expiry of the ID card document. | MRZ | |
Int | The check digit for dateOfExpiry. | MRZ | |
Date? | The date issued of the ID card document. | MRZ | |
Int | The check digit for the entire MRZ. | MRZ | |
String? | The surname of the subject as found on the ID card document. | MRZ | |
String? | The names of the subject as found on the ID card document. | MRZ |
Public methods
Signature | Return Type | Description |
Void | Encodes the model using the encoder provided. Used to convert the model to JSON. |
Validation
The following validation and verification applies to this document:
Check digit validation
Value | Validation type |
Card number | Check digit using MRP Checksum calculation algorithm. |
Date of birth | Check digit using MRP Checksum calculation algorithm. |
Date of expiry | Check digit using MRP Checksum calculation algorithm. |
MRZ line 1 & 2 composite | Check digit using MRP Checksum calculation algorithm. |
Component verification
As explained in Validation & Verification the following fields are verified across the front and back components of the document.
Value | Source |
Card number | Front: OCR Back: MRZ |
Public variables
mrzLine1
@objc final public var mrzLine1: String? { get }
Example: "I<UTOD231458907<<<<<<<<<<<<<<<"
The top MRZ line of the ID card document.
mrzLine2
@objc final public var mrzLine2: String? { get }
Example: "7408122F1204159UTO<<<<<<<<<<<6"
The middle MRZ line of the ID card document.
mrzLine3
@objc final public var mrzLine3: String? { get }
Example: "ERIKSSON<<ANNA<MARIA<<<<<<<<<<"
The bottom MRZ line of the ID card document.
issuingCountryCode
@objc final public var issuingCountryCode: String? { get }
Example: "UTO"
The issuing country code of the ID card document.
cardNumber
@objc final public var cardNumber: String? { get }
Example: "123456789"
The card number of the ID card document.
cardNumberCheckDigit
@objc final public var cardNumberCheckDigit: Int { get }
Example: 7
The check digit for cardNumber.
optionalData1
@objc final public var optionalData1: String? { get }
Example: "A1B2C3D4"
Uncategorized data found on the ID card document.
optionalData2
@objc final public var optionalData2: String? { get }
Example: "A1B2C3D4"
Uncategorized data found on the ID card document.
dateOfBirthCheckDigit
@objc final public var dateOfBirthCheckDigit: Int { get }
Example: 2
The check digit for dateOfBirth.
dateOfExpiry
@objc final public var dateOfExpiry: Date? { get }
Example: 2025/01/01
The date of expiry of the ID card document.
dateOfExpiryCheckDigit
@objc final public var dateOfExpiryCheckDigit: Int { get }
Example: 9
The check digit for dateOfExpiry.
dateIssued
@objc final public var dateIssued: Date? { get }
Example: 2015/01/01
The date issued of the ID card document.
compositeCheckDigit
@objc final public var compositeCheckDigit: Int { get }
Example: 6
The check digit for the entire MRZ.
surname
@objc final public var surname: String? { get }
Example: "ERIKSSON"
The surname of the subject as found on the ID card document.
names
@objc final public var names: String? { get }
Example: "ANNA MARIA"
The names of the subject as found on the ID card document.
Public methods
encode(to encoder: Encoder)
override final public func encode(to encoder: Encoder) throws
This function also calls its super function
Encodes the model using the encoder provided. Used to convert the model to JSON.
See also
Last updated