CMS Data Element Library - FHIR Implementation Guide

CMS Data Element Library - FHIR Implementation Guide - Local Development build (v0.0.1). See the Directory of published versions

Questionnaire Resource

Each questionnaire resource represents a single subset of an assessment. The sections and questions will be represented as items within the questionnaire. Only active questions are migrated from the DEL.

Example: Hospice Item Set version 1.00.0 has two subsets - one for admission and one for discharge. This will result in two questionnaire resources: HIS-HA-1.00.0 and HIS-HD-1.00.0.

Section Mapping

FHIR Field DEL Field(s) Notes
id asmt.asmt_shrt_name
asmt_sbst_rfrnc.asmt_sbst_shrt_name
asmt_sbst_rfrnc.asmt_sbst_shrt_name
Fields are joined using a dash (-) in the format {asmt_shrt_name}-{asmt_sbst_rfrnc.asmt_sbst_shrt_name}-{asmt_vrsn_id}. Example: LCDS-1.01.
name asmt.asmt_shrt_name All characters except letters and numbers are removed.
title asmt.asmt_name
version asmt.asmt_vrsn_id
status asmt_vrsn.asmt_stus_id If value is 1 then "active".
If value is 4 then "retired".
All others are "draft".
date asmt.creat_ts
publisher org.org_name
description asmt.asmt_desc
effectivePeriod.start asmt_vrsn.efctv_strt_dt
effectivePeriod.end asmt_vrsn.efctv_end_dt Only populated if field value is not null.
approvalDate asmt_vrsn.pblctn_dt Only populated if field value is not null.
identifier[0].system http://del.cms.gov Hard-coded to value "http://del.cms.gov".
identifier[0].use official Hard-coded to value "official".
identifier[0].value asmt.asmt_name
code[0].system http://loinc.org Hard-coded to value "http://loinc.org".
Only populated if the assessment has a LOINC code.
code[0].code hit_asmt_map.hit_asmt_cd Only populated if the assessment has a LOINC code.
code[0].display hit_asmt_map.asmt_map_txt Only populated if the assessment has a LOINC code.
item[] Populated with list of questions or list of sections.

Question Mapping

Questions may be nested within a section or within parent questions.

Questions with a type of "choice" and "open-choice" will have answerOption array populated with a list of available options. This list may include DEL and/or LOINC code options. For example, the following answerOption values may be present on a question. Both represent the same answer in a different code system.

{
    "valueCoding": {
        "system": "http://del.cms.gov",
        "code": "1",
        "display": "Nursing home (SNF/NF)"
    }
},
{
    "valueCoding": {
        "system": "http://loinc.org",
        "code": "LA10882-1",
        "display": "Nursing home (SNF/NF)"
    }
},
FHIR Field DEL Field(s) Notes
item[].linkId asmt_sect_rfrnc.asmt_sect_id Prefixed with a string in the format Section-${asmt_sect_id}
item[].text asmt_sect_rfrnc.asmt_sect_name
item[].type group Hard-coded to value "group".
item[].readOnly true Hard-coded to value "true".
item[].code[0].system http://loinc.org Hard-coded to value "http://loinc.org".
Only populated if the section has a LOINC code.
item[].code[0].code hit_sbst_sect_rlp.hit_sbst_sect_cd Only populated if the section has a LOINC code.
item[].code[0].display hit_sbst_sect_rlp.sbst_sect_map_txt Only populated if the section has a LOINC code.
item[].item[] Populated with list of questions or list of sub-sections.














FHIR Field DEL Field(s) Notes
item[].linkId asmt_sect_rfrnc.asmt_sect_id
data_ele_qstn.qstn_label_name
Prefixed with a string in the format Section-${asmt_sect_id}/${qstn_label_name} All characters except letters and numbers are removed from qstn_label_name.
item[].prefix data_ele_qstn.qstn_label_name All characters except letters and numbers are removed from qstn_label_name.
item[].text data_ele_qstn.qstn_txt
item[].type data_ele_rspns.rspns_dtype_name If this is a "parent" question, then "group".
If value is "character" or "integer" with options, then "choice".
If value is "character" without options then "text".
If value is "number" without options then "integer".
If value is "date" then "open-choice".
item[].readOnly data_ele_rspns.rspns_dtype_name If field is a group then "true".
Otherwise "false".
item[].repeats data_ele_rspns.rspns_type_name If value is checklist then "true".
Otherwise "false".
item[].maxLength Populated with list of questions.
item[].code[0].system http://loinc.org Hard-coded to value "http://loinc.org".
Only populated if the question has a LOINC code.
item[].code[0].code hit_qstn_map.hit_qstn_cd Only populated if the question has a LOINC code.
item[].code[0].display hit_qstn_map.qstn_map_txt Only populated if the question has a LOINC code.
DEL Answer
answerOption[].valueCoding.code
data_ele_rspns_val.rspns_val_cd Only populated for "choice" and "open-choice" questions.
DEL Answer
answerOption[].valueCoding.display
data_ele_rspns_val.rspns_val_txt Only populated for "choice" and "open-choice" questions.
LOINC Answer
answerOption[].valueCoding.code
hit_rspns_val_map.hit_rspns_cd Only populated for "choice" and "open-choice" questions.
Only populated if the response has a LOINC code.
LOINC Answer
answerOption[].valueCoding.display
hit_rspns_val_map.rspns_val_std_map_txt Only populated for "choice" and "open-choice" questions.
Only populated if the response has a LOINC code.
item[].item[] Populated with list of sub-questions. Will not be present if there are no sub-questions.