%%{init: {"flowchart": {"rankSpacing": 32, "nodeSpacing": 60, "curve": "basis"}}}%%
flowchart TB
accTitle: MADC processing and genotype-calling workflow
accDescr: Targeted genotype sequencing produces a raw MADC file. HapApp assigns fixed allele IDs and resolves problematic microhaplotypes. The processed MADC can then be used for a kinship matrix or converted by BIGr into a read-count VCF, called with Updog, and written as a genotype-called VCF.
A([Targeted<br/>sequencing]) --> B[/Raw MADC<br/>read counts/]
B --> C{{HapApp<br/>processing}}
C --> D[(Processed MADC<br/>fixed allele IDs)]
D -->|relationship analysis| E([Kinship<br/>matrix])
D -->|variant recovery| F[/BIGr<br/>read-count VCF/]
F --> G{{Updog<br/>dosage model}}
G --> H([Genotype-called<br/>VCF])
classDef source fill:#EAF5F7,stroke:#2A6576,stroke-width:2px,color:#173D47
classDef raw fill:#FFF7E8,stroke:#C98B2E,stroke-width:2px,color:#674615
classDef process fill:#EEF8F0,stroke:#319B42,stroke-width:2px,color:#1E5D28
classDef data fill:#EDF6F8,stroke:#48A9C5,stroke-width:2px,color:#214F5C
classDef result fill:#F3EFF9,stroke:#765C9E,stroke-width:2px,color:#493566
class A source
class B raw
class C,G process
class D,F data
class E,H result
What is a MADC file?
DArT, DArTag, MADC, microhaplotype, read counts, VCF, fixed allele IDs
A MADC file is a comma-separated Missing Allele Discovery Counts report from DArT targeted sequencing. It records the read count for each observed microhaplotype in each sample; it does not contain genotype calls.
A microhaplotype is a short amplified genomic segment containing one or more tightly linked variants. Because the variants are observed together on the same sequencing read, a microhaplotype can represent more than two alleles at one targeted region. DArTag returns raw FASTQ reads and a semi-processed MADC report that summarizes this sequence-level evidence (Zhao et al. 2026).
Where MADC fits
The raw report can include duplicate, ambiguous, or poor-quality microhaplotypes. Breeding Insight processes it with HapApp before BIGr conversion so that allele identities remain stable across files and analyses. The standardized IDs support marker tracking and cross-project comparison rather than merely recording the order in which alleles appeared in one report.
Read one MADC row
Every row describes one observed allele sequence. The first three columns identify that sequence; the remaining columns give its read count in each sample.
| Column | Meaning |
|---|---|
AlleleID |
Marker ID, allele role, and fixed allele number, such as chr1.1_000194324|Ref_0001 |
CloneID |
Target-region identifier, commonly encoded as chromosome and position |
AlleleSequence |
Amplicon or microhaplotype sequence observed for that allele |
| Sample columns | Non-negative read counts for that allele in each named sample |
The following accessible excerpt is based on example_MADC_FixedAlleleID.csv, which is bundled with BIGr. Sequences are shortened only for display.
AlleleID |
CloneID |
AlleleSequence excerpt |
Sample_1 |
Sample_2 |
|---|---|---|---|---|
chr1.1_000194324|AltMatch_0001 |
chr1.1_000194324 |
CGAAATAA…GACAAC |
0 | 139 |
chr1.1_000194324|Alt_0002 |
chr1.1_000194324 |
CGAAATAA…AAGTAA |
44 | 1 |
chr1.1_000194324|Ref_0001 |
chr1.1_000194324 |
CGAAATAA…AAGTAA |
152 | 171 |
chr1.1_000309952|AltMatch_0001 |
chr1.1_000309952 |
TGGTATTG…ATATTCA |
43 | 82 |
Rows that share a CloneID belong to the same targeted region. To obtain the total evidence at a variant, BIGr reconciles the sequences, their strand orientation, and the bases they carry at each polymorphic position.
Ref, Alt, Match, and Other alleles
The MADC’s four core classes are Ref, Alt, RefMatch, and AltMatch. The part of AlleleID after the vertical bar describes how a microhaplotype relates to the designed marker.
| Label | Interpretation |
|---|---|
Ref |
The designated reference microhaplotype at the target polymorphism |
Alt |
The designated alternate microhaplotype at the target polymorphism |
RefMatch |
A discovered microhaplotype that carries the target reference state but differs elsewhere in the amplicon |
AltMatch |
A discovered microhaplotype that carries the target alternate state but differs elsewhere in the amplicon |
Other |
An additional sequence label recognized by current BIGr outside the four core MADC classes; verify its provenance in the HapApp output and panel database |
A target allele is defined at the polymorphism for which the probe was designed. An off-target allele arises from another polymorphic position discovered within the same amplified sequence. A Match or Other microhaplotype can therefore contribute read evidence at the target and can also reveal off-target SNPs.
Current madc2vcf_all() behavior is more capable than the original MADC description:
Otheralleles can be included in off-target discovery and filtered by sequence difference or indel status;- an
Otherallele carrying a third base at the target can make that target multiallelic; - multiallelic sites can be removed or evaluated with read-depth and sample-count thresholds; and
- target indels are supported when the required marker information is supplied, although off-target sites from an indel-containing tag are not extracted.
The Updog conversion workflow deliberately removes multiallelic SNPs because its two count matrices represent one reference and one alternate allele.
Why fixed allele IDs matter
The suffixes in Ref_0001, Alt_0002, and Match labels are fixed identifiers assigned against a haplotype database. They prevent a sequence from changing identity merely because a different batch contains a different set or order of observed haplotypes.
BIGr requires fixed IDs for its MADC-to-VCF functions. A raw DArT report may use unfixed labels such as |Ref and |Alt, include seven placeholder rows, or contain ambiguous sequences. Renaming those labels by hand is not equivalent to HapApp processing. The standardized workflow cleans and filters sequences, matches previously cataloged alleles, assigns new IDs to qualifying novel alleles, writes those IDs back to the MADC, and updates the haplotype database when new alleles are found (Zhao et al. 2026).
A raw MADC has neither stable allele identities nor called genotypes. Process it with HapApp, validate it with check_madc_sanity(), and convert its read evidence to a biallelic read-count VCF before using Updog.
The supporting files
MADC conversion may require files that supply information not safely inferable from the count table alone.
| File | What BIGr uses it for |
|---|---|
.botloci |
Lists tags designed from the bottom strand so BIGr can reverse-complement them and recover the correct genomic orientation |
| Haplotype FASTA | Provides the panel’s known allele sequences and can recover a missing Ref or Alt sequence |
| Marker-information CSV | Supplies marker coordinates or authoritative REF/ALT details when CloneID is not in Chromosome_Position form; target indels additionally require the documented indel fields |
Current BIGr writes conversion provenance and parameters into VCF metadata. It can also remap nonstandard marker IDs with a marker-information file. Consult the current BIGr reference manual for the columns required by the function and data type you use.
Paralogous microhaplotypes require context. Curated databases may retain and flag them so that recurring sequences can be recognized in later projects, while a breeding analysis may remove likely paralogous markers before genotype calling. A very large number of microhaplotypes or extreme depth at one locus can indicate unintended amplification of duplicated genomic regions, but high allelic diversity alone is not proof of paralogy (Zhao et al. 2026).
MADC counts are not VCF genotypes
| Data state | What the sample values mean | Genotypes present? |
|---|---|---|
| Processed MADC | One read count per microhaplotype row | No |
| Read-count VCF | Reference-allele depth, alternate-allele depth, and total depth at each biallelic variant | No |
| Genotype-called VCF | Allele depths plus a model-based dosage/genotype and its uncertainty | Yes |
A read fraction is not itself an allele dosage. Allele bias, sequencing error, overdispersion, depth, and population information all affect how strongly the reads support a dosage class. See What is allele dosage? before interpreting a called polyploid VCF.
Practical takeaway
Treat MADC as sequence-level count evidence. Fixed allele IDs establish what each row represents; .botloci, FASTA, and marker information establish orientation and variant identity; a dosage caller turns the resulting biallelic counts into uncertain genotype calls.
Continue to the workflow
Convert MADC data to a genotype-called VCF Get started with genomic data in R
Attribution
This page adapts “MADC File Format” by Alexander M. Sandercock and Cristiane H. Taniguti. The source and this adaptation are licensed under the Creative Commons Attribution 4.0 International License.