SouthAfricaPassportModel

A class derived from PassportModel containing details specific to the South African passport

Declaration

@objc final public class SouthAfricaPassportModel : PassportModel {
    @objc final public var mrzLine1: String? { get }
    @objc final public var mrzLine2: String? { get }
    @objc final public var passportNumberCheckDigit: Int { get }
    @objc final public var dateOfBirthCheckDigit: Int { get }
    @objc final public var dateOfExpiryCheckDigit: Int { get }
    @objc final public var identityNumber: String? { get }
    @objc final public var identityNumberDateOfBirth: Date? { get }
    @objc final public var identityNumberSex: Sex { get }
    @objc final public var identityNumberCitizenship: CitizenshipType { get }
    @objc final public var identityNumberADigit: Int { get }
    @objc final public var identityNumberCheckDigit: Int { get }
    @objc final public var identityNumberPassportCheckDigit: Int { get }
    @objc final public var compositeCheckDigit: Int { 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

Public methods

Public variables

mrzLine1

@objc final public var mrzLine1: String? { get }

Example: "P<UTOERIKSSON<<ANNA<MARIA<<<<<<<<<<<<<<<<<<<"

The top MRZ line of the passport document.

mrzLine2

@objc final public var mrzLine2: String? { get }

Example: "L898902C36UTO7408122F1204159ZE184226B<<<<<10"

The bottom MRZ line of the passport document.

passportNumberCheckDigit

@objc final public var passportNumberCheckDigit: Int { get }

Example: 6

The check digit for passportNumber.

dateOfBirthCheckDigit

@objc final public var dateOfBirthCheckDigit: Int { get }

Example: 2

The check digit for dateOfBirth.

dateOfExpiryCheckDigit

@objc final public var dateOfExpiryCheckDigit: Int { get }

Example: 9

The check digit for dateOfExpiry.

identityNumber

@objc final public var identityNumber: String? { get }

Example: "8801235111088"

The identity number of the subject as found on the passport document.

identityNumberDateOfBirth

@objc final public var identityNumberDateOfBirth: Date? { get }

Example: 1988/01/23

The date of birth for the South African identity number.

identityNumberSex

@objc final public var identityNumberSex: Sex { get }

Example: Sex.Male

The sex for the South African identity number.

identityNumberCitizenship

@objc final public var identityNumberCitizenship: CitizenshipType { get }

Example: CitizenshipType.Citizen

The citizenship type for the South African identity number.

identityNumberADigit

@objc final public var identityNumberADigit: Int { get }

Example: 8

The A digit for the South African identity number.

identityNumberCheckDigit

@objc final public var identityNumberCheckDigit: Int { get }

Example: 8

The check digit for the South African identity number.

identityNumberPassportCheckDigit

@objc final public var identityNumberPassportCheckDigit: Int { get }

Example: 0

The check digit for identityNumber.

compositeCheckDigit

@objc final public var compositeCheckDigit: Int { get }

Example: 0

The check digit for the entire MRZ.

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