{
  "$schema": "https://govschema.org/spec/v0.3/govschema.schema.json",
  "govschemaVersion": "0.3.0",
  "id": "ro/mae/formular-cerere-viza-de-lunga-sedere",
  "version": "1.0.0",
  "title": "Romania National (Long-Stay, Type D) Visa Application",
  "description": "Give the details for Romania's national long-stay (Type D) visa application: the visa a non-EU/EEA/Swiss national needs before travelling to Romania for a stay exceeding the 90-day Schengen short-stay limit, for purposes including economic, professional, commercial, religious, or research activities, employment, secondment, studies, family reunification, or other activities. This document models the Ministerul Afacerilor Externe's (MAE, Ministry of Foreign Affairs) own 'Formular de cerere pentru viză de lungă ședere' / 'Application for long-stay visa' (Type D), filed at a Romanian embassy or consulate. The form's opening identity block (items 1-9) follows the same Schengen-harmonized personal-data numbering convention shared with Spain's, Germany's, and other EU member states' national-visa forms already modelled in this registry, but the remainder (items 10-46) is genuinely Romania-specific: a 10-category purpose-of-journey taxonomy tied to Romania's own long-stay visa subtypes (D/AE economic activities, D/VF family reunification, D/AP professional activities, D/SD studies, D/AC commercial activities, D/AS other activities, D/AR religious activities, D/AM employment, D/CS research, D/DT secondment), a host/sponsor-in-Romania block, a bounded 3-row children table, and a distinct block for the personal data of a Romanian citizen the applicant depends on -- none of which has a counterpart in Germany's de/auswaertiges-amt/national-visa-application or Spain's es/maec/solicitud-visado-nacional (see VERIFICATION.md for the full field-by-field duplicate-detection comparison). It does not model Romania's own Schengen (Type C) short-stay visa form, nor any purpose-specific supplementary document (e.g. the Inspectoratul General pentru Imigrări's own prior-approval 'aviz' for economic activity, employment, secondment, or family reunification, referenced by this form's own office-use column but issued through a separate procedure). It does not submit the application; the live source is always authoritative.",
  "status": "draft",
  "jurisdiction": {
    "country": "RO",
    "level": "national"
  },
  "authority": {
    "name": "Ministerul Afacerilor Externe",
    "abbreviation": "MAE",
    "url": "https://www.mae.ro"
  },
  "process": {
    "type": "application",
    "language": "ro"
  },
  "source": {
    "url": "https://www.mae.ro/sites/default/files/file/anul_2018/2018.05.25_formular_cerere_viza_de_lunga_sedere.pdf",
    "retrievedAt": "2026-07-14",
    "documentRef": "Formular de cerere pentru viză de lungă ședere / Application for long-stay visa (Romanian national Type-D long-stay visa application form, hosted directly by the Ministerul Afacerilor Externe)"
  },
  "verification": {
    "method": "manual-source-review-v1",
    "lastVerifiedAt": "2026-07-14",
    "verifiedBy": "GovSchema Engineering (Standards Engineer)",
    "nextReviewBy": "2027-01-14",
    "notes": "GOV-2837: GovSchema Standard Research cycle, advancing Romania's Visa vertical (4th of 6), following DGPCI's vehicle-registration schema (DMV, GOV-2804), ONRC's legal-entity registration schema (Business Formation, GOV-2813), and ANAF's Declarație Unică (Taxes, GOV-2797). Romania's Passport (DGP/MAE) and National ID & Civic Documents verticals remain open, unscreened-this-cycle backlog. See VERIFICATION.md for the full sourcing and duplicate-detection record."
  },
  "maturity": {
    "level": "structural-reference",
    "criteria": {
      "structuralReference": true,
      "verifiedSchema": false,
      "agentReadySchema": false,
      "executionTestedSchema": false
    },
    "method": "maturity-self-assessment-v1",
    "assertedBy": "GovSchema Engineering (Standards Engineer)",
    "assertedAt": "2026-07-14"
  },
  "license": "CC-BY-4.0",
  "fields": [
    {
      "name": "surname",
      "label": "Numele/Surname(s) (family name(s))",
      "type": "string",
      "required": true,
      "classification": "pii",
      "sourceRef": "Formular de cerere pentru viză de lungă ședere -- item 1",
      "validation": { "maxLength": 200 }
    },
    {
      "name": "surnameAtBirth",
      "label": "Numele la naştere/Surname(s) at birth (earlier family name(s))",
      "type": "string",
      "required": false,
      "classification": "pii",
      "sourceRef": "Formular de cerere pentru viză de lungă ședere -- item 2",
      "validation": { "maxLength": 200 }
    },
    {
      "name": "firstNames",
      "label": "Prenume/First names (given names)",
      "type": "string",
      "required": true,
      "classification": "pii",
      "sourceRef": "Formular de cerere pentru viză de lungă ședere -- item 3",
      "validation": { "maxLength": 200 }
    },
    {
      "name": "dateOfBirth",
      "label": "Data naşterii/Date of birth (day-month-year)",
      "type": "date",
      "required": true,
      "classification": "sensitive-pii",
      "sourceRef": "Formular de cerere pentru viză de lungă ședere -- item 4"
    },
    {
      "name": "idNumber",
      "label": "CNP/ID-number",
      "type": "string",
      "required": false,
      "classification": "sensitive-pii",
      "sourceRef": "Formular de cerere pentru viză de lungă ședere -- item 5",
      "validation": { "maxLength": 30 }
    },
    {
      "name": "placeAndCountryOfBirth",
      "label": "Locul şi ţara naşterii/Place and country of birth",
      "type": "string",
      "required": true,
      "classification": "pii",
      "sourceRef": "Formular de cerere pentru viză de lungă ședere -- item 6",
      "validation": { "maxLength": 150 }
    },
    {
      "name": "currentNationality",
      "label": "Cetăţenia prezentă/Current nationality/ies",
      "type": "string",
      "required": true,
      "classification": "pii",
      "sourceRef": "Formular de cerere pentru viză de lungă ședere -- item 7",
      "validation": { "maxLength": 150 }
    },
    {
      "name": "nationalityAtBirth",
      "label": "Cetăţenia la naştere/Original nationality (nationality at birth)",
      "type": "string",
      "required": false,
      "classification": "pii",
      "sourceRef": "Formular de cerere pentru viză de lungă ședere -- item 8",
      "validation": { "maxLength": 100 }
    },
    {
      "name": "sex",
      "label": "Sexul/Sex",
      "type": "enum",
      "required": true,
      "sourceRef": "Formular de cerere pentru viză de lungă ședere -- item 9",
      "validation": { "enum": ["male", "female"] }
    },
    {
      "name": "maritalStatus",
      "label": "Statut civil/Marital status",
      "type": "enum",
      "required": true,
      "sourceRef": "Formular de cerere pentru viză de lungă ședere -- item 10",
      "validation": { "enum": ["single", "married", "separated", "divorced", "widowed", "other"] }
    },
    {
      "name": "otherMaritalStatusDetails",
      "label": "Altele/Other (marital status, if not listed)",
      "type": "string",
      "required": false,
      "requiredWhen": { "field": "maritalStatus", "equals": "other" },
      "sourceRef": "Formular de cerere pentru viză de lungă ședere -- item 10",
      "validation": { "maxLength": 150 }
    },
    {
      "name": "fathersName",
      "label": "Prenumele tatălui/Father's name",
      "type": "string",
      "required": false,
      "classification": "pii",
      "sourceRef": "Formular de cerere pentru viză de lungă ședere -- item 11",
      "validation": { "maxLength": 150 }
    },
    {
      "name": "mothersName",
      "label": "Prenumele mamei/Mother's name",
      "type": "string",
      "required": false,
      "classification": "pii",
      "sourceRef": "Formular de cerere pentru viză de lungă ședere -- item 12",
      "validation": { "maxLength": 150 }
    },
    {
      "name": "travelDocumentType",
      "label": "Document de călătorie/Type of passport",
      "type": "enum",
      "required": true,
      "sourceRef": "Formular de cerere pentru viză de lungă ședere -- item 13",
      "validation": {
        "enum": [
          "national-passport",
          "tourist-passport",
          "refugee-travel-document-1951-convention",
          "aliens-passport",
          "seamans-passport",
          "other"
        ]
      }
    },
    {
      "name": "otherTravelDocumentTypeDetails",
      "label": "Altele (specificaţi)/Other travel document (please specify)",
      "type": "string",
      "required": false,
      "requiredWhen": { "field": "travelDocumentType", "equals": "other" },
      "sourceRef": "Formular de cerere pentru viză de lungă ședere -- item 13",
      "validation": { "maxLength": 150 }
    },
    {
      "name": "travelDocumentNumber",
      "label": "Nr. de paşaport/Number of passport",
      "type": "string",
      "required": true,
      "classification": "sensitive-pii",
      "sourceRef": "Formular de cerere pentru viză de lungă ședere -- item 14",
      "validation": { "maxLength": 30 }
    },
    {
      "name": "travelDocumentIssuedBy",
      "label": "Emis de/Issued by",
      "type": "string",
      "required": true,
      "sourceRef": "Formular de cerere pentru viză de lungă ședere -- item 15",
      "validation": { "maxLength": 150 }
    },
    {
      "name": "travelDocumentDateOfIssue",
      "label": "Data emiterii/Date of issuance (day-month-year)",
      "type": "date",
      "required": true,
      "sourceRef": "Formular de cerere pentru viză de lungă ședere -- item 16"
    },
    {
      "name": "travelDocumentValidUntil",
      "label": "Valabil până la/Valid until (day-month-year)",
      "type": "date",
      "required": true,
      "sourceRef": "Formular de cerere pentru viză de lungă ședere -- item 17"
    },
    {
      "name": "residesInCountryOtherThanNationality",
      "label": "Dacă aveţi domiciliul în alt stat decât cel de origine, vă este permis să vă reîntoarceţi în acest stat?/If you reside in a country other than your country of origin, do you have the permission to return to that country?",
      "type": "enum",
      "required": false,
      "sourceRef": "Formular de cerere pentru viză de lungă ședere -- item 18",
      "validation": { "enum": ["no", "yes"] }
    },
    {
      "name": "returnPermissionNumberAndValidity",
      "label": "Da (numărul şi valabilitatea permisiunii)/Yes, (number and validity)",
      "type": "string",
      "required": false,
      "requiredWhen": { "field": "residesInCountryOtherThanNationality", "equals": "yes" },
      "sourceRef": "Formular de cerere pentru viză de lungă ședere -- item 18",
      "validation": { "maxLength": 150 }
    },
    {
      "name": "currentOccupation",
      "label": "Funcţia ocupată în prezent/Current occupation",
      "type": "string",
      "required": true,
      "sourceRef": "Formular de cerere pentru viză de lungă ședere -- item 19",
      "validation": { "maxLength": 150 }
    },
    {
      "name": "employerOrSchoolNameAddressPhone",
      "label": "Angajatorul, adresa acestuia şi nr. de tel. Pentru elevi şi studenţi, denumirea şi adresa instituţiei de învăţământ/Employer and employer's address and telephone number. For students, name and address of school",
      "type": "string",
      "required": false,
      "sourceRef": "Formular de cerere pentru viză de lungă ședere -- item 20",
      "validation": { "maxLength": 500 }
    },
    {
      "name": "numberOfEntriesRequested",
      "label": "Nr. de intrări solicitate/No. of entries requested",
      "type": "enum",
      "required": true,
      "sourceRef": "Formular de cerere pentru viză de lungă ședere -- item 22",
      "validation": { "enum": ["single-entry", "two-entries", "multiple-entries"] }
    },
    {
      "name": "durationOfStayDays",
      "label": "Durata şederii/Duration of stay (zile/days)",
      "type": "integer",
      "required": true,
      "sourceRef": "Formular de cerere pentru viză de lungă ședere -- item 23",
      "validation": { "minimum": 1, "maximum": 365 }
    },
    {
      "name": "otherVisasIssuedPast3Years",
      "label": "Alte vize emise în ultimii 3 ani şi valabilitatea acestora/Other visas (issued during the past three years) and the validity of each",
      "type": "string",
      "required": false,
      "sourceRef": "Formular de cerere pentru viză de lungă ședere -- item 24",
      "validation": { "maxLength": 500 }
    },
    {
      "name": "previousStaysInRomania",
      "label": "Şederi anterioare în România/Previous stays in Romania",
      "type": "string",
      "required": false,
      "sourceRef": "Formular de cerere pentru viză de lungă ședere -- item 25",
      "validation": { "maxLength": 500 }
    },
    {
      "name": "purposeOfJourney",
      "label": "Scopul şederii în România – pentru viza de lungă şedere (tip D)/Purpose of journey – for the long-stay visa (D visa)",
      "type": "enum",
      "required": true,
      "sourceRef": "Formular de cerere pentru viză de lungă ședere -- item 26",
      "validation": {
        "enum": [
          "economic-activities",
          "family-reunification",
          "professional-activities",
          "studies",
          "commercial-activities",
          "other-activities",
          "religious-activities",
          "employment",
          "research",
          "secondment"
        ]
      }
    },
    {
      "name": "dateOfArrival",
      "label": "Data sosirii/Date of arrival (day-month-year)",
      "type": "date",
      "required": true,
      "sourceRef": "Formular de cerere pentru viză de lungă ședere -- item 27"
    },
    {
      "name": "dateOfDeparture",
      "label": "Data plecării/Date of departure (day-month-year)",
      "type": "date",
      "required": true,
      "sourceRef": "Formular de cerere pentru viză de lungă ședere -- item 28"
    },
    {
      "name": "borderOfFirstEntry",
      "label": "Punctul de intrare/Border of first entry",
      "type": "string",
      "required": false,
      "sourceRef": "Formular de cerere pentru viză de lungă ședere -- item 29",
      "validation": { "maxLength": 150 }
    },
    {
      "name": "meansOfTransport",
      "label": "Mijloc de transport/Means of transport",
      "type": "string",
      "required": false,
      "sourceRef": "Formular de cerere pentru viză de lungă ședere -- item 30",
      "validation": { "maxLength": 100 }
    },
    {
      "name": "hostName",
      "label": "Denumirea firmei române de contact şi a persoanei responsabile în cadrul acesteia. În absenţă, denumirea hotelului sau adresa temporară în România/Name of host or host company in Romania and of contact person in host company. If not applicable, provide name of hotel or temporary address -- Nume/Name",
      "type": "string",
      "required": true,
      "sourceRef": "Formular de cerere pentru viză de lungă ședere -- item 31",
      "validation": { "maxLength": 200 }
    },
    {
      "name": "hostPhoneAndFax",
      "label": "Tel. şi fax/Phone and fax no.",
      "type": "string",
      "required": false,
      "sourceRef": "Formular de cerere pentru viză de lungă ședere -- item 31",
      "validation": { "maxLength": 60 }
    },
    {
      "name": "hostFullAddress",
      "label": "Adresa completă/Full address",
      "type": "string",
      "required": true,
      "sourceRef": "Formular de cerere pentru viză de lungă ședere -- item 31",
      "validation": { "maxLength": 300 }
    },
    {
      "name": "hostEmail",
      "label": "eMail/eMail address",
      "type": "string",
      "required": false,
      "sourceRef": "Formular de cerere pentru viză de lungă ședere -- item 31",
      "validation": { "maxLength": 150 }
    },
    {
      "name": "costBearer",
      "label": "Cine suportă cheltuielile de deplasare şi de şedere în România/Who ensures the cost of your trip and for your stay in Romania?",
      "type": "enum",
      "required": true,
      "sourceRef": "Formular de cerere pentru viză de lungă ședere -- item 32",
      "validation": { "enum": ["self", "host-person", "host-company"] }
    },
    {
      "name": "hostCompanyOrPersonDetails",
      "label": "Persoană fizică română/juridică română (numiţi cine, cum, şi anexaţi documente doveditoare)/Host person(s)/Host company (state whom and how and provide supporting documents)",
      "type": "string",
      "required": false,
      "requiredWhen": { "field": "costBearer", "in": ["host-person", "host-company"] },
      "sourceRef": "Formular de cerere pentru viză de lungă ședere -- item 32",
      "validation": { "maxLength": 500 }
    },
    {
      "name": "meansOfSupport",
      "label": "Modalităţi de întreţinere în România/Means of support during your stay in Romania",
      "type": "enum",
      "required": true,
      "sourceRef": "Formular de cerere pentru viză de lungă ședere -- item 33",
      "validation": { "enum": ["cash", "travellers-cheques", "credit-cards", "paid-accommodation", "other"] }
    },
    {
      "name": "otherMeansOfSupportDetails",
      "label": "Altele/Other (means of support, if not listed)",
      "type": "string",
      "required": false,
      "requiredWhen": { "field": "meansOfSupport", "equals": "other" },
      "sourceRef": "Formular de cerere pentru viză de lungă ședere -- item 33",
      "validation": { "maxLength": 150 }
    },
    {
      "name": "travelHealthInsuranceValidUntil",
      "label": "Asigurare medicală valabilă până la/Travel and/or health insurance valid until",
      "type": "date",
      "required": true,
      "sourceRef": "Formular de cerere pentru viză de lungă ședere -- item 33"
    },
    {
      "name": "spouseFamilyName",
      "label": "Numele soţului(soţiei)/Spouse's family name",
      "type": "string",
      "required": false,
      "requiredWhen": { "field": "maritalStatus", "equals": "married" },
      "classification": "pii",
      "sourceRef": "Formular de cerere pentru viză de lungă ședere -- item 34",
      "validation": { "maxLength": 200 }
    },
    {
      "name": "spouseFamilyNameAtBirth",
      "label": "Numele la naştere al soţului(soţiei)/Spouse's family name at birth",
      "type": "string",
      "required": false,
      "classification": "pii",
      "sourceRef": "Formular de cerere pentru viză de lungă ședere -- item 35",
      "validation": { "maxLength": 200 }
    },
    {
      "name": "spouseFirstName",
      "label": "Prenumele soţului(soţiei)/Spouse's first name",
      "type": "string",
      "required": false,
      "requiredWhen": { "field": "maritalStatus", "equals": "married" },
      "classification": "pii",
      "sourceRef": "Formular de cerere pentru viză de lungă ședere -- item 36",
      "validation": { "maxLength": 150 }
    },
    {
      "name": "spouseDateOfBirth",
      "label": "Data de naştere a soţului (soţiei)/Spouse's date of birth (day-month-year)",
      "type": "date",
      "required": false,
      "classification": "sensitive-pii",
      "sourceRef": "Formular de cerere pentru viză de lungă ședere -- item 37"
    },
    {
      "name": "spousePlaceOfBirth",
      "label": "Locul de naştere al soţului(soţiei)/Spouse's place of birth",
      "type": "string",
      "required": false,
      "classification": "pii",
      "sourceRef": "Formular de cerere pentru viză de lungă ședere -- item 38",
      "validation": { "maxLength": 150 }
    },
    {
      "name": "child1Name",
      "label": "Copii (se vor completa solicitări separate pentru cei care deţin paşaport individual) -- Nume/Children (Applications must be submitted separately for each passport) -- Name (child 1)",
      "type": "string",
      "required": false,
      "classification": "pii",
      "sourceRef": "Formular de cerere pentru viză de lungă ședere -- item 39, row 1",
      "validation": { "maxLength": 150 }
    },
    {
      "name": "child1FirstName",
      "label": "Prenume/First name (child 1)",
      "type": "string",
      "required": false,
      "classification": "pii",
      "sourceRef": "Formular de cerere pentru viză de lungă ședere -- item 39, row 1",
      "validation": { "maxLength": 150 }
    },
    {
      "name": "child1DateOfBirth",
      "label": "Data naşterii/Date of birth (child 1)",
      "type": "date",
      "required": false,
      "classification": "sensitive-pii",
      "sourceRef": "Formular de cerere pentru viză de lungă ședere -- item 39, row 1"
    },
    {
      "name": "child2Name",
      "label": "Nume/Name (child 2)",
      "type": "string",
      "required": false,
      "classification": "pii",
      "sourceRef": "Formular de cerere pentru viză de lungă ședere -- item 39, row 2",
      "validation": { "maxLength": 150 }
    },
    {
      "name": "child2FirstName",
      "label": "Prenume/First name (child 2)",
      "type": "string",
      "required": false,
      "classification": "pii",
      "sourceRef": "Formular de cerere pentru viză de lungă ședere -- item 39, row 2",
      "validation": { "maxLength": 150 }
    },
    {
      "name": "child2DateOfBirth",
      "label": "Data naşterii/Date of birth (child 2)",
      "type": "date",
      "required": false,
      "classification": "sensitive-pii",
      "sourceRef": "Formular de cerere pentru viză de lungă ședere -- item 39, row 2"
    },
    {
      "name": "child3Name",
      "label": "Nume/Name (child 3)",
      "type": "string",
      "required": false,
      "classification": "pii",
      "sourceRef": "Formular de cerere pentru viză de lungă ședere -- item 39, row 3",
      "validation": { "maxLength": 150 }
    },
    {
      "name": "child3FirstName",
      "label": "Prenume/First name (child 3)",
      "type": "string",
      "required": false,
      "classification": "pii",
      "sourceRef": "Formular de cerere pentru viză de lungă ședere -- item 39, row 3",
      "validation": { "maxLength": 150 }
    },
    {
      "name": "child3DateOfBirth",
      "label": "Data naşterii/Date of birth (child 3)",
      "type": "date",
      "required": false,
      "classification": "sensitive-pii",
      "sourceRef": "Formular de cerere pentru viză de lungă ședere -- item 39, row 3"
    },
    {
      "name": "dependentRomanianCitizenName",
      "label": "Datele personale ale cetăţeanului român în întreţinerea căruia vă găsiţi/Personal data of the Romanian national you depend on -- Nume/Name",
      "type": "string",
      "required": false,
      "classification": "pii",
      "sourceRef": "Formular de cerere pentru viză de lungă ședere -- item 40",
      "validation": { "maxLength": 150 }
    },
    {
      "name": "dependentRomanianCitizenFirstName",
      "label": "Prenume/First name (Romanian citizen depended upon)",
      "type": "string",
      "required": false,
      "classification": "pii",
      "sourceRef": "Formular de cerere pentru viză de lungă ședere -- item 40",
      "validation": { "maxLength": 150 }
    },
    {
      "name": "dependentRomanianCitizenPassportNumber",
      "label": "Nr. de paşaport/Number of passport (Romanian citizen depended upon)",
      "type": "string",
      "required": false,
      "classification": "sensitive-pii",
      "sourceRef": "Formular de cerere pentru viză de lungă ședere -- item 40",
      "validation": { "maxLength": 30 }
    },
    {
      "name": "dependentRomanianCitizenDateOfBirth",
      "label": "Data naşterii/Date of Birth (Romanian citizen depended upon)",
      "type": "date",
      "required": false,
      "classification": "sensitive-pii",
      "sourceRef": "Formular de cerere pentru viză de lungă ședere -- item 40"
    },
    {
      "name": "familyTiesToRomanianCitizen",
      "label": "Legătura familială/Family ties",
      "type": "string",
      "required": false,
      "sourceRef": "Formular de cerere pentru viză de lungă ședere -- item 40",
      "validation": { "maxLength": 100 }
    },
    {
      "name": "hasOtherRelativesInRomania",
      "label": "Aveţi alte rude în Romania?/Do you have any other relatives in Romania?",
      "type": "string",
      "required": false,
      "sourceRef": "Formular de cerere pentru viză de lungă ședere -- item 41",
      "validation": { "maxLength": 300 }
    },
    {
      "name": "gdprConsentAcknowledged",
      "label": "Am luat la cunoştinţă şi îmi exprim consimţământul... / I am aware of and I hereby consent to the collection and processing of my personal data, photograph, and fingerprints for the examination of this visa application, and declare that all data supplied is correct and complete",
      "type": "boolean",
      "required": true,
      "sourceRef": "Formular de cerere pentru viză de lungă ședere -- item 42",
      "validation": { "enum": [true] }
    },
    {
      "name": "homeAddress",
      "label": "Adresa de domiciliu a solicitantului/Applicant's home address",
      "type": "string",
      "required": true,
      "classification": "pii",
      "sourceRef": "Formular de cerere pentru viză de lungă ședere -- item 43",
      "validation": { "maxLength": 300 }
    },
    {
      "name": "phoneNumber",
      "label": "Nr. de tel./Phone nº",
      "type": "string",
      "required": true,
      "classification": "pii",
      "sourceRef": "Formular de cerere pentru viză de lungă ședere -- item 44",
      "validation": { "maxLength": 40 }
    },
    {
      "name": "placeAndDateOfApplication",
      "label": "Dată la (locul şi data)/Place and date (day-month-year)",
      "type": "string",
      "required": true,
      "sourceRef": "Formular de cerere pentru viză de lungă ședere -- item 45",
      "validation": { "maxLength": 150 }
    }
  ],
  "documents": [
    {
      "id": "applicantPhoto",
      "label": "FOTOGRAFIE 3/4 / Recent passport-style photo",
      "category": "supporting-evidence",
      "required": true,
      "belongsTo": "applicant",
      "sourceRef": "Formular de cerere pentru viză de lungă ședere -- page 1 header 'FOTOGRAFIE 3/4'"
    },
    {
      "id": "travelDocument",
      "label": "Document de călătorie / Travel document",
      "category": "identity-document",
      "required": true,
      "belongsTo": "applicant",
      "sourceRef": "Formular de cerere pentru viză de lungă ședere -- 'Documente doveditoare' checklist: 'Paşaport valabil'"
    },
    {
      "id": "proofOfFinancialMeans",
      "label": "Mijloace financiare / Proof of financial means",
      "category": "supporting-evidence",
      "required": true,
      "belongsTo": "applicant",
      "sourceRef": "Formular de cerere pentru viză de lungă ședere -- 'Documente doveditoare' checklist: 'Mijloace financiare'"
    },
    {
      "id": "invitationLetter",
      "label": "Invitaţie / Invitation letter",
      "category": "supporting-evidence",
      "required": false,
      "requiredWhen": { "field": "costBearer", "in": ["host-person", "host-company"] },
      "belongsTo": "applicant",
      "sourceRef": "Formular de cerere pentru viză de lungă ședere -- 'Documente doveditoare' checklist: 'Invitaţie'"
    },
    {
      "id": "returnTravelTicket",
      "label": "Mijloace de transport / Bilet de călătorie / Return travel ticket or itinerary",
      "category": "supporting-evidence",
      "required": false,
      "belongsTo": "applicant",
      "sourceRef": "Formular de cerere pentru viză de lungă ședere -- 'Documente doveditoare' checklist: 'Mijloace de transport', 'Bilet de călătorie'"
    },
    {
      "id": "travelHealthInsuranceProof",
      "label": "Asigurare medicală / Travel and/or health insurance proof",
      "category": "supporting-evidence",
      "required": true,
      "belongsTo": "applicant",
      "sourceRef": "Formular de cerere pentru viză de lungă ședere -- 'Documente doveditoare' checklist: 'Asigurare medicală'"
    },
    {
      "id": "accommodationProof",
      "label": "Dovada asigurării condiţiilor de cazare / Proof of accommodation arrangements",
      "category": "supporting-evidence",
      "required": true,
      "belongsTo": "applicant",
      "sourceRef": "Formular de cerere pentru viză de lungă ședere -- 'Documente doveditoare' checklist: 'Dovada asigurării condiţiilor de cazare'"
    },
    {
      "id": "igiApprovalNotice",
      "label": "Avizul Inspectoratului General pentru Imigrări / Prior approval notice from the General Inspectorate for Immigration (IGI)",
      "category": "attestation",
      "required": false,
      "requiredWhen": {
        "field": "purposeOfJourney",
        "in": ["economic-activities", "employment", "secondment", "studies", "family-reunification", "professional-activities"]
      },
      "belongsTo": "applicant",
      "sourceRef": "Formular de cerere pentru viză de lungă ședere -- 'Documente doveditoare' checklist: 'Nr./data aviz investiţii', 'Nr./data aviz de studii', 'Nr./data aviz de angajare', 'Nr./data aviz detaşare', 'Nr./data aviz MAI pentru reîntregirea familiei'"
    }
  ],
  "crossFieldValidation": [
    {
      "id": "travelDocumentValidAfterIssue",
      "compare": {
        "field": "travelDocumentValidUntil",
        "operator": "greaterThan",
        "compareTo": "travelDocumentDateOfIssue"
      }
    },
    {
      "id": "departureAfterArrival",
      "compare": {
        "field": "dateOfDeparture",
        "operator": "greaterThan",
        "compareTo": "dateOfArrival"
      }
    }
  ],
  "steps": [
    {
      "id": "applicant_identity",
      "title": "Datele solicitantului / Applicant's identity",
      "fields": [
        "surname", "surnameAtBirth", "firstNames", "dateOfBirth", "idNumber",
        "placeAndCountryOfBirth", "currentNationality", "nationalityAtBirth",
        "sex", "maritalStatus", "otherMaritalStatusDetails", "fathersName", "mothersName"
      ],
      "next": "travel_document"
    },
    {
      "id": "travel_document",
      "title": "Documentul de călătorie / Travel document",
      "fields": [
        "travelDocumentType", "otherTravelDocumentTypeDetails", "travelDocumentNumber",
        "travelDocumentIssuedBy", "travelDocumentDateOfIssue", "travelDocumentValidUntil"
      ],
      "next": "residence_and_occupation"
    },
    {
      "id": "residence_and_occupation",
      "title": "Reşedinţa şi ocupaţia / Residence and occupation",
      "fields": [
        "residesInCountryOtherThanNationality", "returnPermissionNumberAndValidity",
        "currentOccupation", "employerOrSchoolNameAddressPhone"
      ],
      "next": "journey_and_visa_details"
    },
    {
      "id": "journey_and_visa_details",
      "title": "Detaliile vizei solicitate / Requested visa details",
      "fields": [
        "numberOfEntriesRequested", "durationOfStayDays",
        "otherVisasIssuedPast3Years", "previousStaysInRomania"
      ],
      "next": "purpose_and_travel_plan"
    },
    {
      "id": "purpose_and_travel_plan",
      "title": "Scopul şi planul călătoriei / Purpose and travel plan",
      "fields": [
        "purposeOfJourney", "dateOfArrival", "dateOfDeparture", "borderOfFirstEntry",
        "meansOfTransport", "hostName", "hostPhoneAndFax", "hostFullAddress", "hostEmail"
      ],
      "next": "financial_support"
    },
    {
      "id": "financial_support",
      "title": "Susţinerea financiară / Financial support",
      "fields": [
        "costBearer", "hostCompanyOrPersonDetails", "meansOfSupport",
        "otherMeansOfSupportDetails", "travelHealthInsuranceValidUntil"
      ],
      "next": "spouse_and_family"
    },
    {
      "id": "spouse_and_family",
      "title": "Soţul/soţia şi familia / Spouse and family",
      "fields": [
        "spouseFamilyName", "spouseFamilyNameAtBirth", "spouseFirstName",
        "spouseDateOfBirth", "spousePlaceOfBirth",
        "child1Name", "child1FirstName", "child1DateOfBirth",
        "child2Name", "child2FirstName", "child2DateOfBirth",
        "child3Name", "child3FirstName", "child3DateOfBirth",
        "dependentRomanianCitizenName", "dependentRomanianCitizenFirstName",
        "dependentRomanianCitizenPassportNumber", "dependentRomanianCitizenDateOfBirth",
        "familyTiesToRomanianCitizen", "hasOtherRelativesInRomania"
      ],
      "next": "consent_and_contact"
    },
    {
      "id": "consent_and_contact",
      "title": "Consimţământ şi date de contact / Consent and contact details",
      "fields": [
        "gdprConsentAcknowledged", "homeAddress", "phoneNumber", "placeAndDateOfApplication"
      ]
    }
  ]
}
