BioCTS for ISO/IEC

Binary and XML Encoded Records

User Guide

(Alpha Release)

NIST/ITL CSD Biometric Conformance Test Software for 

ISO/IEC Binary and XML Encoded Records

March 2014

Dylan Yaga

NIST/ITL CSD Lead Software Designer

Fernando Podio

NIST/ITL CSD Project Manager

Christofer J. McGinnis

ID Technology Partners (NIST Associate) Software Developer 

National Institute of Standards and Technology (NIST)

Information Technology Laboratory (ITL)

Computer Security Division (CSD)
Contents

1. Disclaimer..............................................................................................................................................3

2. Overview ...............................................................................................................................................4

2.1. Requirements................................................................................................................................4

3. Relevant Standards, Standards Requirements and Additional Test Assertions ...................................5

3.1. Relevant Standards and Specifications.........................................................................................5

3.2. Test Limitations of this Alpha CTS Release ...................................................................................5

4. Testing Phases.......................................................................................................................................6

5. Guide.....................................................................................................................................................7

5.1. Download and Installation............................................................................................................7

5.2. Running the Conformance Test Architecture ...............................................................................7

5.3. Conformance Test Architecture Features.....................................................................................8

5.3.1. Batch Testing.........................................................................................................................8

5.3.2. Editor...................................................................................................................................11

5.3.3. Options................................................................................................................................12

6. Result Details ......................................................................................................................................13

7. References ..........................................................................................................................................14
1. Disclaimer

NIST/ITL BioCTS

For ISO/IEC Binary and XML Encoded Records

October 2010

The software was developed by the National Institute of Standards and Technology 

(NIST), an agency of the Federal Government. Pursuant to Title 15 United States 

Code Section 105, works of NIST are not subject to copyright protection in the 

United States and are considered to be in the public domain. Thus, the software may 

be freely reproduced and used. Please explicitly acknowledge the National Institute 

of Standards and Technology as the source of the software.

This software is released by NIST as a service and is expressly provided "AS IS." 

NIST MAKES NO WARRANTY OF ANY KIND, EXPRESS, IMPLIED OR STATUTORY, INCLUDING, 

WITHOUT LIMITATION, THE IMPLIED WARRANTY OF MERCHANTABILITY, FITNESS FOR A 

PARTICULAR PURPOSE, NON-INFRINGEMENT AND DATA ACCURACY. NIST DOES NOT REPRESENT OR 

WARRANT THAT THE OPERATION OF THE SOFTWARE WILL BE UNINTERRUPTED OR ERROR-FREE, OR 

THAT ANY DEFECTS WILL BE CORRECTED.

NIST does not warrant or make any representations regarding the use of the software 

or the results thereof, including but not limited to the correctness, accuracy, 

reliability or usefulness of the software. By using this software or by 

incorporating this software into another product, you agree to hold harmless the 

United Sates Government for any and all damages or liabilities that arise out of 

such use.

Certain trade names and company products are mentioned in the text or identified. 

In no case does such identification imply recommendation or endorsement by the 

National Institute of Standards and Technology, nor does it imply that the products 

are necessarily the best available for the purpose. With the exception of material 

marked as copyrighted, information presented in this document is considered public 

information and may be distributed or copied. Use of appropriate byline/photo/image 

credits is requested.
2. Overview

This document describes the features of biometric conformance test software developed by NIST/ITL 

Computer Security Division (CSD).

This alpha release currently supports only the Conformance Test Suite (CTS) designed to test 

implementations of a biometric data interchange format for XML encoded finger image data1. Other 

CTSs for other biometric modalities will be later on released. Aspects of the CTS are subject to change 

based upon the ongoing development of the XML encoded specification until it’s completed as well as 

improvements made to the CTS itself.

2.1. Requirements

 Supported Microsoft® Operating Systems:

o Windows® XP TM Service Pack 3

o Windows® Vista TM Service Pack 2

o Windows® 7 TM Service Pack 1

 Microsoft® .NET 4.0 Framework:

o Microsoft® .NET 4.0 Web Installer (http://www.microsoft.com/enus/download/details.aspx?id=17851)*

Microsoft® .NET 4.0 Stand Alone Installer (http://www.microsoft.com/enus/download/details.aspx?id=17718)*

(*) Links working as of 7/16/2013

 

1

Draft Amendment 2 of ISO/IEC 19794-4:2011, Biometric data interchange formats – Part 4: Finger image data: 

XML encoding
3. Relevant Standards, Standards Requirements and Additional Test 

Assertions

3.1. Relevant Standards and Specifications

The relevant standards for this initial release of the BioCTS for ISO/IEC Binary and XML Encoded 

Records test tool are:

 ISO/IEC 19794-1:2011 Information technology -- Biometric data interchange formats -- Part 

1: Framework

o ISO/IEC JTC 1/SC 37 N 5913 – Text of 2nd 19794-1 DAM 2, Biometric data interchange 

formats – Part 1: Framework – Amendment 2: XML encoding (daft amendment 

under development)

 ISO/IEC 19794-4:2011 Information technology -- Biometric data interchange formats -- Part 

4: Finger image data

o ISO/IEC 19794-4:2011/Amd 1:2013 Conformance testing methodology and 

clarification of defects

o ISO/IEC JTC 1/SC 37 N 5911 - Text of ISO/IEC 19794-4 DAM 2, Biometric data 

interchange formats – Part 4: Finger image data – Amendment 2: XML encoding

(daft amendment under development)

In addition to the above listed standards and specifications, the CTS for ISO/IEC 19794-4:2011 XML 

Encoding implements additional test assertions that have been proposed by the CTS code developer 

for inclusion in ISO/IEC 19794-4:2011 Amd 2.

3.2. Test Limitations of this Alpha CTS Release

This CTS is not complete; it parses, refines and tests the majority of available Elements for this data 

format. It currently does not perform these operations for elements that are part of “Extended Data”. 

These elements are displayed as “Undefined Elements” and are merely reported as present. These fields 

will be supported in a future release.
4. Testing Phases

The BioCTS for ISO/IEC Binary and XML Encoded Records conformance test suite (CTS) design was a 

result of careful analysis of the base requirements in the ISO/IEC standards, the XML Encoding specific 

requirements, and the XML Schema definitions. The schemas are able to verify that the Data 

Interchange Package data is formatted and ordered correctly, but it does not ensure conformance to all 

of the base requirements. As shown in Fig. 1 this approach is reflected in the BioCTS for ISO/IEC Binary 

and XML Encoded Records design, which validates against the schema, reports the validation as a single 

result, and continues testing all of the required test assertions.

Figure 1 - High Level CTS Program Flow

The CTS has three test phases:

1. Determination of whether the XML file is Well-Formed.

An XML file is Well-Formed when it is syntactically correct, and follows the rules of XML 

documents [1] [2]. Without a Well-Formed XML file, further testing would yield potentially 

unusable results.

If the XML file fails this phase of testing, the CTS will not continue to the next phase.

2. Validating the XML file against the specified schema file.

BioCTS for ISO/IEC Binary and XML Encoded Records will attempt to validate the XML file against 

the specified schema file for the specified Data Interchange Format and will report as many 

errors as possible.

The CTS, regardless of whether the XML file passes or fails this phase of testing, will continue to 

the next phase.

3. Assertion testing for ISO/IEC base requirements.

The final phase is testing against the base requirements of the Data Interchange Format that are 

not covered by the XML Schema file validation. These tests include, but are not limited to:

a. Valid Value tests

b. Relationship tests between XML elements

c. Basic Image Validation
After all three phases of testing is complete for the XML file, the test results are aggregated and an 

overall result (Pass or Fail) is determined. For the overall result of an XML file to be reported as “Pass”

there must be no result of “Error” or “Critical” in any of the XML file’s results.

5. Guide

5.1. Download and Installation

Download the installer from the website 

http://www.nist.gov/itl/csd/biometrics/biocta_download.cfm .

This alpha release is packaged in a zip file, and can be extracted to any location. The zip file contains 

the following files and folders:

 BioCTS for ISO IEC XML Alpha/

o Modules/

 GOV.CSD.ITL.NIST.Library.dll

 GOV.CSD.ITL.NIST.CTS.XML.ISO_IEC_19794_4.dll

o Schemas/

 19794-1.xsd

 19794-4.xsd

o ISO IEC 19794-4 2011 XML Samples/

 Fail_00_Two_Representations_Bad_NumberDistinctPositions.xml

 Fail_00_Two_Representations_MissingEndTagForImage.xml

 Fail_00_Two_Representations_No_NumberDistinctPositions.xml

 Pass_00.xml

 Pass_00_Two_Representations.xml

 Sample Provided.xml

o BioCTS_ISO_IEC.exe

o GOV.CSD.ITL.NIST.Binary.dll

o GOV.CSD.ITL.NIST.Library.dll

o GOV.CSD.ITL.NIST.XML.dll

o BioCTS_for_ISO_IEC_XML.pdf

5.2. Running the Conformance Test Architecture

After extracting the files from within the zip file, run the BioCTS_ISO_IEC.exe program to start 

BioCTS for ISO/IEC Binary and XML Encoding.

The CTS for ISO/IEC 19794-4:2011 XML Encoding must be selected in the Options tab of the 

program. Once selected, multiple files may be tested in the XML File Batch Test tab as described in 

section 5.3 below.
5.3. Conformance Test Architecture Features

5.3.1. Batch Testing

The “Batch Test” tab allows multiple transactions (files) to be tested in groups, and displays the 

overall results for each transaction in the “Files Under Test” pane. 

Figure 2 - BioCTS Initial XML Batch Test Tab
Several files can be loaded at once.

Figure 3 - BioCTS with several files loaded
The “Xml File Batch Test” tab will display the transaction’s overall result with either:

 - Overall Result of Fail

 - Overall Result of Pass

Figure 4 - BioCTS with several files loaded, displaying their overall results
Textual output results for each transaction can be viewed by clicking on the desired filename in 

the “File Under Test” pane. The complete textual results are displayed in the pane to the right.

Figure 5 - BioCTS displaying the Text Log Output of a file that has been tested

5.3.2. Editor

There are many tools (both freely and commercially available) that allow for editing of the Textbased XML files. Currently, BioCTS for ISO/IEC Binary and XML Encoded Records does not 

include an editor specifically for the XML Records.
5.3.3. Options

The “Options” tab provides options for output file type, constraint schema path and Text and 

XML Log Output save location.

BioCTS for ISO/IEC Binary and XML Encoded Records is able to provide two types of output; first 

is the Text Log Output, which is always generated during batch testing. The second is an optional 

XML Output, which will generate an XML Output log that includes the same information found 

in the Text Log, but in a machine-readable format. Currently the XML Output is not enabled for 

XML CTSs.

Please note that because of the amount of details provided in the Log Outputs, the size of these 

logs can be large.

Output is generated in a Time-stamped folder located in the output directory. The time-stamped 

folder format:

 yyyy – 4 digit year (e.g. 2012)

 MM – 2 digit month (e.g. 10)

 dd – 2 digit day (e.g. 31)

 HH – 2 digit hour in 24-hour scale (e.g. 13)

 mm – 2 digit minutes (e.g. 59)

 ss – 2 digit seconds (e.g. 22)

Examples:

 Text Output will be generated in the directory:

C:\Users\dyaga\Desktop\BioCTS for ISO IEC Output\2012.10.31.13.59.22\Text Output

 XML Output will be generated in the directory:

C:\Users\dyaga\Desktop\BioCTS for ISO IEC Output\2012.10.31.13.59.22\XML Output
6. Result Details

Every test performed in BioCTS for ISO/IEC Binary and XML Encoded Records generates a Result –

passing or failing. In an effort to enhance the readability and clarity of the Results, the textual output 

formatting has been modified since the initial release of BioCTS for ISO/IEC Binary and XML Encoded 

Records.

The Text Log Output Result formatting is:

Figure 6 - A Text Log Result

The XML Log Output Result format:

Figure 7 - An XML Log Result

A Result consists of, and clearly identifies:

 Test Name – A Name that describes the Test

 Test Level

o Parse – A parse level test deals with any test that relates to parsing of the information; 

tests with this level happen before the data is inspected during L1, L2 and L3 testing.

o L1 – A Level 1 test, which tests for values, lengths, and character counts of the data.

o L2 – A Level 2 test, which tests for relationships between Fields, Subfields, Information 

Items and Records.

o L3 – A Level 3 test, which tests to see if the data specified is consistent with the 

biometric sample presented.

 Test Result

o Ok – The test was unable to find an error. This does not necessarily mean that this 

portion of data was without error; just that the tests could not find error.

o Message – The test was unable to find an error; however the test found it necessary to 

convey an additional message.

o Warning – The test was unable to find an error; however there may be an aspect that 

warrants further investigation.

o Error – The test was able to find an error.

o Critical – The test was able to find an error; this error was critical enough that it may 

impede further testing.
 Test Message – The message can contain any additional information to clarify the test.

7. References

1. “Well-formed document” Wikipedia: The Free Encyclopedia. Wikimedia Foundation, Inc., 23 

April 2013. Web. 30 May 2013.

<http://en.wikipedia.org/wiki/Well-formed_document> 

2. “Extensible Markup Language (XML) 1.0” World Wide Web Consortium (W3C), 10 February 

1998. Web. 30 May 2013

<http://www.w3.org/TR/1998/REC-xml-19980210#dt-wellformed>