UgandaIDCardModel

A class derived from IDCardModel containing details specific to the Uganda ID card document

Declaration

@objc final public class UgandaIDCardModel : IDCardModel {
    @objc final public var mrzLine1: String? { get }
    @objc final public var mrzLine2: String? { get }
    @objc final public var mrzLine3: String? { get }
    @objc final public var issuingCountryCode: String? { get }
    @objc final public var cardNumber: String? { get }
    @objc final public var cardNumberCheckDigit: Int { get }
    @objc final public var optionalData1: String? { get }
    @objc final public var optionalData2: String? { get }
    @objc final public var dateOfBirthCheckDigit: Int { get }
    @objc final public var dateOfExpiry: Date? { get }
    @objc final public var dateOfExpiryCheckDigit: Int { get }
    @objc final public var dateIssued: Date? { get }
    @objc final public var compositeCheckDigit: Int { get }
    @objc final public var surname: String? { get }
    @objc final public var names: String? { get }
    
    override final public func encode(to encoder: Encoder) throws
}

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

Date of birth

Date of expiry

MRZ line 1 & 2 composite

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