Description of Results
On this page, find detailed information about the DocumentReaderResults class.
- Overview
- Document Type Result
- Text Result
- Graphic Result
- Image Quality Group
- Barcode Result
- Document, MRZ, Barcode Position
- Status
- Authenticity Result
- RFID Result
- Visible Digital Seal for Non Constrained environments
Overview
Once the scanning process is completed, the DocumentReaderResults
instance is received.
The result contains the following result types:
documentReaderResults
└── documentType
└── textResult
└── graphicResult
└── documentPosition
└── barcodePosition
└── mrzPosition
└── imageQualityGroup
└── overallResult
└── authenticityResults
└── rfidSessionData
└── chipPage
└── resolutionType
└── barcodeResult
└── processingFinishedStatus
└── morePagesAvailable
└── elapsedTime
└── elapsedTimeRFID
└── rawResult
Result type | Description |
---|---|
documentType | document type result |
textResult | text result |
graphicResult | graphic result |
documentPosition | position of the found Barcode |
mrzPosition | position of the MRZ area |
imageQualityGroup | image quality result |
overallResult | summary of all results, one of the RGLCheckResult enumeration values. If at least one result status is negative, the overall result is negative. DEPRECATED in DocumentReader 6.1 Use status.overallStatus instead. |
authenticityResults | authenticity result |
rfidSessionData | result of work with the SDK within the context of the current communication session with an electronic document |
chipPage | indicates the presence and location of an RFID chip in a document. 0—no RFID chip; 1—the chip is located in the document data page; 2—the chip is located in the back page or inlay of the document. Requires Document Type recognition, otherwise returns 1 by default. |
resolutionType | image resolution, one of the ResolutionType enumeration values |
barcodeResult | barcode result |
morePagesAvailable | indicates if a document has more pages to be processed, for example, ID card's front and back side. Requires the Document Type recognition, otherwise it is 0 by default. |
elapsedTime | time the document processing has taken, ms |
elapsedTimeRFID | time the RFID chip processing has taken, ms |
rawResult | result in the initial raw view |
Document Type Result
The DocumentReaderDocumentType
class contains the following parameters:
documentType
└── name
└── documentID
└── ICAOCode
└── FDSID
└── dType
└── dFormat
└── dMRZ
└── dDescription
└── dYear
└── dCountryName
└── pageIndex
Parameter | Description |
---|---|
name | document type name |
documentID | document type numeric code |
ICAOCode | document issuing country ICAO Code |
FDSID | array of IRS document identifiers |
dType | document type, one of the DiDocType enumeration values |
dFormat | document format, one of the RGLDocFormat enumeration values |
dMRZ | flag for MRZ presence on the document |
dDescription | document description text |
dYear | year the document was issued |
dCountryName | name of the country that issued the document |
pageIndex | index of the document page from which the result is received |
Text Result
The DocumentReaderTextResult
class contains the following parameters:
textResult
└── fields
| └── fieldType
| └── fieldName
| └── lcid
| └── values
| | └── sourceType
| | └── value
| | └── originalValue
| | └── boundRect
| | └── validity
| | └── comparison
| | └── pageIndex
| | └── probability
| └── status
| └── getValue
| └── lcidName
└── status
Parameter | Description |
---|---|
fieldType | field logical type, one of the FieldType values. Enumeration contains identifiers determining the logical type of the text data obtained while reading MRZ, document filling fields, and barcodes. |
fieldName | title of the fieldType |
lcid | ID of language-culture to differentiate one field of the same type from another. The LCID enumeration contains available enumeration values. |
sourceType | identifies the zone from which data was extracted. The RGLResultType enumeration contains enumeration values. |
value | value obtained |
originalValue | checks whether a value has been modified or not and returns the original value |
boundRect | field rectangular area coordinates on the image. For the document filling fields reading, the result is located in visualOCRExtended (the RGLResultType enumeration). |
validity | identifies the verification result. The RGLFieldVerificationResult enumeration contains possible conditions. |
comparison | contains a comparison result of the field value that is received from several zones, where the key is one of the RGLResultType enumeration values and the value is one of the RGLFieldVerificationResult enumeration values. |
pageIndex | index of the document page from which the result is received |
probability | symbol recognition probability (0–100, %) |
status | stores one of the RGLCheckResult enumeration which contains identifiers that determine the result of a single document security check |
lcidName | title of the lcid |
Graphic Result
The DocumentReaderGraphicResult
class contains the following parameters:
graphicResult
└── fields
| └── sourceType
| └── fieldType
| └── fieldName
| └── boundRect
| └── value
| └── lightType
| └── lightName
| └── pageIndex
Parameter | Description |
---|---|
sourceType | identifies the zone from which data was extracted. The RGLResultType class contains enumeration values. |
fieldType | field logical type, one of the RGLGraphicFieldType values. Enumeration contains identifiers determining the logical type of the graphic data obtained while reading the document filling fields or barcodes. |
fieldName | title of the fieldType |
boundRect | field rectangular area coordinates on the image. For the document filling fields reading, the result is visualOCRExtended (RGLResultType enumeration). |
value | value obtained |
lightType | light type, one of the RGLGraphicFieldLight values. The enumeration contains a set of identifiers used for identifying the document reader possibilities, specifying lighting schemes for scanning, etc. |
lightName | title of the lightType |
pageIndex | index of the document page from which the result is received |
Image Quality Group
The ImageQualityGroup
class contains the following parameters:
imageQuality
└── count
└── result
└── imageQualityList
| └── type
| └── result
| └── featureType
| └── boundRects
Parameter | Description |
---|---|
count | number of results in the list |
result | overall check result, one of the RGLCheckResult enumeration values |
imageQualityList | array of single check result pointers that contains:
|
Barcode Result
The DocumentReaderBarcodeResult
class contains the following parameters:
barcodeResult
└── fields
| └── barcodeType
| └── status
| └── pdf417Info
| | └── errorLevel
| | └── columns
| | └── rows
| └── data
| └── pageIndex
Parameter | Description |
---|---|
barcodeType | decoded barcode type, one of the RGLBarcodeType enumeration values |
status | barcode reading result, one of the RGLBarcodeResult enumeration values or another value, which is SDK internal error code |
pdf417Info | information about the PDF417 barcode that includes the following parameters:
|
data | results of reading data from barcode modules |
pageIndex | index of the document page from which the result is received |
Document, MRZ, Barcode Position
The Position
class contains the following parameters:
documentPosition / mrzPosition / barcodePosition
└── size
| └── width
| └── height
└── center
| └── x
| └── y
└── leftTop
| └── x
| └── y
└── leftBottom
| └── x
| └── y
└── rightTop
| └── x
| └── y
└── rightBottom
| └── x
| └── y
└── angle
└── perspectiveTr
└── objArea
└── objIntAngleDev
└── resultStatus
└── docFormat
└── pageIndex
└── dpi
└── inverse
Parameter | Description |
---|---|
size | document width and height |
center | document center coordinates |
leftTop | document left top corner coordinates |
leftBottom | document left bottom corner coordinates |
rightTop | document right top corner coordinates |
rightBottom | document right bottom corner coordinates |
angle | document rotation angle |
perspectiveTr | internal use parameter |
objArea | internal use parameter |
objIntAngleDev | internal use parameter |
resultStatus | internal use parameter, one of the RGLCheckResult enumeration values |
docFormat | document format, one of the RGLDocFormat enumeration values |
pageIndex | index of the document page from which the result is received |
dpi | resolution in dots per inch |
inverse | internal use parameter |
Status
The DocumentReaderResultsStatus
class contains the following parameters:
status
└── overallStatus
└── optical
└── detailsOptical
| └── overallStatus
| └── mrz
| └── text
| └── docType
| └── security
| └── imageQA
| └── expiry
| └── vds
| └── pagesCount
└── rfid
└── detailsRFID
| └── overallStatus
| └── AA
| └── BAC
| └── CA
| └── PA
| └── PACE
| └── TA
└── portrait
└── stopList
Parameter | Description |
---|---|
overallStatus | Summary of all results. RGLCheckResult . |
optical | Summary of all optical results. Same as detailsOptical.overallStatus . RGLCheckResult . |
detailsOptical | Container for an optical related scanning statuses. |
overallStatus | Summary of all optical results. RGLCheckResult . |
mrz | MRZ verification: values validity, dates, checkdigits verification. RGLCheckResult . |
text | Text fields valitity: values validity for specific fields, cross-comparison of values from different sources, dates & checkdigits verification. RGLCheckResult . |
docType | Check status if document type was recognized or not. RGLCheckResult . |
security | Authenticity verification status. RGLCheckResult . |
imageQA | Input images quality verification status. RGLCheckResult . |
expiry | Document validity period verification status. RGLCheckResult . |
vds | Visible Digital Seal verification status. RGLCheckResult . |
pagesCount | Number of scanned document pages. Integer. |
rfid | Summary of all RFID results. Same as detailsRFID.overallStatus . RGLCheckResult . |
detailsRFID | Container for a RFID related scanning statuses |
overallStatus | Summary of all RFID results. RGLCheckResult . |
AA | Acitve authentication status. RGLCheckResult . |
BAC | Basics access control status. RGLCheckResult . |
CA | Chip authentication status. RGLCheckResult . |
PA | Passive authentication status. RGLCheckResult . |
PACE | Password authenticated connection establishment status. RGLCheckResult . |
TA | Terminal authentication status. RGLCheckResult . |
portrait | Comparison status for portrait in the document aganist live or external image. RGLCheckResult . |
stopList | Verification status for document data against database. RGLCheckResult . |
Authenticity Result
The RGLDocumentReaderAuthenticityResult
class contains the following parameters:
authenticityResults
└── status
└── checks
| └── type
| └── typeName
| └── status
| └── elements
| | └── status
| | └── elementType
| | └── elementTypeName
| | └── elementDiagnose
| | └── elementDiagnoseName
| └── pageIndex
Parameter | Description |
---|---|
status | overall check result, one of the RGLCheckResult enumeration values |
checks | stores the result of the document authenticity check using the images for different lighting schemes |
type | type of the performed check, one of the RGLAuthenticity enumeration values |
typeName | title of the type |
elementType | element type, one of the SecurityFeatureType enumeration values |
elementTypeName | title of the elementType |
elementDiagnose | element diagnose, one of the RGLCheckDiagnose enumeration values |
elementDiagnoseName | title of the elementDiagnose |
pageIndex | index of the document page from which the result is received |
RFID Result
The RFIDSessionData
class contains the following parameters:
rfidSessionData
└── accessControls
| └── activeOptionIdx
| └── notifications
| └── status
| └── type
└── applications
| └── applicationID
| └── dataHashAlgorithm
| └── files
| | └── fileData
| | | └── data
| | | └── length
| | | └── status
| | | └── type
| | └── fileID
| | └── notifications
| | └── pAStatus
| | └── readingStatus
| | └── readingTime
| | └── type
| | └── typeName
| | └── docFieldsText
| | └── docFieldsGraphics
| | └── docFieldsOriginals
| | └── certificates
| | | └── securityObject
| | | | └── data
| | | | └── length
| └── type
| └── status
| └── unicodeVersion
| └── version
└── securityObjects
| └── fileReference
| └── objectType
| └── version
| └── signerInfos
| | └── dataToHash
| | └── digestAlgorithm
| | └── paStatus
| | └── signatureAlgorithm
| | └── version
| | └── issuer
| | | └── attributes
| | | | └── type
| | | | └── value
| | | | | └── data
| | | | | └── length
| | | | | └── status
| | | | | └── type
| | | | | └── format
| | | └── data
| | | └── friendlyName
| | | | └── data
| | | | └── length
| | | | └── status
| | | | └── type
| | | | └── format
| | └── serialNumber
| | | └── data
| | | └── length
| | | └── status
| | | └── type
| | | └── format
| | └── signature
| | | └── data
| | | └── length
| | | └── status
| | | └── type
| | | └── format
| | └── signedAttributes
| | | └── data
| | | └── type
| | └── subjectKeyIdentifier
| | | └── data
| | | └── length
| | | └── status
| | | └── type
| | | └── format
| | └── certificateChain
| | | └── extensions
| | | | └── data
| | | | └── type
| | | └── fileName
| | | | └── data
| | | | └── length
| | | | └── status
| | | | └── type
| | | | └── format
| | | └── issuer
| | | | └── attributes
| | | | | └── type
| | | | | └── value
| | | | | | └── data
| | | | | | └── length
| | | | | | └── status
| | | | | | └── type
| | | | | | └── format
| | | | └── data
| | | | └── friendlyName
| | | | | └── data
| | | | | └── length
| | | | | └── status
| | | | | └── type
| | | | | └── format
| | | └── notifications
| | | └── origin
| | | └── paStatus
| | | └── serialNumber
| | | └── signatureAlgorithm
| | | └── subject
| | | | └── attributes
| | | | | └── type
| | | | | └── value
| | | | | | └── data
| | | | | | └── length
| | | | | | └── status
| | | | | | └── type
| | | | | | └── format
| | | | └── data
| | | | └── friendlyName
| | | | | └── data
| | | | | └── length
| | | | | └── status
| | | | | └── type
| | | | | └── format
| | | └── subjectPKAlgorithm
| | | └── type
| | | └── validity
| | | | └── notAfter
| | | | | └── data
| | | | | └── length
| | | | | └── status
| | | | | └── type
| | | | | └── format
| | | | └── notBefore
| | | | | └── data
| | | | | └── length
| | | | | └── status
| | | | | └── type
| | | | | └── format
| | | └── version
| | └── notifications
| └── notifications
└── cardProperties
| └── aTQA
| └── aTQB
| └── aTR
| └── baudrate1
| └── baudrate2
| └── bitRateR
| └── bitRateS
| └── chipTypeA
| └── mifareMemory
| └── rfidType
| └── sAK
| └── support4
| └── supportMifare
| └── uID
└── totalBytesReceived
└── totalBytesSent
└── status
└── extLeSupport
└── processTime
└── sessionDataStatus
| └── AA
| └── BAC
| └── CA
| └── PA
| └── PACE
| └── TA
| └── overallStatus
Parameter | Description |
---|---|
accessControls | list of containers that store information about the supported procedures of authentication and secure data access within the context of the session |
activeOptionIdx | index of the active variant of the procedure |
notifications | list of remarks occured during the procedure |
status | procedure status (RFID_Error_NotPerformed, RFID_Error_NotAvailable, RFID_Error_NoError or the error code from the eRFID_NotificationAndErrorCodes enumeration) |
type | procedure type (one of the eRFID_AccessControl_ProcedureType enumeration values) |
applications | list of containers that store information about the involved applications of an electronic document |
applicationID | application identifier |
dataHashAlgorithm | algorithm for calculating hash values for files for the procedure of PA |
files | list of containers that store information about the read files of the application |
unicodeVersion | unicode version for application |
securityObjects | list of containers that store information about the detected document security objects |
fileReference | reference to the source file of the security object data |
objectType | security object identifier |
signerInfos | list of containers that store information about the digital signature objects contained in the SO |
digestAlgorithm | digital signature hash-function algorithm identifier |
paStatus | result of the digital signature verification (RFID_Error_NotPerformed, RFID_Error_NoError or RFID_Error_Failed) |
signatureAlgorithm | digital signature algorithm identifier |
issuer | identifier of the necessary certificate issuer |
serialNumber | serial number of the necessary certificate |
signature | binary data of the verified digital signature |
signedAttributes | list of the signed attributes |
subjectKeyIdentifier | signature object identifier of the necessary certificate |
certificateChain | certificate chain, used for the digital signature verification |
cardProperties | set of the electronic document chip characteristics |
aTQA | numeric ATQ_A value in hexadecimal format, for example, "0x0000" |
aTQB | ATQ_B contents in text format. Each byte is represented by its hexadecimal value. The individual bytes are separated by spaces, for example, "50 F9 4F 41 60 00 00 00 00 77 81 81". |
aTR | pAtr contents in text format. Each byte is represented by its hexadecimal value. The individual bytes are separated by spaces, for example, "3B 88 81 11 FC 00 00 00 00 77 81 81 00 93". |
baudrate1 | numeric Baudrate1 value in hexadecimal format, for example, "0x0000000F" |
baudrate2 | numeric Baudrate2 value in hexadecimal format |
bitRateR | numeric BitRateR value in hexadecimal format, for example, "0x04" |
bitRateS | numeric BitRateS value in hexadecimal format, for example, "0x04" |
chipTypeA | text abbreviation of ChipType_A value |
mifareMemory | numeric MifareMemory value |
rfidType | text abbreviation of the RFID_Type value |
sAK | numeric SAK value in hexadecimal format, for example, "0x00" |
support4 | boolean Support_4 value |
supportMifare | boolean Support_Mifare value |
uID | UID contents in text format. Each byte is represented by its hexadecimal value. The individual bytes are separated by spaces, for example, "F9 4F 41 60". |
totalBytesReceived | total number of bytes received from the RFID-chip during the whole session |
totalBytesSent | total number of bytes transmitted to the RFID-chip during the whole session |
extLeSupport | sign of support of RFID-chip for extended length commands of reading (RFID_Error_NotPerformed, RFID_Error_NotAvailable or RFID_Error_NoError) |
processTime | total time of all operations performed during the session, ms |
AA | AA status, one of the RGLCheckResult values |
BAC | BAC status, one of the RGLCheckResult values |
CA | CA status, one of the RGLCheckResult values |
PA | PA status, one of the RGLCheckResult values |
PACE | PACE status, one of the RGLCheckResult values |
TA | TA status, one of the RGLCheckResult values |
overallStatus | overall status, one of the RGLCheckResult values |
VDSNCData. Visible Digital Seal for Non Constrained environments.
The VDSNCData
class contains the following parameters:
vdsncData
└── type
└── version
└── issuingCountry
└── message
└── signatureAlgorithm
└── signature
└── certificate
└── certificateChain
└── notifications
Parameter | Description |
---|---|
type | Visible Digital Seal use case type. Type is set to icao.test for Proof of Testing (data defined by CAPSCA), icao.vacc for Proof of Vaccination (data defined by WHO). Other Types may be added in the future. |
version | Visible Digital Seal use case version. |
issuingCountry | Three letter code identifying the issuing state or organization. |
message | The message field contains the actual data as a dictionary (JSON). |
signatureAlgorithm | The signature algorithm used to produce the signature. ECDSA scheme. |
signature | The binary data of the verified digital signature. |
certificate | The binary data of the signer certificate. |
certificateChain | The сertificate chain, used for the digital signature verification. |
notifications | The list of remarks occured during the scanning procedure. Each element is a NSNumber containing a NSUInteger , that belongs to the enum eLDS_ParsingErrorCodes or the enum eLDS_ParsingNotificationCodes . |