Registry entry
Malta Driving Licence Renewal (Form DRV019)
Transport Malta's (the national authority for land, sea, and air transport regulation) Land Transport Directorate "Form DRV019 — Driving Licence Renewal Form" ("Formola gĦat-Tiġdid tal-Liċenzja tas-Sewqan", bilingual Maltese/English), filed by a driving-licence holder renewing their Maltese driving licence. Deepens Malta past its four already-published verticals (mt/jobsplus/self-employed-declaration-of-commencement, Business Formation; mt/identita/passport-application, Passport; mt/identita/national-identity-card-application, National ID & Civic Documents; mt/identita/long-stay-visa-application, Visa), opening the DMV vertical (5/6). This document models the applicant's own personal-details update block (name & surname, address, post code, ID Card number, telephone/mobile — filled in, per the form's own printed note, only when these details have changed since the licence was issued, alongside a copy of the ID Card); the renewal channel election (online via licenzji-xufiera.gov.mt, by post, or in person at a Transport Malta office); the applicant's two printed declarations (an undertaking to notify the Authority of any new or worsening medical condition, and a declaration of at least 185 days' Maltese residency in the last calendar year); and the applicant's own signature and accompanying passport-style photograph. It excludes the form's own detailed payment logistics (the bank IBAN/BIC and cheque-payee instructions for postal renewals, and the in-person card-payment note) as back-office/payment-processing detail rather than applicant-supplied form data, and excludes page 2's bilingual Data Protection Privacy Notice, which is informational only with no applicant input (see VERIFICATION.md). Filing this renewal is a driver's own action performed with Transport Malta; this schema does not file the renewal itself, and the live source is always authoritative. GovSchema is independent and is not affiliated with, endorsed by, or operated by Malta or Transport Malta.
You are viewing v1.0.0
The latest published version of this schema is v1.0.1. See the current reference page. Published versions are immutable; this page stays for agents pinned to mt/transport-malta/driving-licence-renewal@1.0.0.
Registry entry
mt/transport-malta/driving-licence-renewal
Machine access
- Schema document
registry/mt/transport-malta/driving-licence-renewal/1.0.0/schema.jsonapplication/schema+json- Verification record
registry/mt/transport-malta/driving-licence-renewal/1.0.0/VERIFICATION.mdtext/markdown- Registry catalog
registry/index.jsonone record per schema id
Field reference
10 fields across 4 steps, 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.
Personal Details
-
personalDetailsHaveChangedboolean requiredNot a printed checkbox. The Personal Details block's own heading note reads, verbatim: "Fill in only in case of changes in your personal details and send a copy of your ID Card." Modelled as this directly-supplied boolean gate, controlling the requiredness of `nameAndSurname`/`address`/`postCode`/`idCardNumber` and the `idCardCopy` document — the same convention this registry's own `mt/identita/national-identity-card-application` (`addressHasChanged`) established for an analogous whole-section printed condition.
-
nameAndSurnamestring optionalName & Surname
classification: pii -
addressstring optionalAddress
classification: pii -
postCodestring optionalPost Code
-
idCardNumberstring optionalID Card Number
classification: pii -
telephoneOrMobilestring optionalModelled unconditionally optional regardless of `personalDetailsHaveChanged`, the same convenience-contact-field treatment this registry's own `mt/identita/national-identity-card-application` gave its equivalent `telephoneNumber`/`mobileNumber` fields.
classification: pii
Driving Licence Renewal Method
-
renewalChannelenum requiredThe form's own three numbered options for effecting the renewal. `ONLINE` renews through www.licenzji-xufiera.gov.mt using an e-ID account or the ID Card number and document number, with the Medical Certificate and payment also processed through that same site. `POST` sends the required documentation together with payment (cash not accepted). `IN_PERSON` visits a Transport Malta office (Malta Transport Centre, Pantar Road, Ħal Lija; A3 Towers, Arcade Street, Paola; or the Gozo Licensing Office, Victoria). This schema excludes the form's own detailed within-channel payment logistics (bank IBAN/BIC, cheque payee, in-person card payment) as back-office/payment-processing detail rather than a fillable applicant field — see this schema's own `verification.notes`.
enum: ONLINE | POST | IN_PERSON
Declarations
-
acknowledgesMedicalConditionNotificationDutyboolean requiredThe applicant's own directly-supplied declaration content, not a yes/no disclosure of a current condition: the printed sentence is a forward-looking commitment to notify the Authority of a *future* change, with no blank line, checkbox, or "give details" field of its own. See this schema's own `verification.notes` for the disclosed distinction from a present-tense disclosure question.
-
residentInMaltaAtLeast185Daysboolean requiredThe applicant's own directly-supplied declaration content, affirming or denying the printed residency statement. No printed checkbox or blank line accompanies this sentence either.
Signature and Photograph
-
signaturestring requiredPrinted instruction directs dark ink within the signature box.
classification: pii
Verification record
Candidate selection
GOV-4239 ("GovSchema Standard Research", parent GOV-4237). Closes Malta's only remaining open (non-dead-end) DMV backlog item, per the GOV-4215 scouting cycle and CATALOG.md's Known Gaps section — Transport Malta's "Form DRV019 — Driving Licence Renewal Form". Deepens Malta past its four already-published verticals (mt/jobsplus/self-employed-declaration-of-commencement, Business Formation; mt/identita/passport-application, Passport; mt/identita/national-identity-card-application, National ID & Civic Documents; mt/identita/long-stay-visa-application, Visa), opening the DMV vertical (5 of 6). Only Taxes remains a confirmed dead end after this cycle.
Reaching the live source
Target: https://www.transport.gov.mt/include/filestreaming.asp?fileid=5660.
- The live origin
transport.gov.mtis Cloudflare-JS-challenge-gated on every path attempted, including the file-streaming endpoint itself — confirmed freshly this cycle: a directcurl(with a realistic desktop Chrome User-Agent) returns HTTP 403 withcf-mitigated: challenge. This matches the earlier GOV-4215 scouting cycle's own finding for this domain. - Retrieved instead via a Wayback Machine snapshot of the live PDF- streaming endpoint, crawled before/without hitting the gate:
http://web.archive.org/web/20250206231949/https://www.transport.gov.mt/include/filestreaming.asp?fileid=5660. This is the same Wayback-workaround precedent already used for gov.au sources (see memorygov-au-wayback-workaround). - HTTP 200,
Content-Type: application/pdf, 590,784 bytes. - sha256 of the retrieved bytes:
31da48262fc544080c6b5f422e8e845debd41eeb0f441402629298a0498b0e5e. Independently re-fetched and re-hashed this cycle rather than trusted from the issue's own report alone — both byte count and hash match exactly, per this registry's standing skepticism practice. - Confirmed mechanically: the retrieved bytes begin
%PDF-1.4and contain zero/AcroForm//Widget//FToccurrences — a flat, print-and-fill specimen, not an interactive AcroForm PDF. Also confirmed viapage.getAnnotations()returning 0 entries for both of its 2 pages, so no field-level metadata exists on the PDF itself to consult.
Extraction method
Unlike the earlier GOV-4215 scouting cycle's concern that Transport Malta mirrors would need "better PDF tooling" for a glyph-index/CID font issue (the same issue this registry's own mt/identita/passport-application and mt/identita/national-identity-card-application needed a ToUnicode-CMap workaround for), this PDF's own text-showing operators decode cleanly via pdfjs-dist's standard getTextContent() API (already vendored at /tmp/node_modules/pdfjs-dist from prior cycles) — no custom glyph-index font encoding, no ToUnicode CMap workaround needed. Confirmed via a scratch Node script this cycle. Text was rendered per page, grouped by y-coordinate row and sorted by x-coordinate, to reconstruct each bilingual (Maltese/English) field label and instruction in its printed layout position.
Page 2 is entirely a bilingual Data Protection Privacy Notice with no applicant input and is excluded.
Models 10 fields[] across 4 steps (Personal Details; Driving Licence Renewal Method; Declarations; Signature and Photograph) plus 2 documents[] entries.
Disclosed source-fidelity findings
- Whole-block conditional Personal Details section, modelled as a directly-supplied boolean gate. The "Personal Details" block's own printed note reads, verbatim: "Fill in only in case of changes in your personal details and send a copy of your ID Card." Not a printed checkbox — modelled as
personalDetailsHaveChanged, the same convention this registry's ownmt/identita/national-identity-card-application(addressHasChanged) andmt/identita/passport-application(spouseSectionApplieset al.) each established for a compound/ whole-section printed condition. It gates the requiredness ofnameAndSurname/address/postCode/idCardNumberand theidCardCopydocument.telephoneOrMobileis modelled unconditionally optional regardless of this gate, the same convenience-contact-field treatmentmt/identita/national-identity-card-applicationgave its equivalenttelephoneNumber/mobileNumberfields. renewalChannelmodelled as a required enum, same treatment as this registry's ownie/dttas/driving-licence-renewal. The form's three numbered options (online viawww.licenzji-xufiera.gov.mt; by post with payment; in person at a Transport Malta office) are a genuine top-level decision point governing the rest of the renewal, even on a flat print specimen with no interactive checkbox — the same treatmentie/dttas/driving-licence-renewalgave its structurally identicalapplicationChannelfield. This schema excludes the form's own detailed within-channel payment logistics (the printed cheque-payee name, the two banks' IBAN/BIC pairs for postal renewals, and the in-person card-payment note) as back-office/payment-processing detail rather than a fillable applicant field — none of it is a blank the applicant completes, unlike (for example)mt/identita/national-identity-card-application's ownservizzGovHubLocationblank line. This follows this issue's own suggested judgment call and this registry's general convention of excluding office/payment-processing detail.- Both printed declarations modelled as directly-supplied declaration content, not a "yes/no + details" compound. Unlike this issue's own scouting summary, which described the medical declaration as a "yes/no + details" field, the retrieved PDF text contains no details blank and no present-tense disclosure question for either declaration: Both are modelled as the applicant's own directly-supplied declaration content —
acknowledgesMedicalConditionNotificationDutyandresidentInMaltaAtLeast185Daysrespectively — each a required boolean capturing the applicant's declared value, with no separate free-text "details" field fabricated against unprinted form content.- "I declare that if I have a medical condition which has become worse after the licence was issued, or if I develop a new condition, I will inform the Authority immediately" is a forward-looking commitment to notify the Authority of a future change, not a question about a current condition.
- "I declare that I have been a resident of Malta for at least 185 days in the last calendar year" is a plain declaration sentence with no accompanying blank line or checkbox either.
- Photograph modelled unconditionally optional, not gated on the personal-details-changed condition. The "Affix a clear background coloured photo" instruction sits well below the Personal Details block (confirmed via this cycle's own y-coordinate layout read) and carries no printed conditional of its own. This issue's own scouting note asserts the photograph is "only required if personal details have changed since the last licence," but that condition appears nowhere in the retrieved PDF text and could not be independently re-confirmed against a live Transport Malta service page this cycle — the domain is Cloudflare-gated on every path, and no matching Wayback snapshot of the specific renewal-guidance page was located within this cycle's search. Per this registry's own established "disclose rather than fabricate an unprinted field" convention (see
mt/identita/passport-application's own Finding 6, an analogous external-guidance-only condition), thephotographdocument is modelled unconditionally optional rather than gated onpersonalDetailsHaveChanged, with this external claim disclosed here as informational context only.
Conformance
2 valid mock scenarios and 8 mutation-control fixtures committed under conformance/mt/transport-malta/driving-licence-renewal/1.0.0/:
valid-address-change-online.json— a renewal reflecting a change of personal details (name, address, post code, ID Card number), renewing online, both declarations affirmed.valid-no-change-by-post.json— a straightforward renewal with no personal-details change, renewing by post, both declarations affirmed.- 8 mutation controls: a missing statically-required field (
mutation-missing-personaldetailshavechanged-required.json); a missingnameAndSurnamewhilepersonalDetailsHaveChangedis true (mutation-missing-nameandsurname-requiredwhen.json); a missingidCardNumberwhilepersonalDetailsHaveChangedis true (mutation-missing-idcardnumber-requiredwhen.json); an invalidrenewalChannelenum value (mutation-invalid-renewalchannel-enum.json); a missingacknowledgesMedicalConditionNotificationDuty(mutation-missing-acknowledgesmedicalconditionnotificationduty-required.json); a missingresidentInMaltaAtLeast185Days(mutation-missing-residentinmaltaatleast185days-required.json); a missingsignature(mutation-missing-signature-required.json); and an unknown top-level field (mutation-unknown-field-rejected.json).
An ephemeral, from-scratch conformance checker (deriving required/ requiredWhen rules directly from this schema's own fields[], discarded after use, not committed) ran all 10: both valid scenarios at 0 errors, all 8 mutation controls each raising exactly 1 error, and confirmed every requiredWhen field reference resolves (0 dangling references). Note that, consistent with this registry's own fixture convention (see e.g. mt/identita/national-identity-card-application's own fixtures), documents[] requiredness is not exercised via these field-only mock fixtures.
Validated clean with node tools/validate.mjs and node tools/validate-ajv.mjs (584/584 both), individually and as part of the full registry run. registry-index.json regenerated via npm run build-index in tools/govschema-client/ (583 → 584 entries).
View the raw record (VERIFICATION.md)
Version history
-
1.0.1draftlatesthas verification recordschema.json -
1.0.0draftthis pagehas verification recordschema.json
Independent and non-affiliated
GovSchema is an independent, open-source project. This reference is not produced, reviewed, or endorsed by Transport Malta, Land Transport Directorate or any government. The authoritative source is always the live government form and its official instructions.