Table of Contents

Person Document Recognition — Electronic Military Registration Document

Overview

The Person Document Recognition feature supports importing data from the Electronic Military Registration Document (eVOD). In this scenario, the system uses Azure Content Understanding to recognize document fields and then additionally processes the embedded QR code when it is present in the analyzer result.

For the general Azure setup and the base recognition flow, see Person Document Recognition.

How eVOD import works

After the user uploads the document, the system runs two sequential stages:

  1. OCR recognition through Azure Content Understanding to extract visible document fields.
  2. Embedded QR processing when the analyzer returns the QrCode field.

This approach combines:

  • the fields printed directly on the document;
  • the military data available only inside the QR payload.

Prerequisites

This scenario requires:

  • configured Azure Content Understanding;
  • an eVOD analyzer created in Azure AI Foundry;
  • analyzer assignment through the scenario or the person document type;
  • populated master data used for value mapping.

Pay special attention to these directories and code tables:

  • Personal Information Codes with group Military Rank;
  • SMA Military Dismissal Reason;
  • Personal Information Codes with group Militaty Duty Relation;
  • General Directory with type Military Office;
  • General Directory with type SMA Military Service Fitness.

If a required value is missing, some fields are skipped or the military-data update from QR stops with an error.

Configuring the analyzer for eVOD

Analyzer creation, model build, Business Central synchronization, and scenario assignment are already described in the base article Person Document Recognition. For eVOD, use a dedicated analyzer or a dedicated document type and add the eVOD-specific fields from the schema below.

Field names must match exactly.

Field Name Purpose How it is used
LastName Last name Used by the base person document recognition logic
FirstName First name Used by the base person document recognition logic
MiddleName Middle name / patronymic Used by the base person document recognition logic
BirthDate Birth date Used by the base person document recognition logic
ExpirationDate Document expiration date Used when saving the person document record
PersonalNumber Tax ID / RNOKPP Used by the base person document recognition logic
DocumentNumber Document number / registry number Imported into military data on the person card
MilitaryRank Military rank Imported into the person card
BocNumber Military speciality number Imported into the person card
RemovalBasis Basis for deregistration Imported into the person card
StatusServiceTitle Current military registration status Imported into the person card
DisabilityGroup Disability group Imported into medical information
DisabilityValidUntilDate Disability valid until date Imported into medical information
DisabilityReason Disability reason Imported into medical information
ResidenceAddress Registered residence address Imported into alternative address
PhoneNumber Phone number Imported into the person card
Email Email address Imported into the person card
QrCode Embedded QR code Decoded separately to import military data

The analyzer schema file may contain additional fields. The documentation below only covers the mappings that are currently implemented in application code.

What is imported from OCR and how it is processed

After the base document-recognition flow creates or updates the person, the system applies eVOD-specific fields.

Analyzer field Imported to Processing logic
MilitaryRank Person.Military Rank Looked up in Personal Information Codes with group Military Rank using partial matching
DocumentNumber Person.Military Registration No. Direct value copy
BocNumber Person.Military Speciality No. Direct value copy
PhoneNumber Person.Mobile Phone No. Direct value copy
Email Person.E-Mail Converted to lowercase before saving
RemovalBasis Person.Military Dismissal Reason Code Looked up in SMA Military Dismissal Reason by exact, then partial description match
StatusServiceTitle Person.Other Service Status Converted to the matching enum value
DisabilityGroup Person Medical Info Creates or reuses a Disability entry
DisabilityValidUntilDate Person Medical Info.Ending Date Saved as disability validity date
DisabilityReason Person Medical Info.Document Details Saved as document details
ResidenceAddress Person Alternative Address Creates a Registration address with code EVOD if one does not already exist

StatusServiceTitle mapping

The StatusServiceTitle field is mapped by keyword:

  • уточненняNeeds clarification
  • розшукWanted
  • порушенViolation of military registration rules
  • не знайденоData not found in the registry
  • бзвп or підготовкиRequires passing the BMT

If no keyword is recognized, Other Service Status remains blank.

Disability import

When DisabilityGroup is present, the system:

  1. resolves the disability group 1, 2, or 3;
  2. reads DisabilityReason and DisabilityValidUntilDate;
  3. creates a Person Medical Info entry of type Disability if an identical entry does not already exist.

If the validity date is already in the past, that date is also used as Starting Date. Otherwise, the current date is used.

Residence address import

When ResidenceAddress is recognized, the system creates a Person Alternative Address record with:

  • Address Type = Registration
  • Code = EVOD
  • Valid from Date = current date

The address is only inserted if the person does not already have a registration-type alternative address.

What is imported from the embedded QR code

If the analyzer returns the QrCode field, the system decodes it and applies the same business logic as the standalone Reserve+ QR feature.

The QR payload can import:

  • military status;
  • military duty relation;
  • reservist flag;
  • military registration office;
  • reservation or deferral status;
  • deferral start and end dates;
  • military service fitness;
  • military medical commission date;
  • military document type.

After QR processing, the system also sets Military Document = SMA Electronic Military Registration Document.

For the full QR processing logic, see Reserve+ QR Recognition.

Import logic details

Existing person lookup

The base person document recognition flow first looks for an existing person by:

  1. Tax ID / RNOKPP
  2. Birth Date

If a matching person is found, the system can update the existing record instead of creating a new one.

What happens when a directory value is missing

  • if military rank or dismissal reason is not found, that field is skipped;
  • if a required QR value cannot be matched in critical directories, the process stops with an error and the directory must be completed first.

Cleanup of placeholder values

Before mapping, the system trims extra spaces. If the recognized value is only - or , it is treated as empty and not imported.

Testing recommendations

After the analyzer is configured, verify that:

  1. MilitaryRank, DocumentNumber, BocNumber, StatusServiceTitle, and QrCode are extracted consistently;
  2. RemovalBasis, tccName, accType, and vlkType have valid matches in your master data;
  3. the QR code is successfully decoded and enriches the military data beyond the OCR-only fields.