Skip to content

Form Template Field Mapping Extension

Canonical../StructureDefinition/nexus-form-template-field-mapping
Statusdraft · 1.26.0
BaseExtension (constraint)
ContextDocumentReference (element)
SourceFSH · JSON

Which fillable fields of a form template's file a chart value pre-fills. One rule per field: the field's name in the file, verbatim, and the chart value that fills it, coded from the form chart value vocabulary (patient.lastName, patient.birthDate.year, patient.address.city, ...). A form started from the template opens with each mapped field filled from the patient's chart and every value still editable; a field the mapping does not name, or whose chart value cannot be resolved, is left blank.

Invariants

Every rule in force on a conforming instance. This profile rows are stated here; inherited rows come from the base resource and are listed so that a constraint named on an element is findable. Invariant keys elsewhere on this page link into this table.

Key Source Severity On Rule
form-template-field-mapping-field-is-substantive this profile error Extension Every rule must name a non-empty fillable field -- an empty name satisfies the cardinality while binding nothing
extension('rule').all(extension('field').value.ofType(string) != '')
form-template-field-mapping-fields-are-distinct this profile error Extension A fillable field is mapped at most once within a fill template -- two rules naming the same field would leave which value wins to the reader
extension('rule').extension('field').value.ofType(string).isDistinct()
form-template-field-mapping-rule-has-one-value this profile error Extension Every rule carries exactly one of a chart value and a fixed value
extension('rule').all((extension('chartValue').exists() xor extension('staticValue').exists()))
form-template-field-mapping-template-names-are-distinct this profile error Extension Named fill templates carry distinct, non-empty names, none of them the default's
extension('template').extension('name').value.ofType(string).lower().isDistinct() and extension('template').all(extension('name').value.ofType(string).trim() != '' and extension('name').value.ofType(string).lower().trim() != 'default')
form-template-field-mapping-template-rules-are-well-formed this profile error Extension Within a named fill template, every rule names a non-empty field, carries exactly one of a chart value and a fixed value, and no field is mapped twice
extension('template').all(extension('rule').all(extension('field').value.ofType(string) != '' and (extension('chartValue').exists() xor extension('staticValue').exists())) and extension('rule').extension('field').value.ofType(string).isDistinct())
ele-1 inherited error Extension All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
ext-1 inherited error Extension Must have either extensions or value[x], not both
extension.exists() != value.exists()