tblLAB_RES - Resistance testing

holds background information on the resistance test, laboratory, library, kit, software and type of test

Note: This table is tightly linked to tblLAB_RES_LVL_1, tblLAB_RES_LVL_2 and tblLAB_RES_LVL_3.

Resistance should be reported at lowest level of interpretation possible – so if the nucleotide sequence is available this should be reported rather than the list of mutations or resistance scores. However, the resistance test results should be captured if they have been part of the physician’s treatment decisions for the patient.

Non-amplifiable resistance tests should not be reported.

These four tables are designed to capture several possible formats the clinics and cohorts might have recorded resistance test data in. Once this data is gathered it should like all other tables be quality assessed.

Core Fields

Note: Fields marked bold form the unique identifier for a record of the table.
Field name
character (or numeric if possible)
Code to identify patient (Cohort Patient ID)
character (or numeric if possible)
An arbitrary value identifying a resistance test result
Date of the actual sample taken (NOT the test date)
optional precision annotation for date of sample
yyyy-mm-dd hh:mm
Date and time when the sequencing was performed
optional precision annotation for date of sequencing
Name of laboratory where the test was performed
Library/algorithm used to identify resistance mutations
Name/identifier of reference strain used to find mutations
Vendor and version/name of the kit used for the test
Software and version used to determine resistance


  • 1 = Genotype (e.g., GeneXpert, NAAT/LPA
  • 2 = Phenotype (e.g., culture)
  • 9 = Other
Type of test
character: MeSH terminology ​https://meshb.nlm.nih.gov/search
Type of pathogen


  • 1 = HIV
  • 2 = HCV
Type of Virus
Subtype of HIV- or HCV-RNA

Additional Fields

As shown with the core fields, the TEST_ID is the link between the 3 levels of data and the test background information table.

Some prior assessment of the assigned test identifiers has to be done in order to avoid duplicates.

In a running database the duplicate issues are easily resolved by adding a unique auto-generated key as the identifier between 3 levels of data and the test background information table.

Along with the TEST_ID it might be necessary to store the ID assigned to the sample at both the testing laboratory but also the centres laboratory in order to track the sample.

Field name
character (or numeric if possible)
The assigned sample ID at the lab where the resistance test is preformed.
character (or numeric if possible)
The assigned sample ID from the centre.

QA Checks

TableCrosstableError CodeDescriptionStudy specificHICDEP?
AllTablesCrossTableATC001any date in database after DEATH_D in tblLTFU Yes
AllTablesCrossTableATC002any date in database after DROP_D in tblLTFU Yes
AllTablesCrossTableATC003any date in database before BIRTH_D in tblBAS Yes
AllTablesCrossTableATC004any date in database in the future Yes
AllTablesCrossTableATC005patients submitted previously who have been missed out Yes
AllTablesCrossTableATC006Any fields not coded as coding lists on table definition Yes
tblLAB_RESWithinTableLRW001Duplicate records for same patient on same date Yes
tblLAB_RESWithinTableLRW002Missing PATIENT Yes
tblLAB_RESWithinTableLRW003Missing TEST_ID Yes
tblLAB_RESWithinTableLRW004Missing SAMPLE_D Yes
tblLAB_RESWithinTableLRW005Missing SEQ_DT Yes
tblLAB_RESWithinTableLRW006Missing LAB Yes
tblLAB_RESWithinTableLRW007Missing LIBRARY Yes
tblLAB_RESWithinTableLRW008Missing REFSEQ Yes
tblLAB_RESWithinTableLRW009Missing KIT Yes
tblLAB_RESWithinTableLRW010Missing SOFTWARE Yes
tblLAB_RESWithinTableLRW011Missing TESTTYPE Yes
tblLAB_RESWithinTableLRW012Missing SUBTYPE Yes
tblLAB_RESWithinTableLRW013SEQ_DT has no time part Yes
tblLAB_RESWithinTableLRW014Missing VIRUSTYPE Yes
tblLAB_RESCrossTableLRC001PATIENT has no record in tblBAS Yes
tblLAB_RESCrossTableLRC002This TEST_ID has both LVL_1 and LVL_2 records Yes