Guides
HLA nomenclature, typing and matching, explained plainly
Reference guides for HLA laboratories, transplant teams, immunogenetics researchers and bioinformaticians. Every allele example is checked against the pinned IPD-IMGT/HLA release before publication, and every factual claim links to its primary source.
Nomenclature
How HLA allele names are built, read and written.
- GL String format: writing HLA genotypes and ambiguityHow the five GL String delimiters (^ | + ~ /) describe HLA genotypes, phase and ambiguity, with the precedence rules, worked examples and common mistakes.
- HLA G groups and P groups, explained with examplesWhat A*02:01:01G and A*02:01P mean, how G and P groups differ, why a G group can contain null alleles, and how to store group-level typing safely.
- HLA ambiguity explained: allele, genotype and phase ambiguityThe three kinds of ambiguity in an HLA typing result, why each arises, how GL String writes each one, and which ones G and P codes can and cannot summarise.
- HLA expression suffixes N, L, S, C, A and Q explainedWhat the letter at the end of an HLA allele name means, how IPD-IMGT/HLA assigns it, why it can change between releases, and the null-allele trap in matching.
- HLA null alleles: what the N suffix means, causes and countsWhat an HLA null allele is, why most are null, how many IPD-IMGT/HLA 3.66.0 names, where they hide in typing results and why the N must never be dropped.
- How to read an HLA allele name, field by fieldWhat each part of a name like HLA-A*02:01:01:01 means, from the gene to the four fields and the expression suffix, with examples checked against IPD-IMGT/HLA.
- What "two-field" HLA typing means, and why people still say 4-digitWhy HLA names are counted in fields, not digits, since 2010, what a two-field result such as A*02:01 fixes, and where the old "4-digit" label breaks.
- Why HLA-C antigens are written Cw but HLA-C alleles are written CWhy the w was dropped from HLA-C allele names in 2010 but kept for HLA-C antigens such as Cw7, and how to handle Cw*0702 and Cw*07:02 in old data.
IPD-IMGT/HLA releases
Why names change between releases and how to keep up.
- Deleted HLA alleles: why names are withdrawn and how to trace themWhy IPD-IMGT/HLA deletes allele names, the reasons recorded in Deleted_alleles.txt, and how to trace a deleted name to its successor through the HLA ID.
- How to find what changed between two IPD-IMGT/HLA releasesCompare any two IPD-IMGT/HLA releases by HLA ID to list added, removed and renamed allele names, with tested Python and the 3.65.0 to 3.66.0 numbers.
- IPD-IMGT/HLA files explained: Allelelist, history, deleted and statusWhat Allelelist.txt, Allelelist_history.txt, Deleted_alleles.txt, Allele_status.txt and release_version.txt contain, column by column, and which to use when.
- IPD-IMGT/HLA releases and why allele names changeHow IPD-IMGT/HLA release numbers work, the kinds of name change each quarterly release brings, and how to keep stored HLA typings current.
- hla_nom_g.txt and hla_nom_p.txt: reading the G and P group filesThe line format of the WMDA G and P group files from IPD-IMGT/HLA, what an empty third field means, the naming quirks to expect, and a tested Python parser.
Typing methods and resolution
What a typing result can and cannot tell you.
- HLA typing resolution explained, from allele group to full sequenceWhat one-, two-, three- and four-field HLA results can and cannot distinguish, where G and P group reporting fits, and why name length is not resolution.
- SSO, SSP, SBT and NGS HLA typing comparedHow the four main DNA-based HLA typing methods work, what each resolves, where each leaves ambiguity, and what that means for the allele names they report.
Donor matching
How match grades are counted and where the counts go wrong.
- GvH vs HvG HLA mismatches: direction and homozygous lociHow graft-versus-host and host-versus-graft mismatch counts differ, why they diverge only at homozygous loci, with examples checked against IPD-IMGT/HLA 3.66.0.
- HLA match counting: per chromosome, not per locusWhy an HLA match grade counts alleles rather than loci, how to count one or two mismatches or a homozygous side, and the errors that come from counting loci.
- What 8/8 and 10/10 HLA match grades mean, and how they are countedWhich HLA loci an 8/8, 10/10 or 12/12 match grade counts, why the count is per chromosome, how GvH and HvG differ, and the null-allele and resolution traps.
Antibodies and DSA
HLA antibody testing terms, explained without clinical advice.
- What is a donor-specific antibody (DSA)? The term explainedWhat donor-specific antibody means, preformed versus de novo DSA, how DSA is assigned from bead results and donor typing, and why typing resolution decides it.
HLA pharmacogenomics
HLA alleles named in published drug guidelines.
- HLA alleles in drug guidelines: B*57:01, B*15:02, A*31:01, B*58:01Which HLA alleles CPIC guidelines name for abacavir, carbamazepine, oxcarbazepine, phenytoin and allopurinol, and how to get the names right for a lookup.
- HLA-B*15:02 and carbamazepine: what the CPIC guideline saysWhat the CPIC carbamazepine guideline says about HLA-B*15:02, its recommendation conditions, the related B75 alleles it names, and getting names right.
- HLA-B*57:01 and abacavir: what the CPIC guideline saysWhat the CPIC abacavir guideline says about HLA-B*57:01, how results are reported, what the test can and cannot predict, and how to get the allele name right.
LIMS and data hygiene
Keeping HLA data clean across systems and decades.
- Converting pre-2010 HLA allele names to current nomenclatureHow to convert colon-less HLA names like A*0101, Cw*0702, A*9201 and DPB1*0102 to current names, and the cases where adding colons gives the wrong answer.
- How to store HLA typing in a database without losing informationWhat to keep when storing HLA typing, from the reported string and release to ambiguity and suffixes, with a tested schema and the traps that corrupt data.
- Validating HLA allele names on importThe checks to run when HLA typing enters a LIMS, registry or research dataset, what each kind of bad name looks like, and how to flag it rather than fix it.
APIs and bioinformatics tools
Checking HLA names in code, pipelines and agents.
- An HLA allele lookup API: verify, normalize, allele and history callsWhich HLA-Verify API call answers which question about an HLA allele name, with real responses from IPD-IMGT/HLA 3.66.0, batching advice and error codes.
- HLA-Verify verdicts explained: valid, group, deleted, hallucinatedWhat each HLA-Verify verdict and flag means, with real examples from IPD-IMGT/HLA 3.66.0, how the clean flag is computed, and the action each verdict calls for.
- How to validate HLA allele names in PythonTested Python that checks HLA allele names against the IPD-IMGT/HLA release files, traces renamed and deleted names, and batches the check through an API.
AI and HLA
Language models, allele names and how to verify their output.
- HLA-Bench: a benchmark for LLMs on HLA nomenclature and matchingWhat HLA-Bench tests, how it grades language models against a pinned IPD-IMGT/HLA release without human labels, the published results, and how to read them.
- Why language models invent HLA allele names, and how to checkHow LLMs fabricate plausible HLA allele names, what the HLA-Bench benchmark measured, the three failure patterns, and how to verify model output.