Release 4B Snapshot #1

This page is part of the FHIR Specification (v4.3.0-snapshot1: Release 4B Snapshot #1). The current version which supercedes this version is 5.0.0. For a full list of available versions, see the Directory of published versions . Page versions: R4B R4

Extension: codegen-super

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

URL for this extension:

http://hl7.org/fhir/StructureDefinition/structuredefinition-codegen-super

Status: draft. Extension maintained by: Health Level Seven, Inc. - [WG Name] WG

A specific instruction to use an intermediate parent class when generating code for the classes.

Comment:

This can be useful when setting up special common ancestor classes for shared code. At present the only use for this is for the special MetadataResource pattern.

Context of Use: Use on Element ID StructureDefinition.baseDefinition

Extension Content

Summary

NameFlagsCard.TypeDescription & Constraintsdoco
.. codegen-super0..1stringURL = http://hl7.org/fhir/StructureDefinition/structuredefinition-codegen-super
codegen-super: A specific instruction to use an intermediate parent class when generating code for the classes.


Use on Element ID StructureDefinition.baseDefinition

doco Documentation for this format

Full Structure

NameFlagsCard.TypeDescription & Constraintsdoco
.. extension0..1ExtensionURL = http://hl7.org/fhir/StructureDefinition/structuredefinition-codegen-super
codegen-super: A specific instruction to use an intermediate parent class when generating code for the classes.


Use on Element ID StructureDefinition.baseDefinition
... Slices for extension 0..0
... url 1..1uri"http://hl7.org/fhir/StructureDefinition/structuredefinition-codegen-super"
... value[x] 1..1stringValue of extension

doco Documentation for this format

XML Template

<!-- codegen-super -->doco

<extension xmlns="http://hl7.org/fhir"
     url="http://hl7.org/fhir/StructureDefinition/structuredefinition-codegen-super" >
  <!-- from Element: extension -->
 <valueString value="[string]"/><!-- ?? 1..1 Value of extension -->
</extension>

JSON Template

{ // codegen-super
  // from Element: extension
    "extension" : [ //  sliced by value:url  in the specified order, Open ]
    "url" : "http://hl7.org/fhir/StructureDefinition/structuredefinition-codegen-super", // R! 
    "valueString" : "<string>" // C? R! Value of extension
  }

Summary

NameFlagsCard.TypeDescription & Constraintsdoco
.. codegen-super0..1stringURL = http://hl7.org/fhir/StructureDefinition/structuredefinition-codegen-super
codegen-super: A specific instruction to use an intermediate parent class when generating code for the classes.


Use on Element ID StructureDefinition.baseDefinition

doco Documentation for this format

Full Structure

NameFlagsCard.TypeDescription & Constraintsdoco
.. extension0..1ExtensionURL = http://hl7.org/fhir/StructureDefinition/structuredefinition-codegen-super
codegen-super: A specific instruction to use an intermediate parent class when generating code for the classes.


Use on Element ID StructureDefinition.baseDefinition
... Slices for extension 0..0
... url 1..1uri"http://hl7.org/fhir/StructureDefinition/structuredefinition-codegen-super"
... value[x] 1..1stringValue of extension

doco Documentation for this format

XML Template

<!-- codegen-super -->doco

<extension xmlns="http://hl7.org/fhir"
     url="http://hl7.org/fhir/StructureDefinition/structuredefinition-codegen-super" >
  <!-- from Element: extension -->
 <valueString value="[string]"/><!-- ?? 1..1 Value of extension -->
</extension>

JSON Template

{ // codegen-super
  // from Element: extension
    "extension" : [ //  sliced by value:url  in the specified order, Open ]
    "url" : "http://hl7.org/fhir/StructureDefinition/structuredefinition-codegen-super", // R! 
    "valueString" : "<string>" // C? R! Value of extension
  }

 

Constraints

  • ele-1: All FHIR elements must have a @value or children unless an empty Parameters resource (xpath: @value|f:*|h:div|self::f:Parameters)
  • 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)