Ingestion Data Types

An Apollo license is required to use Data Model Loader on the DNAnexus Platform. Org approval may also be required. Contact DNAnexus Sales for more information.

Supported Field Types

Data Model Loader supports specific field types during ingestion of raw files. The following field types are supported with the outlined configurations. During ingestion, all values in a field must conform to the supported and indicated type format, including special values used to indicate "Sparse" values.

For multi-select fields, the field in the raw data CSV would be entered as <value 1>|<value 2>|<value n> with a | delimiter for entries where multiple values are selected. A field can be treated as multi-select even if not all entries have multiple values. Each individual value in a multi-select field must be non-null / non-empty.

Date

A date without special values (other than NULL) with day granularity. An example is Date of Birth.

Ingestion files are configured as follows:

type

coding_name

is_sparse_coding

is_multi_select

(coding.csv) parent_code

date

The following formats are supported for Date:

  • yyyy

  • yyyy-[m]m

  • yyyy-[m]m-[d]d

Date Sparse

A date with a few special values (other than NULL). An example is Date of Diagnosis where a date of "1900-01-01" indicates "Forgot to ask question".

Ingestion files are configured as follows:

type

coding_name

is_sparse_coding

is_multi_select

(coding.csv) parent_code

date

<provided>

yes

Datetime

A datetime without special values (other than NULL). An example is datetetime of hospital admission. Datetimes are stored in the system as UTC.

Ingestion files are configured as follows:

type

coding_name

is_sparse_coding

is_multi_select

(coding.csv) parent_code

datetime

The following formats are supported for Datetime

  • yyyy

  • yyyy-[m]m

  • yyyy-[m]m-[d]d

  • yyyy-[m]m-[d]d [h]h:[m]m:[s]s.[ms][ms][ms][us][us][us]

  • yyyy-[m]m-[d]d [h]h:[m]m:[s]s.[ms][ms][ms][us][us][us]Z

  • yyyy-[m]m-[d]d [h]h:[m]m:[s]s.[ms][ms][ms][us][us][us]-[h]h:[m]m

  • yyyy-[m]m-[d]d [h]h:[m]m:[s]s.[ms][ms][ms][us][us][us]+[h]h:[m]m

  • yyyy-[m]m-[d]dT[h]h:[m]m:[s]s.[ms][ms][ms][us][us][us]

  • yyyy-[m]m-[d]dT[h]h:[m]m:[s]s.[ms][ms][ms][us][us][us]Z

  • yyyy-[m]m-[d]dT[h]h:[m]m:[s]s.[ms][ms][ms][us][us][us]-[h]h:[m]m

  • yyyy-[m]m-[d]dT[h]h:[m]m:[s]s.[ms][ms][ms][us][us][us]+[h]h:[m]m

Datetime Sparse

A datetime with microsecond granularity and a few special values (other than NULL). An example is Datetime of Treatment where a date of "1900-01-01 01:00" indicates "NA".

Ingestion files are configured as follows:

type

coding_name

is_sparse_coding

is_multi_select

(coding.csv) parent_code

datetime

<provided>

yes

Float

A double-precision floating point measurement without special values (other than NULL). An example is Weight.

Ingestion files are configured as follows:

type

coding_name

is_sparse_coding

is_multi_select

(coding.csv) parent_code

float

The following formats are supported for Float

  • #.#

  • #.#E#

  • -#.#E#

Float Sparse

A double-precision floating point measurement with a few special values (other than NULL). An example is Blood Glucose Level where a value of "-1.0" indicates "Read Failure".

Ingestion files are configured as follows:

type

coding_name

is_sparse_coding

is_multi_select

(coding.csv) parent_code

float

<provided>

yes

Integer

An integer measurement without special values (other than NULL). An example is Age.

Ingestion files are configured as follows:

type

coding_name

is_sparse_coding

is_multi_select

(coding.csv) parent_code

integer

The following formats are supported for Integer

  • #

Integer Sparse

An integer measurement with a few special values (other than NULL). An example is Cups of Coffee Consumed where a value of "-1" indicates "Prefer not to answer".

Ingestion files are configured as follows:

type

coding_name

is_sparse_coding

is_multi_select

(coding.csv) parent_code

integer

<provided>

yes

Integer Categorical

A single-choice value (string) from a controlled vocabulary of possible options (or NULL), originally encoded as integer. An example is Have you traveled in the last 30 days? where a value of "1" means "Yes" and a value of 0 means "No"

Ingestion files are configured as follows:

type

coding_name

is_sparse_coding

is_multi_select

(coding.csv) parent_code

integer

<provided>

The Integer Categorical fields supports the same formats as the Integer field.

Integer Categorical Hierarchical

A single-choice value (string) from a controlled vocabulary of possible options (or NULL) that are organized in a hierarchy, originally encoded as integer. An example is Job Code At Visit where an integer of "12" means "VP of Operations" which is a child of "Corporate Managers And Senior Officials".

Ingestion files are configured as follows:

type

coding_name

is_sparse_coding

is_multi_select

(coding.csv) parent_code

integer

<provided>

<provided for child values>

Integer Categorical Multi-select

A multiple-choice value (string) from a controlled vocabulary of possible options (or NULL), originally encoded as integer. An example is Patient Ethnic Background where 0 means "African", 1 means "Caucasian", 2 means "Asian", and other numeric values represent additional ethnicities. A patient may be part of one or many races.

Ingestion files are configured as follows:

type

coding_name

is_sparse_coding

is_multi_select

(coding.csv) parent_code

integer

<provided>

yes

Integer Categorical Multi-select Hierarchical

A multiple-choice value (string) from a controlled vocabulary of possible options (or NULL) that are organized in a hierarchy, originally encoded as integer. An example is Cancer Codes Self Reported where 0 means "Parotid Gland Cancer", 2 means "Other Salivary Gland Cancer" and both have a parent of 3 "Salivary Gland Cancer" .. etc, and a patient may have one or more cancer codes entered.

Ingestion files are configured as follows:

type

coding_name

is_sparse_coding

is_multi_select

(coding.csv) parent_code

integer

<provided>

yes

<provided for child values>

String

A free-form string without special values (other than NULL). An example is UUID or Special Instructions.

Ingestion files are configured as follows:

type

coding_name

is_sparse_coding

is_multi_select

(coding.csv) parent_code

string

The following formats are supported for String

  • any string

  • for quote escaping use "". To get <the "quote" phrase>, use <"the ""quote"" phrase">

String Categorical

A single-choice value (string) from a controlled vocabulary of possible options (or NULL), originally encoded as string. An example is T-Shirt Size where "S" means "Small"

Ingestion files are configured as follows:

type

coding_name

is_sparse_coding

is_multi_select

(coding.csv) parent_code

string

<provided>

String Categorical supports the same formats as the String field

String Categorical Hierarchical

A single-choice value (string) from a controlled vocabulary of possible options (or NULL) that are organized in a hierarchy, originally encoded as string. An example is State of Residency where a value of "CA" means "California" and a value of "OR" means "Oregon" and both values have a parent of "US" that means "United States of America".

Ingestion files are configured as follows:

type

coding_name

is_sparse_coding

is_multi_select

(coding.csv) parent_code

string

<provided>

<provided for child values>

String Categorical Multi-select

A multiple-choice value (string) from a controlled vocabulary of possible options (or NULL), originally encoded as string. An example is Primary Diagnosis where values are encoded to match ICD10 diagnostic codes.

Ingestion files are configured as follows:

type

coding_name

is_sparse_coding

is_multi_select

(coding.csv) parent_code

string

<provided>

yes

String Categorical Multi-Select Hierarchical

A multiple-choice value (string) from a controlled vocabulary of possible options (or NULL) that are organized in a hierarchy, originally encoded as string. An example is Secondary Diagnosis where an entry may have one or more values encoded to match .

Ingestion files are configured as follows:

type

coding_name

is_sparse_coding

is_multi_select

(coding.csv) parent_code

string

<provided>

yes

<provided for child values>

String Categorical Sparse

A single-choice value (string) from a controlled vocabulary of possible options (originally encoded as string) or a write-in value (or NULL). Most values are expected to be from the controlled vocabulary. An example is Prescribed Medication where each entry is a single item from a list of RXNORM medications where "RX5640" means "Ibuprofen" or other standard medication codes, but a value may be written in if the medication is not available as an option.

Ingestion files are configured as follows:

type

coding_name

is_sparse_coding

is_multi_select

(coding.csv) parent_code

string

<provided>

yes

String Categorical Sparse Hierarchical

A single-choice value (string) from a controlled vocabulary of possible options that are organized in a hierarchy (originally encoded as string) or a write-in value (or NULL). Most values are expected to be from the controlled vocabulary. An example is Previous Diagnostic Codes ICD-10 where the code "D03" has meaning "Melanoma in situ", and the code "D03.0" has meaning "D03.0 Melanoma in situ of lip". The code "D03.0" is hierarchically situated under "D03", or any other free-form string that is not part of ICD10 like "Other trauma".

Ingestion files are configured as follows:

type

coding_name

is_sparse_coding

is_multi_select

(coding.csv) parent_code

string

<provided>

yes

<provided for child values>

Last updated

Was this helpful?