{ "description": "Indicates how questions within the questionnaire should be presented to the end-user. Specifically, differentiates whether the questions should be displayed one-at-a-time with no ability to adjust prior entries; one-at-a-time or continuously expanding where all questions up to the current question can be looked at and edited, or random, where all questions can be seen and the questions can be filled out in any order desired.\\n\\nWhen the entryMode is one that will prohibit the user from going back to edit preceding questions, the form filler must ensure that the answer meets all validation constraints (cardinality, length, etc.) prior to allowing the user to progress to subsequent items. However, when the entryMode allows editing prior items, then form fillers SHOULD allow a user to move on and answer subsequent items, with the recognition that they'll eventually have to go back to make corrections before the QuestionnaireResponse can transition to a status of 'complete'.\\n\\nNote: if the only objective is to ensure that certain future questions/groups aren't turned on until/unless specific previous items are satisfactorily completed, this should be accomplished using [enableWhen](behavior.html#enableWhen) or [enableWhenExpression](behavior.html#enableWhenExpression).", "_filename": "StructureDefinition-sdc-questionnaire-entryMode.json", "package_name": "hl7.fhir.uv.sdc", "date": "2024-12-17T01:55:34+00:00", "derivation": "constraint", "publisher": "HL7 International / FHIR Infrastructure", "fhirVersion": "4.0.1", "jurisdiction": [ { "coding": [ { "code": "001", "system": "http://unstats.un.org/unsd/methods/m49/m49.htm", "display": "World" } ] } ], "purpose": "Some instruments need to prevent editing of previous answers once subsequent answers are revealed.", "name": "EntryMode", "mapping": [ { "uri": "http://hl7.org/v3", "name": "RIM Mapping", "identity": "rim" } ], "abstract": false, "type": "Extension", "experimental": null, "resourceType": "StructureDefinition", "title": "Entry mode", "package_version": "4.0.0-ballot", "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-wg", "valueCode": "fhir" }, { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fmm", "valueInteger": 4, "_valueInteger": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-conformance-derivedFrom", "valueCanonical": "http://hl7.org/fhir/uv/sdc/ImplementationGuide/hl7.fhir.uv.sdc" } ] } }, { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-standards-status", "valueCode": "trial-use", "_valueCode": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-conformance-derivedFrom", "valueCanonical": "http://hl7.org/fhir/uv/sdc/ImplementationGuide/hl7.fhir.uv.sdc" } ] } } ], "snapshot": { "element": [ { "constraint": [ { "key": "ele-1", "human": "All FHIR elements must have a @value or children", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element", "severity": "error", "expression": "hasValue() or (children().count() > id.count())" }, { "key": "ext-1", "human": "Must have either extensions or value[x], not both", "xpath": "exists(f:extension)!=exists(f:*[starts-with(local-name(.), 'value')])", "source": "http://hl7.org/fhir/StructureDefinition/Extension", "severity": "error", "expression": "extension.exists() != value.exists()" } ], "path": "Extension", "min": 0, "definition": "Indicates how questions within the questionnaire should be presented to the end-user. Specifically, differentiates whether the questions should be displayed one-at-a-time with no ability to adjust prior entries; one-at-a-time or continuously expanding where all questions up to the current question can be looked at and edited, or random, where all questions can be seen and the questions can be filled out in any order desired.", "isModifier": false, "short": "sequential | prior-edit | random", "max": "1", "id": "Extension", "condition": [ "ele-1" ], "comment": "The prior-edit functionality can be accomplished by adding questions to the screen as each subsequent question is answered (resulting in all questions being displayed in a single screen) or with a view that shows only one question at a time but allows backward navigation to view and/or edit prior answers.", "base": { "max": "*", "min": 0, "path": "Extension" } }, { "path": "Extension.id", "min": 0, "definition": "Unique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.", "isModifier": false, "short": "Unique id for inter-element referencing", "mapping": [ { "map": "n/a", "identity": "rim" } ], "type": [ { "code": "http://hl7.org/fhirpath/System.String", "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "string" } ] } ], "representation": [ "xmlAttr" ], "max": "1", "id": "Extension.id", "base": { "max": "1", "min": 0, "path": "Element.id" }, "isSummary": false }, { "constraint": [ { "key": "ele-1", "human": "All FHIR elements must have a @value or children", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element", "severity": "error", "expression": "hasValue() or (children().count() > id.count())" }, { "key": "ext-1", "human": "Must have either extensions or value[x], not both", "xpath": "exists(f:extension)!=exists(f:*[starts-with(local-name(.), \"value\")])", "source": "http://hl7.org/fhir/StructureDefinition/Extension", "severity": "error", "expression": "extension.exists() != value.exists()" } ], "path": "Extension.extension", "min": 0, "definition": "An Extension", "isModifier": false, "short": "Extension", "slicing": { "rules": "open", "description": "Extensions are always sliced by (at least) url", "discriminator": [ { "path": "url", "type": "value" } ] }, "type": [ { "code": "Extension" } ], "max": "0", "id": "Extension.extension", "base": { "max": "*", "min": 0, "path": "Element.extension" }, "isSummary": false }, { "path": "Extension.url", "min": 1, "definition": "Source of the definition for the extension code - a logical name or a URL.", "isModifier": false, "short": "identifies the meaning of the extension", "fixedUri": "http://hl7.org/fhir/uv/sdc/StructureDefinition/sdc-questionnaire-entryMode", "mapping": [ { "map": "N/A", "identity": "rim" } ], "type": [ { "code": "http://hl7.org/fhirpath/System.String", "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "uri" } ] } ], "representation": [ "xmlAttr" ], "max": "1", "id": "Extension.url", "comment": "The definition may point directly to a computable or human-readable definition of the extensibility codes, or it may be a logical URI as declared in some other specification. The definition SHALL be a URI for the Structure Definition defining the extension.", "base": { "max": "1", "min": 1, "path": "Extension.url" }, "isSummary": false }, { "constraint": [ { "key": "ele-1", "human": "All FHIR elements must have a @value or children", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element", "severity": "error", "expression": "hasValue() or (children().count() > id.count())" } ], "path": "Extension.value[x]", "min": 0, "definition": "Value of extension - must be one of a constrained set of the data types (see [Extensibility](http://hl7.org/fhir/R4/extensibility.html) for a list).", "isModifier": false, "short": "Value of extension", "mapping": [ { "map": "N/A", "identity": "rim" } ], "type": [ { "code": "code" } ], "binding": { "strength": "required", "valueSet": "http://hl7.org/fhir/uv/sdc/ValueSet/entryMode", "description": "Entry modes when completing a questionnaire" }, "max": "1", "id": "Extension.value[x]", "base": { "max": "1", "min": 0, "path": "Extension.value[x]" }, "isSummary": false } ] }, "status": "active", "id": "4569547a-f778-4ca1-ab20-1f1702942ca2", "kind": "complex-type", "url": "http://hl7.org/fhir/uv/sdc/StructureDefinition/sdc-questionnaire-entryMode", "identifier": [ { "value": "urn:oid:2.16.840.1.113883.4.642.40.17.42.24", "system": "urn:ietf:rfc:3986" } ], "context": [ { "type": "element", "expression": "Questionnaire" } ], "version": "4.0.0-ballot", "differential": { "element": [ { "id": "Extension", "max": "1", "path": "Extension", "short": "sequential | prior-edit | random", "comment": "The prior-edit functionality can be accomplished by adding questions to the screen as each subsequent question is answered (resulting in all questions being displayed in a single screen) or with a view that shows only one question at a time but allows backward navigation to view and/or edit prior answers.", "definition": "Indicates how questions within the questionnaire should be presented to the end-user. Specifically, differentiates whether the questions should be displayed one-at-a-time with no ability to adjust prior entries; one-at-a-time or continuously expanding where all questions up to the current question can be looked at and edited, or random, where all questions can be seen and the questions can be filled out in any order desired." }, { "id": "Extension.extension", "max": "0", "path": "Extension.extension" }, { "id": "Extension.url", "path": "Extension.url", "fixedUri": "http://hl7.org/fhir/uv/sdc/StructureDefinition/sdc-questionnaire-entryMode" }, { "id": "Extension.value[x]", "path": "Extension.value[x]", "type": [ { "code": "code" } ], "binding": { "strength": "required", "valueSet": "http://hl7.org/fhir/uv/sdc/ValueSet/entryMode", "description": "Entry modes when completing a questionnaire" } } ] }, "contact": [ { "name": "HL7 International / FHIR Infrastructure", "telecom": [ { "value": "http://www.hl7.org/Special/committees/fiwg", "system": "url" } ] }, { "telecom": [ { "value": "http://www.hl7.org/Special/committees/fiwg", "system": "url" } ] } ], "baseDefinition": "http://hl7.org/fhir/StructureDefinition/Extension" }