C5_5_Attachment_B_-_EDD_Specification_1_22_2026.pdf
PDF 442 KB Posted
- Attached to
- Organic & Inorganic Soil, Sediment & Water Labor
- Solicitation number
- 140R2026Q0053
About this file
This document is a technical specification for an Electronic Data Delivery (EDD) format used by the U.S. Bureau of Reclamation (USBR) to receive laboratory analytical results. The EDD is a tab-delimited UTF-8 text file with specific field requirements and formatting standards for contract laboratory data submission.
The specification defines 43 required and optional data fields organized into several categories: laboratory and sample identification (LAB_ID, LAB_NAME, LAB_REPORT_NUM, SMPL_FIELD_NUM), sample collection and preparation timestamps (DATE_TIME_PRESERVED, DATE_TIME_PREPARED, DATE_TIME_ANALYZED), analytical results (SAMPLE_RESULT_VALUE, SAMPLE_RESULT_SYMBOL, SAMPLE_RESULT_UNIT_NAME), method codes (METHOD_CODE_PREPARATION, METHOD_CODE_EXTRACTION, METHOD_CODE_ANALYSIS), detection and reporting limits (RESULT_MDL, RESULT_RL with corresponding unit codes), and quality control data (LAB_QC_SMPL_NUM, LAB_QA_SUBTYPE_NAME, LAB_REPLICATE). Additional fields capture quality assurance information including accuracy, precision, and contamination control results with acceptance limits, spike recovery data for matrix spike samples, and laboratory qualifiers documenting any data quality issues. Each field specifies character limits, allowed character types, and data format requirements. Files must be named using lexicographically sorted sample field numbers paired with laboratory report numbers in the format "AAAAAAAA_BBBBBBBB.tsv." The header row must contain field names in the exact order specified, with proper handling of line terminators (CR, CRLF, or LF) and prohibition of tabs, carriage returns, and line feeds within individual data fields.
View the file
Other files
On GovTribe
Work with this file
- Download the original file
- Contacts named in this file
- Similar government files
- Ask GovTribe AI about this file
Text version
Field Name Description Required Type Description Example
UPDATE_FLAG
Reserved for USBR use. Must allways be set to the ascii character 0x31h ("1") x Allways the unicode character "1" (U+0031) 1
LAB_ID Contract Laboratory ID assigned to laboratory by USBR. x 10 characters max, to include only characters 0-9 9999
LAB_NAME Contract Labortatory Name. x
A text string 255 characters max. May not contain charachters from C0 and C1 control blocks. (U+0000 through U+0019 and U+0080 through U+009F) May not contain the delete character (U+007F). All unicode characters with General Category of Cc,Cf,Cs,Co,Cn and C are prohibited. (Most commonly C0 (U+0000 through
U+0019) and C1 (U+0080 through U+009F)). The 'del' charachter, U+007F is also prohibited.
ACME Chemical Analysis Company
LAB_REPORT_NUM
Contract Laboratory results report number. An alphanumeric designator identifying the report chosen and assigned by the contract laboratory.
x 50 characters max to include only characters A-Z,a-z,0-9 space (U+0020), period
(U+002D), underscore (U+005F) or dash (U+002D).
18B480-04 addendum
LAB_REPORT_DATE Contract Laboratory report date (e.g., "2018-03-19"). x Date. Must be in the format "YYYY-MM-DD". May inlcude ONLY characters 0-9 and dash.
2018-03-19
LAB_SMPL_NUM
Contract Laboratory sample identification code (e.g., "18BR00179-07"). An alphanumeric designator chosen and assigned to the sample by the contract laboratory.
x50 characters max to include only characters A-Z,a-z,0-9 space (U+0020), period (U+002E), underscore (U+005F) or dash (U+002D). 18BR00179-07
SMPL_FIELD_NUM
Sample identification number. (e.g., "BHP1223"). An alphanumeric designator assigned to each sample by
USBR.
x 50 characters max to include only characters A-Z,a-z,0-9 space (U+0020), period
(U+002E), underscore (U+005F) or dash (U+002D).
BHP1223
LAB_QC_BATCH_NUM
Contract Laboratory batch identification code (e.g., "18BR00GH"). An alphanumeric designator chosen and assigned by the contract laboratory to a QC batch.
50 characters max to include only characters A-Z,a-z,0-9 space (U+0020), period (U+002E), underscore (U+005F) or dash (U+002D). 18BR00GH
DATE_TIME_PRESERVED
Date and time samples were preserved (e.g., "2018-03-14 20:18:05"). ISO-compliant format.
Date/Time. Must be in the format "YYYY-MM-DD HH:MM:SS". May include only the characters 0-9, dash (U+0045), space (U+0020) and colon (U+003A).
2018-03-14 20:18:05
DATE_TIME_PREPARED
Date and time quality control sample was prepared, such as digestion or extraction (e.g., "2018-03-14 20:18:05").
ISO-compliant format.
Date/Time. Must be in the format "YYYY-MM-DD HH:MM:SS". May include only the characters 0-9, dash (U+0045), space (U+0020) and colon (U+003A).
2018-03-14 20:18:05
DATE_TIME_ANALYZED
Date and time quality control sample was analyzed (e.g., "2018-03-14 20:18:05"). ISO-compliant format.
x Date/Time. Must be in the format "YYYY-MM-DD HH:MM:SS". May include only the characters 0-9, dash (U+0045), space (U+0020) and colon (U+003A).
2018-03-14 20:18:05
SAMPLE_RESULT_SYMBOL
Result symbol code (i.e., "-", "≥", "≤","<", or ">") for the corespinding Sample_Result_Value. A numerical code representing values from a table of "Results Symbols" which may include sybmols such as "≥", "≤","<", or ">".
(e.g., ID 5 correspinds to ">"
5 characters max, to include only characters 0-9 5
SAMPLE_RESULT_VALUE
Customer sample result value (e.g., "2.501E2"). A number in scientific notation only.
xText string, 255 characters max to include only characters 0-9, . (U+002E) and dash (U+002D) and "E" (U+0045). Represents floating point number which may be positive or negative expressed in scientific notation. The precision of the number is implicit in the value. Only the significant digits are recorded. For example, if 1200 is only has two significant digits it is recorded as 1.2E3. On the other hand, if 14000 has 5 significant digits, it is recorded as 1.4000E^4. It is unnecessary to specify 0 xponents. For example, 2.51E0 is simply written as 2.512.501E2
SAMPLE_RESULT_UNIT_NAME
Unit code coresponding to the units of the Sample_Result_Value. Must be a valid unit code as provided "Units" tab. (e.g., unit code 15 coresponds to "μg/L"). Contact USBR to add units that are not listed.
x 10 characters max, to include only characters 0-9 15
The EDD is a tab delimited UTF-8 text file created to the following specifications. Lines may terminate with either CR (Mac Default), CRLF (Windows default) or LF (Unix default). Tab (ASCII 09 Dec),CR (ASCII 13 Dec) and LF (ASCII 10 Dec) are not allowed within fields due to their special meaning.Contact USBR to for assistance implementing the EDD format or defining new ID numbers. The first line of the EDD must be a header containing the field names and the order of those names may not deviate from the specification. The EDD file should be named using the following convention: "AAAAAAAA_BBBBBBBB.tsv" where AAAAAAAA is a SMPL_FIELD_NUM in the set and BBBBBBBB is the LAB_REPORT_NUM. The SMPL_FIELD_NUM is to be determined by peforming a lexocographical sort of all the SMPL_FIELD_NUM values and choosing the first. For LAB_REPORT_NUM 35647389-010 containing DMCSL12345, DMCSL12346,DMCSL12347 and DCM98765, the lexocgraphical ordering in ascending order is DCM98765, DMCSL12345, DMCSL12346, DMCSL12347 and the file would be named DCM98765_20250905-011.tsv
ANALYTE_ID
Analyte ID (e.g., ID 631 corresponds to "Selenium Dissolved").
x 10 characters max, to include only characters 0-9 631
METHOD_CODE_PREPARATION
Method Code (e.g., "ID 346 coresponds to SM 3500-Se- C(fluorometric)").
10 characters max, to include only characters 0-9 346
METHOD_CODE_EXTRACTION
Method Code (e.g., "ID 346 coresponds to SM 3500-Se- C(fluorometric)").
10 characters max, to include only characters 0-9 346
METHOD_CODE_ANALYSIS
Method Code (e.g., "ID 346 coresponds to SM 3500-Se- C(fluorometric)").
x 10 characters max, to include only characters 0-9 346
RESULT_RL
Result reporting limit (accounting for dilution) for customer or lab sample (e.g., "2.501E2"). A number in scientific notation only.
xText string, 255 characters max to include only characters 0-9, . (U+002E) and dash (U+002D) and ascii charachter 0x45h ("E"). Represents floating point number which may be positive or negative expressed in scientific notation. The precision of the number is implicit in the value. Only the significant digits are recorded. For example, if 1200 is only has two significant digits it is recorded as 1.2E3. On the other hand, if 14000 has 5 significant digits, it is recorded as 1.4000E^4. It is unnecessary to specify 0 xponents. For example, 2.51E0 is simply written as 2.512.501E2
RESULT_RL_UNIT_NAME
Unit code coresponding to the units of the RESULT_RL.
Must be a valid unit code as provided "Units" tab. (e.g., unit code 15 coresponds to "μg/L"). Contact USBR to add units that are not listed.
x 10 characters max, to include only characters 0-9 15
RESULT_MDL
Result method detection limit for customer or lab sample(e.g., "2.501E2"). A number in scientific notation only.
xText string, 255 characters max to include only characters 0-9, . (U+002E) and dash (U+002D) and ascii charachter 0x45h ("E"). Represents floating point number which may be positive or negative expressed in scientific notation. The precision of the number is implicit in the value. Only the significant digits are recorded. For example, if 1200 is only has two significant digits it is recorded as 1.2E3. On the other hand, if 14000 has 5 significant digits, it is recorded as 1.4000E^4. It is unnecessary to specify 0 xponents. For example, 2.51E0 is simply written as 2.512.501E2
RESULT_MDL_UNIT_NAME
Unit code coresponding to the units of the RESULT_MDL.
Must be a valid unit code as provided "Units" tab. (e.g., unit code 15 coresponds to "μg/L"). Contact USBR to add units that are not listed.
x 10 characters max, to include only characters 0-9 15
SMPL_DIL_FACTOR
Sample dilution factor for customer or lab sample (e.g., "2E0"). Number in scientific notation only.
x
Text string, 255 characters max to include only characters 0-9, . (U+002E) and dash (U+002D) and ascii charachter 0x45h ("E"). Represents floating point number which may be positive or negative expressed in scientific notation. The precision of the number is implicit in the value. Only the significant digits are recorded. For example, if 1200 is only has two significant digits it is recorded as 1.2E3. On the other hand, if
14000 has 5 significant digits, it is recorded as 1.4000E^4. It is unnecessary to specify 0 xponents. For example, 2.51E0 is simply written as 2.51
2E0
LAB_QC_SMPL_NUM
Contract Laboratory quality control identification code (e.g., "18BR00179-07").
text string, 20 characters max to include only characters A-Z,a-z,0-9 space (U+0020), period (U+002E), underscore (U+005F) or dash (U+002D).
18BR00179-07
LAB_QA_SUBTYPE_NAME
Contract Laboratory quality assurance sample subtype ID.
(e.g., ID 4 coresponds to "Method Blank" and ID 9 coresponds to "Laboratory Control Spike", etc). Must corespond to a valid ID in the Lab_QA_Subtype tab.
x text string, 10 characters max to include only characters 0-9. 4
LAB_REPLICATE
Integer valued 1 or greater reflecting the relationship of results. "1" for first instance of measuring a particular sample, "2" for second instance, etc.
text string, 10 characters max to include only characters 0-9. 2
UNSPIKED_RESULT_SYMBOL
Result symbol ID coresponding to UNSPIKED_RESULT_VALUE. A numerical code representing values from a table of "Results Symbols" which may include sybmols such as "≥", "≤","<", or ">".
5 characters max, to include only characters 0-9 5
UNSPIKED_RESULT_VALUE
Result for an unspiked sample (e.g., "2.501E3"). Used for blank and background of matrix spike. Number in scientific notation only.
Text string, 255 characters max to include only characters 0-9, . (U+002E) and dash (U+002D) and ascii charachter 0x45h ("E"). Represents floating point number which may be positive or negative expressed in scientific notation. The precision of the number is implicit in the value. Only the significant digits are recorded. For example, if 1200 is only has two significant digits it is recorded as 1.2E3. On the other hand, if
14000 has 5 significant digits, it is recorded as 1.4000E^4. It is unnecessary to specify 0 xponents. For example, 2.51E0 is simply written as 2.51
2.501E3
UNSPIKED_RESULT_UNIT_NAME
Used for background of matrix spike. Unit code coresponding to the units of the UNSPIKED_RESULT_VALUE. Must be a valid unit code as provided "Units" tab. (e.g., unit code 15 coresponds to "μg/L"). Contact USBR to add units that are not listed.
10 characters max, to include only characters 0-9 15
UNSPIKED_SMPL_NUM
Contract Laboratory sample identification code for sample given matrix spike (e.g., "18BR00179-07").
text string, 20 characters max to include only characters A-Z,a-z,0-9 space (U+0020), period (U+002E), underscore (U+005F) or dash (U+002D).
18BR00179-07
SPIKE_VALUE
Value of the added analyte (spike) concentration.(e.g., "2.501E3"). Used for blank and background of matrix spike. Number in scientific notation only.
Text string, 255 characters max to include only characters 0-9, . (U+002E) and dash (U+002D) and ascii charachter 0x45h ("E"). Represents floating point number which may be positive or negative expressed in scientific notation. The precision of the number is implicit in the value. Only the significant digits are recorded. For example, if 1200 is only has two significant digits it is recorded as 1.2E3. On the other hand, if
14000 has 5 significant digits, it is recorded as 1.4000E^4. It is unnecessary to specify 0 xponents. For example, 2.51E0 is simply written as 2.51
2.501E3
SPIKE_UNIT_NAME
Unit code coresponding to the units of the SPIKE_VALUE.
Must be a valid unit code as provided "Units" tab. (e.g., unit code 15 coresponds to "μg/L"). Contact USBR to add units that are not listed.
10 characters max, to include only characters 0-9 15
SPIKE_COMMENT
Contract Laboratory information on type of spike material (e.g., "selenate standard").
A text string 255 characters max. May not contain charachters from C0 and C1 control blocks. (U+0000 through U+0019 and U+0080 through U+009F) May not contain the delete character (U+007F). Control characters should be avoided.
selenate standard
MEASURED_RESULT_SYMBOL
Result symbol ID coresponding to MEASURED_RESULT_VALUE. A numerical code representing values from a table of "Results Symbols" which may include sybmols such as "≥", "≤","<", or ">".
5 characters max, to include only characters 0-9 5
MEASURED_RESULT_VALUE
Result value for analyte measured in lab QC sample.(e.g., "2.501E3"). Used for blank and background of matrix spike. Number in scientific notation only.
Text string, 255 characters max to include only characters 0-9, . (U+002E) and dash (U+002D) and ascii charachter 0x45h ("E"). Represents floating point number which may be positive or negative expressed in scientific notation. The precision of the number is implicit in the value. Only the significant digits are recorded. For example, if 1200 is only has two significant digits it is recorded as 1.2E3. On the other hand, if
14000 has 5 significant digits, it is recorded as 1.4000E^4. It is unnecessary to specify 0 xponents. For example, 2.51E0 is simply written as 2.51
2.501E3
MEASURED_RESULT_UNIT_NAME
Unit code coresponding to the units of the MEASURED_RESULT_VALUE. Must be a valid unit code as provided in "Units" tab. (e.g., unit code 15 coresponds to "μg/L"). Contact USBR to add units that are not listed.
10 characters max, to include only characters 0-9 15
LAB_ACCURACY_RESULT
Result of accuracy control samples. .(e.g., "2.501E3"). Used for blank and background of matrix spike. Number in scientific notation only.
Text string, 255 characters max to include only characters 0-9, . (U+002E) and dash (U+002D) and ascii charachter 0x45h ("E"). Represents floating point number which may be positive or negative expressed in scientific notation. The precision of the number is implicit in the value. Only the significant digits are recorded. For example, if 1200 is only has two significant digits it is recorded as 1.2E3. On the other hand, if 14000 has 5 significant digits, it is recorded as 1.4000E^4. It is unnecessary to specify 0 xponents. For example, 2.51E0 is simply written as 2.512.501E3
LAB_ACCURACY_RESULT_L_LIMIT
Lower acceptance limit of accuracy control sample. (e.g., "2.501E3"). Used for blank and background of matrix spike. Number in scientific notation only.
Text string, 255 characters max to include only characters 0-9, . (U+002E) and dash (U+002D) and ascii charachter 0x45h ("E"). Represents floating point number which may be positive or negative expressed in scientific notation. The precision of the number is implicit in the value. Only the significant digits are recorded. For example, if 1200 is only has two significant digits it is recorded as 1.2E3. On the other hand, if 14000 has 5 significant digits, it is recorded as 1.4000E^4. It is unnecessary to specify 0 xponents. For example, 2.51E0 is simply written as 2.512.501E3
LAB_ACCURACY_RESULT_U_LIMIT
Upper acceptance limit of accuracy control sample. (e.g., "2.501E3"). Used for blank and background of matrix spike. Number in scientific notation only.
Text string, 255 characters max to include only characters 0-9, . (U+002E) and dash (U+002D) and ascii charachter 0x45h ("E"). Represents floating point number which may be positive or negative expressed in scientific notation. The precision of the number is implicit in the value. Only the significant digits are recorded. For example, if 1200 is only has two significant digits it is recorded as 1.2E3. On the other hand, if 14000 has 5 significant digits, it is recorded as 1.4000E^4. It is unnecessary to specify 0 xponents. For example, 2.51E0 is simply written as 2.512.501E3
LAB_PRECISION_RESULT
Result of precision control samples. (e.g., "2.501E3"). Used for blank and background of matrix spike. Number in scientific notation only.
Text string, 255 characters max to include only characters 0-9, . (U+002E) and dash (U+002D) and ascii charachter 0x45h ("E"). Represents floating point number which may be positive or negative expressed in scientific notation. The precision of the number is implicit in the value. Only the significant digits are recorded. For example, if 1200 is only has two significant digits it is recorded as 1.2E3. On the other hand, if 14000 has 5 significant digits, it is recorded as 1.4000E^4. It is unnecessary to specify 0 xponents. For example, 2.51E0 is simply written as 2.512.501E3
LAB_PRECISION_RESULT_LIMIT
Acceptance limit of precision control samples. (e.g., "2.501E3"). Used for blank and background of matrix spike. Number in scientific notation only.
Text string, 255 characters max to include only characters 0-9, . (U+002E) and dash (U+002D) and ascii charachter 0x45h ("E"). Represents floating point number which may be positive or negative expressed in scientific notation. The precision of the number is implicit in the value. Only the significant digits are recorded. For example, if 1200 is only has two significant digits it is recorded as 1.2E3. On the other hand, if 14000 has 5 significant digits, it is recorded as 1.4000E^4. It is unnecessary to specify 0 xponents. For example, 2.51E0 is simply written as 2.512.501E3
LAB_CONTAMINATION_RESULT
Result of contamination control samples. (e.g., "2.501E3").
Used for blank and background of matrix spike. Number in scientific notation only.
Text string, 255 characters max to include only characters 0-9, . (U+002E) and dash (U+002D) and ascii charachter 0x45h ("E"). Represents floating point number which may be positive or negative expressed in scientific notation. The precision of the number is implicit in the value. Only the significant digits are recorded. For example, if 1200 is only has two significant digits it is recorded as 1.2E3. On the other hand, if 14000 has 5 significant digits, it is recorded as 1.4000E^4. It is unnecessary to specify 0 xponents. For example, 2.51E0 is simply written as 2.512.501E3
LAB_CONTAMINATION_RESULT_LIMIT
Acceptance limit of contamination control samples. (e.g., "2.501E3"). Used for blank and background of matrix spike. Number in scientific notation only.
Text string, 255 characters max to include only characters 0-9, . (U+002E) and dash (U+002D) and ascii charachter 0x45h ("E"). Represents floating point number which may be positive or negative expressed in scientific notation. The precision of the number is implicit in the value. Only the significant digits are recorded. For example, if 1200 is only has two significant digits it is recorded as 1.2E3. On the other hand, if 14000 has 5 significant digits, it is recorded as 1.4000E^4. It is unnecessary to specify 0 xponents. For example, 2.51E0 is simply written as 2.512.501E3
LAB_QC_COMMENT
Contract Lab comment(s) on quality control results (e.g., "Native concentration greater than 4x times spike.").
A text string 255 characters max. May not contain charachters from C0 and C1 control blocks. (U+0000 through U+0019 and U+0080 through U+009F) May not contain the delete character (U+007F). All unicode characters with General Category of Cc,Cf,Cs,Co,Cn and C are prohibited. (Most commonly C0 (U+0000 through U+0019) and C1 (U+0080 through U+009F)). The 'del' charachter, U+007F is also prohibited.Native concentration greater than 4x times spike.
LAB_QULFR_CODE
ID of a Contract Laboratory quality assurance qualifier (e.g., ID 571 coresponds to "J" indicating that an analyte was detected but below the reporting limit ).
10 characters max, to include only characters 0-9 571
LAB_QULFR_DESCRIPTION
Contract Laboratory quality assurance qualifier description explaining LAB_QULFR_CODE (e.g., "Recovery or RPD outside control limits").
A text string 255 characters max. May not contain charachters from C0 and C1 control blocks. (U+0000 through U+0019 and U+0080 through U+009F) May not contain the delete character (U+007F). All unicode characters with General Category of Cc,Cf,Cs,Co,Cn and C are prohibited. (Most commonly C0 (U+0000 through U+0019) and C1 (U+0080 through U+009F)). The 'del' charachter, U+007F is also prohibited.Recovery or RPD outside control limits
LAB_QULFR_ADDITIONAL_INFO
Contract Laboratory quality assurance qualifier additional information pertaining to LAB_QULFR_CODE (e.g., "Hold time").
A text string 255 characters max. May not contain charachters from C0 and C1 control blocks. (U+0000 through U+0019 and U+0080 through U+009F) May not contain the delete character (U+007F). All unicode characters with General Category of Cc,Cf,Cs,Co,Cn and C are prohibited. (Most commonly C0 (U+0000 through U+0019) and C1 (U+0080 through U+009F)). The 'del' charachter, U+007F is also prohibited.Hold time
File details come from the government source that posted it. Updated .