Systems that support ODM Clinical Data Import will need to specify how they handle NullFlavors in ODM-XML documents. Systems that generate ODM Clinical Data Exports will need to specify whether or not they include Null Flavor information.
Null Flavor informative content
The clinical trials data collection process includes standardized practices for managing incomplete subject data. Most subject data is gathered through interactions with health care professionals though some is entered directly by humans subjects. HL7 has developed a standard set of Null Flavor codes represented in an ISO 21090 enumeration. Clinical study records extracted directly from healthcare records may encounter this coding.
NullFlavors are indicated in ODM Clinical Data through the use of a NullFlavor Annotation.
A NullFlavor Annotation is an ODM Annotation element with a Flag child element with a codelist reference. The referenced codelist defines the set of NullFlavors supported for the study. The Annotation element can be used at any level in the ODM clinical data hierarchy. For ODM V2, it means that it can be used with the StudyEventData, ItemGroupData or ItemData elements.
For studies that support collection of NullFlavor information, the ODM MetaDataVersion must include a CodeList to identify the set of NullFlavors that are allowed. For the use case where the study data will be sourced by electronic health records using FHIR resources, NullFlavors will be taken from the HL7 Version 3 Null Flavor Value set or a defining value subset,
When the value of a variable cannot be collected, the ItemData element will have the IsNull attribute set to "Yes" and an Annotation child element that provides the applicable NullValue Code.
When a StudyEvent identified in a data request or study workflow does not occur, a Null Value Annotation will be provided as a child element of the StudyEventData element. If a Form/Data Collection Instrument is skipped or has no values entered, the Null Value Annotation is provided as a child element of the ItemGroupData element.
http://build.fhir.org/ig/HL7/fhir-shorthand/reference.html#defining-value-sets
Examples
Example 1 Support for a pre-specified set of null flavors
The study metadata includes two CodeList elements with the list of support null flavor values. The first CodeList, Name="NullFlavorValueSubset" is the one referenced in the rest of the code blocks on this page. The second CodeList, Name="NullFlavorValueSubset2" is provided to illustrate a specific definition of the HL7 Null Flavor code "MSK" for a Blinded study.
The CodeListItem definitions provide the Null Flavor codes as the CodedValue attribute. The Decode provides a value that could be displayed on a CRF or in an analysis display, as intended to be used in the study.
Refer to the notes about the meaning of Decode under CodeListItem and Coding.
<MetaDataVersion OID="ODMV2.MDV.NF"> <CodeList OID="STUDY.CL.NullReasonCodelist" Name="NullFlavorValueSubset" DataType="text"> <CodeListItem CodedValue="MSK"> <Decode> <TranslatedText xml:lang="en">Masked</TranslatedText> </Decode> </CodeListItem> <CodeListItem CodedValue="NA"> <Decode> <TranslatedText>Not Applicable</TranslatedText> </Decode> </CodeListItem> <CodeListItem CodedValue="NAV"> <Decode> <TranslatedText>Temporarily Unavailable</TranslatedText> </Decode> </CodeListItem> <CodeListItem CodedValue="NI"> <Decode> <TranslatedText>No Data Present</TranslatedText> </Decode> </CodeListItem> <Coding Code="V3 Null Flavor Value Set" System="https://terminology.hl7.org/2.0.0/ValueSet-v3-NullFlavor.html" SystemName="v3.NullFlavor" SystemVersion="2018-08-12"/> </CodeList> <CodeList OID="STUDY.CL.NullReasonCodelist2" Name="NullFlavorValueSubset2" DataType="text"> <CodeListItem CodedValue="MSK"> <Decode> <TranslatedText xml:lang="en">Blinded</TranslatedText> </Decode> </CodeListItem> <Coding Code="V3 Null Flavor Value Set" System="https://terminology.hl7.org/2.0.0/ValueSet-v3-NullFlavor.html" SystemName="v3.NullFlavor" SystemVersion="2018-08-12"/> </CodeList> </MetaDataVersion>
In the ODM ClinicalData element, ItemData elements where IsNull is "Yes" include an Annotation element with a Flag element with the CodeListOID attribute set to "STUDY.CL.NullReasonCodelist", the OID of the NullFlavorValueSet codelist.
<ClinicalData StudyOID="ODMV2.NF.EX1.Study" MetaDataVersonOID="ODMV2.NF.EX1.MDV"> <SubjectData SubjectKey="001" TransactionType="Insert"> <StudyEventData StudyEventOID="vstBASE"> <ItemGroupData ItemGroupOID="sfrmDM"> <ItemData ItemOID="svarFHMarriage" IsNull="Yes"> <AuditRecord> <UserRef UserOID="system"/> <LocationRef LocationOID="CDISC"/> <DateTimeStamp>2008-03-17T19:21:58+00:00</DateTimeStamp> </AuditRecord> <Annotation SeqNum="67944"> <Flag><FlagValue CodeListOID="STUDY.CL.NullReasonCodelist">NA</FlagValue></Flag> </Annotation> </ItemData> </ItemGroupData> </StudyEventData> <StudyEventData StudyEventOID="vstWEEK1"> <ItemGroupData ItemGroupOID="sfmECG"> <AuditRecord> <UserRef UserOID="system"/> <LocationRef LocationOID="CDISC"/> <DateTimeStamp>2008-03-24T19:21:58+00:00</DateTimeStamp> </AuditRecord> <Annotation SeqNum="67944"> <Flag><FlagValue CodeListOID="STUDY.CL.NullReasonCodelist">MSK</FlagValue></Flag> </Annotation> </ItemGroupData> </StudyEventData> </SubjectData> </ClinicalData>
Example 2 Allow any values from HL7 Null Flavor Value Set
The CodeList definition uses an ExternalCodeList element to identify the dictionary and version. The Coding element provides the URI for the HL7 Null Flavor Value Set.
<MetaDataVersion OID="ODMV2.NF.EX2.MDV"> <!-- Study Event, ItemGroup and Item definitions not shown --> <CodeList OID="STUDY.CL.NullReasonCodelist" Name="NullFlavorValueSet" DataType="text"> <ExternalCodeList Dictionary="HL7 Null Flavor Value Set" Version="2018-08-12"/> <Coding Code="V3 Null Flavor Value Set" System="https://terminology.hl7.org/2.0.0/ValueSet-v3-NullFlavor.html" SystemName="v3.NullFlavor" SystemVersion="2018-08-12"/> </CodeList> </MetaDataVersion>
The ClinicalData element illustrates the use of Null Flavor Annotation for an ItemGroupData (form) where no clinical data is included; i.e, not present in the data. The Flag element within the Annotation provides the null value code NI, with a Display="NoInformation" in the HL7 definition. Note in this case there is no display value explicitly included in the study metadata definition.
The Annotation element appears following the AuditRecord element.
<ClinicalData StudyOID="ODMV2.NF.EX2.Study" MetaDataVersonOID="ODMV2.NF.EX2.MDV"> <SubjectData SubjectKey="002" TransactionType="Insert"> <StudyEventData StudyEventOID="vstWEEK3"> <ItemGroupData ItemGroupOID="sfrmLB-biomarker"> <AuditRecord> <UserRef UserOID="system"/> <LocationRef LocationOID="CDISC"/> <DateTimeStamp>2019-03-17T19:21:58+00:00</DateTimeStamp> </AuditRecord> <Annotation SeqNum="67944"> <Flag><FlagValue CodeListOID="STUDY.CL.NullReasonCodelist">NI</FlagValue></Flag> </Annotation> </ItemGroupData> </StudyEventData> </SubjectData> </ClinicalData>
References
V3 Null Flavor Value Set | https://terminology.hl7.org/2.0.0/ValueSet-v3-NullFlavor |
FSH for Code Subset Definitions | http://build.fhir.org/ig/HL7/fhir-shorthand/reference.html#defining-value-sets |