Registry entry

Application for a National Identity Card (Form "B", DRP 1,7,8)

The Department for Registration of Persons' (DRP) combined "Form 'B'" (DRP 1,7,8) — "Application for an Identity Card under sections 9, 16 and 17 of the Registration of Persons Act, No 32 of 1968". A single, trilingual (Sinhala/Tamil/English) 8-page specimen, fetched directly and unauthenticated from the department's own domain, that covers first-time issuance as well as duplicate/replacement, information-change, and validity-renewal requests for an existing card in one form (Part One, Items 1-11 plus the Declaration). A genuine, fully extractable English text layer confirmed via pdfjs-dist (0 AcroForm Widget annotations — a flat, non-fillable print specimen, not an AcroForm), cross-checked against rendered page images (pdfjs-dist legacy build + node-canvas, with the bundled standard-fonts data supplied) to resolve every checkbox group's printed layout and to confirm the top-of-form District/D.S. Division/G.N. Number routing box is a genuine applicant-facing field, visually distinct from the shaded 'FOR OFFICE USE' panel (Identity Card No., Registration Officer's Code & Initials) directly beneath it. Item 10 (Purpose of Application) and everything gated on it are modelled optional per the form's own instruction that cage 10 is completed only when a duplicate/change/renewal/replacement is requested. Item 8.2's printed sub-heading reads 'Postal Address', but the form's own instructions manual (instruction vi) describes this same cage as a different *current residence* address rather than a mailing address — a genuine discrepancy between the printed field heading and the instructions manual's prose, disclosed here rather than silently resolved by inference; this schema follows the printed heading. Neither the conditional birth-abroad citizenship fields (Items 7.6-7.8) nor the citizenship/dual-citizenship certificate fields (Item 9) have an applicant-fillable gating checkbox anywhere on the form, so both are modelled optional with the conditional context recorded in each field's own `description`, consistent with this registry's `lk/imm` (Sri Lankan passport) precedent for the same pattern. Models the instructions manual's own printed Item 10 supporting-documents checklist (pages 6-8 of this same PDF) as `documents[]` — unlike `lk/imm`, whose separate instructions PDF was a zero-text scanned image, this form's instructions are part of the same extractable specimen. Part Two (Certifying Officer attestation), Part Three (Acknowledgment slip), the payment/fee-receipt page (page 5, a physical stamp/receipt-affixing panel with no printed fee amount), and the applicant's/officer's own signature or left-thumb-impression are all staff-only or physical artifacts, out of scope, consistent with this registry's general practice of not modelling fee amounts or signature/biometric capture. GovSchema is independent and is not affiliated with, endorsed by, or operated by the Government of Sri Lanka or the Department for Registration of Persons.

Registry entry

lk/drp/application-for-a-national-identity-card

Jurisdiction
Sri Lanka · national
Version
1.0.0
Verification
draft

Authoritative source Form "B" (DRP 1,7,8) — Application for an Identity Card under sections 9, 16 and 17 of the Registration of Persons Act, No 32 of 1968

Machine access

Registry catalog
registry/index.jsonone record per schema id

Field reference

45 fields, read from the published schema.json, with names, types, requiredness, and validation as the document states them. The live government form remains the authoritative source.

Fields

  • district string required

    Administrative district of the office handling this application, entered in the routing box printed above the shaded 'FOR OFFICE USE' panel (confirmed via rendered page 1: this box is a plain applicant-facing text field, visually distinct from the 'IDENTITY CARD NO.'/'REGISTRATION OFFICER'S CODE & INITIALS' office-only panel directly beneath it).

    length: 0–50
  • dsDivision string required

    Divisional Secretariat (D.S.) Division of the office handling this application, part of the same top-of-form routing box as `district`.

    length: 0–50
  • gnNumberAndDivision string required

    Grama Niladhari (G.N.) number and division of the office handling this application, part of the same top-of-form routing box as `district`.

    length: 0–50
  • nameSinhalaTamilFamilyName string optional

    Item 1. The instructions manual (page 6) states: 'If there is no family name or surname leave the cage blank' — modelled as optional accordingly.

    length: 0–60classification: pii
  • nameSinhalaTamilGivenName string required

    Item 1. The applicant's given name, written in Sinhala or Tamil characters per the form's own instruction ('Cage 1 should be filled in Sinhala or Tamil characters').

    length: 0–60classification: pii
  • nameSinhalaTamilSurname string optional

    Item 1. Per the instructions manual, left blank if the applicant has no surname/father's name to record.

    length: 0–60classification: pii
  • nameEnglishFamilyName string optional

    Item 2. The English-block-letter transliteration of `nameSinhalaTamilFamilyName`; left blank under the same no-family-name instruction.

    length: 0–60classification: pii
  • nameEnglishGivenName string required

    Item 2. The English-block-letter transliteration of `nameSinhalaTamilGivenName`, per instruction ii: 'The Name written in Sinhala or Tamil Characters in Cage 1 should be written in English block letters in cage 2.'

    length: 0–60classification: pii
  • nameEnglishSurname string optional

    Item 2. The English-block-letter transliteration of `nameSinhalaTamilSurname`.

    length: 0–60classification: pii
  • identityCardFamilyName string optional

    Item 3. Only completed if the name to appear on the Identity Card is different from the name given in Item 1, per instruction iii, which also requires supporting documents proving the different name if it differs from the Birth Certificate.

    length: 0–60classification: pii
  • identityCardGivenName string optional

    Item 3. See `identityCardFamilyName`.

    length: 0–60classification: pii
  • identityCardSurname string optional

    Item 3. See `identityCardFamilyName`.

    length: 0–60classification: pii
  • sex enum required

    Item 4. The applicant's sex as printed on the form (two checkboxes: Female, Male — visually confirmed via rendered page 2).

    enum: female | maleclassification: pii
  • civilStatus enum required

    Item 5. The applicant's civil status (four checkboxes: Married, Single, Widowed, Divorced — visually confirmed via rendered page 2).

    enum: married | single | widowed | divorced
  • profession string optional

    Item 6. No printed requiredness cue; left optional, consistent with this registry's `lk/imm` precedent for the same field on Sri Lanka's passport application.

    length: 0–100
  • dateOfBirth date required

    Item 7.1. Printed as separate comb boxes (Y Y Y Y M M D D); modelled here as a single canonical ISO date.

  • birthCertificateNumber string optional

    Item 7.2. No printed requiredness cue; an applicant relying instead on a Probable Age Certificate (see `documents[]`) may have none.

    length: 0–20
  • placeOfBirth string required

    Item 7.3. Completed in accordance with the Birth Certificate, per instruction v.

    length: 0–100
  • birthDivision string optional

    Item 7.4. The D.S. Division in which the applicant's birth was registered.

    length: 0–60
  • birthDistrict string optional

    Item 7.5. The district in which the applicant's birth was registered.

    length: 0–60
  • countryOfBirth string optional

    Item 7.6, printed under the heading 'If the applicant is born outside of Sri Lanka, details of Citizenship Certificate issued under Section 5(2) of the Citizenship Act, No.18 of 1948'. Applicable only to applicants born outside Sri Lanka; the form itself has no separate applicant-fillable gating checkbox for this, so it is modelled as optional rather than wired to a fabricated condition — a consuming agent can derive applicability from context.

    length: 0–60
  • cityOfBirthAbroad string optional

    Item 7.7. See `countryOfBirth`.

    length: 0–60
  • section52CitizenshipCertificateNumber string optional

    Item 7.8. The number of the Citizenship Certificate issued under Section 5(2) of the Citizenship Act, No.18 of 1948, for an applicant born outside Sri Lanka to at least one Sri Lankan parent. Distinct from `citizenshipCertificateNumber` (Item 9.1), which covers citizenship-by-registration/dual-citizenship generally.

    length: 0–20
  • permanentAddressHouseNameOrNumber string required

    Item 8.1. Per instruction vi: 'In cage 8.1 permanent address should be written.'

    length: 0–100classification: pii
  • permanentAddressBuildingName string optional

    Item 8.1. Only applicable if the applicant's house is part of a named building/scheme/estate.

    length: 0–100classification: pii
  • permanentAddressRoadStreetLane string required

    Item 8.1.

    length: 0–100classification: pii
  • permanentAddressVillageCity string required

    Item 8.1.

    length: 0–100classification: pii
  • permanentAddressPostalCode string required

    Item 8.1. Sri Lankan postal codes are 5 digits.

    patternclassification: pii
  • postalAddressHouseNameOrNumber string optional

    Item 8.2, printed under the heading 'Postal Address'. Judgment call disclosed in VERIFICATION.md: the form's own instructions manual (instruction vi) describes cage 8.2 as a *different current residence* ('Cage 8.2 should be filled only if the applicant is residing in a different address other than the address indicated in 8.1'), which does not exactly match the printed 'Postal Address' sub-heading directly above it — this schema follows the printed field heading rather than resolving the discrepancy by inference.

    length: 0–100classification: pii
  • postalAddressBuildingName string optional

    Item 8.2. See `postalAddressHouseNameOrNumber` for the printed-heading-vs-instructions discrepancy disclosed in VERIFICATION.md.

    length: 0–100classification: pii
  • postalAddressRoadStreetLane string optional

    Item 8.2.

    length: 0–100classification: pii
  • postalAddressVillageCity string optional

    Item 8.2.

    length: 0–100classification: pii
  • postalAddressPostalCode string optional

    Item 8.2.

    patternclassification: pii
  • citizenshipCertificateNumber string optional

    Item 9.1, printed under 'Details of Citizenship Certificate/Dual Citizenship Certificate (strike off whichever is inapplicable)'. Per instruction vii (page 7), applicable only to applicants who hold dual citizenship or received Sri Lankan citizenship by registration; the form has no separate applicant-fillable gating checkbox for this, so it is modelled as optional rather than wired to a fabricated condition.

    length: 0–20
  • citizenshipCertificateIssueDate date optional

    Item 9.2. See `citizenshipCertificateNumber`.

  • purposeOfApplication enum optional

    Item 10. Per the form's own instruction ('If the duplicate of the Identity Card is applied for, please complete cage No.10') this whole item, and everything gated on it below, applies only when the applicant is requesting a duplicate, change, renewal, or replacement of an existing card rather than a first-time issuance — left optional accordingly. Visually confirmed via rendered page 3: four independent tick-boxes, one per option.

    enum: lost | changes | renewal-of-validity | damaged-defaced-illegible
  • lastOrCurrentIdentityCardNumber string optional

    Item 10.5. Required whenever a duplicate/change/renewal/replacement is being requested (Item 10 completed). Also corresponds to the number the Declaration's item 4 asks the applicant to hand over to the certifying officer ('I hereby hand over the Identity Card bearing number.../Police report obtained in lieu of the lost Identity Card bearing number...') — modelled once here rather than as a duplicate field.

    length: 0–20classification: sensitive-pii
  • dateOfIssueOfLastIdentityCard date optional

    Item 10.6. See `lastOrCurrentIdentityCardNumber`.

  • policeStationName string optional

    Item 10.7, printed under 'Details of the police report or other document pertaining to the lost Identity Card'. Applicable specifically when Item 10.1 (lost) is selected.

    length: 0–100
  • policeReportIssueDate date optional

    Item 10.7. See `policeStationName`.

  • residenceTelephoneNumber string optional

    Item 11.1. No printed requiredness cue.

    length: 0–15classification: pii
  • mobileTelephoneNumber string optional

    Item 11.1. No printed requiredness cue.

    length: 0–15classification: pii
  • email string optional

    Item 11.2.

    patternlength: 0–100classification: pii
  • previousApplicationMade boolean required

    Declaration item 5: 'I declare that I have/have not made any other application previous to this application (strike off whichever is inapplicable).'

  • declarationDate date required

    The date the applicant signs the Declaration, printed above the applicant's signature/left-thumb-impression block on page 4. Printed as separate comb boxes (Y Y Y Y M M D D).

Verification record

This file is the source-review record for this document version, per the manual-source-review-v1 practice.

Current claim

  • status: draft
  • verification.method: manual-source-review-v1
  • verification.lastVerifiedAt: 2026-07-13
  • maturity.level: structural-reference

This is GovSchema Standard Research cycle GOV-2753. It closes Sri Lanka's National ID & Civic Documents vertical, bringing Sri Lanka to 2 of 6 verticals (Passport, authored GOV-2716 via lk/imm; National ID, this schema).

Source verification (independently re-derived)

  • URL: https://drp.gov.lk/en/assets/formats/application.pdf
  • Fetched independently via curl:
    • HTTP 200, Content-Type: application/pdf, Content-Length: 608,290 bytes, Last-Modified: Sat, 16 Sep 2023 16:29:03 GMT.
    • sha256: da659f8c67ddb335111e13e91fd493843ab44b5bed7b3d952fe52726b21b73f6 (computed via sha256sum on the freshly-downloaded file).
  • The department's own homepage (drp.gov.lk/en/) returned HTTP 403 to a direct curl fetch in this environment, with and without a browser User-Agent header — consistent with generic bot-mitigation on the marketing site, not a login/authentication gate on the form itself, which this same domain's /en/assets/formats/ path serves with no such restriction (confirmed reachable both before this cycle and independently re-fetched during it).
  • Parsed with pdfjs-dist@3.11.174 (legacy build): getTextContent() across all 8 pages returns a full, clean, genuinely extractable trilingual (Sinhala/Tamil/English) text layer — not a scanned image. getFieldObjects() returns null0 AcroForm fields. This is a flat print-and-fill specimen, not a fillable PDF form, unlike this registry's lk/imm (Sri Lankan passport) schema, which is a genuine AcroForm.

Rendering (visual cross-check)

Pages 1-5 were rendered to PNG via pdfjs-dist@3 legacy build + canvas@3 (freshly installed for this cycle), with the bundled standard_fonts data directory supplied as standardFontDataUrl — without it this specimen's non-embedded base fonts render every glyph blank, a known gotcha for non-AcroForm specimens using standard (non-embedded) fonts. Visual confirmation resolved several ambiguities that the text layer alone could not:

  • The top-of-page-1 District/D.S. Division/G.N. Number-and-Division box is a genuine applicant-facing text field, visually distinct from the shaded "FOR OFFICE USE" panel (Identity Card No., Registration Officer's Code & Initials) directly beneath it. Modelled as three required fields (district, dsDivision, gnNumberAndDivision); the office-only panel is excluded from fields[].
  • Items 1-3 (Name in Full, Sinhala/Tamil; Name in Full, English Block Letters; Name to appear in Identity Card if different) are each a three-row Family Name/Name/Surname comb-box grid, confirmed via render.
  • Item 4 (Sex) and Item 5 (Civil Status) are independent per-option tick-boxes (2 and 4 options respectively), each modelled as a single-choice enum — a disclosed judgment call over the form's own one-checkbox-per-option layout, consistent with this registry's general practice of modelling clear single-choice printed intent as enum rather than one boolean per checkbox.
  • Item 8's two address blocks (8.1 "Permanent Address", 8.2 "Postal Address") each break into the same five sub-fields: house name/number, building/condominium/scheme name, road/street/lane/place/garden, village/city, and postal code.
  • Item 10's four purpose-of-application tick-boxes (10.1 lost, 10.2 changes, 10.3 renew validity, 10.4 damaged/defaced/illegible) and the conditional 10.5-10.7 fields (last/lost card number, date of issue, police report details).
  • Page 5 ("Details of the Payments made" plus a "FOR OFFICE USE ONLY / Notes" panel) is confirmed entirely office/payment-processing — a physical stamp/certificate/receipt-affixing panel with no printed fee amount anywhere on the form — and is out of scope, consistent with this registry's practice of not modelling fee amounts that aren't printed as a single authoritative figure.
  • Page 4's Declaration and signature/left-thumb-impression block, and Part Two (Certifying Officer attestation) and Part Three (Acknowledgment slip, pages 4/8) are staff-only or physical artifacts, out of scope.

Document structure and scope

  • Items 1-3's Family Name/Surname sub-fields are optional. The instructions manual states plainly: "If there is no family name or surname leave the cage blank" — only the "Name" sub-field of each item is modelled required.
  • **Item 8.2's printed sub-heading reads "Postal Address," but the instructions manual (instruction vi) describes this same cage as a different current residence address** ("Cage 8.2 should be filled only if the applicant is residing in a different address other than the address indicated in 8.1"), not a mailing address — a genuine discrepancy between the printed field heading and the instructions manual's own prose, disclosed here rather than silently resolved by inference. This schema follows the form's own printed field heading ("Postal Address").
  • Items 7.6-7.8 (Country of Birth / City / Section 5(2) Citizenship Certificate No., for applicants born outside Sri Lanka) and Item 9 (Citizenship/Dual Citizenship Certificate Number and Date of Issue) have no applicant-fillable gating checkbox anywhere on the form — no "born outside Sri Lanka" or "I hold dual citizenship" checkbox exists to condition on. Both blocks are modelled optional, with the conditional context recorded in each field's own description rather than a fabricated requiredWhen referencing a non-existent field — consistent with this registry's lk/imm precedent for the same pattern (that schema's Items 19 father/mother NIC fields).
  • Item 10 (Purpose of Application) and everything gated on it (10.5-10.7) are modelled optional, per the form's own instruction: "If the duplicate of the Identity Card is applied for, please complete cage No.10." lastOrCurrentIdentityCardNumber and dateOfIssueOfLastIdentityCard are requiredWhen purposeOfApplication is any of the four printed options; policeStationName and policeReportIssueDate are requiredWhen purposeOfApplication equals "lost" specifically, since the police-report block is only relevant to a lost card.
  • The Declaration's item 4 blank identity-card-number line ("I hereby hand over the Identity Card bearing number.../Police report obtained in lieu of the lost Identity Card bearing number...") was cross-checked against Item 10.5 ("Lost or last obtained Identity Card Number") and found to reference the same underlying value — modelled once as lastOrCurrentIdentityCardNumber rather than as two duplicate fields, a disclosed judgment call.
  • Comb-style character-box grids on this flat (non-AcroForm) specimen are a handwriting aid, not an enforced technical constraint (unlike an AcroForm's own comb flag with a printed charLimit, as seen in lk/imm). maxLength values on this schema are therefore reasonable editorial estimates, not extracted metadata — disclosed as a judgment call rather than presented as a form-derived constraint.
  • This form has no printed required-field asterisk markup anywhere. Requiredness was assigned per this registry's established practice: core/unconditional identity, birth, and permanent-address fields are marked required; fields with an explicit "if any"/no-cue/conditional character are left optional — consistent with lk/imm's own precedent for the same no-asterisk pattern (e.g. profession left optional there and here, for the same reason).
  • documents[] is modelled from this same PDF's own printed instructions manual (pages 6-8, Item 10, sub-items i-viii) — unlike lk/imm, whose separate "Instructions to Passport Applicants" PDF was a zero-text scanned image and could not be used as a documents[] source, this form's instructions are pages of the same extractable specimen. 10 documents[] entries are modelled: photographs (identity-document, required); birth certificate/probable age certificate copy (supporting-evidence, required as the baseline case); a birth-registration search affidavit (alternative to the birth certificate); a marriage certificate copy (only if a married woman wants her husband's name shown); a citizenship/dual-citizenship certificate copy; a priesthood ordination certificate copy; a disrobe certificate copy; a religious-authority confirmation certificate copy; a Divisional Secretary's late-application report; and a police report for a lost card (requiredWhen purposeOfApplication equals "lost", the one document entry with a genuine gating field to condition on).
  • Part Two (Certifying Officer attestation), Part Three (Acknowledgment slip), the payment/fee-receipt page, and the applicant's/officer's own signature or left-thumb-impression are staff-only or physical artifacts, out of scope.

Validation runs

  • node tools/validate.mjs registry/lk/drp/application-for-a-national-identity-card/1.0.0/schema.jsonpasses.
  • node tools/validate-ajv.mjs registry/lk/drp/application-for-a-national-identity-card/1.0.0/schema.jsonpasses (draft 2020-12, spec v0.3 meta-schema).
  • A from-scratch conformance-checker script (scratch, not committed — evaluates required/requiredWhen/validation.pattern/maxLength/enum against each fixture) found: both valid-*.json scenarios raise 0 errors; each of 8 mutation-control-*.json fixtures raises exactly 1 error. See conformance/lk/drp/application-for-a-national-identity-card/1.0.0/.

Out of scope, disclosed

  • Page 5 ("Details of the Payments made" / "FOR OFFICE USE ONLY") — physical stamp/receipt-affixing panel, no printed fee amount; office/payment processing only.
  • Part Two (Certifying Officer attestation) and Part Three (Acknowledgment slip) — staff-only.
  • Applicant's/officer's own signature or left-thumb impression, and photograph placement/scanning-panel instructions — physical artifacts.
  • Item 8.2's printed heading ("Postal Address") vs. the instructions manual's description of the same cage (a different current residence address) — a genuine specimen discrepancy, disclosed rather than resolved by inference; this schema follows the printed heading.

View the raw record (VERIFICATION.md)

Version history

  • 1.0.0 draft latest this page has verification record schema.json

Independent and non-affiliated

GovSchema is an independent, open-source project. This reference is not produced, reviewed, or endorsed by Department for Registration of Persons or any government. The authoritative source is always the live government form and its official instructions.