Structured Data Capture, published by HL7 International / FHIR Infrastructure. This guide is not an authorized publication; it is the continuous build for version 3.0.0 built by the FHIR (HL7® FHIR® Standard) CI Build. This version is based on the current content of https://github.com/HL7/sdc/ and changes regularly. See the Directory of published versions
Official URL: http://hl7.org/fhir/uv/sdc/StructureDefinition/sdc-usagecontext | Version: 3.0.0 | |||
Standards status: Trial-use | Maturity Level: 3 | Computable Name: SDCUsageContext |
Constraints on the codes and values of UsageContext to help ensure consistent usage in SDC Questionnaires
The UsageContext data type allows categorizing artifacts in a wide variety of ways, but doesn't provide much guidance one what aspects should be supported, what data types are relevant to which types of context, or what value sets are appropriate for coded contexts. This profile tightens down the data type to reflect expectations for use in Questionnaire registries.
Usage:
Description of Profiles, Differentials, Snapshots and how the different presentations work.
This structure is derived from UsageContext
Name | Flags | Card. | Type | Description & Constraints |
---|---|---|---|---|
UsageContext | SC | 0..* | UsageContext | Describes the context of use for a conformance or knowledge resource sdc-uc-1: If code is gender, focus, user, venue or species, value must be CodeableConcept. If code is age, value must be Range. If code is workflow, task or program, value must be CodeableConcept or Reference |
code | S | 1..1 | Coding | Type of context being specified |
Slices for value[x] | S | 1..1 | CodeableConcept, Quantity, Range, Reference(PlanDefinition | ResearchStudy | InsurancePlan | HealthcareService | Group | Location | Organization) | Value that defines the context Slice: Unordered, Open by type:$this |
value[x]:valueCodeableConcept | S | 0..1 | CodeableConcept | Value that defines the context |
coding | S | 0..* | Coding | Code defined by a terminology system |
system | S | 0..1 | uri | Identity of the terminology system |
code | S | 0..1 | code | Symbol in syntax defined by the system |
value[x]:valueRange | S | 0..1 | Range | Value that defines the context |
low | S | 0..1 | SimpleQuantity | Low limit |
high | S | 0..1 | SimpleQuantity | High limit |
Documentation for this format |
Id | Grade | Path(s) | Details | Requirements |
sdc-uc-1 | error | UsageContext | If code is gender, focus, user, venue or species, value must be CodeableConcept. If code is age, value must be Range. If code is workflow, task or program, value must be CodeableConcept or Reference : code.system!='http://terminology.hl7.org/CodeSystem/usage-context-type' or (((code.code='gender' or code.code='focus' or code.code='user' or code.code='venue' or code.code='species') implies value.exists() and value is CodeableConcept) and (code.code='age' implies value.exists() and value is Range) and ((code.code='workflow' or code.code='task' or code.code='program') implies (value.exists() and (value is CodeableConcept or value is Reference)))) |
Name | Flags | Card. | Type | Description & Constraints |
---|---|---|---|---|
UsageContext | SC | 0..* | UsageContext | Describes the context of use for a conformance or knowledge resource sdc-uc-1: If code is gender, focus, user, venue or species, value must be CodeableConcept. If code is age, value must be Range. If code is workflow, task or program, value must be CodeableConcept or Reference |
code | SΣ | 1..1 | Coding | Type of context being specified Binding: UsageContextType (extensible): A code that specifies a type of context being specified by a usage context. |
Slices for value[x] | SΣ | 1..1 | Value that defines the context Slice: Unordered, Open by type:$this Binding: Context of Use ValueSet (example): A code that defines the specific value for the context being specified. | |
valueCodeableConcept | CodeableConcept | |||
valueQuantity | Quantity | |||
valueRange | Range | |||
valueReference | Reference(PlanDefinition | ResearchStudy | InsurancePlan | HealthcareService | Group | Location | Organization) | |||
value[x]:valueCodeableConcept | SΣ | 0..1 | CodeableConcept | Value that defines the context Binding: Context of Use ValueSet (example): A code that defines the specific value for the context being specified. |
coding | SΣ | 0..* | Coding | Code defined by a terminology system |
system | SΣ | 0..1 | uri | Identity of the terminology system |
code | SΣ | 0..1 | code | Symbol in syntax defined by the system |
value[x]:valueRange | SΣ | 0..1 | Range | Value that defines the context |
low | SΣ | 0..1 | SimpleQuantity | Low limit |
high | SΣ | 0..1 | SimpleQuantity | High limit |
Documentation for this format |
Path | Conformance | ValueSet |
UsageContext.code | extensible | UsageContextType |
UsageContext.value[x] | example | Context of Use ValueSet |
UsageContext.value[x]:valueCodeableConcept | example | Context of Use ValueSet |
Id | Grade | Path(s) | Details | Requirements |
sdc-uc-1 | error | UsageContext | If code is gender, focus, user, venue or species, value must be CodeableConcept. If code is age, value must be Range. If code is workflow, task or program, value must be CodeableConcept or Reference : code.system!='http://terminology.hl7.org/CodeSystem/usage-context-type' or (((code.code='gender' or code.code='focus' or code.code='user' or code.code='venue' or code.code='species') implies value.exists() and value is CodeableConcept) and (code.code='age' implies value.exists() and value is Range) and ((code.code='workflow' or code.code='task' or code.code='program') implies (value.exists() and (value is CodeableConcept or value is Reference)))) |
Name | Flags | Card. | Type | Description & Constraints |
---|---|---|---|---|
UsageContext | SC | 0..* | UsageContext | Describes the context of use for a conformance or knowledge resource sdc-uc-1: If code is gender, focus, user, venue or species, value must be CodeableConcept. If code is age, value must be Range. If code is workflow, task or program, value must be CodeableConcept or Reference |
id | 0..1 | string | Unique id for inter-element referencing | |
extension | 0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url | |
code | SΣ | 1..1 | Coding | Type of context being specified Binding: UsageContextType (extensible): A code that specifies a type of context being specified by a usage context. |
Slices for value[x] | SΣ | 1..1 | Value that defines the context Slice: Unordered, Open by type:$this Binding: Context of Use ValueSet (example): A code that defines the specific value for the context being specified. | |
valueCodeableConcept | CodeableConcept | |||
valueQuantity | Quantity | |||
valueRange | Range | |||
valueReference | Reference(PlanDefinition | ResearchStudy | InsurancePlan | HealthcareService | Group | Location | Organization) | |||
value[x]:valueCodeableConcept | SΣ | 0..1 | CodeableConcept | Value that defines the context Binding: Context of Use ValueSet (example): A code that defines the specific value for the context being specified. |
id | 0..1 | string | Unique id for inter-element referencing | |
extension | 0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url | |
coding | SΣ | 0..* | Coding | Code defined by a terminology system |
id | 0..1 | string | Unique id for inter-element referencing | |
extension | 0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url | |
system | SΣ | 0..1 | uri | Identity of the terminology system |
version | Σ | 0..1 | string | Version of the system - if relevant |
code | SΣ | 0..1 | code | Symbol in syntax defined by the system |
display | Σ | 0..1 | string | Representation defined by the system |
userSelected | Σ | 0..1 | boolean | If this coding was chosen directly by the user |
text | Σ | 0..1 | string | Plain text representation of the concept |
value[x]:valueRange | SΣ | 0..1 | Range | Value that defines the context |
id | 0..1 | string | Unique id for inter-element referencing | |
extension | 0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url | |
low | SΣ | 0..1 | SimpleQuantity | Low limit |
high | SΣ | 0..1 | SimpleQuantity | High limit |
Documentation for this format |
Path | Conformance | ValueSet |
UsageContext.code | extensible | UsageContextType |
UsageContext.value[x] | example | Context of Use ValueSet |
UsageContext.value[x]:valueCodeableConcept | example | Context of Use ValueSet |
Id | Grade | Path(s) | Details | Requirements |
sdc-uc-1 | error | UsageContext | If code is gender, focus, user, venue or species, value must be CodeableConcept. If code is age, value must be Range. If code is workflow, task or program, value must be CodeableConcept or Reference : code.system!='http://terminology.hl7.org/CodeSystem/usage-context-type' or (((code.code='gender' or code.code='focus' or code.code='user' or code.code='venue' or code.code='species') implies value.exists() and value is CodeableConcept) and (code.code='age' implies value.exists() and value is Range) and ((code.code='workflow' or code.code='task' or code.code='program') implies (value.exists() and (value is CodeableConcept or value is Reference)))) |
This structure is derived from UsageContext
Differential View
This structure is derived from UsageContext
Name | Flags | Card. | Type | Description & Constraints |
---|---|---|---|---|
UsageContext | SC | 0..* | UsageContext | Describes the context of use for a conformance or knowledge resource sdc-uc-1: If code is gender, focus, user, venue or species, value must be CodeableConcept. If code is age, value must be Range. If code is workflow, task or program, value must be CodeableConcept or Reference |
code | S | 1..1 | Coding | Type of context being specified |
Slices for value[x] | S | 1..1 | CodeableConcept, Quantity, Range, Reference(PlanDefinition | ResearchStudy | InsurancePlan | HealthcareService | Group | Location | Organization) | Value that defines the context Slice: Unordered, Open by type:$this |
value[x]:valueCodeableConcept | S | 0..1 | CodeableConcept | Value that defines the context |
coding | S | 0..* | Coding | Code defined by a terminology system |
system | S | 0..1 | uri | Identity of the terminology system |
code | S | 0..1 | code | Symbol in syntax defined by the system |
value[x]:valueRange | S | 0..1 | Range | Value that defines the context |
low | S | 0..1 | SimpleQuantity | Low limit |
high | S | 0..1 | SimpleQuantity | High limit |
Documentation for this format |
Id | Grade | Path(s) | Details | Requirements |
sdc-uc-1 | error | UsageContext | If code is gender, focus, user, venue or species, value must be CodeableConcept. If code is age, value must be Range. If code is workflow, task or program, value must be CodeableConcept or Reference : code.system!='http://terminology.hl7.org/CodeSystem/usage-context-type' or (((code.code='gender' or code.code='focus' or code.code='user' or code.code='venue' or code.code='species') implies value.exists() and value is CodeableConcept) and (code.code='age' implies value.exists() and value is Range) and ((code.code='workflow' or code.code='task' or code.code='program') implies (value.exists() and (value is CodeableConcept or value is Reference)))) |
Key Elements View
Name | Flags | Card. | Type | Description & Constraints |
---|---|---|---|---|
UsageContext | SC | 0..* | UsageContext | Describes the context of use for a conformance or knowledge resource sdc-uc-1: If code is gender, focus, user, venue or species, value must be CodeableConcept. If code is age, value must be Range. If code is workflow, task or program, value must be CodeableConcept or Reference |
code | SΣ | 1..1 | Coding | Type of context being specified Binding: UsageContextType (extensible): A code that specifies a type of context being specified by a usage context. |
Slices for value[x] | SΣ | 1..1 | Value that defines the context Slice: Unordered, Open by type:$this Binding: Context of Use ValueSet (example): A code that defines the specific value for the context being specified. | |
valueCodeableConcept | CodeableConcept | |||
valueQuantity | Quantity | |||
valueRange | Range | |||
valueReference | Reference(PlanDefinition | ResearchStudy | InsurancePlan | HealthcareService | Group | Location | Organization) | |||
value[x]:valueCodeableConcept | SΣ | 0..1 | CodeableConcept | Value that defines the context Binding: Context of Use ValueSet (example): A code that defines the specific value for the context being specified. |
coding | SΣ | 0..* | Coding | Code defined by a terminology system |
system | SΣ | 0..1 | uri | Identity of the terminology system |
code | SΣ | 0..1 | code | Symbol in syntax defined by the system |
value[x]:valueRange | SΣ | 0..1 | Range | Value that defines the context |
low | SΣ | 0..1 | SimpleQuantity | Low limit |
high | SΣ | 0..1 | SimpleQuantity | High limit |
Documentation for this format |
Path | Conformance | ValueSet |
UsageContext.code | extensible | UsageContextType |
UsageContext.value[x] | example | Context of Use ValueSet |
UsageContext.value[x]:valueCodeableConcept | example | Context of Use ValueSet |
Id | Grade | Path(s) | Details | Requirements |
sdc-uc-1 | error | UsageContext | If code is gender, focus, user, venue or species, value must be CodeableConcept. If code is age, value must be Range. If code is workflow, task or program, value must be CodeableConcept or Reference : code.system!='http://terminology.hl7.org/CodeSystem/usage-context-type' or (((code.code='gender' or code.code='focus' or code.code='user' or code.code='venue' or code.code='species') implies value.exists() and value is CodeableConcept) and (code.code='age' implies value.exists() and value is Range) and ((code.code='workflow' or code.code='task' or code.code='program') implies (value.exists() and (value is CodeableConcept or value is Reference)))) |
Snapshot View
Name | Flags | Card. | Type | Description & Constraints |
---|---|---|---|---|
UsageContext | SC | 0..* | UsageContext | Describes the context of use for a conformance or knowledge resource sdc-uc-1: If code is gender, focus, user, venue or species, value must be CodeableConcept. If code is age, value must be Range. If code is workflow, task or program, value must be CodeableConcept or Reference |
id | 0..1 | string | Unique id for inter-element referencing | |
extension | 0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url | |
code | SΣ | 1..1 | Coding | Type of context being specified Binding: UsageContextType (extensible): A code that specifies a type of context being specified by a usage context. |
Slices for value[x] | SΣ | 1..1 | Value that defines the context Slice: Unordered, Open by type:$this Binding: Context of Use ValueSet (example): A code that defines the specific value for the context being specified. | |
valueCodeableConcept | CodeableConcept | |||
valueQuantity | Quantity | |||
valueRange | Range | |||
valueReference | Reference(PlanDefinition | ResearchStudy | InsurancePlan | HealthcareService | Group | Location | Organization) | |||
value[x]:valueCodeableConcept | SΣ | 0..1 | CodeableConcept | Value that defines the context Binding: Context of Use ValueSet (example): A code that defines the specific value for the context being specified. |
id | 0..1 | string | Unique id for inter-element referencing | |
extension | 0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url | |
coding | SΣ | 0..* | Coding | Code defined by a terminology system |
id | 0..1 | string | Unique id for inter-element referencing | |
extension | 0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url | |
system | SΣ | 0..1 | uri | Identity of the terminology system |
version | Σ | 0..1 | string | Version of the system - if relevant |
code | SΣ | 0..1 | code | Symbol in syntax defined by the system |
display | Σ | 0..1 | string | Representation defined by the system |
userSelected | Σ | 0..1 | boolean | If this coding was chosen directly by the user |
text | Σ | 0..1 | string | Plain text representation of the concept |
value[x]:valueRange | SΣ | 0..1 | Range | Value that defines the context |
id | 0..1 | string | Unique id for inter-element referencing | |
extension | 0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url | |
low | SΣ | 0..1 | SimpleQuantity | Low limit |
high | SΣ | 0..1 | SimpleQuantity | High limit |
Documentation for this format |
Path | Conformance | ValueSet |
UsageContext.code | extensible | UsageContextType |
UsageContext.value[x] | example | Context of Use ValueSet |
UsageContext.value[x]:valueCodeableConcept | example | Context of Use ValueSet |
Id | Grade | Path(s) | Details | Requirements |
sdc-uc-1 | error | UsageContext | If code is gender, focus, user, venue or species, value must be CodeableConcept. If code is age, value must be Range. If code is workflow, task or program, value must be CodeableConcept or Reference : code.system!='http://terminology.hl7.org/CodeSystem/usage-context-type' or (((code.code='gender' or code.code='focus' or code.code='user' or code.code='venue' or code.code='species') implies value.exists() and value is CodeableConcept) and (code.code='age' implies value.exists() and value is Range) and ((code.code='workflow' or code.code='task' or code.code='program') implies (value.exists() and (value is CodeableConcept or value is Reference)))) |
This structure is derived from UsageContext
Other representations of profile: CSV, Excel, Schematron