Release 5 Ballot

This page is part of the FHIR Specification (v5.0.0-ballot: FHIR R5 Ballot Preview). The current version which supercedes this version is 5.0.0. For a full list of available versions, see the Directory of published versions

Extension: type-must-support

FHIR Infrastructure Work Group Maturity Level: 1InformativeUse Context: Any

Summary

Defining URL:http://hl7.org/fhir/StructureDefinition/elementdefinition-type-must-support
Version:5.0.0-ballot
Name:type-must-support
Title:null
Modifier:This extension is not a modifier extension
Status:draft
Definition:If true indicates that the specified type, profile or targetProfile must be supported by implementations.
Committee:FHIR Infrastructure Work Group

Status: draft. Extension maintained by: Health Level Seven, Inc. - FHIR Core WG

If true indicates that the specified type, profile or targetProfile must be supported by implementations.

Comment:

An element may be labelled as must support. This extension clarifies which types/profiles/targetProfiles are must-support. It has no meaning if the element itself is not must-support. If the element is labelled must-support, and none of the options are labelled as must support, then an application must support at least one of the possible options, but is not required to support all of them. Specific details on what it means to 'support' the specified profile will be defined either by the implementation guide, by the profile and/or in usage notes for the element holding the extension. If this extension is not declared on a mustSupport element, the presumption is that implementations need only support one of the potential types unless other documentation in the specification explicitly dictates otherwise.

Context of Use: Use on Element ID ElementDefinition.type, Element ID ElementDefinition.type.profile or Element ID ElementDefinition.type.targetProfile

Extension Content

Summary

NameFlagsCard.TypeDescription & Constraintsdoco
.. type-must-support0..1booleanURL = http://hl7.org/fhir/StructureDefinition/elementdefinition-type-must-support
type-must-support: If true indicates that the specified type, profile or targetProfile must be supported by implementations.


Use on Element ID ElementDefinition.type, Element ID ElementDefinition.type.profile or Element ID ElementDefinition.type.targetProfile

doco Documentation for this format

Full Structure

NameFlagsCard.TypeDescription & Constraintsdoco
.. extension0..1ExtensionURL = http://hl7.org/fhir/StructureDefinition/elementdefinition-type-must-support
type-must-support: If true indicates that the specified type, profile or targetProfile must be supported by implementations.


Use on Element ID ElementDefinition.type, Element ID ElementDefinition.type.profile or Element ID ElementDefinition.type.targetProfile
... extension 0..0
... url 1..1uri"http://hl7.org/fhir/StructureDefinition/elementdefinition-type-must-support"
... value[x] 1..1booleanValue of extension

doco Documentation for this format

XML Template

<!-- type-must-support -->doco

<extension xmlns="http://hl7.org/fhir"
     url="http://hl7.org/fhir/StructureDefinition/elementdefinition-type-must-support" >
  <!-- from Element: extension -->
 <valueBoolean value="[boolean]"/><!-- I 1..1 Value of extension -->
</extension>

JSON Template

{ // type-must-support
  // from Element: extension
    "extension" : [ //  sliced by value:url  in the specified order, Open ]
  // extension: Extension: Prohibited
    "url" : "http://hl7.org/fhir/StructureDefinition/elementdefinition-type-must-support", // R! 
    "valueBoolean" : <boolean> // I R! Value of extension
  }

Summary

NameFlagsCard.TypeDescription & Constraintsdoco
.. type-must-support0..1booleanURL = http://hl7.org/fhir/StructureDefinition/elementdefinition-type-must-support
type-must-support: If true indicates that the specified type, profile or targetProfile must be supported by implementations.


Use on Element ID ElementDefinition.type, Element ID ElementDefinition.type.profile or Element ID ElementDefinition.type.targetProfile

doco Documentation for this format

Full Structure

NameFlagsCard.TypeDescription & Constraintsdoco
.. extension0..1ExtensionURL = http://hl7.org/fhir/StructureDefinition/elementdefinition-type-must-support
type-must-support: If true indicates that the specified type, profile or targetProfile must be supported by implementations.


Use on Element ID ElementDefinition.type, Element ID ElementDefinition.type.profile or Element ID ElementDefinition.type.targetProfile
... extension 0..0
... url 1..1uri"http://hl7.org/fhir/StructureDefinition/elementdefinition-type-must-support"
... value[x] 1..1booleanValue of extension

doco Documentation for this format

XML Template

<!-- type-must-support -->doco

<extension xmlns="http://hl7.org/fhir"
     url="http://hl7.org/fhir/StructureDefinition/elementdefinition-type-must-support" >
  <!-- from Element: extension -->
 <valueBoolean value="[boolean]"/><!-- I 1..1 Value of extension -->
</extension>

JSON Template

{ // type-must-support
  // from Element: extension
    "extension" : [ //  sliced by value:url  in the specified order, Open ]
  // extension: Extension: Prohibited
    "url" : "http://hl7.org/fhir/StructureDefinition/elementdefinition-type-must-support", // R! 
    "valueBoolean" : <boolean> // I R! Value of extension
  }

 

Constraints

  • ele-1: All FHIR elements must have a @value or children (xpath: @value|f:*|h:div)
  • ext-1: Must have either extensions or value[x], not both (xpath: exists(f:extension)!=exists(f:*[starts-with(local-name(.), 'value')]))
  • ele-1: On Extension.extension: All FHIR elements must have a @value or children (xpath on Extension.extension: @value|f:*|h:div)
  • ext-1: On Extension.extension: Must have either extensions or value[x], not both (xpath on Extension.extension: exists(f:extension)!=exists(f:*[starts-with(local-name(.), "value")]))
  • ele-1: On Extension.value[x]: All FHIR elements must have a @value or children (xpath on Extension.value[x]: @value|f:*|h:div)

Search

No Search Extensions defined for this resource

Examples of this extension

No examples found.