NISTIR 7933 

Requirements and 

Conformance Test Assertions for 

ANSI/NIST-ITL 1-2011

Record Type 18 - DNA Record 

Fernando L. Podio 

Dylan Yaga 

Christofer J. McGinnis
ii

NISTIR 7933

 

Requirements and 

Conformance Test Assertions for 

ANSI/NIST-ITL 1-2011

Record Type 18 - DNA Record 

Fernando L. Podio 

Dylan Yaga 

Christofer J. McGinnis 

Computer Security Division 

Information Technology Laboratory 

May 2013

U.S. Department of Commerce 

Rebecca Blank, Acting Secretary 

National Institute of Standards and Technology 

Patrick D. Gallagher, Under Secretary of Commerce for Standards and Technology and Director 
iii

National Institute of Standards and Technology Interagency or Internal Report 7933

43 pages (May 2013) 

 

 

Comments on this publication may be submitted to: biocts@nist.gov 

National Institute of Standards and Technology 

Attn: Computer Security Division, Information Technology Laboratory 

100 Bureau Drive (Mail Stop 8930) Gaithersburg, MD 20899-8930 

Email: biocts@nist.gov

Certain commercial entities, equipment, or materials may be identified in this document in order to 

describe an experimental procedure or concept adequately. Such identification is not intended to imply 

recommendation or endorsement by NIST, nor is it intended to imply that the entities, materials, or 

equipment are necessarily the best available for the purpose. 

There may be references in this publication to other publications currently under development by NIST 

in accordance with its assigned statutory responsibilities. The information in this publication, including 

concepts and methodologies, may be used by Federal agencies even before the completion of such 

companion publications. Thus, until each publication is completed, current requirements, guidelines, 

and procedures, where they exist, remain operative. For planning and transition purposes, Federal 

agencies may wish to closely follow the development of these new publications by NIST. 

Organizations are encouraged to review all draft publications during public comment periods and 

provide feedback to NIST. All NIST Computer Security Division publications, other than the ones 

noted above, are available at http://csrc.nist.gov/publications.
iv

Reports on Computer Systems Technology 

The Information Technology Laboratory (ITL) at the National Institute of Standards and Technology 

(NIST) promotes the U.S. economy and public welfare by providing technical leadership for the Nation’s 

measurement and standards infrastructure. ITL develops tests, test methods, reference data, proof of 

concept implementations, and technical analysis to advance the development and productive use of 

information technology. ITL’s responsibilities include the development of technical, physical, 

administrative, and management standards and guidelines for the cost-effective security and privacy of 

sensitive unclassified information in Federal computer systems. This Interagency Report discusses ITL’s 

research, guidance, and outreach efforts in computer security, and its collaborative activities with 

industry, government, and academic organizations. 

Abstract 

The Computer Security Division (CSD) of NIST/ITL develops conformance test architectures 

(CTAs) and test suites (CTSs) to support users that require conformance to selected biometric 

standards. Product developers as well as testing laboratories can also benefit from the use of these 

tools. This project supports the possible establishment of conformity assessment programs for 

biometrics and also supports NIST/ITL’s Forensic Science Program by making conformance testing 

tools available that provide developers, users, and purchasers with increased levels of confidence in 

product quality and increases the probability of successful interoperability of biometrics and forensic 

data. One of the test tools is a CTA/CTS designed to test implementations of ANSI/NIST-ITL 1-

2011 (AN-2011) “Data Format for the Interchange of Fingerprint, Facial & Other Biometric 

Information” for selected Record Types based on twelve hundred test assertions previously 

developed. As part of the process associated with the extension of the first version of BioCTS for 

AN-2011, NIST/ITL/CSD’s staff identified over two-hundred test assertions necessary to meet the 

conformance requirements for the AN-2011 Record Type 18- DNA Record. These test assertions are 

documented using the format specified in NIST Special Publication 500-295, “Conformance Testing 

Methodology for ANSI/NIST-ITL 1-2011, Data Format for the Interchange of Fingerprint, Facial & 

Other Biometric Information (Release 1.0)”.

Keywords

ANSI/NIST-ITL 1-2011, biometrics, conformance testing, conformance test architecture, CTA, CTS, 

BioCTS, conformance test suite, data interchange, DNA data, Record Type 18, test assertions, testing 

methodology 

Prologue 

The Computer Security Division (CSD) of NIST/ITL supports the development of biometric 

conformance testing methodology standards and other conformity assessment efforts through active 

technical participation in the development of biometric standards and associated conformance test 

architectures and test suites. NIST/ITL CSD develops these test tools to support users that require 

conformance to selected biometric standards and product developers interested in conforming to 

biometric standards by using the same testing tools available to users. Testing laboratories can also 

benefit from the use of these test tools. These efforts support the possible establishment of 

conformity assessment programs to validate conformance to biometric standards. This project 

supports NIST/ITL’s Forensic Science Program by making available conformance test tools that 
v

provide developers, users, and purchasers with increased levels of confidence in product quality and 

increases the probability of successful interoperability of biometrics and forensic data. 

NIST/ITL CSD has developed a number of Conformance Test Architectures (CTAs) and Test Suites 

(CTSs) designed to test implementations of biometric technical interfaces and data interchange 

formats. Previous work includes a CTS designed to test implementations of the ANSI INCITS 358-

2002 standard, the Biometric BioAPI specification [1], a CTS designed to test implementations of 

Patron Format A data structures Specified in ANSI INCITS 398-2008, Common Biometric Exchange 

Formats Framework (CBEFF) [2], a CTA called "CTA Beta 2.0" and CTS designed to test 

implementations of biometric data interchange formats developed by INCITS M11

 [3], and a 

CTA/CTS designed to test implementations of selected Record Types of ANSI/NIST-ITL 1-2007, 

―Data Format for the Interchange of Fingerprint, Facial, & Other Biometric Information – Part 1 

[4]. 

NIST/ITL CSD released a set of conformance test tools under the label “BioCTS” in 2012 and early 

2013. These tools include CTAs and CTSs designed to test implementations of biometric data 

interchange format standards developed by ISO/IEC JTC1/SC 372

and selected PIV profiles 

(“BioCTS for ISO/IEC”), as well as selected Record Types within ANSI/NIST-ITL 1-2011 (AN2011) transactions (“BioCTS for AN-2011”) [5]. 

Disclaimer 

Statements made in this paper should not be interpreted as standards, guidelines, best practices, or 

recommendations for specific changes to any other NIST publications. 

 

1

 InterNational Committee for Information Technology Standards Technical Committee M1- Biometrics

2

 International Standards Organization (ISO) and the International Electrotechnical Commission (IEC) Joint 

Technical Commission 1 – Information Technology/ Subcommittee 37 – Biometrics
vi

Table of Contents 

1 Introduction ................................................................................................................... 1

1.1 Conformance Testing to Biometric Standards ......................................................................1

1.2 Requirements and Test Assertions for ANSI/NIST-ITL 1-2011 ................................................1

1.3 BioCTS for AN2011 - Conformance Test Software for AN-2011 .............................................1

1.4 BioCTS AN-2011 Ongoing Work ...........................................................................................2

2 Test Assertions for AN-2011 Record Type 18 – DNA Record ............................................. 3

2.1 AN-2011 Record Type 18 – DNA Record ...............................................................................3

2.2 Record Type 18 Table of Requirement and Assertions ..........................................................3

2.3 Test Assertion Syntax..........................................................................................................3

2.3.1 Operators ................................................................................................................................................ 3

2.3.2 Terms ...................................................................................................................................................... 4

2.3.3 Operands ................................................................................................................................................ 5

2.4 Table of Requirements and Assertions - Table headers ........................................................6

Annex A - References ............................................................................................................. 9

Appendix B - Record Type-18: DNA Record Requirements and Assertions ............................. 10

B.1 Record Type 18 – DNA Record Requirements and Test Assertions ............................................10

B.2 Test Notes ..............................................................................................................................37

List of Tables 

Table 2.1 - Assertion Syntax: Operator Definitions ........................................................................................................ 4

Table 2.2 - Assertion Syntax: Terms ............................................................................................................................... 4

Table 2.3 - Assertion Syntax: Operand Definitions ........................................................................................................ 5

Table B.1 - Assertions for Record Type 18 - DNA Record .............................................................................................10
1

1 Introduction

1.1 Conformance Testing to Biometric Standards 

The existence of biometric standards alone is not enough to demonstrate that products meet the 

technical requirements specified in the standards. Conformance testing captures the technical 

description of a specification and measures whether an implementation faithfully implements the 

specification. Conformance testing supports increasing levels of confidence in product quality and 

increases the probability of successful interoperability and data interchange. A conformance testing 

methodology developed in support of conformance testing, should include the conformance test 

requirements of a standard indicating what level of conformance testing is applicable to each 

requirement and should specify the conformance test assertions to be tested for the corresponding 

requirements. Test assertions are specifications for testing a conformance requirement in an 

Implementation Under Test in the form of software or procedural methods that generate the test 

results (also named test outcomes or test verdicts) used for assessment of the conformance 

requirement. 

1.2 Requirements and Test Assertions for ANSI/NIST-ITL 1-2011 

ANSI/NIST-ITL 1-2011 (AN-2011) is the latest version of the ANSI/NIST-ITL standard, and is 

specified in NIST Special Publication 500-290 [6]. This standard defines the content, format, and 

units of measurement for the electronic exchange of fingerprint, palmprint, plantar, facial/mugshot, 

scar, mark & tattoo (SMT), iris, deoxyribonucleic acid (DNA), and other biometric sample and 

forensic information that may be used in the identification or verification process of a subject. The 

information consists of a variety of mandatory and optional items. This information is primarily 

intended for interchange among criminal justice administrations or organizations that rely on 

automated identification systems or use other biometric and image data for identification purposes. 

NIST/ITL CSD developed a set of test assertions based on the requirements specified in AN-2011 to 

aid in the development process for the first version of an AN-2011 CTA/CTS. Over twelve hundred 

test assertions for selected Record Types were identified and documented as a set of tables in 

NISTIR 7806 to assist in CSD’s development of BioCTS [7]. These tables of requirements and the 

associated test assertion syntax were later adopted as part of the conformance testing methodology 

documented in NIST Special Publication 500-295[8].

1.3 BioCTS for AN2011 - Conformance Test Software for AN-2011 

The test assertions documented in NIST Special Publication 500-295 are implemented in BioCTS for 

AN2011 [9], which tests components of AN-2011 transactions associated with the following sections 

and Record Types of the AN-2011 standard: 

• Section 5: Data Conventions 

• Section 7: Information Associated with Several Record Types 

• Section 8.1 Record Type-1: Transaction information record 

• Section 8.4 Record Type-4: Grayscale fingerprint image 

• Section 8.10 Record Type-10: Facial, other body part and SMT image record 

• Section 8.13 Record Type-13: Friction-ridge latent image record 
2

• Section 8.14 Record Type-14: Fingerprint image record 

• Section 8.15 Record Type-15: Palm print image record 

• Section 8.17 Record Type-17: Iris image record 

• Annex B: Traditional Encoding 

Transactions under test can include Record Types other than those listed above. The presence of 

these additional records is reported (including record length) and some conformance testing is 

performed on common fields for these additional record types. Releases of this tool include a 

Graphical User Interface (GUI) version and a Command Line Interface (CLI). They are available 

together with documentation and sample data from the BioCTS web site. 

The GUI version allows for interactive conformance testing of transactions. The user can analyze the 

transaction under test in detail using expandable sections and hierarchical structure views. The tool 

includes an editor which allows the user to make modifications to the transaction. The CLI version 

can be called from the command prompt, used within a batch file, or even called from another 

program to provide automated conformance testing. It can be used as a stand-alone program or 

incorporated into part of an operational environment, allowing “Passing” transactions to move on 

while alerting administrators of problem transactions. The CLI version’s modes of operation include: 

 Interactive: After loading the CLI, the user is prompted for input and output locations 

(directories/files) and output preferences. 

 Single File: The user provides an input file path, an output directory path, and output 

preferences as parameters and flags on the command line. This will test the single input file. 

 Batch File: The user provides an input directory path, an output directory path, and output 

preferences as parameters and flags on the command line. This will test all files within the 

input directory. If specified using the appropriate flag, the CLI will test the input directory 

recursively, testing all sub directories. 

1.4 BioCTS AN-2011 Ongoing Work 

Work continues on the development of CTSs for additional ISO/IEC standards and PIV profiles as 

well as additional AN-2011 Record Types and encodings. Development of a test tool for AN-2011 

NIEM/XML-encoded implementations is underway. Required test assertions not evaluated by the 

current schema (some Level 1 test assertions and Level 2 assertions) are being implemented3. For 

more information on this planned work, see the tool development roadmaps included in NISTIR 

7877 [10]. 

The NIST/ITL BioCTS team is developing additional support for multiple environments including a 

web-based interface (currently in pre-released testing) and a Mono version of the software (Mono is a 

cross-platform .NET environment available for Linux®, Mac®, and Windows®). Additional sample 

data and utility tools are under development as well. In addition, test assertions for AN-2011 record 

Type 18, DNA data have been developed and are documented below. 

 

3

 Conformance test levels (Level 1, 2, and 3 conformance testing) are defined in NIST’s Special Publication 500-295 

Section 5.3 (Hierarchy of conformance tests) and are not reproduced in this publication. 
3

2 Test Assertions for AN-2011 Record Type 18 – DNA Record

2.1 AN-2011 Record Type 18 – DNA Record 

The Type-18 record (new to this version of the AN-2011 standard) is required to contain and 

exchange DNA data. It was developed to provide a basic level of interoperability with the draft 

format of the ISO/IEC 19794-14 DNA data interchange format developed by ISO/IEC JTC 1/SC 37. 

The Type-18 record is required to exchange Autosomal Short Tandem Repeat (STR), X-Short 

Tandem Repeat (X-STR), Y-Short Tandem Repeat (Y-STR), Mitochondrial DNA (mtDNA), 

Pedigree, and electropherogram images of DNA data. This record type is based upon standardized 

and commonly used DNA analysis and data reporting conventions. With full consideration to 

privacy, this standard only uses the non-coding regions of DNA. The regions of the DNA that 

contain information on a subject’s genetic characteristics or traits are deliberately avoided. 

2.2 Record Type 18 Table of Requirement and Assertions 

In preparation for extending BioCTS for AN-2011 to support conformance testing of AN-2011 

Record Type 18, the BioCTS team identified over two-hundred test assertions that are necessary to 

meet the conformance requirements for this Record Type. The test assertions have been organized 

into a table of requirements and assertions following the format documented in NIST Special 

Publication 500-295 [8]. 

Table B.1, which identifies all requirements and associated test assertions for Type 18, uses the test 

assertion syntax documented Tables 2.1, 2.2, and 2.3 found in Section 2.3. The tables define the 

Operator Definitions, Terms, and Operand Definitions respectively and are also specified in NIST SP 

500-295, section 5.5 - Test Assertion Syntax. They have been reproduced in their entirety in this 

document for consistency, although some entries in the tables may not be used in the test assertions 

for Record Type 18. 

Table B.1 headings are also defined in NIST SP 500-295, Section 5.6 (Tables of requirements and 

assertions - Table headers) with the exception of Requirement number. Not all test notes included in 

NIST SP 500-295 apply to the Record Type 18 Table. The three test notes referred to in table B.1 are 

included below the table. Test Notes 2 and 6 are the same test notes found in NIST SP 500-295, 

Section 6.3. Test note 18 applies only to Record Type 18. Conformance test levels are defined in 

NIST’s Special Publication 500-295 Section 5.3. 

2.3 Test Assertion Syntax 

Test assertions are expressed according to the operators and operands found in the tables of 

Operator Definitions and Operand Definitions, except for those instances where the assertion 

cannot be clearly or easily represented in a mathematical format. In those cases, English is used 

to express the assertion, and the text is contained within the < > characters. 

2.3.1 Operators 

The table below includes a complete description of the operators used throughout the 

requirements and assertion tables. 
4

Table 2.1 - Assertion Syntax: Operator Definitions 

Operator Definitions

Operator Name Description

AND Logical And Tests if both values are true.

ELSE Else Combined with the IF operator to specify what expressions are evaluated 

when the IF expression is false.

EQ Equal To Tests for equality between two values.

GT Greater Than Tests if the first value is greater than the second value

GTE Greater Than or Equal 

To

Tests if the first value is greater than or equal to the second value. 

IF Logical If Determines if the value or expression is true or false.

IFF IF and Only IF Tests the bi-conditional where each of the first and second expressions implies 

the other. 

in Container 

Specification

For X in Y, selects only those X found in Y. 

LT Less Than Tests if the first value is less than the second value.

LTE Less Than or Equal 

To

Tests if the first value is less than or equal to the second value.

MO Member Of Tests if the value is a contained within the set.

MOD Modulo For X MOD Y, provides the remainder of X divided by Y. 

NEQ Not Equal To Tests for non-equality between two values.

NOT Negate Negates any operator or expression that follows.

OR Logical Or Tests if either value is true

P:N in Q Query Selects the Nth occurrence of P in Q. 

ST Such That Enforces a condition upon the specified value or expression. 

THEN Then Combined with the IF operator to specify what expressions are evaluated 

when the IF expression is true. 

to Range Selection For X to Y, selects a set of values Z ST Z GTE X AND LTE Y

# All Provides all valid values.

: Data Element 

Selection

For X:N, selects the Nth element in X. 

, Range Concatenation For X,Y, represents the set of values containing both X and Y. 

. Field Selection For X.Y, selects the field specified by Y in Record X. 

< > English Expression Contains English text that could not be reasonably expressed mathematically. 

{ } Value For {X}, provides the value of X. 

[ ] Set The set to be tested.

2.3.2 Terms 

The table below provides a complete description of the terms used throughout the requirements 

and assertion tables. 

Table 2.2 - Assertion Syntax: Terms 

Term Definitions

Term Name Description

Field(s) Field Field structure as defined by the AN 1-2011 standard.

InfoItem US Separated 

Information Item

Information Item separated by the ASCII US (0x1F) separator 

character
5

Integers Integer Set Set of all integers.

NA Not Applicable The test or condition is not applicable. 

Unsupported Unsupported The requirement is not supported in this version of the CTM. This 

may be the result of the related conformance test requiring 

additional research, or the result of the test being infeasible (level 3 

only). 

Record(s) Record Record structure as defined by the AN 1-2011 standard.

Subfield RS Separated Subfield Subfield separated by the ASCII RS (0x1E) separator character

Transaction Transaction Transaction structure as defined by the AN 1-2011 standard. 

TRUE True The test always evaluates to true because there is no defined value for 

testing, or there is no value for which the test will fail.

2.3.3 Operands 

The table below includes a complete description of the operands used throughout the 

requirements and assertion tables. The parameter X may represent any combination of operands, 

terms, and operators. 

Table 2.3 - Assertion Syntax: Operand Definitions 

Operand Definitions

Operand Name Description

All(X) All Occurrences Returns all occurrences of X. 

ASCII(X) ASCII Values Specifies that all values represented by X are ASCII 

values. Ex. ASCII(a) is 0x61

Bytes(X) Byte Data Returns the set of bytes contained in X.

Count(X) Count Occurrences Returns the number of occurrences of X. 

DataLength(X) Length Of (without Special 

Characters)

Returns the length of X without counting the characters 

ASCII( US, RS, FS).

FieldNumber(X) Field Number Returns the field number of X.

First(X) First Occurrence Returns the first occurrence of X. 

For(X EQ A to B)

{Expression(s)}

For Loop Evaluates each Expression for the range specified by A to 

B. 

ForEach(X) 

{Expression(s)}

For Each Evaluates each Expression for every occurrence of X 

found.

Last(X) Last Occurrence Returns the last occurrence of X. 

Length(X) Length Of Returns the length of X.

Max(X) Maximum Value Returns the maximum value in the set X. 

Min(X) Minimum Value Returns the minimum value in the set X. 

Next(X) Next Occurrence Returns the next occurrence of X. Only for use within 

ForEach Operand’s Expression(s).

Pair(A,B) of X Pair Returns all pairs of X. Only for use as a parameter in a 

ForEach Operand. 

ParentField(X) Parent Field Returns the Field that contains X.

ParentRecord(X) Parent Record Returns the Record that contains X.

Present(X) Value Present Returns TRUE if X is present, FALSE otherwise. For 

subfields in Traditional Encoding, the US and RS 

separators are always present. Therefore the Present(X) 

operand returns TRUE if the value between the separators 
6

is present.

Previous(X) Previous Occurrence Returns the previous occurrence of X. Only for use within 

ForEach Operand’s Expression(s).

Second(X) Second Occurrence Returns the second occurrence of X. 

Type(X) Record Type Returns the Record Type of X.

Var(X) {Selection 

Statement}

Variable Assigns the entity specified by the Selection Statement to 

the name X. The assignment is valid for the remainder of 

the assertion text. 

XElm(X) XML Element Returns the XML Element with name X.

2.4 Table of Requirements and Assertions - Table headers 

The following describe the headings of the tables of requirements and assertions found in Annex B: 

 Requirement # and ID: Defines a unique requirement number and a unique identifier for the 

requirement and associated assertion or set of assertions. For Record Type requirements, the 

Requirement # is in the form RTN.M, where N is the Record Type and M is the sequential 

number of the requirement. If additional requirements must be entered in the future, the new 

requirement number will be specified using an additional number, as in RTN.M.A, where A 

is the additional number. The Requirement ID provides reference to the type of requirement 

(e.g., transaction, record, and field), and is in the form of “Type: Description” where type 

may be “Transaction”, “Record”, or “Field”. For requirements found in Annex B of the AN2011 standard, the Requirement ID is preceded by “Traditional-”.

 Ref. in Base Std. (Reference in Base Standard): Identifies the clause (or section) where the 

requirement is included in the AN-2011 standard. In some cases the reference includes 

additional information such as a Table number. 

 Requirement Summary: Provides a summary of the requirement detailed as textual 

information or an interpretation of the requirement in the standard. It provides the essentials 

of the requirement but may not provide all the text necessary to understand it. The < > 

operator is used in the Requirement Summary column of the tables to represent text not 

found in the standard, but that may help indicate what requirement is being represented. 

 Level: Indicates whether Level 1 or Level 2 conformance testing is required to address the 

assertion identified in the Assertion ID column of the same row. Level 3 conformance tests 

are indicated only when necessary to show that the requirement is not currently testable or 

addressed. 

 Status: Reflects the status specified in the AN-2011 standard: 

o M: Mandatory 

o O: Optional 

o D: Dependent 

o M⇑: Mandatory within the optional field/subfield 

o O⇑: Optional within the optional field/subfield 
7

o -: Varying statuses. The assertion addresses many fields or subfields of multiple 

statuses. 

 Assertion ID: Defines an identifier of a specific test assertion within the set of test assertions 

associated with a requirement. 

 Test Assertion: Provides, whenever possible, a mathematical equation or a procedure using 

the language specified by the operators, operands, and terms.

o The < > operator is used to contain plain text whenever a mathematical formula or 

simple procedure cannot be detailed. 

 Test Note: Contains the ID of the test note. Test notes provide additional information related 

to the assertion and are included below the tables. 

 Imp. Support (Implementation Support): Denotes a supplier’s implementation support of a 

particular requirement (“Y”/”N”). A note can follow the table when providing more details 

of implementation support (or the lack of it) is required. 

 Supported Range: Indicates a range of values supported, especially when it is different than 

the full range of values specified in the standard. When an information item is specified as a 

single value, or does not address a range of values, a N/A should be used. 

 Test Result: This column is used to denote the test results. For file and record-level results 

the results are either “Pass” or “Fail”. The field-level results should be indicated as “Ok”, 

“Error”, “Warning” and “Note”. Explanatory notes can be added below the table. 

 Applicable to (T, X, B, B* or X*) – (Applicability): This table header indicates which 

assertions differ (in values required or conditions) between Traditional and NIEM encoding. 

This table header does not indicate which assertions are addressed by the XML Schema and 

which will need to be addressed in code. Valid values are: 

o T: The assertion only applies to the Traditional encoding as described in Annex B of 

AN-2011. 

o X: The assertion only applies to the NIEM-conformant (XML) encoding as described 

in Annex C of AN-2011. 

o B: The assertion is applicable to both Traditional and NIEM (XML) encoding. 

 Following the conventions in the AN-2011 standard, test Assertions are expressed 

using constructs (fields, records, etc.) found in Traditional encoding (such as 

xx.002 for the second field of each record type). The same assertion applies for 

the XML elements that correspond to the Traditional constructs. For example, 

10.006 in Traditional Encoding corresponds to XML Element 

<biom:ImageHorizontalLineLengthPixelQuantity>. 

o Some assertions reference subfields, however, NIEM encoding uses nested elements. 

Expression of Test Assertions that include subfields in the XML encoding requires 

further review. These assertions are listed with the following applicability values: 

 X* indicates that the assertion applies only to NIEM-conformant (XML) 

encoding. 
8

 B* indicates that the assertion is applicable to both Traditional and NIEM (XML) 

encodings. 
9

Annex A - References

[1] BioAPI Conformance Test Suite and associated documentation download: 

http://www.nist.gov/itl/csd/biometrics/bioapicts.cfm (accessed 02/25/2013). 

[2] Conformance Test Architecture for Biometric Information Records and CBEFF Patron 

Format A Conformance Test Suite: http://www.nist.gov/itl/csd/biometrics/biocbeffcts.cfm

(accessed 02/25/2013). 

[3] CTA and CTSs for Biometric Data Interchange Format Standards Developed by INCITS M1, 

http://www.nist.gov/itl/csd/biometrics/incitsm1.cfm (accessed 02/25/2013). 

[4] Conformance Test Architecture and Test Suite for ANSI/NIST-ITL 1-2007, 

http://www.nist.gov/itl/csd/biometrics/ansi-nist-legacy.cfm (accessed 02/25/2013). 

[5] NIST/ITL CSD BioCTS web site: 

http://www.nist.gov/itl/csd/biometrics/biocta_download.cfm (accessed 02/25/2013). 

[6] NIST Special Publication 500-290, American National Standard for Information Systems - 

Data Format for the Interchange of Fingerprint, Facial & Other Biometric Information, B. 

Wing (Editor), November 2011: http://www.nist.gov/customcf/get_pdf.cfm?pub_id=910136

(accessed 02/25/2013). 

[7] NISTIR 7806, ANSI/NIST-ITL 1-2011 Requirements and Conformance Test Assertions, C. 

J. McGinnis, D. Yaga and F. L. Podio, September 2011. 

[8] NIST Special Publication 500-295, Conformance Testing Methodology for ANSI/NIST-ITL 

1-2011, Data Format for the Interchange of Fingerprint, Facial & Other Biometric 

Information (Release 1.0), Editors: F. L. Podio, D. Yaga, C. J. McGinnis, August 2012.

[9] BioCTS for AN2011 web page: http://www.nist.gov/itl/csd/biometrics/ansi-nist.cfm

(accessed 02/25/2013). 

[10] NISTIR 7877, BioCTS 2012: Advanced Conformance Test Architectures and Test Suites for 

Biometric Data Interchange Formats and Biometric Information Records, F. L. Podio, 

D.Yaga and C. J. McGinnis, September 2012: 

http://nvlpubs.nist.gov/nistpubs/ir/2012/NIST.IR.7877.pdf (accessed 02/25/2013). 
10

Appendix B - Record Type-18: DNA Record Requirements and Assertions

B.1 Record Type 18 – DNA Record Requirements and Test Assertions 

Table B.1 - Assertions for Record Type 18 - DNA Record 

Req. # - ID Ref. in 

Base 

Std.

Requirement

Summary

L

e

v

e

l

S

t

a

t

u

s

Assertion

ID

Test

Assertion

Test

Note

Imp. 

Support

Supported 

Range

Test 

Result

Applicable 

to (T, X, B, 

B*, or X*)

8.18: Record Type-18: DNA record

RT18.1 -

Field: 

Type18-

Subfield 

Occurrence

Table 79 <Table 79 specifies which fields contain 

subfields as well as the number of 

occurrences permitted.>

1 M NIEMType18-

CardinalitySubElemen

ts

<The Type-18 table in Annex G of the base 

standard specifies the type and number of sub 

elements required for each field.>

X

1 M 18.[001 to

010, 012 to 

015, 017, 

020, 022, 

993, 998]-

SubfieldCo

unt

Count(Subfields in 18.[001 to 010, 012 to 015, 

017, 020, 022, 993, 998]) EQ 1

T

1 M 18.[001, 

002, 004, 

005, 007, 

008, 012 to 

014, 020, 

022, 993]-

InfoItemCo

unt

Count(InfoItems in Subfield:1 in 18.[ 001, 002, 

004, 005, 007, 008, 012 to 014, 020, 022, 993]) 

EQ 1

T

1 M 18.003-

InfoItemCo

unt

Count(InfoItems in 18.003) MO [1 to 7] T

1 M 18.006-

InfoItemCo

Count(InfoItems in 18.006) MO [1 to 8] T
11

Req. # - ID Ref. in 

Base 

Std.

Requirement

Summary

L

e

v

e

l

S

t

a

t

u

s

Assertion

ID

Test

Assertion

Test

Note

Imp. 

Support

Supported 

Range

Test 

Result

Applicable 

to (T, X, B, 

B*, or X*)

8.18: Record Type-18: DNA record

unt

1 O 18.009-

InfoItemCo

unt

Count(InfoItems in 18.009) MO [4 to 7] T

1 M 18.010-

InfoItemCo

unt

Count(InfoItems in 18.010) MO [1, 2] T

1 M 18.011-

InfoItemCo

unt

Foreach(Subfield in 18.011)

{

Count(InfoItems in Subfield) EQ 1

}

T

1 M 18.015-

InfoItemCo

unt

Count(InfoItems in 18.015) MO [2 to 5] T

1 D 18.016-

SubfieldCo

unt

Count(Subfields in 18.016) GTE 1 T

1 D 18.016-

InfoItemCo

unt

ForEach(Subfield in 18.016)

{

Count(InfoItems in Subfield) MO [6 to 15]

}

T

1 D 18.017-

InfoItemCo

unt

Count(InfoItems in 18.017) EQ 8 T

1 D 18.018-

SubfieldCo

unt

Count(Subfields in 18.018) GTE 1 T

1 D 18.018-

InfoItemCo

unt

Foreach(Subfield in 18.018)

{

Count(InfoItems in Subfield) GTE 1

}

T

1 D 18.019-

SubfieldCo

unt

Count(Subfields in 18.019) GTE 1 T

1 D 18.019- Foreach(Subfield in 18.019) T
12

Req. # - ID Ref. in 

Base 

Std.

Requirement

Summary

L

e

v

e

l

S

t

a

t

u

s

Assertion

ID

Test

Assertion

Test

Note

Imp. 

Support

Supported 

Range

Test 

Result

Applicable 

to (T, X, B, 

B*, or X*)

8.18: Record Type-18: DNA record

InfoItemCo

unt

{

Count(InfoItems in Subfield) MO [4 to 5]

}

1 D 18.021-

SubfieldCo

unt

Count(Subfields in 18.021) GTE 1 T

1 D 18.021-

InfoItemCo

unt

Foreach(Subfield in 18.021)

{

Count(InfoItems in Subfield) EQ 3

}

T

1 D 18.023-

SubfieldCo

unt

Count(Subfields in 18.023) GTE 1 T

1 D 18.023-

InfoItemCo

unt

Foreach(Subfield in 18.023)

{

Count(InfoItems in Subfield) MO [4 to 5]

}

T

1 O 18.902-

SubfieldCo

unt

Count(Subfields in 18.902) GTE 1 T

1 O 18.902-

InfoItemCo

unt

ForEach(Subfield in 18.902)

{

Count(InfoItems in Subfield) EQ 4

}

T

1 O 18.995-

SubfieldCo

unt

Count(Subfields in 17.995) MO [1 to 255] T

1 O 18.995-

InfoItemCo

unt

ForEach(Subfield in 17.995)

{

Count(InfoItems in Subfield) MO [1,2]

}

T

- O 18.998-

Subfields

<See Requirement ID: “Field: Geographic”> t-2

RT18.2 -

Field: 

Table 79 <Table 79 specifies the Condition Code for 

each field.>

1 - [18.001 to

18.006, 

Present(18.001 to 18.006, 18.010, 18.011, 

18.013 to 18.015)

B
13

Req. # - ID Ref. in 

Base 

Std.

Requirement

Summary

L

e

v

e

l

S

t

a

t

u

s

Assertion

ID

Test

Assertion

Test

Note

Imp. 

Support

Supported 

Range

Test 

Result

Applicable 

to (T, X, B, 

B*, or X*)

8.18: Record Type-18: DNA record

Type18-

CondCode

18.010, 

18.011, 

18.013 to 

18.015]-

Mandatory 

CondCode

1 - [18.024 to 

18.199,

18.901, 

18.903 to 

18.992, 

18.994, 

18.996, 

18.997, 

18.999]-

Reserved

NOT Present(18.024 to 18.199, 18.901, 18.903 

to 18.992, 18.994, 18.996, 18.997, 18.999)

B

RT18.3 -

Record: 

18.007 

Dependent

Table 79,

8.18.7

This field is mandatory if the value of DSD 

is equal to 1. 

2 D 18.007-

CondCode 

Dependent

IF {InfoItem:1 in 18.005} EQ 1 

THEN Present(18.007)

B

RT18.4 -

Record: 

18.008 

Dependent

Table 79,

8.18.8

This field is optional and ... is only filled in 

if DSD = 1. 

2 D 18.008-

CondCode 

Dependent

IF Present(18.008), 

THEN {InfoItem:1 in 18.005} EQ 1 

B

RT18.5 -

Record: 

18.016 

Dependent

Table 79,

8.18.16

This optional field ... is only present if 

Field 18.011: Sample typing information / 

STI has a subfield with the value 0. 

2 D 18.016-

CondCode 

Dependent

IF Present(18.016), 

THEN Present(Subfield in 18.011 ST {InfoItem:1 

in Subfield} EQ 0)

B

RT18.6 -

Record: 

18.017 

Dependent

Table 79,

8.18.17

This is an optional field...This field is only 

present if Field 18.011: Sample typing 

information / STI has a subfield with the 

value 1.

2 D 18.017-

CondCode 

Dependent

IF Present(18.017), 

THEN Present(Subfield in 18.011 ST {InfoItem:1 

in Subfield} EQ 1)

B

RT18.7 -

Record: 

18.018 

Table 79,

8.18.18

This optional field ... is only present if

Field 18.011: Sample typing information / 

STI has a subfield with the value 4.

2 D 18.018-

CondCode 

Dependent

IF Present(18.018), 

THEN Present(Subfield in 18.011 ST {InfoItem:1 

in Subfield} EQ 4)

B
14

Req. # - ID Ref. in 

Base 

Std.

Requirement

Summary

L

e

v

e

l

S

t

a

t

u

s

Assertion

ID

Test

Assertion

Test

Note

Imp. 

Support

Supported 

Range

Test 

Result

Applicable 

to (T, X, B, 

B*, or X*)

8.18: Record Type-18: DNA record

Dependent

RT18.8 -

Record: 

18.019 

Dependent

Table 79,

8.18.19

This optional field ... is only present if

Field 18.011: Sample typing information / 

STI has a subfield with the value 2.

2 D 18.019-

CondCode 

Dependent

IF Present(18.019), 

THEN Present(Subfield in 18.011 ST {InfoItem:1 

in Subfield} EQ 2)

B

RT18.9 -

Record: 

18.021 

Dependent

Table 79,

8.18.21

This field is only present if Field 18.020: 

DNA genotype distribution / DGD has a

Value.

2 D 18.021-

CondCode 

Dependent

IF Present(18.021)

THEN Present(18.020} AND DataLength(18.020) 

GT 0

B

RT18.10 -

Record: 

18.023 

Dependent

Table 79,

8.18.23

This optional field ... is only present if

Field 18.011: Sample typing information / 

STI has a subfield with the value 3.

2 D 18.023-

CondCode 

Dependent

IF Present(18.023), 

THEN Present(Subfield in 18.011 ST {InfoItem:1 

in Subfield} EQ 3)

B

RT18.11 -

Field: 

Type18-

CharType

8.18,

Table 79

<Table 79 specifies the Character Type for 

each field that contains no subfields.>

1 - 18.[001, 

002,005,

007, 008, 

020]-

CharType 

Bytes(18.[001, 002, 005, 007, 008, 020]) MO 

[0x30 to 0x39]

B

1 - 18.[012, 

022]-

CharType

TRUE B

1 M 18.004-

CharType 

<See Requirement ID: “Field: Source Agency”.> t-2

1 M 18.013-

CharType

Bytes(18.013) MO [0x30 to 0x39] T

1 M NIEM18.013-

CharType

Bytes(18.013) MO [0x30 to 0x39, 0x2D] X

1 M 18.014-

CharType

Bytes(18.014) MO [0x30 to 0x39] T

1 M NIEM18.014-

CharType

Bytes(18.014) MO [0x30 to 0x39, 0x2D] X

1 O 18.993-

CharType 

<See Requirment ID: “Field: Source Agency 

Name”.>

t-2
15

Req. # - ID Ref. in 

Base 

Std.

Requirement

Summary

L

e

v

e

l

S

t

a

t

u

s

Assertion

ID

Test

Assertion

Test

Note

Imp. 

Support

Supported 

Range

Test 

Result

Applicable 

to (T, X, B, 

B*, or X*)

8.18: Record Type-18: DNA record

RT18.12 -

Field: 

Type17-

Subfield

CharType

8.17,

Table 75

<Table 75 specifies the Character Type for 

each subfield.>

1 M 18.003-

UTYCharType

Bytes(InfoItem:1 in 18.003) MO [0x30 to 0x39] B*

1 D 18.003-LTYCharTypeBytes(InfoItem:2 in 18.003) MO [0x20, 0x41 to 

0x5A, 0x61 to 0x7A]

B*

1 D 18.003-

ACCCharType

Bytes(InfoItem:3 in 18.003) MO [0x30 to 0x39, 

0x44, 0x4D, 0x4E, 0x4F, 0x2C]

T

1 D NIEM18.003-

ACCCharType

Bytes(XElm(biom:DNALaboratoryAccreditationLe

velCode) MO [0x30 to 0x39]

OR

Bytes(XElm(biom:DNALaboratoryAccreditationSc

opeCode) MO

[0x44, 0x4D, 0x4E, 0x4F, 0x2C]

B*

1 O 18.003-

[NOO, POC, 

ION]-

CharType

TRUE B*

1 O 18.003-

CSCCharType

Bytes(InfoItem:6 in 18.003) MO [0x20, 0x30 to 

0x39, 0x41 to 0x5A, 0x61 to 0x7A]

T

1 O NIEM18.003-

CSCCharType

Bytes(XElm(biom:DNALaboratoryProcessingCoun

tryISO3166Alpha2Code)) MO [0x20, 0x41 to 

0x5A, 0x61 to 0x7A]

OR

Bytes(XElm(biom:DNALaboratoryProcessingCoun

tryISO3166Alpha3Code)) MO [0x20, 0x41 to 

0x5A, 0x61 to 0x7A]

OR

Bytes(XElm(biom:DNALaboratoryProcessingCoun

tryISO3166NumericCode)) MO [0x30 to 0x39]

X

1 - 18.006-

[DSD,DRA, 

SDS]-

CharType

Bytes(InfoItem:1, 7, 8 in 18.006) MO [0x30 to 

0x39]

B*
16

Req. # - ID Ref. in 

Base 

Std.

Requirement

Summary

L

e

v

e

l

S

t

a

t

u

s

Assertion

ID

Test

Assertion

Test

Note

Imp. 

Support

Supported 

Range

Test 

Result

Applicable 

to (T, X, B, 

B*, or X*)

8.18: Record Type-18: DNA record

1 O 18.006-

[EGP, LLC]-

CharTYpe

TRUE B*

1 O 18.006-

GIDCharType

Bytes(InfoItem:2 in 18.006) MO [0x20, 0x41 to 

0x5A, 0x61 to 0x7A]

B*

1 O 18.006-

[DLC,DOB]-

CharType 

Bytes(InfoItem:3,4 in 18.006) MO [0x30 to 0x39] T

1 O NIEM18.006-

[DLC,DOB]-

CharType 

Bytes(XElm(nc:PersonBirthDate), XElm

biom:DNADonorLastContactDate)) MO [0x30 to 

0x39, 0x2D]

X

1 - 18.009-

[PID, PMI, 

SID, PCM]-

CharType

TRUE B*

1 M 18.009-

PMSCharType

Bytes(InfoItem:3 in 18.009) MO [0x20, 0x41 to 

0x5A, 0x61 to 0x7A]

B*

1 O 18.009-

[FID,MID]-

CharType

Bytes(InfoItem:5, 6 in 18.009) MO [0x30 to 0x39] B*

1 M 18.010-

SCTCharType

Bytes(InfoItem:1 in 18.010) MO [0x30 to 0x39] B*

1 O 18.010-

SMOCharType

Bytes(InfoItem:2 in 18.010) MO [0x20, 0x41 to 

0x5A, 0x61 to 0x7A]

B*

1 M 18.011-

CharType

ForEach(SubField in 18.011)

{

Bytes(InfoItem:1 in SubField) MO [0x30 to 0x39]

} 

B*

1 - 18.015-

[PTP, RES]-

Bytes(InfoItem:1, 2 in 18.015) MO [0x30 to 0x39] B*
17

Req. # - ID Ref. in 

Base 

Std.

Requirement

Summary

L

e

v

e

l

S

t

a

t

u

s

Assertion

ID

Test

Assertion

Test

Note

Imp. 

Support

Supported 

Range

Test 

Result

Applicable 

to (T, X, B, 

B*, or X*)

8.18: Record Type-18: DNA record

CharType

1 - 18.015-

[PRF, SUP, 

DPC]-

CharType

TRUE B*

1 M 18.016-

[DST, DLR, 

ALL, LAI, 

PCDT, KID]-

CharType

ForEach(SubField in 18.016)

{

Bytes(InfoItem: 1 to 5, 12 in SubField) MO [0x30 

to 0x39)

}

B*

1 D 18.016-

[AL1, AL2, 

AL3]-

CharType

ForEach(SubField in 18.016)

{

Bytes(InfoItem: 6 to 8 in SubField) MO [0x30 to 

0x39, 0x2E)

}

B*

1 - 18.016-

[BID, ECR, 

LCR, KNM, 

KMF, KDS]-

CharType

TRUE B*

1 M 18.017-

[MT1, 

MT2]-

CharType

Bytes(InfoItem: 1, 2 in 18.017) MO [0x20, 0x41 to 

0x5A, 0x61 to 0x7A, 0x2D)

B*

1 M 18.017-

[BSP, BEP, 

BCA, BCG, 

BCC, BCT]-

CharType

Bytes(InfoItem: 3 to 8 in 18.017) MO [0x30 to 

0x39)

B*

1 M 18.018-

CharType

TRUE B*

1 M 18.019-

[EIR, EST, 

IDD]-

CharType

TRUE B*
18

Req. # - ID Ref. in 

Base 

Std.

Requirement

Summary

L

e

v

e

l

S

t

a

t

u

s

Assertion

ID

Test

Assertion

Test

Note

Imp. 

Support

Supported 

Range

Test 

Result

Applicable 

to (T, X, B, 

B*, or X*)

8.18: Record Type-18: DNA record

1 - 18.019-

[ELPD, 

EPS]-

CharType

ForEach(SubField in 18.019) 

{

Bytes(InfoItem: 4,5 in SubField) MO [0x30 to 

0x39, 0x41 to 0x5A, 0x61 to 0x7A, 0x2B, 0x2F, 

0x3D]

}

B*

1 M 18.021-

GLRCharType

ForEach(SubField in 18.021)

{

Bytes(InfoItem:1 in SubField) MO [0x30 to 0x39]

}

B*

1 M 18.021-

ALPCharType

ForEach(SubField in 18.021)

{

Bytes(InfoItem:2 in SubField) MO [0x2C, 0x2E, 

0x30 to 0x39]

}

B*

1 M 18.021-

GNWCharType

ForEach(SubField in 18.021)

{

Bytes(InfoItem:3 in SubField) MO [0x2E, 0x30 to 

0x39]

}

B*

1 M 18.023-

[LIR, LST, 

LDD]-

CharType

TRUE B*

1 - 18.023-

[LEPD, LES]-

CharType

ForEach(SubField in 18.023) 

{

Bytes(InfoItem: 4,5 in SubField) MO [0x30 to 

0x39, 0x41 to 0x5A, 0x61 to 0x7A, 0x2B, 0x2F, 

0x3D]

}

B*

1 M 18.902-

[NAV, 

OWN, 

PRO]-

CharType 

TRUE B*
19

Req. # - ID Ref. in 

Base 

Std.

Requirement

Summary

L

e

v

e

l

S

t

a

t

u

s

Assertion

ID

Test

Assertion

Test

Note

Imp. 

Support

Supported 

Range

Test 

Result

Applicable 

to (T, X, B, 

B*, or X*)

8.18: Record Type-18: DNA record

1 M 18.902-

GMTCharType 

ForEach(Subfield in 18.902)

{

Bytes(InfoItem:1 in Subfield) MO [0x30 to 

0x39,0x5A]

}

T

1 M NIEM18.902-

GMTCharType 

Bytes(XElm(biom:ProcessUTCDate) in 18.902) 

MO [0x30 to 0x39, 0x3A, 0x54, 0x5A]

X

1 - 18.995–

[ACN, ASP]-

CharType 

Bytes(All(InfoItem:1,2 in 18.995)) MO [0x30 to 

0x39]

B*

- - 18.998–

[UTE, 

LTD,LTM, 

LTS, LGD, 

LGM, LGS, 

ELE, GDC, 

GCM, GCE, 

GCN, GRT, 

OSI, OCV ]-

CharType 

<See Requirement ID: “Field: Geographic”> t-2

RT18.13 -

Field: 

Type18-

CharCount

Table 79 <Table 79 specifies the Character Count 

for each field that contains no subfields.>

1 M 18.001-

CharCount

DataLength(18.001) MO [1 to 8] T

1 M NIEM18.001-

CharCount

Length(18.001) EQ 2 X

1 M 18.002-

CharCount

DataLength(18.002) EQ 1 OR 2 B

1 M 18.004-

CharCount

<See Requirement ID: “Field: Source Agency”.> t-2

1 M 18.005-

CharCount

DataLength(18.005) EQ 1 B

1 D 18.007-

CharCount

DataLength(18.007) EQ 1 B
20

Req. # - ID Ref. in 

Base 

Std.

Requirement

Summary

L

e

v

e

l

S

t

a

t

u

s

Assertion

ID

Test

Assertion

Test

Note

Imp. 

Support

Supported 

Range

Test 

Result

Applicable 

to (T, X, B, 

B*, or X*)

8.18: Record Type-18: DNA record

1 D 18.008-

CharCount

DataLength(18.008) EQ 1 B

1 O 18.012-

CharCount

DataLegnth(18.012) MO [1 to 255] B

1 M 18.013-

CharCount

DataLegnth(18.013) EQ 8 B

1 M NIEM18.013-

CharCount

DataLegnth(18.013) EQ 10 B

1 M 18.014-

CharCount

DataLegnth(18.014) EQ 8 B

1 M NIEM18.014-

CharCount

DataLegnth(18.014) EQ 10 B

1 O 18.020-

CharCount

DataLegnth(18.020) EQ 1 B

1 O 18.022-

CharCount

DataLegnth(18.022) MO [1 to 126] B

1 O 18.993-

CharCount

<See Requirment ID: “Field: Source Agency 

Name”.>

t-2

RT18.14 -

Field: 

Type19-

Subfield 

CharCount

Table 79 <Table 79 specifies the Character Count 

for each subfield.>

1 - 18.003-

[UTY, LTY]-

CharCount

Length(InfoItem:1,2 in 18.003) EQ 1 B*

1 D 18.003-

ACCCharCount

Length(InfoItem:3 in 18.003) MO [1 to 35] T

1 D NIEM18.003-

ACCCharCount

Length(XElm(biom:DNALaboratoryAccreditationL

evelCode) MO [1 to 3]

AND

Length(XElm(biom:DNALaboratoryAccreditationS

copeCode) EQ 1

X

1 O 18.003-

NOOCharCount

Length(InfoItem:4 in 18.003)) GTE 1 B*
21

Req. # - ID Ref. in 

Base 

Std.

Requirement

Summary

L

e

v

e

l

S

t

a

t

u

s

Assertion

ID

Test

Assertion

Test

Note

Imp. 

Support

Supported 

Range

Test 

Result

Applicable 

to (T, X, B, 

B*, or X*)

8.18: Record Type-18: DNA record

1 O 18.003-

POCCharCount

Length(InfoItem:5 in 18.003)) MO [1 to 200] B*

1 O 18.003-

CSCCharCount

Length(InfoItem:6 in 18.003)) MO [2, 3] T

1 O 18.003-

CSCCharCount

Length(XElm(biom:DNALaboratoryProcessingCou

ntryISO3166Alpha2Code)) EQ 2

OR

Length(XElm(biom:DNALaboratoryProcessingCou

ntryISO3166Alpha3Code)) EQ 3

OR

Length(XElm(biom:DNALaboratoryProcessingCou

ntryISO3166NumericCode)) EQ 3

X

1 O 18.003-

IONCharCount

Length(InfoItem:7 in 18.003)) MO [1 to 100] B*

1 - 18.006-

[DSD,GID,D

RA, SDS]-

CharCount

Length(InfoItem:1,2,6,8 in 18.006) EQ 1 B*

1 - 18.006-

[DLC, DLB]-

CharCount

Length(InfoItem:3,4 in 18.006) EQ 8 t-6 T

1 O NIEM18.006-

[DLC, DLB]-

CharCount

Length(XElm(nc:PersonBirthDate), 

XElm(biom:DNADonorLastContactDate) in 

18.006) EQ 10

t-6 X

1 O 18.006-

EGPCharCount

Length(InfoItem:5 in 18.006) MO [1 to 50] B*

1 O 18.006-LLCCharCountLength(InfoItem:7 in 18.006) MO [1 to 4000] B*

1 M 18.009-

[PID,SID]-

Legnth(InfoItem:1, 4 in 18.009) MO [1 to 24] B*
22

Req. # - ID Ref. in 

Base 

Std.

Requirement

Summary

L

e

v

e

l

S

t

a

t

u

s

Assertion

ID

Test

Assertion

Test

Note

Imp. 

Support

Supported 

Range

Test 

Result

Applicable 

to (T, X, B, 

B*, or X*)

8.18: Record Type-18: DNA record

CharCount

1 M 18.009-

PMICharCount

Legnth(InfoItem:2 in 18.009) MO [1 to 6] B*

1 M 18.009-

PMSCharCount

Legnth(InfoItem:3 in 18.009) EQ 1 B*

1 O 18.009-

[FID,MID]-

CharCount

Legnth(InfoItem:5,6 in 18.009) MO [1 to 3] B*

1 O 18.009-

PCMCharCount

Legnth(InfoItem:7 in 18.009) MO [1 to 2000] B*

1 M 18.010-

SCTCharCount

Legnth(InfoItem:1 in 18.010) MO [1 to 2] B*

1 O 18.010-

SMOCharCount

Legnth(InfoItem:2 in 18.010) EQ 2 B*

1 M 18.011-

CharCount

Legnth(All(InfoItems in 18.011)) EQ 1 B*

1 M 18.015-

PTPCharCount

Legnth(InfoItem:1 in 18.015) EQ 1 B*

1 O 18.015-

RESCharCount

Legnth(InfoItem:2 in 18.015) MO [1,2] B*

1 M 18.015-

PRFCharCount

Legnth(InfoItem:3 in 18.015) MO [1 to 64] B*

1 O 18.015-

[SUP,DPC]-

CharCount

Legnth(InfoItem:5,6 in 18.015) MO [1 to 100] B*

1 M 18.016- ForEach(SubField in 18.016) B*
23

Req. # - ID Ref. in 

Base 

Std.

Requirement

Summary

L

e

v

e

l

S

t

a

t

u

s

Assertion

ID

Test

Assertion

Test

Note

Imp. 

Support

Supported 

Range

Test 

Result

Applicable 

to (T, X, B, 

B*, or X*)

8.18: Record Type-18: DNA record

[DST,ALL,LA

I,PCDT]-

CharCount

{

Legnth(InfoItem:1,3,4,5 in SubField) EQ 1

}

1 M 18.016-

[DLR, KID]-

CharCount

ForEach(SubField in 18.016)

{

Legnth(InfoItem:2,12 in SubField) MO [1 to 3]

}

B*

1 D 18.016-

[AL1, AL2, 

AL3]-

CharCount

ForEach(SubField in 18.016)

{

Legnth(InfoItem:6,7,8 in SubField) MO [1 to 4]

}

B*

1 - 18.016-

[BID, KNM, 

KMF]-

CharCount

ForEach(SubField in 18.016)

{

Legnth(InfoItem:9,13,14 in SubField) MO [1 to 

32]

}

B*

1 O 18.016-

[ECR,LCR]-

CharCount

ForEach(SubField in 18.016)

{

Legnth(InfoItem:10,11 in SubField) MO [1 to 8]

}

B*

1 D 18.016-

KDSCharCount

ForEach(SubField in 18.016)

{

Legnth(InfoItem:15 in SubField) MO [1 to 128]

}

B*

1 M 18.017-

MT1-

CharCount

Legnth(InfoItem:1 in 18.017) MO [546 to 646] B*

1 M 18.017-

MT1-

CharCount

Legnth(InfoItem:2 in 18.017) MO [576 to 976] B*

1 M 18.017-

[BSP, BEP]-

CharCount

Legnth(InfoItem:3,4 in 18.017) MO [1 to 5] B*

1 M 18.017-

[BCA, BCG, 

Legnth(InfoItem:5,6,7,8 in 18.017) MO [1,2] B*
24

Req. # - ID Ref. in 

Base 

Std.

Requirement

Summary

L

e

v

e

l

S

t

a

t

u

s

Assertion

ID

Test

Assertion

Test

Note

Imp. 

Support

Supported 

Range

Test 

Result

Applicable 

to (T, X, B, 

B*, or X*)

8.18: Record Type-18: DNA record

BCC, BCT]-

CharCount

1 M 18.018-

CharCount

TRUE B*

1 M 18.019-EIRCharCountForEach(SubField in 18.019)

{

Legnth(InfoItem:1 in SubField) MO [1 to 8]

}

B*

1 M 18.019-ESTCharCountForEach(SubField in 18.019)

{

Legnth(InfoItem:2 in SubField) MO [1 to 4]

}

B*

1 M 18.019-

IDDCharCount

ForEach(SubField in 18.019)

{

Legnth(InfoItem:3 in SubField) MO [1 to 200]

}

B*

1 - 18.019-

[ELPD,EPS]-

CharCount

ForEach(SubField in 18.019)

{

Legnth(InfoItem:4,5 in SubField) GTE 2

}

B*

1 M 18.021-

GLRCharCount

ForEach(SubField in 18.021)

{

Legnth(InfoItem:1 in SubField) MO [1 to3]

}

B*

1 M 18.021-

ALPCharCount

ForEach(SubField in 18.021)

{

Legnth(InfoItem:2 in SubField) MO [3 to 9]

}

B*

1 M 18.021-

GNWCharCount

ForEach(SubField in 18.021)

{

Legnth(InfoItem:3 in SubField) MO [1 to5]

}

B*

1 M 18.023-LIRCharCountForEach(SubField in 18.023)

{

Legnth(InfoItem:1 in SubField) MO [1 to 8]

B*
25

Req. # - ID Ref. in 

Base 

Std.

Requirement

Summary

L

e

v

e

l

S

t

a

t

u

s

Assertion

ID

Test

Assertion

Test

Note

Imp. 

Support

Supported 

Range

Test 

Result

Applicable 

to (T, X, B, 

B*, or X*)

8.18: Record Type-18: DNA record

}

1 M 18.023-LSTCharCountForEach(SubField in 18.023)

{

Legnth(InfoItem:2 in SubField) MO [1 to 4]

}

B*

1 M 18.023-

LDDCharCount

ForEach(SubField in 18.023)

{

Legnth(InfoItem:3 in SubField) MO [1 to 200]

}

B*

1 - 18.023-

[LEPD,LES]-

CharCount

ForEach(SubField in 18.023)

{

Legnth(InfoItem:4,5 in SubField) GTE 2

}

B*

1 M 18.902-

[NAV, 

OWN]-

CharCount

ForEach(Subfield in 18.902)

{

Length(InfoItem:2,3 in Subfield) MO [1 to 64]

}

T

1 M 18.902-

PROCharCount

ForEach(Subfield in 18.902)

{

Length(InfoItem:4 in Subfield)) MO [1 to 255]

}

T

1 M 18.902-

GMTCharCount

ForEach(SubField in 18.902)

{

Length(InfoItem:1 in SubField) EQ 15

}

t-6 T

1 M NIEM18.902-

GMTCharCount

Length(XElm(biom:ProcessUTCDate) in 18.902) 

EQ 20

t-6 X

1 M 18.995-

ACNCharCount

ForEach(Subfield in 18.995)

{

Length(InfoItem:1 in Subfield) MO [1 to 3]

}

B*

1 O 18.995-

ASPForEach(Subfield in 18.995){

B*
26

Req. # - ID Ref. in 

Base 

Std.

Requirement

Summary

L

e

v

e

l

S

t

a

t

u

s

Assertion

ID

Test

Assertion

Test

Note

Imp. 

Support

Supported 

Range

Test 

Result

Applicable 

to (T, X, B, 

B*, or X*)

8.18: Record Type-18: DNA record

CharCount Length(InfoItem:2 in Subfield) MO [1,2]

}

- O 18.998-[ 

UTE, 

LTD,LTM, 

LTS, LGD, 

LGM, LGS, 

ELE, GDC, 

GCM, GCE, 

GCN, GRT, 

OSI, OCV]-

CharCount

<See Requirement ID: “Field: Geographic”> t-2

RT18.15 -

Field: 

Type18-Field 

Occurrence

Table 79 <Table 79 specifies the Field Occurrence 

for each field.>

1 - 18.[024 to 

199,901,90

3 to 992, 

994, 996, 

997, 999]-

Occurrence

Count(18.[ 024 to 199,901,903 to 992, 994, 996, 

997, 999]) EQ 0

B

1 M 87.[001 to 

006, 010, 

011, 013 to 

015])-

Occurrence

Count(18.[ 001 to 006, 010, 011, 013 to 015]) EQ 

1

B

1 - 18.[007 to 

009, 012, 

016 to 023, 

902, 993, 

995, 998]--

Occurrence

Count(18.[ 007 to 009, 012, 016 to 023, 902, 

993, 995, 998]) LTE 1

B

RT18.16 -

Field: 

18.001-

Record 

Header 

Value

8.18.1,

Table 79

Field 18.001 Record header. In Traditional 

encoding, this field contains the record 

length in bytes (including all information 

separators)

M 18.001-

Record 

Header

<See Requirement ID “Field: xx.001-Record 

Header”>

t-2

8.18.1,

C.10.16

The XML name for the Type-18 record is 

<itl:PackageDNARecord>, and its 

1 M NIEM18.001-ForEach(XElm(itl:PackageDNARecord)

{

X
27

Req. # - ID Ref. in 

Base 

Std.

Requirement

Summary

L

e

v

e

l

S

t

a

t

u

s

Assertion

ID

Test

Assertion

Test

Note

Imp. 

Support

Supported 

Range

Test 

Result

Applicable 

to (T, X, B, 

B*, or X*)

8.18: Record Type-18: DNA record

<biom:RecordCategoryCode> element 

shall have a value of “18”.

Value {XElm(biom:RecordCategoryCode)} EQ ASCII(18)

}

RT18.17 -

Field: 

18.002-

Information 

Designation 

Character

Value

8.18.2,

Table 79,

7.3.1

This mandatory field shall contain the IDC 

assigned to this Type-18 record as listed

in the information item IDC for this record 

in Field 1.003 Transaction content/CNT. 

M 18.002-IDC <See Requirement IDs “Field: xx.002-IDC” and 

“Field: 1.003-Transaction Content Subfield 2 IDC

Matches” >

t-2

RT18.18 -

Field: 

18.003-DNA 

Laboratory 

Setting

Value

8.18.3,

Table 79

<Table 79 lists the valid values for DLS.> 1 M 18.003-

UTY-Value

{InfoItem:1 in 18.003} MO [1 to 4] B*

1 D 18.003-LTYValue{InfoItem:2 in 18.003} MO [ASCII(G,I,O,U)] B*

1 D 18.003-

ACC-Value

<Parse InfoItem:3 in 18.003 into strings 

separated by commas.>

Count(<strings>) MO [1 to 6] 

AND

ForEach(<string>) 

{

<Number at start of string> MO [0 to 6, 255]

AND

IF <Number at start of string> EQ 255

THEN Length(string) EQ 3 

ELSE IF <Number at start of string> EQ 0

THEN Length(string) EQ 1 

ELSE 

<Number at start of string followed by string of 

N,M,D,O (non-repeating, length 1 to 4)>

}

T

1 D NIEM18.003-

ACC-Value

ForEach(XElm(biom:DNALaboratoryAccreditation

))

{

{XElm(biom:DNALaboratoryAccreditationLevelCo

de)} MO [0 to 6, 255]

X
28

Req. # - ID Ref. in 

Base 

Std.

Requirement

Summary

L

e

v

e

l

S

t

a

t

u

s

Assertion

ID

Test

Assertion

Test

Note

Imp. 

Support

Supported 

Range

Test 

Result

Applicable 

to (T, X, B, 

B*, or X*)

8.18: Record Type-18: DNA record

AND

IF 

{XElm(biom:DNALaboratoryAccreditationLevelCo

de)} EQ 0 OR 255

THEN 

Count(XElm(biom:DNALaboratoryAccreditationSc

opeCode)) EQ 0

ELSE 

Bytes in 

{XElm(biom:DNALaboratoryAccreditationScopeC

ode)} MO ASCII(N,M,D,O)

}

1 O 18.003-

[NOO,POC, 

ION]-Value

TRUE B*

1 O 18.003-

CSC-Value

{InfoItem:6 in 18.003} 

MO <Alpha2, Alpha3, and Numeric Values from 

ISO-3166-1.>

T

1 O NIEM18.003-

CSC-Value

{XElm(biom:DNALaboratoryProcessingCountryIS

O3166Alpha2Code)} 

MO <Alpha2 Values from ISO-3166-1.>

OR

{XElm(biom:DNALaboratoryProcessingCountryIS

O3166Alpha3Code)} 

MO <Alpha3 Values from ISO-3166-1.>

OR

{XElm(biom:DNALaboratoryProcessingCountryIS

O3166NumericCode)} 

MO <Numeric Values from ISO-3166-1.>

X

RT18.19 -

Field: 

18.003-DNA 

Laboratory 

Setting

Dependent 

8.18.3 The second information item is the lab 

type / LTY. It is mandatory if the value

for UTY is 1 or 2. It is not entered 

otherwise.

The third information item is the 

accreditation information / ACC. It is

1 D 18.003-

Dependent 

LTY

Present(InfoItem:2 in 18.003) IFF

{InfoItem:1 in 18.003} MO [1,2]

B*

1 D 18.003-

Dependent 

ACC

Present(InfoItem:3 in 18.003) IFF

{InfoItem:1 in 18.003} MO [1,2]

B*
29

Req. # - ID Ref. in 

Base 

Std.

Requirement

Summary

L

e

v

e

l

S

t

a

t

u

s

Assertion

ID

Test

Assertion

Test

Note

Imp. 

Support

Supported 

Range

Test 

Result

Applicable 

to (T, X, B, 

B*, or X*)

8.18: Record Type-18: DNA record

Values mandatory if the value for UTY is 1 or 2. It 

shall not be entered otherwise.

RT18.20 -

Field: 

18.004-

Source 

Agency 

Value

8.18.4 This is a mandatory field. See Section 7.6 

for details.

1 M 18.004-

Value

<See Requirement ID: “Field: Source Agency”.> t-2

RT18.21 -

Field: 

18.005-

Number Of 

Analyses 

Flag Value

8.18.5 <Table 79 lists the valid values for NAL.> 1 M 18.005-

Value

{18.005} EQ 0 OR 1 B

RT18.22 -

Field: 

18.006-

Sample 

Donor 

Information 

Value

8.18.6 <Table 79 lists valid values for SDI.> 1 M 18.006-

DSD-Value

{InfoItem:1 in 18.006} MO [0 to 2] B*

1 O 18.006-

GID-Value

{InfoItem:2 in 18.006} MO [ASCII(M,F,U)] B*

1 O 18.006-

[DLC,DOB]-

Value

{InfoItem:3,4 in 18.006} MO [ValidLocalDate] t-6 T

1 O NIEM18.006-

[DLC,DOB]-

Value

{XElm(nc:PersonBirthDate,

biom:DNADonorLastContactDate)}MO [NIEMValidLocalDate]

t-6 X

1 O 18.006-

[EGP, LLC]-

Value

TRUE B*

1 D 18.006-

DRA-Value

{InfoItem:6 in 18.006} MO [0 to 2] B*

1 O 18.006-

SDS-Value

{InfoItem:8 in 18.006} MO [0 to 2] B*

RT18.23 -

Field: 

18.006-

8.18.6 This information item shall be

entered only if DSD=0. 

1 D 18.006-

DependentDSD

Present(InfoItem:6 in 18.006) IFF {InfoItem:1 in 

18.006} EQ 0

B*
30

Req. # - ID Ref. in 

Base 

Std.

Requirement

Summary

L

e

v

e

l

S

t

a

t

u

s

Assertion

ID

Test

Assertion

Test

Note

Imp. 

Support

Supported 

Range

Test 

Result

Applicable 

to (T, X, B, 

B*, or X*)

8.18: Record Type-18: DNA record

Sample 

Donor 

Information 

Dependent 

Value

RT18.24 -

Field: 

18.007-

Claimed Or 

Purported 

Relationship 

Value

8.18.7 <Table 79 lists valid values for COPR.> 1 D 18.007-

Value

{18.007} MO [1 to 7] B

RT18.25 -

Field: 

18.007-

Claimed Or 

Purported 

Relationship

Dependent 

Value

8.18.7 This field is mandatory if the value for 

DSD is equal to 1.

1 D 18.007-

Dependent

IF {InfoItem:1 in 18.006} EQ 1, Then Present 

(18.007)

B

RT18.26 -

Field: 

18.008-

Validated 

Relationship 

Value

8.18.8 <Table 79 lists valid values for VRS.> 1 D 18.008-

Value

{18.008} MO [1 to 7] B

RT18.27 -

Field: 

18.008-

Validated 

Relationship

Dependent 

Value

8.18.8 This field is optional and...is only filled in if 

DSD = 1. 

1 D 18.008-

Dependent

IF Present (18.008), Then {InfoItem:1 in 18.006} 

EQ 1

B

RT18.28 -

Field: 

8.18.9 <Table 79 lists valid values for PED.> 1 - 18.009-

[PID, PMI, 

TRUE B*
31

Req. # - ID Ref. in 

Base 

Std.

Requirement

Summary

L

e

v

e

l

S

t

a

t

u

s

Assertion

ID

Test

Assertion

Test

Note

Imp. 

Support

Supported 

Range

Test 

Result

Applicable 

to (T, X, B, 

B*, or X*)

8.18: Record Type-18: DNA record

18.009-

Pedigree 

Information 

Value

SID, FID, 

MID, PCM]-

Value

1 M 18.009-

PMS-Value

{InfoItem:3 in 18.009} MO [ASCII(K, U)] B*

RT18.29 -

Field: 

18.010-

Sample Type 

Value

8.18.10 <Table 79 lists valid values for STY.> 1 M 18.010-

SCT-Value

{InfoItem:1 in 18.010} MO [0 to 11] B*

1 O 18.010-

SMO-Value

{InfoItem:2 in 18.010} MO [ASCII(NS, WB, BP)] B*

RT18.30 -

Field: 

18.011-

Sample 

Typing 

Information 

Value

8.18.11 <Table 79 lists valid values for STI.> 1 M 18.011-

Value

ForEach(SubField in 18.011)

{

{InfoItem:1 in SubField} MO [0 to 4]

}

B*

RT18.31 -

Field: 

18.012-

Sample 

Collection 

Method 

Value

8.18.12 <Table 79 lists valid values for SCM.> 1 O 18.012-

Value

TRUE B

RT18.32 -

Field: 

18.013-

Sample 

Collection 

Date Value

8.18.13 <Table 79 lists valid values for SCD.> 1 M 18.013-

Value

{18.013} MO [ValidUTC/GMT] t-6 T

1 M NIEM18.013-

Value

{18.013} MO [NIEM-ValidUTC/GMT] t-6 X

RT18.33 -

Field: 

18.014-

Profile 

Storage Date 

8.18.14 <Table 79 lists valid values for PSD.> 1 M 18.014-

Value

{18.014} MO [ValidUTC/GMT] t-6 T

1 M NIEM18.014-

Value

{18.014} MO [NIEM-ValidUTC/GMT] t-6 X
32

Req. # - ID Ref. in 

Base 

Std.

Requirement

Summary

L

e

v

e

l

S

t

a

t

u

s

Assertion

ID

Test

Assertion

Test

Note

Imp. 

Support

Supported 

Range

Test 

Result

Applicable 

to (T, X, B, 

B*, or X*)

8.18: Record Type-18: DNA record

Value

RT18.34 -

Field: 

18.015-DNA 

Profile Data 

Value

8.18.15 <Table 79 lists valid values for DPD.> 1 M 18.015-

PTP-Value

{InfoItem:1 in 18.015} MO [0,1] B*

1 O 18.015-

RES-Value

{InfoItem:2 in 18.015} MO [0,10] B*

1 - 18.015-

[PRF,SUP,D

PC]-Value

TRUE B*

RT18.35 -

Field: 

18.016-

Autosomal 

STR, X-STR 

and Y-STR 

Value

8.18.16 <Table 79 lists the value constraints for 

STR.>

1 M 18.016-

DST-Value

ForEach(SubField in 18.016)

{

{InfoItem:1 in SubField} MO [0,1,2]

}

B*

1 M 18.016-

DLR-Value

ForEach(SubField in 18.016)

{

{InfoItem:2 in SubField} MO [1 to 200]

}

B*

1 M 18.016-

[ALL, LAI, 

PCDT]-

Value

ForEach(SubField in 18.016)

{

{InfoItem:3,4,5 in SubField} MO [0,1]

}

B*

1 D 18.016-

[AL1,AL2,AL

3]-Value

ForEach(SubField in 18.016)

{

{InfoItem:6,7,8 in SubField} GTE 0 

AND

IF Present(ASCII(.) in InfoItem: 6,7,8 in SubField)

Then Count(<number digits following> ASCII(.) in 

InfoItem: 6,7,8 in SubField) EQ 1 

}

t-18 B*

1 - 18.016-

[BID,ECR,LC

R,KNM,KM

TRUE B*
33

Req. # - ID Ref. in 

Base 

Std.

Requirement

Summary

L

e

v

e

l

S

t

a

t

u

s

Assertion

ID

Test

Assertion

Test

Note

Imp. 

Support

Supported 

Range

Test 

Result

Applicable 

to (T, X, B, 

B*, or X*)

8.18: Record Type-18: DNA record

F,KDS]-

Value

1 M 18.016-KIDValueForEach(SubField in 18.016)

{

{InfoItem:12 in SubField} MO [0 to 999]

}

B*

RT18.36 -

Field: 

18.016-

Autosomal 

STR, X-STR 

and Y-STR 

Dependent 

Value

“The sixth information item shall have a 

value if ALL is 1. It shall be empty if

ALL is 0.“

“The seventh information item is 

conditional upon the value of ALL being 1. 

It may appear only if AL1 is used. “

“The eighth information item is optional 

but shall not appear unless ALL = 1. The 

information item allele call 3 / AL3

shall only appear if information items AL1 

and AL2 are present”

“KNM shall be entered if KID = 0”

“KMF shall be entered if KID = 0”

“KDS shall be entered if KID = 0”

1 D 18.016-

DependentAL1

ForEach(SubField in 18.016)

{

IF {InfoItem:3 in SubField} EQ 1, Then 

Present(InfoItem:6 in SubField)

AND

IF {InfoItem:3 in SubField} EQ 0, Then NOT 

Present(InfoItem:6 in SubField)

}

B*

1 D 18.016-

DependentAL2

ForEach(SubField in 18.016)

{

IF NOT Present(InfoItem:6 in SubField) Then NOT 

Present(InfoItem:7 in SubField)

ELSE 

IF {InfoItem:3 in SubField} EQ 1, Then 

Present(InfoItem:7 in SubField)

AND

IF {InfoItem:3 in SubField} EQ 0, Then NOT 

Present(InfoItem:7 in SubField)

}

B*

1 D 18.016-

DependentAL3

ForEach(SubField in 18.016)

{

IF NOT Present(InfoItem:6,7 in SubField) Then 

NOT Present(InfoItem:8 in SubField)

ELSE 

IF {InfoItem:3 in SubField} EQ 1, Then 

Present(InfoItem:8 in SubField)

AND

IF {InfoItem:3 in SubField} EQ 0, Then NOT 

Present(InfoItem:8 in SubField)

B*
34

Req. # - ID Ref. in 

Base 

Std.

Requirement

Summary

L

e

v

e

l

S

t

a

t

u

s

Assertion

ID

Test

Assertion

Test

Note

Imp. 

Support

Supported 

Range

Test 

Result

Applicable 

to (T, X, B, 

B*, or X*)

8.18: Record Type-18: DNA record

}

1 D 18.016-

Dependent-

[KNM, 

KMF, KDS]

ForEach(SubField in 18.016)

{

IF {InfoItem:12 in SubField} EQ 0 Then 

Present(InfoItem:13,14,15 in SubField)

}

B*

RT18.37 -

Field: 

18.017-

Mitochondri

al DNA Data 

Value

8.18.17 <Table 79 lists the value constraints for 

DMD.>

1 M 18.017-

[MT1,MT2]

-Value

All(Bytes(InfoItem:1,2 in 18.017)) 

MO [ASCII(R,Y,M,K,S,W,H,B,V,D,N,-,A,G,C,T)]

B*

1 M 18.017-

[BSP,BCA,B

CG,BCC,BCT

]-Value

{InfoItem:3,5,6,7,8 in 18.017} GTE 0 AND MO 

[Integers]

B*

2 M 18.017-

BEP-Value

{InfoItem:4 in 18.017} GT {InfoItem:3 in 18.017} 

GT 0 AND MO[Integers]

B*

RT18.38 -

Field: 

18.018-DNA 

UserDefined 

Profile Data 

Value

8.18.18 <Table 79 lists the value constraints for 

UDP.>

1 M 18.018-

Value

TRUE B

RT18.39 -

Field: 

18.019-

Electrophero

gram 

Description 

Value

8.18.19 <Table 79 lists the value constraints for 

EPD.>

1 - 18.019-

Value

TRUE B*

RT18.40 -

Field: 

18.020-DNA 

Genotype 

Distribution 

Value

8.18.20 <Table 79 lists the value constraints for 

DGD.>

1 O 18.020-

Value

{18.020} EQ 0 OR 1 B
35

Req. # - ID Ref. in 

Base 

Std.

Requirement

Summary

L

e

v

e

l

S

t

a

t

u

s

Assertion

ID

Test

Assertion

Test

Note

Imp. 

Support

Supported 

Range

Test 

Result

Applicable 

to (T, X, B, 

B*, or X*)

8.18: Record Type-18: DNA record

RT18.41 -

Field: 

18.021- DNA 

Genotype 

Allele Pair 

Value

8.18.21 <Table 79 lists the value constraints for 

GAP.>

1 M 18.021-

GLR-Value

ForEach(SubField in 18.021)

{

{InfoItem:1 in SubField} MO [1 to 200]

}

B*

1 M 18.021-

ALP-Value

ForEach(SubField in 18.021)

{

Count(<numbers separated by commas> in 

InfoItem:2 in SubField) EQ 2 AND 

ForEach (<number separated by comma in 

InfoItem:2 in SubField>)

{

<number> GTE 0 AND IF Present(ASCII(.) in 

<number>) Then Count(<digits after> ASCII(.) in 

<number>) EQ 1

} 

B*

1 M 18.021-

GNW-Value

ForEach(SubField in 18.021)

{

{InfoItem:3 in SubField} GTE 0 AND LTE 1

AND

IF Present(ASCII(.) in InfoItem:3 in SubField) Then 

Count(<digits after> ASCII(.) in InfoItem:3 in 

SubField) MO [1 to 3]

} 

B*

RT18.42 -

Field: 

18.022-

Comment 

Value

8.18.22 <Table 79 lists the value constraints for 

COM.>

1 O 18.022-

Value

TRUE B

RT18.43 -

Field: 18.023 

Electrophero

gram Ladder 

Value

8.18.23 <Table 79 lists the value constraints for 

EPL.>

1 M 18.023-

Value

TRUE B*

RT18.44 -

Field: 18.200 

8.18.24 User Defined Fields - - 18.200 to 

18.900-

TRUE B
36

Req. # - ID Ref. in 

Base 

Std.

Requirement

Summary

L

e

v

e

l

S

t

a

t

u

s

Assertion

ID

Test

Assertion

Test

Note

Imp. 

Support

Supported 

Range

Test 

Result

Applicable 

to (T, X, B, 

B*, or X*)

8.18: Record Type-18: DNA record

to 18.900-

User 

Defined 

Value

Value

RT18.45 -

Field: 

18.902-

Annotated 

Information 

Value

8.18.25 This is an optional field, listing the 

operations performed on the original 

source in order to prepare it for inclusion 

in a biometric record type. See Section 

7.4.1.

O 18.902-

[GMT, NAV, 

OWN, 

PRO]-Value

<See Requirement ID: “Field: xx.902-ANN” >. t-2

RT18.46 -

Field: 

18.993-

Source 

Agency 

Name

Value

8.18.26 This is an optional field. It may contain up 

to 125 Unicode characters. 

O 18.993-

Value

<See Requirment ID: “Field: Source Agency 

Name”.>

t-2

RT18.47 -

Field: 

18.995-

Associated 

Context 

Value

8.18.27 See Section 7.3.3 O 18.995-

[ACN, ASP]-

Value

<See Requirement IDs: “Field: xx.995-ASC” and 

“Field: xx.995-ASC-ACN” and

“Field: xx.995-ASC-ASP”>.

t-2

RT18.48 -

Field: 

18.998-

Geographic 

Sample 

Acquisition 

Location 

Value

8.18.28 See Section 7.7.3 O 18.998–

[UTE, 

LTD,LTM, 

LTS, LGD, 

LGM, LGS, 

ELE, GDC, 

GCM, GCE, 

GCN, GRT, 

OSI, OCV]-

Value

<See Requirement IDs: “Field: Geographic”, 

“Field: Geographic”, “Field: Geographic-Subfield 

1” through “Field: Geographic-Values-SubField 

15” >.

t-2
37

B.2 Test Notes

The following test notes provide clarification of the assertion text provided in the Test Assertion column of Table B.1. Only test notes 

relevant to Type 18 Record Type are included: 

t-2. The assertions for this requirement are listed in another section of the table or in another table of NIST SP 500-295 as described in 

the “Test Assertion” column. 

t-6. UTC has replaced GMT. Date and time are defined in section 7.7.2 of the standard. The set of values ValidUTC/GMT is described 

in section 7.7.2.2 of the standard and is always less than the current date and time. ValidUTC/GMT is in the form 

YYYYMMDDHHMMSSZ; NIEM-ValidUTC/GMT is in the form YYYY-MM-DDThh:mm:ssZ. The ValidLocalDate is in the 

form YYYYMMDD; NIEM-ValidLocalDate is in the form YYYY-MM-DD, YYYY-MM, or YYYY. 

t-18. Table 79 in NIST SP 500-290 lists possible values as 'integer > 0; or real number with one digit to the right of the decimal'. 

Negative integer values are a subset of real numbers, and would conflict with the requirement “integer > 0”. For the pertinent test 

assertion in the table, negative values are not considered part of the valid value range.