sdc-usagecontext
type: StructureDefinition
node role: treeRoot
id:
  v: sdc-usagecontext
language:
  v: en
text:
  status:
    v: extensions
  div:
    v: Generated Narrative: StructureDefinition sdc-usagecontext Name Flags Card. Type Description & Constraints<img src="[binary]" alt="doco" style="background-color: inherit"/> UsageContext SC 0..* UsageContext Describes the context of use for a conformance or knowledge resource Constraints: sdc-uc-1 #xD; code S 1..1 Coding Type of context being specified #xD; 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 #xD; value[x]:valueCodeableConcept S 0..1 CodeableConcept Value that defines the context #xD; coding S 0..* Coding Code defined by a terminology system #xD; system S 0..1 uri Identity of the terminology system #xD; code S 0..1 code Symbol in syntax defined by the system #xD; value[x]:valueRange S 0..1 Range Value that defines the context #xD; low S 0..1 SimpleQuantity(4.0.1) Low limit #xD; high S 0..1 SimpleQuantity(4.0.1) High limit #xD; <img src="[binary]" alt="doco" style="background-color: inherit"/> Documentation for this format
extension:
  url:
    v: http://hl7.org/fhir/StructureDefinition/structuredefinition-wg
    l: structuredefinition-wg
  value: Code
    v: fhir
extension:
  url:
    v: http://hl7.org/fhir/StructureDefinition/structuredefinition-fmm
    l: structuredefinition-fmm
  value: Integer
    v: 4
    extension:
      url:
        v: http://hl7.org/fhir/StructureDefinition/structuredefinition-conformance-derivedFrom
        l: structuredefinition-conformance-derivedFrom
      value: Canonical
        v: http://hl7.org/fhir/uv/sdc/ImplementationGuide/hl7.fhir.uv.sdc
        l: hl7.fhir.uv.sdc
extension:
  url:
    v: http://hl7.org/fhir/StructureDefinition/structuredefinition-standards-status
    l: structuredefinition-standards-status
  value: Code
    v: trial-use
    extension:
      url:
        v: http://hl7.org/fhir/StructureDefinition/structuredefinition-conformance-derivedFrom
        l: structuredefinition-conformance-derivedFrom
      value: Canonical
        v: http://hl7.org/fhir/uv/sdc/ImplementationGuide/hl7.fhir.uv.sdc
        l: hl7.fhir.uv.sdc
url:
  v: http://hl7.org/fhir/uv/sdc/StructureDefinition/sdc-usagecontext
  l: sdc-usagecontext
identifier:
  system:
    v: urn:ietf:rfc:3986
    l: 3986
  value:
    v: urn:oid:2.16.840.1.113883.4.642.40.17.42.69
version:
  v: 4.0.0
name:
  v: SDCUsageContext
title:
  v: SDC Usage Context
status:
  v: active
date:
  v: 2019-03-15T20:02:49+10:00
publisher:
  v: HL7 International / FHIR Infrastructure
contact:
  name:
    v: HL7 International / FHIR Infrastructure
  telecom:
    system:
      v: url
    value:
      v: http://www.hl7.org/Special/committees/fiwg
contact:
  telecom:
    system:
      v: url
    value:
      v: http://www.hl7.org/Special/committees/fiwg
description:
  v: Constraints on the codes and values of UsageContext to help ensure consistent usage in SDC Questionnaires
jurisdiction:
  coding:
    system:
      v: http://unstats.un.org/unsd/methods/m49/m49.htm
      l: m49.htm
    code:
      v: 001
    display:
      v: World
fhir version:
  v: 4.0.1
mapping:
  identity:
    v: rim
  uri:
    v: http://hl7.org/v3
    l: v3
  name:
    v: RIM Mapping
kind:
  v: complex-type
abstract:
  v: false
type:
  v: UsageContext
  l: UsageContext
base definition:
  v: http://hl7.org/fhir/StructureDefinition/UsageContext
  l: UsageContext
derivation:
  v: constraint
snapshot:
  extension:
    url:
      v: http://hl7.org/fhir/tools/StructureDefinition/snapshot-base-version
      l: snapshot-base-version
    value: String
      v: 4.0.1
  element:
    id:
      v: UsageContext
    path:
      v: UsageContext
    short:
      v: Describes the context of use for a conformance or knowledge resource
    definition:
      v: Specifies clinical/business/etc. metadata that can be used to retrieve, index and/or categorize an artifact. This metadata can either be specific to the applicable population (e.g., age category, DRG) or the specific context of care (e.g., venue, care setting, provider of care).
    min:
      v: 0
    max:
      v: *
    base:
      path:
        v: UsageContext
      min:
        v: 0
      max:
        v: *
    condition:
      v: ele-1
    constraint:
      key:
        v: ele-1
      severity:
        v: error
      human:
        v: All FHIR elements must have a @value or children
      expression:
        v: hasValue() or (children().count() > id.count())
      xpath:
        v: @value|f:*|h:div
      source:
        v: http://hl7.org/fhir/StructureDefinition/Element
        l: Element
    constraint:
      key:
        v: sdc-uc-1
      severity:
        v: error
      human:
        v: 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
      expression:
        v: 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))))
      xpath:
        v: not(f:code/:system='http://terminology.hl7.org/CodeSystem/usage-context-type') or ((not(f:code/f:code=('gender', 'focus', 'user', 'venue', 'species')) or exists(f:valueCodeableConcept) and (not(f:code/f:code='age') or exists(f:valueRange) and (not(f:code/f:code=('workflow', 'task', 'program')) or exists(f:valueCodeableConcept)or exists(f:valueReference))
      source:
        v: http://hl7.org/fhir/uv/sdc/StructureDefinition/sdc-usagecontext
        l: sdc-usagecontext
    must support:
      v: true
    is modifier:
      v: false
    mapping:
      identity:
        v: rim
      map:
        v: n/a
  element:
    id:
      v: UsageContext.id
    path:
      v: UsageContext.id
    representation:
      v: xmlAttr
    short:
      v: Unique id for inter-element referencing
    definition:
      v: Unique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.
    min:
      v: 0
    max:
      v: 1
    base:
      path:
        v: Element.id
      min:
        v: 0
      max:
        v: 1
    type:
      extension:
        value: Url
      code:
        v: http://hl7.org/fhirpath/System.String
        l: System.String

Url
v: string
l: string

v: false

v: false

identity:
  v: rim
map:
  v: n/a

id:
  v: UsageContext.extension
path:
  v: UsageContext.extension
slicing:
  discriminator:
    type:
      v: value
    path:
      v: url
  description:
    v: Extensions are always sliced by (at least) url
  rules:
    v: open
short:
  v: Additional content defined by implementations
definition:
  v: May be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.
comment:
  v: There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.
alias:
  v: extensions
alias:
  v: user content
min:
  v: 0
max:
  v: *
base:
  path:
    v: Element.extension
  min:
    v: 0
  max:
    v: *
type:
  code:
    v: Extension
    l: Extension
constraint:
  key:
    v: ele-1
  severity:
    v: error
  human:
    v: All FHIR elements must have a @value or children
  expression:
    v: hasValue() or (children().count() > id.count())
  xpath:
    v: @value|f:*|h:div
  source:
    v: http://hl7.org/fhir/StructureDefinition/Element
    l: Element
constraint:
  key:
    v: ext-1
  severity:
    v: error
  human:
    v: Must have either extensions or value[x], not both
  expression:
    v: extension.exists() != value.exists()
  xpath:
    v: exists(f:extension)!=exists(f:*[starts-with(local-name(.), "value")])
  source:
    v: http://hl7.org/fhir/StructureDefinition/Extension
    l: Extension
is modifier:
  v: false
is summary:
  v: false
mapping:
  identity:
    v: rim
  map:
    v: n/a

id:
  v: UsageContext.code
path:
  v: UsageContext.code
short:
  v: Type of context being specified
definition:
  v: A code that identifies the type of context being specified by this usage context.
min:
  v: 1
max:
  v: 1
base:
  path:
    v: UsageContext.code
  min:
    v: 1
  max:
    v: 1
type:
  code:
    v: Coding
    l: Coding
constraint:
  key:
    v: ele-1
  severity:
    v: error
  human:
    v: All FHIR elements must have a @value or children
  expression:
    v: hasValue() or (children().count() > id.count())
  xpath:
    v: @value|f:*|h:div
  source:
    v: http://hl7.org/fhir/StructureDefinition/Element
    l: Element
must support:
  v: true
is modifier:
  v: false
is summary:
  v: true
binding:
  extension:
    url:
      v: http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName
      l: elementdefinition-bindingName
    value: String
      v: UsageContextType
  strength:
    v: extensible
  description:
    v: A code that specifies a type of context being specified by a usage context.
  value set:
    v: http://hl7.org/fhir/ValueSet/usage-context-type|4.0.1
    l: http://hl7.org/fhir/ValueSet/usage-context-type

id:
  v: UsageContext.value[x]
path:
  v: UsageContext.value[x]
slicing:
  discriminator:
    type:
      v: type
    path:
      v: $this
  ordered:
    v: false
  rules:
    v: open
short:
  v: Value that defines the context
definition:
  v: A value that defines the context specified in this context of use. The interpretation of the value is defined by the code.
min:
  v: 1
max:
  v: 1
base:
  path:
    v: UsageContext.value[x]
  min:
    v: 1
  max:
    v: 1
type:
  code:
    v: CodeableConcept
    l: CodeableConcept
type:
  code:
    v: Quantity
    l: Quantity
type:
  code:
    v: Range
    l: Range
type:
  code:
    v: Reference
    l: Reference
  target profile:
    v: http://hl7.org/fhir/StructureDefinition/PlanDefinition|4.0.1
    l: http://hl7.org/fhir/StructureDefinition/PlanDefinition
  target profile:
    v: http://hl7.org/fhir/StructureDefinition/ResearchStudy|4.0.1
    l: http://hl7.org/fhir/StructureDefinition/ResearchStudy
  target profile:
    v: http://hl7.org/fhir/StructureDefinition/InsurancePlan|4.0.1
    l: http://hl7.org/fhir/StructureDefinition/InsurancePlan
  target profile:
    v: http://hl7.org/fhir/StructureDefinition/HealthcareService|4.0.1
    l: http://hl7.org/fhir/StructureDefinition/HealthcareService
  target profile:
    v: http://hl7.org/fhir/StructureDefinition/Group|4.0.1
    l: http://hl7.org/fhir/StructureDefinition/Group
  target profile:
    v: http://hl7.org/fhir/StructureDefinition/Location|4.0.1
    l: http://hl7.org/fhir/StructureDefinition/Location
  target profile:
    v: http://hl7.org/fhir/StructureDefinition/Organization|4.0.1
    l: http://hl7.org/fhir/StructureDefinition/Organization
constraint:
  key:
    v: ele-1
  severity:
    v: error
  human:
    v: All FHIR elements must have a @value or children
  expression:
    v: hasValue() or (children().count() > id.count())
  xpath:
    v: @value|f:*|h:div
  source:
    v: http://hl7.org/fhir/StructureDefinition/Element
    l: Element
must support:
  v: true
is modifier:
  v: false
is summary:
  v: true
binding:
  extension:
    url:
      v: http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName
      l: elementdefinition-bindingName
    value: String
      v: UsageContextValue
  strength:
    v: example
  description:
    v: A code that defines the specific value for the context being specified.
  value set:
    v: http://hl7.org/fhir/ValueSet/use-context|4.0.1
    l: http://hl7.org/fhir/ValueSet/use-context

id:
  v: UsageContext.value[x]:valueCodeableConcept
path:
  v: UsageContext.value[x]
slice name:
  v: valueCodeableConcept
short:
  v: Value that defines the context
definition:
  v: A value that defines the context specified in this context of use. The interpretation of the value is defined by the code.
min:
  v: 0
max:
  v: 1
base:
  path:
    v: UsageContext.value[x]
  min:
    v: 1
  max:
    v: 1
type:
  code:
    v: CodeableConcept
    l: CodeableConcept
constraint:
  key:
    v: ele-1
  severity:
    v: error
  human:
    v: All FHIR elements must have a @value or children
  expression:
    v: hasValue() or (children().count() > id.count())
  xpath:
    v: @value|f:*|h:div
  source:
    v: http://hl7.org/fhir/StructureDefinition/Element
    l: Element
must support:
  v: true
is modifier:
  v: false
is summary:
  v: true
binding:
  extension:
    url:
      v: http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName
      l: elementdefinition-bindingName
    value: String
      v: UsageContextValue
  strength:
    v: example
  description:
    v: A code that defines the specific value for the context being specified.
  value set:
    v: http://hl7.org/fhir/ValueSet/use-context|4.0.1
    l: http://hl7.org/fhir/ValueSet/use-context

id:
  v: UsageContext.value[x]:valueCodeableConcept.id
path:
  v: UsageContext.value[x].id
representation:
  v: xmlAttr
short:
  v: Unique id for inter-element referencing
definition:
  v: Unique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.
min:
  v: 0
max:
  v: 1
base:
  path:
    v: Element.id
  min:
    v: 0
  max:
    v: 1
type:
  extension:
    url:
      v: http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type
      l: structuredefinition-fhir-type
    value: Url
      v: string
      l: string
  code:
    v: http://hl7.org/fhirpath/System.String
    l: System.String
is modifier:
  v: false
is summary:
  v: false
mapping:
  identity:
    v: rim
  map:
    v: n/a

id:
  v: UsageContext.value[x]:valueCodeableConcept.extension
path:
  v: UsageContext.value[x].extension
slicing:
  discriminator:
    type:
      v: value
    path:
      v: url
  description:
    v: Extensions are always sliced by (at least) url
  rules:
    v: open
short:
  v: Additional content defined by implementations
definition:
  v: May be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.
comment:
  v: There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.
alias:
  v: extensions
alias:
  v: user content
min:
  v: 0
max:
  v: *
base:
  path:
    v: Element.extension
  min:
    v: 0
  max:
    v: *
type:
  code:
    v: Extension
    l: Extension
constraint:
  key:
    v: ele-1
  severity:
    v: error
  human:
    v: All FHIR elements must have a @value or children
  expression:
    v: hasValue() or (children().count() > id.count())
  xpath:
    v: @value|f:*|h:div
  source:
    v: http://hl7.org/fhir/StructureDefinition/Element
    l: Element
constraint:
  key:
    v: ext-1
  severity:
    v: error
  human:
    v: Must have either extensions or value[x], not both
  expression:
    v: extension.exists() != value.exists()
  xpath:
    v: exists(f:extension)!=exists(f:*[starts-with(local-name(.), "value")])
  source:
    v: http://hl7.org/fhir/StructureDefinition/Extension
    l: Extension
is modifier:
  v: false
is summary:
  v: false
mapping:
  identity:
    v: rim
  map:
    v: n/a

id:
  v: UsageContext.value[x]:valueCodeableConcept.coding
path:
  v: UsageContext.value[x].coding
short:
  v: Code defined by a terminology system
definition:
  v: A reference to a code defined by a terminology system.
comment:
  v: Codes may be defined very casually in enumerations, or code lists, up to very formal definitions such as SNOMED CT - see the HL7 v3 Core Principles for more information. Ordering of codings is undefined and SHALL NOT be used to infer meaning. Generally, at most only one of the coding values will be labeled as UserSelected = true.
requirements:
  v: Allows for alternative encodings within a code system, and translations to other code systems.
min:
  v: 0
max:
  v: *
base:
  path:
    v: CodeableConcept.coding
  min:
    v: 0
  max:
    v: *
type:
  code:
    v: Coding
    l: Coding
constraint:
  key:
    v: ele-1
  severity:
    v: error
  human:
    v: All FHIR elements must have a @value or children
  expression:
    v: hasValue() or (children().count() > id.count())
  xpath:
    v: @value|f:*|h:div
  source:
    v: http://hl7.org/fhir/StructureDefinition/Element
    l: Element
must support:
  v: true
is modifier:
  v: false
is summary:
  v: true
mapping:
  identity:
    v: v2
  map:
    v: C*E.1-8, C*E.10-22
mapping:
  identity:
    v: rim
  map:
    v: union(., ./translation)
mapping:
  identity:
    v: orim
  map:
    v: fhir:CodeableConcept.coding rdfs:subPropertyOf dt:CD.coding

id:
  v: UsageContext.value[x]:valueCodeableConcept.coding.id
path:
  v: UsageContext.value[x].coding.id
representation:
  v: xmlAttr
short:
  v: Unique id for inter-element referencing
definition:
  v: Unique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.
min:
  v: 0
max:
  v: 1
base:
  path:
    v: Element.id
  min:
    v: 0
  max:
    v: 1
type:
  extension:
    url:
      v: http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type
      l: structuredefinition-fhir-type
    value: Url
      v: string
      l: string
  code:
    v: http://hl7.org/fhirpath/System.String
    l: System.String
is modifier:
  v: false
is summary:
  v: false
mapping:
  identity:
    v: rim
  map:
    v: n/a

id:
  v: UsageContext.value[x]:valueCodeableConcept.coding.extension
path:
  v: UsageContext.value[x].coding.extension
slicing:
  discriminator:
    type:
      v: value
    path:
      v: url
  description:
    v: Extensions are always sliced by (at least) url
  rules:
    v: open
short:
  v: Additional content defined by implementations
definition:
  v: May be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.
comment:
  v: There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.
alias:
  v: extensions
alias:
  v: user content
min:
  v: 0
max:
  v: *
base:
  path:
    v: Element.extension
  min:
    v: 0
  max:
    v: *
type:
  code:
    v: Extension
    l: Extension
constraint:
  key:
    v: ele-1
  severity:
    v: error
  human:
    v: All FHIR elements must have a @value or children
  expression:
    v: hasValue() or (children().count() > id.count())
  xpath:
    v: @value|f:*|h:div
  source:
    v: http://hl7.org/fhir/StructureDefinition/Element
    l: Element
constraint:
  key:
    v: ext-1
  severity:
    v: error
  human:
    v: Must have either extensions or value[x], not both
  expression:
    v: extension.exists() != value.exists()
  xpath:
    v: exists(f:extension)!=exists(f:*[starts-with(local-name(.), "value")])
  source:
    v: http://hl7.org/fhir/StructureDefinition/Extension
    l: Extension
is modifier:
  v: false
is summary:
  v: false
mapping:
  identity:
    v: rim
  map:
    v: n/a

id:
  v: UsageContext.value[x]:valueCodeableConcept.coding.system
path:
  v: UsageContext.value[x].coding.system
short:
  v: Identity of the terminology system
definition:
  v: The identification of the code system that defines the meaning of the symbol in the code.
comment:
  v: The URI may be an OID (urn:oid:...) or a UUID (urn:uuid:...). OIDs and UUIDs SHALL be references to the HL7 OID registry. Otherwise, the URI should come from HL7's list of FHIR defined special URIs or it should reference to some definition that establishes the system clearly and unambiguously.
requirements:
  v: Need to be unambiguous about the source of the definition of the symbol.
min:
  v: 0
max:
  v: 1
base:
  path:
    v: Coding.system
  min:
    v: 0
  max:
    v: 1
type:
  code:
    v: uri
    l: uri
constraint:
  key:
    v: ele-1
  severity:
    v: error
  human:
    v: All FHIR elements must have a @value or children
  expression:
    v: hasValue() or (children().count() > id.count())
  xpath:
    v: @value|f:*|h:div
  source:
    v: http://hl7.org/fhir/StructureDefinition/Element
    l: Element
must support:
  v: true
is modifier:
  v: false
is summary:
  v: true
mapping:
  identity:
    v: v2
  map:
    v: C*E.3
mapping:
  identity:
    v: rim
  map:
    v: ./codeSystem
mapping:
  identity:
    v: orim
  map:
    v: fhir:Coding.system rdfs:subPropertyOf dt:CDCoding.codeSystem

id:
  v: UsageContext.value[x]:valueCodeableConcept.coding.version
path:
  v: UsageContext.value[x].coding.version
short:
  v: Version of the system - if relevant
definition:
  v: The version of the code system which was used when choosing this code. Note that a well-maintained code system does not need the version reported, because the meaning of codes is consistent across versions. However this cannot consistently be assured, and when the meaning is not guaranteed to be consistent, the version SHOULD be exchanged.
comment:
  v: Where the terminology does not clearly define what string should be used to identify code system versions, the recommendation is to use the date (expressed in FHIR date format) on which that version was officially published as the version date.
min:
  v: 0
max:
  v: 1
base:
  path:
    v: Coding.version
  min:
    v: 0
  max:
    v: 1
type:
  code:
    v: string
    l: string
constraint:
  key:
    v: ele-1
  severity:
    v: error
  human:
    v: All FHIR elements must have a @value or children
  expression:
    v: hasValue() or (children().count() > id.count())
  xpath:
    v: @value|f:*|h:div
  source:
    v: http://hl7.org/fhir/StructureDefinition/Element
    l: Element
is modifier:
  v: false
is summary:
  v: true
mapping:
  identity:
    v: v2
  map:
    v: C*E.7
mapping:
  identity:
    v: rim
  map:
    v: ./codeSystemVersion
mapping:
  identity:
    v: orim
  map:
    v: fhir:Coding.version rdfs:subPropertyOf dt:CDCoding.codeSystemVersion

id:
  v: UsageContext.value[x]:valueCodeableConcept.coding.code
path:
  v: UsageContext.value[x].coding.code
short:
  v: Symbol in syntax defined by the system
definition:
  v: A symbol in syntax defined by the system. The symbol may be a predefined code or an expression in a syntax defined by the coding system (e.g. post-coordination).
requirements:
  v: Need to refer to a particular code in the system.
min:
  v: 0
max:
  v: 1
base:
  path:
    v: Coding.code
  min:
    v: 0
  max:
    v: 1
type:
  code:
    v: code
    l: code
constraint:
  key:
    v: ele-1
  severity:
    v: error
  human:
    v: All FHIR elements must have a @value or children
  expression:
    v: hasValue() or (children().count() > id.count())
  xpath:
    v: @value|f:*|h:div
  source:
    v: http://hl7.org/fhir/StructureDefinition/Element
    l: Element
must support:
  v: true
is modifier:
  v: false
is summary:
  v: true
mapping:
  identity:
    v: v2
  map:
    v: C*E.1
mapping:
  identity:
    v: rim
  map:
    v: ./code
mapping:
  identity:
    v: orim
  map:
    v: fhir:Coding.code rdfs:subPropertyOf dt:CDCoding.code

id:
  v: UsageContext.value[x]:valueCodeableConcept.coding.display
extension:
  url:
    v: http://hl7.org/fhir/StructureDefinition/elementdefinition-translatable
    l: elementdefinition-translatable
  value: Boolean
    v: true
path:
  v: UsageContext.value[x].coding.display
short:
  v: Representation defined by the system
definition:
  v: A representation of the meaning of the code in the system, following the rules of the system.
requirements:
  v: Need to be able to carry a human-readable meaning of the code for readers that do not know the system.
min:
  v: 0
max:
  v: 1
base:
  path:
    v: Coding.display
  min:
    v: 0
  max:
    v: 1
type:
  code:
    v: string
    l: string
constraint:
  key:
    v: ele-1
  severity:
    v: error
  human:
    v: All FHIR elements must have a @value or children
  expression:
    v: hasValue() or (children().count() > id.count())
  xpath:
    v: @value|f:*|h:div
  source:
    v: http://hl7.org/fhir/StructureDefinition/Element
    l: Element
is modifier:
  v: false
is summary:
  v: true
mapping:
  identity:
    v: v2
  map:
    v: C*E.2 - but note this is not well followed
mapping:
  identity:
    v: rim
  map:
    v: CV.displayName
mapping:
  identity:
    v: orim
  map:
    v: fhir:Coding.display rdfs:subPropertyOf dt:CDCoding.displayName

id:
  v: UsageContext.value[x]:valueCodeableConcept.coding.userSelected
path:
  v: UsageContext.value[x].coding.userSelected
short:
  v: If this coding was chosen directly by the user
definition:
  v: Indicates that this coding was chosen by a user directly - e.g. off a pick list of available items (codes or displays).
comment:
  v: Amongst a set of alternatives, a directly chosen code is the most appropriate starting point for new translations. There is some ambiguity about what exactly 'directly chosen' implies, and trading partner agreement may be needed to clarify the use of this element and its consequences more completely.
requirements:
  v: This has been identified as a clinical safety criterium - that this exact system/code pair was chosen explicitly, rather than inferred by the system based on some rules or language processing.
min:
  v: 0
max:
  v: 1
base:
  path:
    v: Coding.userSelected
  min:
    v: 0
  max:
    v: 1
type:
  code:
    v: boolean
    l: boolean
constraint:
  key:
    v: ele-1
  severity:
    v: error
  human:
    v: All FHIR elements must have a @value or children
  expression:
    v: hasValue() or (children().count() > id.count())
  xpath:
    v: @value|f:*|h:div
  source:
    v: http://hl7.org/fhir/StructureDefinition/Element
    l: Element
is modifier:
  v: false
is summary:
  v: true
mapping:
  identity:
    v: v2
  map:
    v: Sometimes implied by being first
mapping:
  identity:
    v: rim
  map:
    v: CD.codingRationale
mapping:
  identity:
    v: orim
  map:
    v: fhir:Coding.userSelected fhir:mapsTo dt:CDCoding.codingRationale. fhir:Coding.userSelected fhir:hasMap fhir:Coding.userSelected.map. fhir:Coding.userSelected.map a fhir:Map; fhir:target dt:CDCoding.codingRationale. fhir:Coding.userSelected\#true a [ fhir:source "true"; fhir:target dt:CDCoding.codingRationale\#O ]

id:
  v: UsageContext.value[x]:valueCodeableConcept.text
extension:
  url:
    v: http://hl7.org/fhir/StructureDefinition/elementdefinition-translatable
    l: elementdefinition-translatable
  value: Boolean
    v: true
path:
  v: UsageContext.value[x].text
short:
  v: Plain text representation of the concept
definition:
  v: A human language representation of the concept as seen/selected/uttered by the user who entered the data and/or which represents the intended meaning of the user.
comment:
  v: Very often the text is the same as a displayName of one of the codings.
requirements:
  v: The codes from the terminologies do not always capture the correct meaning with all the nuances of the human using them, or sometimes there is no appropriate code at all. In these cases, the text is used to capture the full meaning of the source.
min:
  v: 0
max:
  v: 1
base:
  path:
    v: CodeableConcept.text
  min:
    v: 0
  max:
    v: 1
type:
  code:
    v: string
    l: string
constraint:
  key:
    v: ele-1
  severity:
    v: error
  human:
    v: All FHIR elements must have a @value or children
  expression:
    v: hasValue() or (children().count() > id.count())
  xpath:
    v: @value|f:*|h:div
  source:
    v: http://hl7.org/fhir/StructureDefinition/Element
    l: Element
is modifier:
  v: false
is summary:
  v: true
mapping:
  identity:
    v: v2
  map:
    v: C*E.9. But note many systems use C*E.2 for this
mapping:
  identity:
    v: rim
  map:
    v: ./originalText[mediaType/code="text/plain"]/data
mapping:
  identity:
    v: orim
  map:
    v: fhir:CodeableConcept.text rdfs:subPropertyOf dt:CD.originalText

id:
  v: UsageContext.value[x]:valueRange
path:
  v: UsageContext.value[x]
slice name:
  v: valueRange
short:
  v: Value that defines the context
definition:
  v: A value that defines the context specified in this context of use. The interpretation of the value is defined by the code.
min:
  v: 0
max:
  v: 1
base:
  path:
    v: UsageContext.value[x]
  min:
    v: 1
  max:
    v: 1
type:
  code:
    v: Range
    l: Range
constraint:
  key:
    v: ele-1
  severity:
    v: error
  human:
    v: All FHIR elements must have a @value or children
  expression:
    v: hasValue() or (children().count() > id.count())
  xpath:
    v: @value|f:*|h:div
  source:
    v: http://hl7.org/fhir/StructureDefinition/Element
    l: Element
must support:
  v: true
is modifier:
  v: false
is summary:
  v: true

id:
  v: UsageContext.value[x]:valueRange.id
path:
  v: UsageContext.value[x].id
representation:
  v: xmlAttr
short:
  v: Unique id for inter-element referencing
definition:
  v: Unique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.
min:
  v: 0
max:
  v: 1
base:
  path:
    v: Element.id
  min:
    v: 0
  max:
    v: 1
type:
  extension:
    url:
      v: http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type
      l: structuredefinition-fhir-type
    value: Url
      v: string
      l: string
  code:
    v: http://hl7.org/fhirpath/System.String
    l: System.String
is modifier:
  v: false
is summary:
  v: false
mapping:
  identity:
    v: rim
  map:
    v: n/a

id:
  v: UsageContext.value[x]:valueRange.extension
path:
  v: UsageContext.value[x].extension
slicing:
  discriminator:
    type:
      v: value
    path:
      v: url
  description:
    v: Extensions are always sliced by (at least) url
  rules:
    v: open
short:
  v: Additional content defined by implementations
definition:
  v: May be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.
comment:
  v: There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.
alias:
  v: extensions
alias:
  v: user content
min:
  v: 0
max:
  v: *
base:
  path:
    v: Element.extension
  min:
    v: 0
  max:
    v: *
type:
  code:
    v: Extension
    l: Extension
constraint:
  key:
    v: ele-1
  severity:
    v: error
  human:
    v: All FHIR elements must have a @value or children
  expression:
    v: hasValue() or (children().count() > id.count())
  xpath:
    v: @value|f:*|h:div
  source:
    v: http://hl7.org/fhir/StructureDefinition/Element
    l: Element
constraint:
  key:
    v: ext-1
  severity:
    v: error
  human:
    v: Must have either extensions or value[x], not both
  expression:
    v: extension.exists() != value.exists()
  xpath:
    v: exists(f:extension)!=exists(f:*[starts-with(local-name(.), "value")])
  source:
    v: http://hl7.org/fhir/StructureDefinition/Extension
    l: Extension
is modifier:
  v: false
is summary:
  v: false
mapping:
  identity:
    v: rim
  map:
    v: n/a

id:
  v: UsageContext.value[x]:valueRange.low
path:
  v: UsageContext.value[x].low
short:
  v: Low limit
definition:
  v: The low limit. The boundary is inclusive.
comment:
  v: If the low element is missing, the low boundary is not known.
min:
  v: 0
max:
  v: 1
base:
  path:
    v: Range.low
  min:
    v: 0
  max:
    v: 1
type:
  code:
    v: Quantity
    l: Quantity
  profile:
    v: http://hl7.org/fhir/StructureDefinition/SimpleQuantity|4.0.1
    l: http://hl7.org/fhir/StructureDefinition/SimpleQuantity
constraint:
  key:
    v: ele-1
  severity:
    v: error
  human:
    v: All FHIR elements must have a @value or children
  expression:
    v: hasValue() or (children().count() > id.count())
  xpath:
    v: @value|f:*|h:div
  source:
    v: http://hl7.org/fhir/StructureDefinition/Element
    l: Element
must support:
  v: true
is modifier:
  v: false
is summary:
  v: true
mapping:
  identity:
    v: v2
  map:
    v: NR.1
mapping:
  identity:
    v: rim
  map:
    v: ./low

id:
  v: UsageContext.value[x]:valueRange.high
path:
  v: UsageContext.value[x].high
short:
  v: High limit
definition:
  v: The high limit. The boundary is inclusive.
comment:
  v: If the high element is missing, the high boundary is not known.
min:
  v: 0
max:
  v: 1
base:
  path:
    v: Range.high
  min:
    v: 0
  max:
    v: 1
type:
  code:
    v: Quantity
    l: Quantity
  profile:
    v: http://hl7.org/fhir/StructureDefinition/SimpleQuantity|4.0.1
    l: http://hl7.org/fhir/StructureDefinition/SimpleQuantity
constraint:
  key:
    v: ele-1
  severity:
    v: error
  human:
    v: All FHIR elements must have a @value or children
  expression:
    v: hasValue() or (children().count() > id.count())
  xpath:
    v: @value|f:*|h:div
  source:
    v: http://hl7.org/fhir/StructureDefinition/Element
    l: Element
must support:
  v: true
is modifier:
  v: false
is summary:
  v: true
mapping:
  identity:
    v: v2
  map:
    v: NR.2
mapping:
  identity:
    v: rim
  map:
    v: ./high

element:
  id:
    v: UsageContext
  path:
    v: UsageContext
  constraint:
    key:
      v: sdc-uc-1
    severity:
      v: error
    human:
      v: 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
    expression:
      v: 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))))
    xpath:
      v: not(f:code/:system='http://terminology.hl7.org/CodeSystem/usage-context-type') or ((not(f:code/f:code=('gender', 'focus', 'user', 'venue', 'species')) or exists(f:valueCodeableConcept) and (not(f:code/f:code='age') or exists(f:valueRange) and (not(f:code/f:code=('workflow', 'task', 'program')) or exists(f:valueCodeableConcept)or exists(f:valueReference))
    source:
      v: http://hl7.org/fhir/uv/sdc/StructureDefinition/sdc-usagecontext
      l: sdc-usagecontext
  must support:
    v: true
element:
  id:
    v: UsageContext.code
  path:
    v: UsageContext.code
  must support:
    v: true
element:
  id:
    v: UsageContext.value[x]
  path:
    v: UsageContext.value[x]
  slicing:
    discriminator:
      type:
        v: type
      path:
        v: $this
    ordered:
      v: false
    rules:
      v: open
  must support:
    v: true
element:
  id:
    v: UsageContext.value[x]:valueCodeableConcept
  path:
    v: UsageContext.value[x]
  slice name:
    v: valueCodeableConcept
  min:
    v: 0
  max:
    v: 1
  type:
    code:
      v: CodeableConcept
      l: CodeableConcept
  must support:
    v: true
element:
  id:
    v: UsageContext.value[x]:valueCodeableConcept.coding
  path:
    v: UsageContext.value[x].coding
  must support:
    v: true
element:
  id:
    v: UsageContext.value[x]:valueCodeableConcept.coding.system
  path:
    v: UsageContext.value[x].coding.system
  must support:
    v: true
element:
  id:
    v: UsageContext.value[x]:valueCodeableConcept.coding.code
  path:
    v: UsageContext.value[x].coding.code
  must support:
    v: true
element:
  id:
    v: UsageContext.value[x]:valueRange
  path:
    v: UsageContext.value[x]
  slice name:
    v: valueRange
  min:
    v: 0
  max:
    v: 1
  type:
    code:
      v: Range
      l: Range
  must support:
    v: true
element:
  id:
    v: UsageContext.value[x]:valueRange.low
  path:
    v: UsageContext.value[x].low
  must support:
    v: true
element:
  id:
    v: UsageContext.value[x]:valueRange.high
  path:
    v: UsageContext.value[x].high
  must support:
    v: true