FHIR General Extensions IG
0.1.0 - Working Copy International flag

This page is part of the FHIR Core Extensions Registry (v0.1.0: Releases Draft) based on FHIR v5.0.0. . For a full list of available versions, see the Directory of published versions

Extension: SDCodegenSuper - Detailed Descriptions

Page standards status: Trial-use Maturity Level: 1

Definitions for the structuredefinition-codegen-super extension.

Guidance on how to interpret the contents of this table can be found here.

1. Extension
Definition

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

Optional Extension Element - found in all resources.

Control0..1*
Comments

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 MetadataPattern pattern.

2. Extension.extension
Control0..0*
3. Extension.url
Fixed Valuehttp://hl7.org/fhir/StructureDefinition/structuredefinition-codegen-super
4. Extension.value[x]
Control10..1
TypeChoice of: , date, Meta, Address, Attachment, integer, Count, DataRequirement, Dosage, uuid, Identifier, RatioRange, Coding, SampledData, id, positiveInt, Distance, Availability, integer64, Period, Duration, canonical, Range, RelatedArtifact, base64Binary, UsageContext, Timing, decimal, ExtendedContactDetail, CodeableConcept, ParameterDefinition, dateTime, code, oid, instant, ContactPoint, HumanName, Money, markdown, Ratio, Age, Reference, TriggerDefinition, Quantity, uri, url, Annotation, ContactDetail, boolean, Expression, CodeableReference, Signature, unsignedInt, time
[x] NoteSee Choice of Data Types for further information about how to use [x]

Guidance on how to interpret the contents of this table can be found here.

1. Extension
Definition

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

Optional Extension Element - found in all resources.

Control0..1*
Comments

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 MetadataPattern pattern.

InvariantsDefined on this element
ele-1: All FHIR elements must have a @value or children (: hasValue() or (children().count() > id.count()))
ext-1: Must have either extensions or value[x], not both (: extension.exists() != value.exists())
2. Extension.extension
Definition

An Extension

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 managable, 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.

Control0..0*
TypeExtension
Summaryfalse
Alternate Namesextensions, user content
Comments

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.

InvariantsDefined on this element
ele-1: All FHIR elements must have a @value or children (: hasValue() or (children().count() > id.count()))
ext-1: Must have either extensions or value[x], not both (: extension.exists() != value.exists())
SlicingThis element introduces a set of slices on Extension.extension. The slices are unordered and Open, and can be differentiated using the following discriminators:
  • value @ url
3. Extension.url
Definition

Source of the definition for the extension code - a logical name or a URL.

Control1..1
Typeuri
XML RepresentationIn the XML format, this property is represented as an attribute.
Summaryfalse
Comments

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.

Fixed Valuehttp://hl7.org/fhir/StructureDefinition/structuredefinition-codegen-super
4. Extension.value[x]
Definition

Value of extension - must be one of a constrained set of the data types (see Extensibility for a list).

Control10..1 This element is affected by the following invariants: ext-1
TypeChoice of: string, date, Meta, Address, Attachment, integer, Count, DataRequirement, Dosage, uuid, Identifier, RatioRange, Coding, SampledData, id, positiveInt, Distance, Availability, integer64, Period, Duration, canonical, Range, RelatedArtifact, base64Binary, UsageContext, Timing, decimal, ExtendedContactDetail, CodeableConcept, ParameterDefinition, dateTime, code, oid, instant, ContactPoint, HumanName, Money, markdown, Ratio, Age, Reference, TriggerDefinition, Quantity, uri, url, Annotation, ContactDetail, boolean, Expression, CodeableReference, Signature, unsignedInt, time
[x] NoteSee Choice of Data Types for further information about how to use [x]
Summaryfalse
InvariantsDefined on this element
ele-1: All FHIR elements must have a @value or children (: hasValue() or (children().count() > id.count()))

Guidance on how to interpret the contents of this table can be found here.

1. Extension
Definition

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

Control0..1
Comments

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 MetadataPattern pattern.

2. Extension.id
Definition

Unique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.

Control0..1 This element is affected by the following invariants: ele-1
Typeid
XML RepresentationIn the XML format, this property is represented as an attribute.
Summaryfalse
3. Extension.extension
Definition

An Extension

Control0..0
TypeExtension
Summaryfalse
InvariantsDefined on this element
ele-1: All FHIR elements must have a @value or children (: hasValue() or (children().count() > id.count()))
ext-1: Must have either extensions or value[x], not both (: extension.exists() != value.exists())
SlicingThis element introduces a set of slices on Extension.extension. The slices are unordered and Open, and can be differentiated using the following discriminators:
  • value @ url
4. Extension.url
Definition

Source of the definition for the extension code - a logical name or a URL.

Control1..1
Typeuri
XML RepresentationIn the XML format, this property is represented as an attribute.
Summaryfalse
Comments

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.

Fixed Valuehttp://hl7.org/fhir/StructureDefinition/structuredefinition-codegen-super
5. Extension.value[x]
Definition

Value of extension - must be one of a constrained set of the data types (see Extensibility for a list).

Control1..1 This element is affected by the following invariants: ext-1
Typestring
[x] NoteSee Choice of Data Types for further information about how to use [x]
Summaryfalse
InvariantsDefined on this element
ele-1: All FHIR elements must have a @value or children (: hasValue() or (children().count() > id.count()))