Skip to content

FHIR R4 Complex Types

Classes representing FHIR R4 complex data types.

Address

Path: fhircraft.fhir.resources.datatypes.R4.complex.address.Address

Bases: Element

An address expressed using postal conventions (as opposed to GPS or other location definition formats)

Parameters:

Name Type Description Default
id str | None

Unique id for inter-element referencing

None
extension List[Extension] | None

Additional content defined by implementations

None
use Annotated[str | String | Code, BeforeValidator] | None

home | work | temp | old | billing - purpose of this address

None
type Annotated[str | String | Code, BeforeValidator] | None

postal | physical | both

None
text Annotated[str | String, BeforeValidator] | None

Text representation of the address

None
line List[Annotated[str | String, BeforeValidator]] | None

Street name, number, direction & P.O. Box etc.

None
city Annotated[str | String, BeforeValidator] | None

Name of city, town etc.

None
district Annotated[str | String, BeforeValidator] | None

District name (aka county)

None
state Annotated[str | String, BeforeValidator] | None

Sub-unit of country (abbreviations ok)

None
postalCode Annotated[str | String, BeforeValidator] | None

Postal code for area

None
country Annotated[str | String, BeforeValidator] | None

Country (e.g. can be ISO 3166 2 or 3 letter code)

None
period Period | None

time period when address was/is in use

None

Age

Path: fhircraft.fhir.resources.datatypes.R4.complex.age.Age

Bases: Quantity

A duration of time during which an organism (or a process) has existed

Parameters:

Name Type Description Default
id str | None

Unique id for inter-element referencing

None
extension List[Extension] | None

Additional content defined by implementations

None
value Annotated[float | Decimal, BeforeValidator] | None

Numerical value (with implicit precision)

None
comparator Annotated[str | String | Code, BeforeValidator] | None

< | <= | >= | > - how to understand the value

None
unit Annotated[str | String, BeforeValidator] | None

Unit representation

None
system Annotated[str | Uri, BeforeValidator] | None

System that defines coded unit form

None
code Annotated[str | String | Code, BeforeValidator] | None

Coded form of the unit

None

Annotation

Path: fhircraft.fhir.resources.datatypes.R4.complex.annotation.Annotation

Bases: Element

Text node with attribution

Parameters:

Name Type Description Default
id str | None

Unique id for inter-element referencing

None
extension List[Extension] | None

Additional content defined by implementations

None
authorReference Reference | None

Individual responsible for the annotation

None
authorString Annotated[str | String, BeforeValidator] | None

Individual responsible for the annotation

None
time Annotated[datetime | date | str | DateTime, BeforeValidator] | None

When the annotation was made

None
text Annotated[str | Markdown, BeforeValidator] | None

The annotation - text content (as markdown)

None

Attachment

Path: fhircraft.fhir.resources.datatypes.R4.complex.attachment.Attachment

Bases: Element

Content in a format defined elsewhere

Parameters:

Name Type Description Default
id str | None

Unique id for inter-element referencing

None
extension List[Extension] | None

Additional content defined by implementations

None
contentType Annotated[str | String | Code, BeforeValidator] | None

Mime type of the content, with charset etc.

None
language Annotated[str | String | Code, BeforeValidator] | None

Human language of the content (BCP-47)

None
data Annotated[str | Base64Binary, BeforeValidator] | None

Data inline, base64ed

None
url Annotated[str | Url, BeforeValidator] | None

uri where the data can be found

None
size Annotated[int | UnsignedInt, BeforeValidator] | None

Number of bytes of content (if url provided)

None
hash Annotated[str | Base64Binary, BeforeValidator] | None

Hash of the data (sha-1, base64ed)

None
title Annotated[str | String, BeforeValidator] | None

Label to display in place of the data

None
creation Annotated[datetime | date | str | DateTime, BeforeValidator] | None

Date attachment was first created

None

BackboneElement

Path: fhircraft.fhir.resources.datatypes.R4.complex.backbone_element.BackboneElement

Bases: Element

Base for elements defined inside a resource

Parameters:

Name Type Description Default
id str | None

Unique id for inter-element referencing

None
extension List[Extension] | None

Additional content defined by implementations

None
modifierExtension List[Extension] | None

Extensions that cannot be ignored even if unrecognized

None

CodeableConcept

Path: fhircraft.fhir.resources.datatypes.R4.complex.codeable_concept.CodeableConcept

Bases: Element

Concept - reference to a terminology or just text

Parameters:

Name Type Description Default
id str | None

Unique id for inter-element referencing

None
extension List[Extension] | None

Additional content defined by implementations

None
coding List[Coding] | None

code defined by a terminology system

None
text Annotated[str | String, BeforeValidator] | None

Plain text representation of the concept

None

Coding

Path: fhircraft.fhir.resources.datatypes.R4.complex.coding.Coding

Bases: Element

A reference to a code defined by a terminology system

Parameters:

Name Type Description Default
id str | None

Unique id for inter-element referencing

None
extension List[Extension] | None

Additional content defined by implementations

None
system Annotated[str | Uri, BeforeValidator] | None

Identity of the terminology system

None
version Annotated[str | String, BeforeValidator] | None

Version of the system - if relevant

None
code Annotated[str | String | Code, BeforeValidator] | None

Symbol in syntax defined by the system

None
display Annotated[str | String, BeforeValidator] | None

Representation defined by the system

None
userSelected Annotated[bool | Boolean, BeforeValidator] | None

If this coding was chosen directly by the user

None

ContactDetail

Path: fhircraft.fhir.resources.datatypes.R4.complex.contact_detail.ContactDetail

Bases: Element

Contact information

Parameters:

Name Type Description Default
id str | None

Unique id for inter-element referencing

None
extension List[Extension] | None

Additional content defined by implementations

None
name Annotated[str | String, BeforeValidator] | None

Name of an individual to contact

None
telecom List[ContactPoint] | None

Contact details for individual or organization

None

ContactPoint

Path: fhircraft.fhir.resources.datatypes.R4.complex.contact_point.ContactPoint

Bases: Element

Details of a Technology mediated contact point (phone, fax, email, etc.)

Parameters:

Name Type Description Default
id str | None

Unique id for inter-element referencing

None
extension List[Extension] | None

Additional content defined by implementations

None
system Annotated[str | String | Code, BeforeValidator] | None

phone | fax | email | pager | url | sms | other

None
value Annotated[str | String, BeforeValidator] | None

The actual contact point details

None
use Annotated[str | String | Code, BeforeValidator] | None

home | work | temp | old | mobile - purpose of this contact point

None
rank Annotated[int | PositiveInt, BeforeValidator] | None

Specify preferred order of use (1 = highest)

None
period Period | None

time period when the contact point was/is in use

None

Contributor

Path: fhircraft.fhir.resources.datatypes.R4.complex.contributor.Contributor

Bases: Element

Contributor information

Parameters:

Name Type Description Default
id str | None

Unique id for inter-element referencing

None
extension List[Extension] | None

Additional content defined by implementations

None
type Annotated[str | String | Code, BeforeValidator] | None

author | editor | reviewer | endorser

None
name Annotated[str | String, BeforeValidator] | None

Who contributed the content

None
contact List[ContactDetail] | None

Contact details of the contributor

None

Count

Path: fhircraft.fhir.resources.datatypes.R4.complex.count.Count

Bases: Quantity

A measured or measurable amount

Parameters:

Name Type Description Default
id str | None

Unique id for inter-element referencing

None
extension List[Extension] | None

Additional content defined by implementations

None
value Annotated[float | Decimal, BeforeValidator] | None

Numerical value (with implicit precision)

None
comparator Annotated[str | String | Code, BeforeValidator] | None

< | <= | >= | > - how to understand the value

None
unit Annotated[str | String, BeforeValidator] | None

Unit representation

None
system Annotated[str | Uri, BeforeValidator] | None

System that defines coded unit form

None
code Annotated[str | String | Code, BeforeValidator] | None

Coded form of the unit

None

DataRequirement

Path: fhircraft.fhir.resources.datatypes.R4.complex.data_requirement.DataRequirement

Bases: Element

Describes a required data item

Parameters:

Name Type Description Default
id str | None

Unique id for inter-element referencing

None
extension List[Extension] | None

Additional content defined by implementations

None
type Annotated[str | String | Code, BeforeValidator] | None

The type of the required data

None
profile List[Annotated[str | Canonical, BeforeValidator]] | None

The profile of the required data

None
subjectCodeableConcept CodeableConcept | None

E.g. Patient, Practitioner, RelatedPerson, Organization, Location, Device

None
subjectReference Reference | None

E.g. Patient, Practitioner, RelatedPerson, Organization, Location, Device

None
mustSupport List[Annotated[str | String, BeforeValidator]] | None

Indicates specific structure elements that are referenced by the knowledge module

None
codeFilter List[DataRequirementCodeFilter] | None

What codes are expected

None
dateFilter List[DataRequirementDateFilter] | None

What dates/date ranges are expected

None
limit Annotated[int | PositiveInt, BeforeValidator] | None

Number of results

None
sort List[DataRequirementSort] | None

Order of the results

None

DataRequirementCodeFilter

Path: fhircraft.fhir.resources.datatypes.R4.complex.data_requirement.DataRequirementCodeFilter

Bases: BackboneElement

What codes are expected

Parameters:

Name Type Description Default
id str | None

Unique id for inter-element referencing

None
extension List[Extension] | None

Additional content defined by implementations

None
modifierExtension List[Extension] | None

Extensions that cannot be ignored even if unrecognized

None
path Annotated[str | String, BeforeValidator] | None

A code-valued attribute to filter on

None
searchParam Annotated[str | String, BeforeValidator] | None

A search parameter defined on the specified type

None
valueSet Annotated[str | Canonical, BeforeValidator] | None

The valueset for the filter

None
code List[Coding] | None

What code is expected

None

DataRequirementDateFilter

Path: fhircraft.fhir.resources.datatypes.R4.complex.data_requirement.DataRequirementDateFilter

Bases: BackboneElement

What dates/date ranges are expected

Parameters:

Name Type Description Default
id str | None

Unique id for inter-element referencing

None
extension List[Extension] | None

Additional content defined by implementations

None
modifierExtension List[Extension] | None

Extensions that cannot be ignored even if unrecognized

None
path Annotated[str | String, BeforeValidator] | None

A date-valued attribute to filter on

None
searchParam Annotated[str | String, BeforeValidator] | None

A date-valued parameter to search on

None
valueDateTime Annotated[datetime | date | str | DateTime, BeforeValidator] | None

The value of the filter, as a dateTime

None
valuePeriod Period | None

The value of the filter, as a period

None
valueDuration Duration | None

The value of the filter, as a duration

None

DataRequirementSort

Path: fhircraft.fhir.resources.datatypes.R4.complex.data_requirement.DataRequirementSort

Bases: BackboneElement

Order of the results

Parameters:

Name Type Description Default
id str | None

Unique id for inter-element referencing

None
extension List[Extension] | None

Additional content defined by implementations

None
modifierExtension List[Extension] | None

Extensions that cannot be ignored even if unrecognized

None
path Annotated[str | String, BeforeValidator] | None

The name of the attribute to perform the sort

None
direction Annotated[str | String | Code, BeforeValidator] | None

The direction of the sort, ascending or descending

None

Distance

Path: fhircraft.fhir.resources.datatypes.R4.complex.distance.Distance

Bases: Quantity

A length - a value with a unit that is a physical distance

Parameters:

Name Type Description Default
id str | None

Unique id for inter-element referencing

None
extension List[Extension] | None

Additional content defined by implementations

None
value Annotated[float | Decimal, BeforeValidator] | None

Numerical value (with implicit precision)

None
comparator Annotated[str | String | Code, BeforeValidator] | None

< | <= | >= | > - how to understand the value

None
unit Annotated[str | String, BeforeValidator] | None

Unit representation

None
system Annotated[str | Uri, BeforeValidator] | None

System that defines coded unit form

None
code Annotated[str | String | Code, BeforeValidator] | None

Coded form of the unit

None

Dosage

Path: fhircraft.fhir.resources.datatypes.R4.complex.dosage.Dosage

Bases: BackboneElement

How the medication is/was taken or should be taken

Parameters:

Name Type Description Default
id str | None

Unique id for inter-element referencing

None
extension List[Extension] | None

Additional content defined by implementations

None
modifierExtension List[Extension] | None

Extensions that cannot be ignored even if unrecognized

None
sequence Annotated[int | Integer, BeforeValidator] | None

The order of the dosage instructions

None
text Annotated[str | String, BeforeValidator] | None

Free text dosage instructions e.g. SIG

None
additionalInstruction List[CodeableConcept] | None

Supplemental instruction or warnings to the patient - e.g. "with meals", "may cause drowsiness"

None
patientInstruction Annotated[str | String, BeforeValidator] | None

Patient or consumer oriented instructions

None
timing Timing | None

When medication should be administered

None
asNeededBoolean Annotated[bool | Boolean, BeforeValidator] | None

Take "as needed" (for x)

None
asNeededCodeableConcept CodeableConcept | None

Take "as needed" (for x)

None
site CodeableConcept | None

Body site to administer to

None
route CodeableConcept | None

How drug should enter body

None
method CodeableConcept | None

Technique for administering medication

None
doseAndRate List[DosageDoseAndRate] | None

Amount of medication administered

None
maxDosePerPeriod Ratio | None

Upper limit on medication per unit of time

None
maxDosePerAdministration SimpleQuantity | None

Upper limit on medication per administration

None
maxDosePerLifetime SimpleQuantity | None

Upper limit on medication per lifetime of the patient

None

DosageDoseAndRate

Path: fhircraft.fhir.resources.datatypes.R4.complex.dosage.DosageDoseAndRate

Bases: BackboneElement

Amount of medication administered

Parameters:

Name Type Description Default
id str | None

Unique id for inter-element referencing

None
extension List[Extension] | None

Additional content defined by implementations

None
modifierExtension List[Extension] | None

Extensions that cannot be ignored even if unrecognized

None
type CodeableConcept | None

The kind of dose or rate specified

None
doseRange Range | None

Amount of medication per dose

None
doseQuantity SimpleQuantity | None

Amount of medication per dose

None
rateRatio Ratio | None

Amount of medication per unit of time

None
rateRange Range | None

Amount of medication per unit of time

None
rateQuantity SimpleQuantity | None

Amount of medication per unit of time

None

Duration

Path: fhircraft.fhir.resources.datatypes.R4.complex.duration.Duration

Bases: Quantity

A length of time

Parameters:

Name Type Description Default
id str | None

Unique id for inter-element referencing

None
extension List[Extension] | None

Additional content defined by implementations

None
value Annotated[float | Decimal, BeforeValidator] | None

Numerical value (with implicit precision)

None
comparator Annotated[str | String | Code, BeforeValidator] | None

< | <= | >= | > - how to understand the value

None
unit Annotated[str | String, BeforeValidator] | None

Unit representation

None
system Annotated[str | Uri, BeforeValidator] | None

System that defines coded unit form

None
code Annotated[str | String | Code, BeforeValidator] | None

Coded form of the unit

None

Element

Path: fhircraft.fhir.resources.datatypes.R4.complex.element.Element

Bases: FHIRBaseModel

Base for all elements

Parameters:

Name Type Description Default
id str | None

Unique id for inter-element referencing

None
extension List[Extension] | None

Additional content defined by implementations

None

ElementDefinition

Path: fhircraft.fhir.resources.datatypes.R4.complex.element_definition.ElementDefinition

Bases: BackboneElement

Base StructureDefinition for ElementDefinition Type: Captures constraints on each element within the resource, profile, or extension.

Parameters:

Name Type Description Default
id str | None

Unique id for inter-element referencing

None
extension List[Extension] | None

Additional content defined by implementations

None
modifierExtension List[Extension] | None

Extensions that cannot be ignored even if unrecognized

None
path Annotated[str | String, BeforeValidator] | None

Path of the element in the hierarchy of elements

None
representation List[Annotated[str | String | Code, BeforeValidator]] | None

xmlAttr | xmlText | typeAttr | cdaText | xhtml

None
sliceName Annotated[str | String, BeforeValidator] | None

Name for this particular element (in a set of slices)

None
sliceIsConstraining Annotated[bool | Boolean, BeforeValidator] | None

If this slice definition constrains an inherited slice definition (or not)

None
label Annotated[str | String, BeforeValidator] | None

Name for element to display with or prompt for element

None
code List[Coding] | None

Corresponding codes in terminologies

None
slicing ElementDefinitionSlicing | None

This element is sliced - slices follow

None
short Annotated[str | String, BeforeValidator] | None

Concise definition for space-constrained presentation

None
definition Annotated[str | Markdown, BeforeValidator] | None

Full formal definition as narrative text

None
comment Annotated[str | Markdown, BeforeValidator] | None

Comments about the use of this element

None
requirements Annotated[str | Markdown, BeforeValidator] | None

Why this resource has been created

None
alias List[Annotated[str | String, BeforeValidator]] | None

Other names

None
min Annotated[int | UnsignedInt, BeforeValidator] | None

Minimum Cardinality

None
max Annotated[str | String, BeforeValidator] | None

Maximum Cardinality (a number or *)

None
base ElementDefinitionBase | None

Base definition information for tools

None
contentReference Annotated[str | Uri, BeforeValidator] | None

Reference to definition of content for the element

None
type List[ElementDefinitionType] | None

Data type and Profile for this element

None
defaultValueBase64Binary Annotated[str | Base64Binary, BeforeValidator] | None

Specified value if missing from instance

None
defaultValueBoolean Annotated[bool | Boolean, BeforeValidator] | None

Specified value if missing from instance

None
defaultValueCanonical Annotated[str | Canonical, BeforeValidator] | None

Specified value if missing from instance

None
defaultValueCode Annotated[str | String | Code, BeforeValidator] | None

Specified value if missing from instance

None
defaultValueDate Annotated[date | str | Date, BeforeValidator] | None

Specified value if missing from instance

None
defaultValueDateTime Annotated[datetime | date | str | DateTime, BeforeValidator] | None

Specified value if missing from instance

None
defaultValueDecimal Annotated[float | Decimal, BeforeValidator] | None

Specified value if missing from instance

None
defaultValueId Annotated[str | Id, BeforeValidator] | None

Specified value if missing from instance

None
defaultValueInstant Annotated[datetime | Instant, BeforeValidator] | None

Specified value if missing from instance

None
defaultValueInteger Annotated[int | Integer, BeforeValidator] | None

Specified value if missing from instance

None
defaultValueMarkdown Annotated[str | Markdown, BeforeValidator] | None

Specified value if missing from instance

None
defaultValueOid Annotated[str | Oid, BeforeValidator] | None

Specified value if missing from instance

None
defaultValuePositiveInt Annotated[int | PositiveInt, BeforeValidator] | None

Specified value if missing from instance

None
defaultValueString Annotated[str | String, BeforeValidator] | None

Specified value if missing from instance

None
defaultValueTime Annotated[time | Time, BeforeValidator] | None

Specified value if missing from instance

None
defaultValueUnsignedInt Annotated[int | UnsignedInt, BeforeValidator] | None

Specified value if missing from instance

None
defaultValueUri Annotated[str | Uri, BeforeValidator] | None

Specified value if missing from instance

None
defaultValueUrl Annotated[str | Url, BeforeValidator] | None

Specified value if missing from instance

None
defaultValueUuid Annotated[str | Uuid, BeforeValidator] | None

Specified value if missing from instance

None
defaultValueAddress Address | None

Specified value if missing from instance

None
defaultValueAge Age | None

Specified value if missing from instance

None
defaultValueAnnotation Annotation | None

Specified value if missing from instance

None
defaultValueAttachment Attachment | None

Specified value if missing from instance

None
defaultValueCodeableConcept CodeableConcept | None

Specified value if missing from instance

None
defaultValueCoding Coding | None

Specified value if missing from instance

None
defaultValueContactPoint ContactPoint | None

Specified value if missing from instance

None
defaultValueCount Count | None

Specified value if missing from instance

None
defaultValueDistance Distance | None

Specified value if missing from instance

None
defaultValueDuration Duration | None

Specified value if missing from instance

None
defaultValueHumanName HumanName | None

Specified value if missing from instance

None
defaultValueIdentifier Identifier | None

Specified value if missing from instance

None
defaultValueMoney Money | None

Specified value if missing from instance

None
defaultValuePeriod Period | None

Specified value if missing from instance

None
defaultValueQuantity Quantity | None

Specified value if missing from instance

None
defaultValueRange Range | None

Specified value if missing from instance

None
defaultValueRatio Ratio | None

Specified value if missing from instance

None
defaultValueReference Reference | None

Specified value if missing from instance

None
defaultValueSampledData SampledData | None

Specified value if missing from instance

None
defaultValueSignature Signature | None

Specified value if missing from instance

None
defaultValueTiming Timing | None

Specified value if missing from instance

None
defaultValueContactDetail ContactDetail | None

Specified value if missing from instance

None
defaultValueContributor Contributor | None

Specified value if missing from instance

None
defaultValueDataRequirement DataRequirement | None

Specified value if missing from instance

None
defaultValueExpression Expression | None

Specified value if missing from instance

None
defaultValueParameterDefinition ParameterDefinition | None

Specified value if missing from instance

None
defaultValueRelatedArtifact RelatedArtifact | None

Specified value if missing from instance

None
defaultValueTriggerDefinition TriggerDefinition | None

Specified value if missing from instance

None
defaultValueUsageContext UsageContext | None

Specified value if missing from instance

None
defaultValueDosage Dosage | None

Specified value if missing from instance

None
defaultValueMeta Meta | None

Specified value if missing from instance

None
meaningWhenMissing Annotated[str | Markdown, BeforeValidator] | None

Implicit meaning when this element is missing

None
orderMeaning Annotated[str | String, BeforeValidator] | None

What the order of the elements means

None
fixedBase64Binary Annotated[str | Base64Binary, BeforeValidator] | None

Value must be exactly this

None
fixedBoolean Annotated[bool | Boolean, BeforeValidator] | None

Value must be exactly this

None
fixedCanonical Annotated[str | Canonical, BeforeValidator] | None

Value must be exactly this

None
fixedCode Annotated[str | String | Code, BeforeValidator] | None

Value must be exactly this

None
fixedDate Annotated[date | str | Date, BeforeValidator] | None

Value must be exactly this

None
fixedDateTime Annotated[datetime | date | str | DateTime, BeforeValidator] | None

Value must be exactly this

None
fixedDecimal Annotated[float | Decimal, BeforeValidator] | None

Value must be exactly this

None
fixedId Annotated[str | Id, BeforeValidator] | None

Value must be exactly this

None
fixedInstant Annotated[datetime | Instant, BeforeValidator] | None

Value must be exactly this

None
fixedInteger Annotated[int | Integer, BeforeValidator] | None

Value must be exactly this

None
fixedMarkdown Annotated[str | Markdown, BeforeValidator] | None

Value must be exactly this

None
fixedOid Annotated[str | Oid, BeforeValidator] | None

Value must be exactly this

None
fixedPositiveInt Annotated[int | PositiveInt, BeforeValidator] | None

Value must be exactly this

None
fixedString Annotated[str | String, BeforeValidator] | None

Value must be exactly this

None
fixedTime Annotated[time | Time, BeforeValidator] | None

Value must be exactly this

None
fixedUnsignedInt Annotated[int | UnsignedInt, BeforeValidator] | None

Value must be exactly this

None
fixedUri Annotated[str | Uri, BeforeValidator] | None

Value must be exactly this

None
fixedUrl Annotated[str | Url, BeforeValidator] | None

Value must be exactly this

None
fixedUuid Annotated[str | Uuid, BeforeValidator] | None

Value must be exactly this

None
fixedAddress Address | None

Value must be exactly this

None
fixedAge Age | None

Value must be exactly this

None
fixedAnnotation Annotation | None

Value must be exactly this

None
fixedAttachment Attachment | None

Value must be exactly this

None
fixedCodeableConcept CodeableConcept | None

Value must be exactly this

None
fixedCoding Coding | None

Value must be exactly this

None
fixedContactPoint ContactPoint | None

Value must be exactly this

None
fixedCount Count | None

Value must be exactly this

None
fixedDistance Distance | None

Value must be exactly this

None
fixedDuration Duration | None

Value must be exactly this

None
fixedHumanName HumanName | None

Value must be exactly this

None
fixedIdentifier Identifier | None

Value must be exactly this

None
fixedMoney Money | None

Value must be exactly this

None
fixedPeriod Period | None

Value must be exactly this

None
fixedQuantity Quantity | None

Value must be exactly this

None
fixedRange Range | None

Value must be exactly this

None
fixedRatio Ratio | None

Value must be exactly this

None
fixedReference Reference | None

Value must be exactly this

None
fixedSampledData SampledData | None

Value must be exactly this

None
fixedSignature Signature | None

Value must be exactly this

None
fixedTiming Timing | None

Value must be exactly this

None
fixedContactDetail ContactDetail | None

Value must be exactly this

None
fixedContributor Contributor | None

Value must be exactly this

None
fixedDataRequirement DataRequirement | None

Value must be exactly this

None
fixedExpression Expression | None

Value must be exactly this

None
fixedParameterDefinition ParameterDefinition | None

Value must be exactly this

None
fixedRelatedArtifact RelatedArtifact | None

Value must be exactly this

None
fixedTriggerDefinition TriggerDefinition | None

Value must be exactly this

None
fixedUsageContext UsageContext | None

Value must be exactly this

None
fixedDosage Dosage | None

Value must be exactly this

None
fixedMeta Meta | None

Value must be exactly this

None
patternBase64Binary Annotated[str | Base64Binary, BeforeValidator] | None

Value must have at least these property values

None
patternBoolean Annotated[bool | Boolean, BeforeValidator] | None

Value must have at least these property values

None
patternCanonical Annotated[str | Canonical, BeforeValidator] | None

Value must have at least these property values

None
patternCode Annotated[str | String | Code, BeforeValidator] | None

Value must have at least these property values

None
patternDate Annotated[date | str | Date, BeforeValidator] | None

Value must have at least these property values

None
patternDateTime Annotated[datetime | date | str | DateTime, BeforeValidator] | None

Value must have at least these property values

None
patternDecimal Annotated[float | Decimal, BeforeValidator] | None

Value must have at least these property values

None
patternId Annotated[str | Id, BeforeValidator] | None

Value must have at least these property values

None
patternInstant Annotated[datetime | Instant, BeforeValidator] | None

Value must have at least these property values

None
patternInteger Annotated[int | Integer, BeforeValidator] | None

Value must have at least these property values

None
patternMarkdown Annotated[str | Markdown, BeforeValidator] | None

Value must have at least these property values

None
patternOid Annotated[str | Oid, BeforeValidator] | None

Value must have at least these property values

None
patternPositiveInt Annotated[int | PositiveInt, BeforeValidator] | None

Value must have at least these property values

None
patternString Annotated[str | String, BeforeValidator] | None

Value must have at least these property values

None
patternTime Annotated[time | Time, BeforeValidator] | None

Value must have at least these property values

None
patternUnsignedInt Annotated[int | UnsignedInt, BeforeValidator] | None

Value must have at least these property values

None
patternUri Annotated[str | Uri, BeforeValidator] | None

Value must have at least these property values

None
patternUrl Annotated[str | Url, BeforeValidator] | None

Value must have at least these property values

None
patternUuid Annotated[str | Uuid, BeforeValidator] | None

Value must have at least these property values

None
patternAddress Address | None

Value must have at least these property values

None
patternAge Age | None

Value must have at least these property values

None
patternAnnotation Annotation | None

Value must have at least these property values

None
patternAttachment Attachment | None

Value must have at least these property values

None
patternCodeableConcept CodeableConcept | None

Value must have at least these property values

None
patternCoding Coding | None

Value must have at least these property values

None
patternContactPoint ContactPoint | None

Value must have at least these property values

None
patternCount Count | None

Value must have at least these property values

None
patternDistance Distance | None

Value must have at least these property values

None
patternDuration Duration | None

Value must have at least these property values

None
patternHumanName HumanName | None

Value must have at least these property values

None
patternIdentifier Identifier | None

Value must have at least these property values

None
patternMoney Money | None

Value must have at least these property values

None
patternPeriod Period | None

Value must have at least these property values

None
patternQuantity Quantity | None

Value must have at least these property values

None
patternRange Range | None

Value must have at least these property values

None
patternRatio Ratio | None

Value must have at least these property values

None
patternReference Reference | None

Value must have at least these property values

None
patternSampledData SampledData | None

Value must have at least these property values

None
patternSignature Signature | None

Value must have at least these property values

None
patternTiming Timing | None

Value must have at least these property values

None
patternContactDetail ContactDetail | None

Value must have at least these property values

None
patternContributor Contributor | None

Value must have at least these property values

None
patternDataRequirement DataRequirement | None

Value must have at least these property values

None
patternExpression Expression | None

Value must have at least these property values

None
patternParameterDefinition ParameterDefinition | None

Value must have at least these property values

None
patternRelatedArtifact RelatedArtifact | None

Value must have at least these property values

None
patternTriggerDefinition TriggerDefinition | None

Value must have at least these property values

None
patternUsageContext UsageContext | None

Value must have at least these property values

None
patternDosage Dosage | None

Value must have at least these property values

None
patternMeta Meta | None

Value must have at least these property values

None
example List[ElementDefinitionExample] | None

Example value (as defined for type)

None
minValueDate Annotated[date | str | Date, BeforeValidator] | None

Minimum Allowed Value (for some types)

None
minValueDateTime Annotated[datetime | date | str | DateTime, BeforeValidator] | None

Minimum Allowed Value (for some types)

None
minValueInstant Annotated[datetime | Instant, BeforeValidator] | None

Minimum Allowed Value (for some types)

None
minValueTime Annotated[time | Time, BeforeValidator] | None

Minimum Allowed Value (for some types)

None
minValueDecimal Annotated[float | Decimal, BeforeValidator] | None

Minimum Allowed Value (for some types)

None
minValueInteger Annotated[int | Integer, BeforeValidator] | None

Minimum Allowed Value (for some types)

None
minValuePositiveInt Annotated[int | PositiveInt, BeforeValidator] | None

Minimum Allowed Value (for some types)

None
minValueUnsignedInt Annotated[int | UnsignedInt, BeforeValidator] | None

Minimum Allowed Value (for some types)

None
minValueQuantity Quantity | None

Minimum Allowed Value (for some types)

None
maxValueDate Annotated[date | str | Date, BeforeValidator] | None

Maximum Allowed Value (for some types)

None
maxValueDateTime Annotated[datetime | date | str | DateTime, BeforeValidator] | None

Maximum Allowed Value (for some types)

None
maxValueInstant Annotated[datetime | Instant, BeforeValidator] | None

Maximum Allowed Value (for some types)

None
maxValueTime Annotated[time | Time, BeforeValidator] | None

Maximum Allowed Value (for some types)

None
maxValueDecimal Annotated[float | Decimal, BeforeValidator] | None

Maximum Allowed Value (for some types)

None
maxValueInteger Annotated[int | Integer, BeforeValidator] | None

Maximum Allowed Value (for some types)

None
maxValuePositiveInt Annotated[int | PositiveInt, BeforeValidator] | None

Maximum Allowed Value (for some types)

None
maxValueUnsignedInt Annotated[int | UnsignedInt, BeforeValidator] | None

Maximum Allowed Value (for some types)

None
maxValueQuantity Quantity | None

Maximum Allowed Value (for some types)

None
maxLength Annotated[int | Integer, BeforeValidator] | None

Max length for strings

None
condition List[Annotated[str | Id, BeforeValidator]] | None

Reference to invariant about presence

None
constraint List[ElementDefinitionConstraint] | None

Condition that must evaluate to True

None
mustSupport Annotated[bool | Boolean, BeforeValidator] | None

If the element must be supported

None
isModifier Annotated[bool | Boolean, BeforeValidator] | None

If this modifies the meaning of other elements

None
isModifierReason Annotated[str | String, BeforeValidator] | None

Reason that this element is marked as a modifier

None
isSummary Annotated[bool | Boolean, BeforeValidator] | None

Include when _summary = True?

None
binding ElementDefinitionBinding | None

ValueSet details if this is coded

None
mapping List[ElementDefinitionMapping] | None

Map element to another set of definitions

None

ElementDefinitionBase

Path: fhircraft.fhir.resources.datatypes.R4.complex.element_definition.ElementDefinitionBase

Bases: Element

Information about the base definition of the element, provided to make it unnecessary for tools to trace the deviation of the element through the derived and related profiles. When the element definition is not the original definition of an element - i.g. either in a constraint on another type, or for elements from a super type in a snap shot - then the information in provided in the element definition may be different to the base definition. On the original definition of the element, it will be same.

Parameters:

Name Type Description Default
id str | None

Unique id for inter-element referencing

None
extension List[Extension] | None

Additional content defined by implementations

None
path Annotated[str | String, BeforeValidator] | None

Path that identifies the base element

None
min Annotated[int | UnsignedInt, BeforeValidator] | None

Min cardinality of the base element

None
max Annotated[str | String, BeforeValidator] | None

Max cardinality of the base element

None

ElementDefinitionBinding

Path: fhircraft.fhir.resources.datatypes.R4.complex.element_definition.ElementDefinitionBinding

Bases: Element

Binds to a value set if this element is coded (code, Coding, CodeableConcept, Quantity), or the data types (string, uri).

Parameters:

Name Type Description Default
id str | None

Unique id for inter-element referencing

None
extension List[Extension] | None

Additional content defined by implementations

None
strength Annotated[str | String | Code, BeforeValidator] | None

required | extensible | preferred | example

None
description Annotated[str | String, BeforeValidator] | None

Human explanation of the value set

None
valueSet Annotated[str | Canonical, BeforeValidator] | None

Source of value set

None

ElementDefinitionConstraint

Path: fhircraft.fhir.resources.datatypes.R4.complex.element_definition.ElementDefinitionConstraint

Bases: Element

Formal constraints such as co-occurrence and other constraints that can be computationally evaluated within the context of the instance.

Parameters:

Name Type Description Default
id str | None

Unique id for inter-element referencing

None
extension List[Extension] | None

Additional content defined by implementations

None
key Annotated[str | Id, BeforeValidator] | None

Target of 'condition' reference above

None
requirements Annotated[str | String, BeforeValidator] | None

Why this constraint is necessary or appropriate

None
severity Annotated[str | String | Code, BeforeValidator] | None

error | warning

None
human Annotated[str | String, BeforeValidator] | None

Human description of constraint

None
expression Annotated[str | String, BeforeValidator] | None

FHIRPath expression of constraint

None
xpath Annotated[str | String, BeforeValidator] | None

XPath expression of constraint

None
source Annotated[str | Canonical, BeforeValidator] | None

Reference to original source of constraint

None

ElementDefinitionExample

Path: fhircraft.fhir.resources.datatypes.R4.complex.element_definition.ElementDefinitionExample

Bases: Element

A sample value for this element demonstrating the type of information that would typically be found in the element.

Parameters:

Name Type Description Default
id str | None

Unique id for inter-element referencing

None
extension List[Extension] | None

Additional content defined by implementations

None
label Annotated[str | String, BeforeValidator] | None

Describes the purpose of this example

None
valueBase64Binary Annotated[str | Base64Binary, BeforeValidator] | None

Value of Example (one of allowed types)

None
valueBoolean Annotated[bool | Boolean, BeforeValidator] | None

Value of Example (one of allowed types)

None
valueCanonical Annotated[str | Canonical, BeforeValidator] | None

Value of Example (one of allowed types)

None
valueCode Annotated[str | String | Code, BeforeValidator] | None

Value of Example (one of allowed types)

None
valueDate Annotated[date | str | Date, BeforeValidator] | None

Value of Example (one of allowed types)

None
valueDateTime Annotated[datetime | date | str | DateTime, BeforeValidator] | None

Value of Example (one of allowed types)

None
valueDecimal Annotated[float | Decimal, BeforeValidator] | None

Value of Example (one of allowed types)

None
valueId Annotated[str | Id, BeforeValidator] | None

Value of Example (one of allowed types)

None
valueInstant Annotated[datetime | Instant, BeforeValidator] | None

Value of Example (one of allowed types)

None
valueInteger Annotated[int | Integer, BeforeValidator] | None

Value of Example (one of allowed types)

None
valueMarkdown Annotated[str | Markdown, BeforeValidator] | None

Value of Example (one of allowed types)

None
valueOid Annotated[str | Oid, BeforeValidator] | None

Value of Example (one of allowed types)

None
valuePositiveInt Annotated[int | PositiveInt, BeforeValidator] | None

Value of Example (one of allowed types)

None
valueString Annotated[str | String, BeforeValidator] | None

Value of Example (one of allowed types)

None
valueTime Annotated[time | Time, BeforeValidator] | None

Value of Example (one of allowed types)

None
valueUnsignedInt Annotated[int | UnsignedInt, BeforeValidator] | None

Value of Example (one of allowed types)

None
valueUri Annotated[str | Uri, BeforeValidator] | None

Value of Example (one of allowed types)

None
valueUrl Annotated[str | Url, BeforeValidator] | None

Value of Example (one of allowed types)

None
valueUuid Annotated[str | Uuid, BeforeValidator] | None

Value of Example (one of allowed types)

None
valueAddress Address | None

Value of Example (one of allowed types)

None
valueAge Age | None

Value of Example (one of allowed types)

None
valueAnnotation Annotation | None

Value of Example (one of allowed types)

None
valueAttachment Attachment | None

Value of Example (one of allowed types)

None
valueCodeableConcept CodeableConcept | None

Value of Example (one of allowed types)

None
valueCoding Coding | None

Value of Example (one of allowed types)

None
valueContactPoint ContactPoint | None

Value of Example (one of allowed types)

None
valueCount Count | None

Value of Example (one of allowed types)

None
valueDistance Distance | None

Value of Example (one of allowed types)

None
valueDuration Duration | None

Value of Example (one of allowed types)

None
valueHumanName HumanName | None

Value of Example (one of allowed types)

None
valueIdentifier Identifier | None

Value of Example (one of allowed types)

None
valueMoney Money | None

Value of Example (one of allowed types)

None
valuePeriod Period | None

Value of Example (one of allowed types)

None
valueQuantity Quantity | None

Value of Example (one of allowed types)

None
valueRange Range | None

Value of Example (one of allowed types)

None
valueRatio Ratio | None

Value of Example (one of allowed types)

None
valueReference Reference | None

Value of Example (one of allowed types)

None
valueSampledData SampledData | None

Value of Example (one of allowed types)

None
valueSignature Signature | None

Value of Example (one of allowed types)

None
valueTiming Timing | None

Value of Example (one of allowed types)

None
valueContactDetail ContactDetail | None

Value of Example (one of allowed types)

None
valueContributor Contributor | None

Value of Example (one of allowed types)

None
valueDataRequirement DataRequirement | None

Value of Example (one of allowed types)

None
valueExpression Expression | None

Value of Example (one of allowed types)

None
valueParameterDefinition ParameterDefinition | None

Value of Example (one of allowed types)

None
valueRelatedArtifact RelatedArtifact | None

Value of Example (one of allowed types)

None
valueTriggerDefinition TriggerDefinition | None

Value of Example (one of allowed types)

None
valueUsageContext UsageContext | None

Value of Example (one of allowed types)

None
valueDosage Dosage | None

Value of Example (one of allowed types)

None
valueMeta Meta | None

Value of Example (one of allowed types)

None

ElementDefinitionMapping

Path: fhircraft.fhir.resources.datatypes.R4.complex.element_definition.ElementDefinitionMapping

Bases: Element

Identifies a concept from an external specification that roughly corresponds to this element.

Parameters:

Name Type Description Default
id str | None

Unique id for inter-element referencing

None
extension List[Extension] | None

Additional content defined by implementations

None
identity Annotated[str | Id, BeforeValidator] | None

Reference to mapping declaration

None
language Annotated[str | String | Code, BeforeValidator] | None

Computable language of mapping

None
map Annotated[str | String, BeforeValidator] | None

Details of the mapping

None
comment Annotated[str | String, BeforeValidator] | None

Comments about the mapping or its use

None

ElementDefinitionSlicing

Path: fhircraft.fhir.resources.datatypes.R4.complex.element_definition.ElementDefinitionSlicing

Bases: Element

Indicates that the element is sliced into a set of alternative definitions (i.e. in a structure definition, there are multiple different constraints on a single element in the base resource). Slicing can be used in any resource that has cardinality ..* on the base resource, or any resource with a choice of types. The set of slices is any elements that come after this in the element sequence that have the same path, until a shorter path occurs (the shorter path terminates the set).

Parameters:

Name Type Description Default
id str | None

Unique id for inter-element referencing

None
extension List[Extension] | None

Additional content defined by implementations

None
discriminator List[ElementDefinitionSlicingDiscriminator] | None

Element values that are used to distinguish the slices

None
description Annotated[str | String, BeforeValidator] | None

Text description of how slicing works (or not)

None
ordered Annotated[bool | Boolean, BeforeValidator] | None

If elements must be in same order as slices

None
rules Annotated[str | String | Code, BeforeValidator] | None

closed | open | openAtEnd

None

ElementDefinitionSlicingDiscriminator

Path: fhircraft.fhir.resources.datatypes.R4.complex.element_definition.ElementDefinitionSlicingDiscriminator

Bases: Element

Designates which child elements are used to discriminate between the slices when processing an instance. If one or more discriminators are provided, the value of the child elements in the instance data SHALL completely distinguish which slice the element in the resource matches based on the allowed values for those elements in each of the slices.

Parameters:

Name Type Description Default
id str | None

Unique id for inter-element referencing

None
extension List[Extension] | None

Additional content defined by implementations

None
type Annotated[str | String | Code, BeforeValidator] | None

value | exists | pattern | type | profile

None
path Annotated[str | String, BeforeValidator] | None

Path to element value

None

ElementDefinitionType

Path: fhircraft.fhir.resources.datatypes.R4.complex.element_definition.ElementDefinitionType

Bases: Element

The data type or resource that the value of this element is permitted to be.

Parameters:

Name Type Description Default
id str | None

Unique id for inter-element referencing

None
extension List[Extension] | None

Additional content defined by implementations

None
code Annotated[str | Uri, BeforeValidator] | None

Data type or Resource (reference to definition)

None
profile List[Annotated[str | Canonical, BeforeValidator]] | None

Profiles (StructureDefinition or IG) - one must apply

None
targetProfile List[Annotated[str | Canonical, BeforeValidator]] | None

Profile (StructureDefinition or IG) on the Reference/canonical target - one must apply

None
aggregation List[Annotated[str | String | Code, BeforeValidator]] | None

contained | referenced | bundled - how aggregated

None
versioning Annotated[str | String | Code, BeforeValidator] | None

either | independent | specific

None

Expression

Path: fhircraft.fhir.resources.datatypes.R4.complex.expression.Expression

Bases: Element

An expression that can be used to generate a value

Parameters:

Name Type Description Default
id str | None

Unique id for inter-element referencing

None
extension List[Extension] | None

Additional content defined by implementations

None
description Annotated[str | String, BeforeValidator] | None

Natural language description of the condition

None
name Annotated[str | Id, BeforeValidator] | None

Short name assigned to expression for reuse

None
language Annotated[str | String | Code, BeforeValidator] | None

text/cql | text/fhirpath | application/x-fhir-query | etc.

None
expression Annotated[str | String, BeforeValidator] | None

Expression in specified language

None
reference Annotated[str | Uri, BeforeValidator] | None

Where the expression is found

None

Extension

Path: fhircraft.fhir.resources.datatypes.R4.complex.extension.Extension

Bases: Element

Optional Extensions Element

Parameters:

Name Type Description Default
id str | None

Unique id for inter-element referencing

None
extension List[Extension] | None

Additional content defined by implementations

None
url str | None

identifies the meaning of the extension

None
valueBase64Binary Annotated[str | Base64Binary, BeforeValidator] | None

Value of extension

None
valueBoolean Annotated[bool | Boolean, BeforeValidator] | None

Value of extension

None
valueCanonical Annotated[str | Canonical, BeforeValidator] | None

Value of extension

None
valueCode Annotated[str | String | Code, BeforeValidator] | None

Value of extension

None
valueDate Annotated[date | str | Date, BeforeValidator] | None

Value of extension

None
valueDateTime Annotated[datetime | date | str | DateTime, BeforeValidator] | None

Value of extension

None
valueDecimal Annotated[float | Decimal, BeforeValidator] | None

Value of extension

None
valueId Annotated[str | Id, BeforeValidator] | None

Value of extension

None
valueInstant Annotated[datetime | Instant, BeforeValidator] | None

Value of extension

None
valueInteger Annotated[int | Integer, BeforeValidator] | None

Value of extension

None
valueMarkdown Annotated[str | Markdown, BeforeValidator] | None

Value of extension

None
valueOid Annotated[str | Oid, BeforeValidator] | None

Value of extension

None
valuePositiveInt Annotated[int | PositiveInt, BeforeValidator] | None

Value of extension

None
valueString Annotated[str | String, BeforeValidator] | None

Value of extension

None
valueTime Annotated[time | Time, BeforeValidator] | None

Value of extension

None
valueUnsignedInt Annotated[int | UnsignedInt, BeforeValidator] | None

Value of extension

None
valueUri Annotated[str | Uri, BeforeValidator] | None

Value of extension

None
valueUrl Annotated[str | Url, BeforeValidator] | None

Value of extension

None
valueUuid Annotated[str | Uuid, BeforeValidator] | None

Value of extension

None
valueAddress Address | None

Value of extension

None
valueAge Age | None

Value of extension

None
valueAnnotation Annotation | None

Value of extension

None
valueAttachment Attachment | None

Value of extension

None
valueCodeableConcept CodeableConcept | None

Value of extension

None
valueCoding Coding | None

Value of extension

None
valueContactPoint ContactPoint | None

Value of extension

None
valueCount Count | None

Value of extension

None
valueDistance Distance | None

Value of extension

None
valueDuration Duration | None

Value of extension

None
valueHumanName HumanName | None

Value of extension

None
valueIdentifier Identifier | None

Value of extension

None
valueMoney Money | None

Value of extension

None
valuePeriod Period | None

Value of extension

None
valueQuantity Quantity | None

Value of extension

None
valueRange Range | None

Value of extension

None
valueRatio Ratio | None

Value of extension

None
valueReference Reference | None

Value of extension

None
valueSampledData SampledData | None

Value of extension

None
valueSignature Signature | None

Value of extension

None
valueTiming Timing | None

Value of extension

None
valueContactDetail ContactDetail | None

Value of extension

None
valueContributor Contributor | None

Value of extension

None
valueDataRequirement DataRequirement | None

Value of extension

None
valueExpression Expression | None

Value of extension

None
valueParameterDefinition ParameterDefinition | None

Value of extension

None
valueRelatedArtifact RelatedArtifact | None

Value of extension

None
valueTriggerDefinition TriggerDefinition | None

Value of extension

None
valueUsageContext UsageContext | None

Value of extension

None
valueDosage Dosage | None

Value of extension

None
valueMeta Meta | None

Value of extension

None

HumanName

Path: fhircraft.fhir.resources.datatypes.R4.complex.human_name.HumanName

Bases: Element

Name of a human - parts and usage

Parameters:

Name Type Description Default
id str | None

Unique id for inter-element referencing

None
extension List[Extension] | None

Additional content defined by implementations

None
use Annotated[str | String | Code, BeforeValidator] | None

usual | official | temp | nickname | anonymous | old | maiden

None
text Annotated[str | String, BeforeValidator] | None

Text representation of the full name

None
family Annotated[str | String, BeforeValidator] | None

Family name (often called 'Surname')

None
given List[Annotated[str | String, BeforeValidator]] | None

Given names (not always 'first'). Includes middle names

None
prefix List[Annotated[str | String, BeforeValidator]] | None

Parts that come before the name

None
suffix List[Annotated[str | String, BeforeValidator]] | None

Parts that come after the name

None
period Period | None

time period when name was/is in use

None

Identifier

Path: fhircraft.fhir.resources.datatypes.R4.complex.identifier.Identifier

Bases: Element

An identifier intended for computation

Parameters:

Name Type Description Default
id str | None

Unique id for inter-element referencing

None
extension List[Extension] | None

Additional content defined by implementations

None
use Annotated[str | String | Code, BeforeValidator] | None

usual | official | temp | secondary | old (If known)

None
type CodeableConcept | None

Description of identifier

None
system Annotated[str | Uri, BeforeValidator] | None

The namespace for the identifier value

None
value Annotated[str | String, BeforeValidator] | None

The value that is unique

None
period Period | None

time period when id is/was valid for use

None
assigner Reference | None

Organization that issued id (may be just text)

None

MarketingStatus

Path: fhircraft.fhir.resources.datatypes.R4.complex.marketing_status.MarketingStatus

Bases: BackboneElement

The marketing status describes the date when a medicinal product is actually put on the market or the date as of which it is no longer available

Parameters:

Name Type Description Default
id str | None

Unique id for inter-element referencing

None
extension List[Extension] | None

Additional content defined by implementations

None
modifierExtension List[Extension] | None

Extensions that cannot be ignored even if unrecognized

None
country CodeableConcept | None

The country in which the marketing authorisation has been granted shall be specified It should be specified using the ISO 3166 ‑ 1 alpha-2 code elements

None
jurisdiction CodeableConcept | None

Where a Medicines Regulatory Agency has granted a marketing authorisation for which specific provisions within a jurisdiction apply, the jurisdiction can be specified using an appropriate controlled terminology The controlled term and the controlled term identifier shall be specified

None
status CodeableConcept | None

This attribute provides information on the status of the marketing of the medicinal product See ISO/TS 20443 for more information and examples

None
dateRange Period | None

The date when the Medicinal Product is placed on the market by the Marketing Authorisation Holder (or where applicable, the manufacturer/distributor) in a country and/or jurisdiction shall be provided A complete date consisting of day, month and year shall be specified using the ISO 8601 date format NOTE “Placed on the market” refers to the release of the Medicinal Product into the distribution chain

None
restoreDate Annotated[datetime | date | str | DateTime, BeforeValidator] | None

The date when the Medicinal Product is placed on the market by the Marketing Authorisation Holder (or where applicable, the manufacturer/distributor) in a country and/or jurisdiction shall be provided A complete date consisting of day, month and year shall be specified using the ISO 8601 date format NOTE “Placed on the market” refers to the release of the Medicinal Product into the distribution chain

None

Meta

Path: fhircraft.fhir.resources.datatypes.R4.complex.meta.Meta

Bases: Element

Metadata about a resource

Parameters:

Name Type Description Default
id str | None

Unique id for inter-element referencing

None
extension List[Extension] | None

Additional content defined by implementations

None
versionId Annotated[str | Id, BeforeValidator] | None

Version specific identifier

None
lastUpdated Annotated[datetime | Instant, BeforeValidator] | None

When the resource version last changed

None
source Annotated[str | Uri, BeforeValidator] | None

Identifies where the resource comes from

None
profile List[Annotated[str | Canonical, BeforeValidator]] | None

Profiles this resource claims to conform to

None
security List[Coding] | None

Security Labels applied to this resource

None
tag List[Coding] | None

Tags applied to this resource

None

Money

Path: fhircraft.fhir.resources.datatypes.R4.complex.money.Money

Bases: Element

An amount of economic utility in some recognized currency

Parameters:

Name Type Description Default
id str | None

Unique id for inter-element referencing

None
extension List[Extension] | None

Additional content defined by implementations

None
value Annotated[float | Decimal, BeforeValidator] | None

Numerical value (with implicit precision)

None
currency Annotated[str | String | Code, BeforeValidator] | None

ISO 4217 Currency code

None

MoneyQuantity

Path: fhircraft.fhir.resources.datatypes.R4.complex.money_quantity.MoneyQuantity

Bases: Quantity

An amount of money.

Parameters:

Name Type Description Default
id str | None

Unique id for inter-element referencing

None
extension List[Extension] | None

Additional content defined by implementations

None
value Annotated[float | Decimal, BeforeValidator] | None

Numerical value (with implicit precision)

None
comparator Annotated[str | String | Code, BeforeValidator] | None

< | <= | >= | > - how to understand the value

None
unit Annotated[str | String, BeforeValidator] | None

Unit representation

None
system Annotated[str | Uri, BeforeValidator] | None

System that defines coded unit form

None
code Annotated[str | String | Code, BeforeValidator] | None

Coded form of the unit

None

Narrative

Path: fhircraft.fhir.resources.datatypes.R4.complex.narrative.Narrative

Bases: Element

Human-readable summary of the resource (essential clinical and business information)

Parameters:

Name Type Description Default
id str | None

Unique id for inter-element referencing

None
extension List[Extension] | None

Additional content defined by implementations

None
status Annotated[str | String | Code, BeforeValidator] | None

generated | extensions | additional | empty

None
div str | None

Limited xhtml content

None

ParameterDefinition

Path: fhircraft.fhir.resources.datatypes.R4.complex.parameter_definition.ParameterDefinition

Bases: Element

Definition of a parameter to a module

Parameters:

Name Type Description Default
id str | None

Unique id for inter-element referencing

None
extension List[Extension] | None

Additional content defined by implementations

None
name Annotated[str | String | Code, BeforeValidator] | None

Name used to access the parameter value

None
use Annotated[str | String | Code, BeforeValidator] | None

in | out

None
min Annotated[int | Integer, BeforeValidator] | None

Minimum cardinality

None
max Annotated[str | String, BeforeValidator] | None

Maximum cardinality (a number of *)

None
documentation Annotated[str | String, BeforeValidator] | None

A brief description of the parameter

None
type Annotated[str | String | Code, BeforeValidator] | None

What type of value

None
profile Annotated[str | Canonical, BeforeValidator] | None

What profile the value is expected to be

None

Period

Path: fhircraft.fhir.resources.datatypes.R4.complex.period.Period

Bases: Element

time range defined by start and end date/time

Parameters:

Name Type Description Default
id str | None

Unique id for inter-element referencing

None
extension List[Extension] | None

Additional content defined by implementations

None
start Annotated[datetime | date | str | DateTime, BeforeValidator] | None

Starting time with inclusive boundary

None
end Annotated[datetime | date | str | DateTime, BeforeValidator] | None

End time with inclusive boundary, if not ongoing

None

Population

Path: fhircraft.fhir.resources.datatypes.R4.complex.population.Population

Bases: BackboneElement

A definition of a set of people that apply to some clinically related context, for example people contraindicated for a certain medication

Parameters:

Name Type Description Default
id str | None

Unique id for inter-element referencing

None
extension List[Extension] | None

Additional content defined by implementations

None
modifierExtension List[Extension] | None

Extensions that cannot be ignored even if unrecognized

None
ageRange Range | None

The age of the specific population

None
ageCodeableConcept CodeableConcept | None

The age of the specific population

None
gender CodeableConcept | None

The gender of the specific population

None
race CodeableConcept | None

Race of the specific population

None
physiologicalCondition CodeableConcept | None

The existing physiological conditions of the specific population to which this applies

None

ProdCharacteristic

Path: fhircraft.fhir.resources.datatypes.R4.complex.prod_characteristic.ProdCharacteristic

Bases: BackboneElement

The marketing status describes the date when a medicinal product is actually put on the market or the date as of which it is no longer available

Parameters:

Name Type Description Default
id str | None

Unique id for inter-element referencing

None
extension List[Extension] | None

Additional content defined by implementations

None
modifierExtension List[Extension] | None

Extensions that cannot be ignored even if unrecognized

None
height Quantity | None

Where applicable, the height can be specified using a numerical value and its unit of measurement The unit of measurement shall be specified in accordance with ISO 11240 and the resulting terminology The symbol and the symbol identifier shall be used

None
width Quantity | None

Where applicable, the width can be specified using a numerical value and its unit of measurement The unit of measurement shall be specified in accordance with ISO 11240 and the resulting terminology The symbol and the symbol identifier shall be used

None
depth Quantity | None

Where applicable, the depth can be specified using a numerical value and its unit of measurement The unit of measurement shall be specified in accordance with ISO 11240 and the resulting terminology The symbol and the symbol identifier shall be used

None
weight Quantity | None

Where applicable, the weight can be specified using a numerical value and its unit of measurement The unit of measurement shall be specified in accordance with ISO 11240 and the resulting terminology The symbol and the symbol identifier shall be used

None
nominalVolume Quantity | None

Where applicable, the nominal volume can be specified using a numerical value and its unit of measurement The unit of measurement shall be specified in accordance with ISO 11240 and the resulting terminology The symbol and the symbol identifier shall be used

None
externalDiameter Quantity | None

Where applicable, the external diameter can be specified using a numerical value and its unit of measurement The unit of measurement shall be specified in accordance with ISO 11240 and the resulting terminology The symbol and the symbol identifier shall be used

None
shape Annotated[str | String, BeforeValidator] | None

Where applicable, the shape can be specified An appropriate controlled vocabulary shall be used The term and the term identifier shall be used

None
color List[Annotated[str | String, BeforeValidator]] | None

Where applicable, the color can be specified An appropriate controlled vocabulary shall be used The term and the term identifier shall be used

None
imprint List[Annotated[str | String, BeforeValidator]] | None

Where applicable, the imprint can be specified as text

None
image List[Attachment] | None

Where applicable, the image can be provided The format of the image attachment shall be specified by regional implementations

None
scoring CodeableConcept | None

Where applicable, the scoring can be specified An appropriate controlled vocabulary shall be used The term and the term identifier shall be used

None

ProductShelfLife

Path: fhircraft.fhir.resources.datatypes.R4.complex.product_shelf_life.ProductShelfLife

Bases: BackboneElement

The shelf-life and storage information for a medicinal product item or container can be described using this class

Parameters:

Name Type Description Default
id str | None

Unique id for inter-element referencing

None
extension List[Extension] | None

Additional content defined by implementations

None
modifierExtension List[Extension] | None

Extensions that cannot be ignored even if unrecognized

None
identifier Identifier | None

Unique identifier for the packaged Medicinal Product

None
type CodeableConcept | None

This describes the shelf life, taking into account various scenarios such as shelf life of the packaged Medicinal Product itself, shelf life after transformation where necessary and shelf life after the first opening of a bottle, etc. The shelf life type shall be specified using an appropriate controlled vocabulary The controlled term and the controlled term identifier shall be specified

None
period Quantity | None

The shelf life time period can be specified using a numerical value for the period of time and its unit of time measurement The unit of measurement shall be specified in accordance with ISO 11240 and the resulting terminology The symbol and the symbol identifier shall be used

None
specialPrecautionsForStorage List[CodeableConcept] | None

Special precautions for storage, if any, can be specified using an appropriate controlled vocabulary The controlled term and the controlled term identifier shall be specified

None

Quantity

Path: fhircraft.fhir.resources.datatypes.R4.complex.quantity.Quantity

Bases: Element

A measured or measurable amount

Parameters:

Name Type Description Default
id str | None

Unique id for inter-element referencing

None
extension List[Extension] | None

Additional content defined by implementations

None
value Annotated[float | Decimal, BeforeValidator] | None

Numerical value (with implicit precision)

None
comparator Annotated[str | String | Code, BeforeValidator] | None

< | <= | >= | > - how to understand the value

None
unit Annotated[str | String, BeforeValidator] | None

Unit representation

None
system Annotated[str | Uri, BeforeValidator] | None

System that defines coded unit form

None
code Annotated[str | String | Code, BeforeValidator] | None

Coded form of the unit

None

Range

Path: fhircraft.fhir.resources.datatypes.R4.complex.range.Range

Bases: Element

Set of values bounded by low and high

Parameters:

Name Type Description Default
id str | None

Unique id for inter-element referencing

None
extension List[Extension] | None

Additional content defined by implementations

None
low Quantity | None

Low limit

None
high Quantity | None

High limit

None

Ratio

Path: fhircraft.fhir.resources.datatypes.R4.complex.ratio.Ratio

Bases: Element

A ratio of two Quantity values - a numerator and a denominator

Parameters:

Name Type Description Default
id str | None

Unique id for inter-element referencing

None
extension List[Extension] | None

Additional content defined by implementations

None
numerator Quantity | None

Numerator value

None
denominator Quantity | None

Denominator value

None

Reference

Path: fhircraft.fhir.resources.datatypes.R4.complex.reference.Reference

Bases: Element

A reference from one resource to another

Parameters:

Name Type Description Default
id str | None

Unique id for inter-element referencing

None
extension List[Extension] | None

Additional content defined by implementations

None
reference Annotated[str | String, BeforeValidator] | None

Literal reference, Relative, internal or absolute URL

None
type Annotated[str | Uri, BeforeValidator] | None

Type the reference refers to (e.g. "Patient")

None
identifier Identifier | None

Logical reference, when literal reference is not known

None
display Annotated[str | String, BeforeValidator] | None

Text alternative for the resource

None

RelatedArtifact

Path: fhircraft.fhir.resources.datatypes.R4.complex.related_artifact.RelatedArtifact

Bases: Element

Related artifacts for a knowledge resource

Parameters:

Name Type Description Default
id str | None

Unique id for inter-element referencing

None
extension List[Extension] | None

Additional content defined by implementations

None
type Annotated[str | String | Code, BeforeValidator] | None

documentation | justification | citation | predecessor | successor | derived-from | depends-on | composed-of

None
label Annotated[str | String, BeforeValidator] | None

Short label

None
display Annotated[str | String, BeforeValidator] | None

Brief description of the related artifact

None
citation Annotated[str | Markdown, BeforeValidator] | None

Bibliographic citation for the artifact

None
url Annotated[str | Url, BeforeValidator] | None

Where the artifact can be accessed

None
document Attachment | None

What document is being referenced

None
resource Annotated[str | Canonical, BeforeValidator] | None

What resource is being referenced

None

SampledData

Path: fhircraft.fhir.resources.datatypes.R4.complex.sampled_data.SampledData

Bases: Element

A series of measurements taken by a device

Parameters:

Name Type Description Default
id str | None

Unique id for inter-element referencing

None
extension List[Extension] | None

Additional content defined by implementations

None
origin Quantity | None

Zero value and units

None
period Annotated[float | Decimal, BeforeValidator] | None

Number of milliseconds between samples

None
factor Annotated[float | Decimal, BeforeValidator] | None

Multiply data by this before adding to origin

None
lowerLimit Annotated[float | Decimal, BeforeValidator] | None

Lower limit of detection

None
upperLimit Annotated[float | Decimal, BeforeValidator] | None

Upper limit of detection

None
dimensions Annotated[int | PositiveInt, BeforeValidator] | None

Number of sample points at each time point

None
data Annotated[str | String, BeforeValidator] | None

decimal values with spaces, or "E" | "U" | "L"

None

Signature

Path: fhircraft.fhir.resources.datatypes.R4.complex.signature.Signature

Bases: Element

A Signature - XML DigSig, JWS, Graphical image of signature, etc.

Parameters:

Name Type Description Default
id str | None

Unique id for inter-element referencing

None
extension List[Extension] | None

Additional content defined by implementations

None
type List[Coding] | None

Indication of the reason the entity signed the object(s)

None
when Annotated[datetime | Instant, BeforeValidator] | None

When the signature was created

None
who Reference | None

Who signed

None
onBehalfOf Reference | None

The party represented

None
targetFormat Annotated[str | String | Code, BeforeValidator] | None

The technical format of the signed resources

None
sigFormat Annotated[str | String | Code, BeforeValidator] | None

The technical format of the signature

None
data Annotated[str | Base64Binary, BeforeValidator] | None

The actual signature content (XML DigSig. JWS, picture, etc.)

None

SimpleQuantity

Path: fhircraft.fhir.resources.datatypes.R4.complex.simple_quantity.SimpleQuantity

Bases: Quantity

A fixed quantity (no comparator)

Parameters:

Name Type Description Default
id str | None

Unique id for inter-element referencing

None
extension List[Extension] | None

Additional content defined by implementations

None
value Annotated[float | Decimal, BeforeValidator] | None

Numerical value (with implicit precision)

None
comparator Annotated[str | String | Code, BeforeValidator] | None

< | <= | >= | > - how to understand the value

None
unit Annotated[str | String, BeforeValidator] | None

Unit representation

None
system Annotated[str | Uri, BeforeValidator] | None

System that defines coded unit form

None
code Annotated[str | String | Code, BeforeValidator] | None

Coded form of the unit

None

SubstanceAmount

Path: fhircraft.fhir.resources.datatypes.R4.complex.substance_amount.SubstanceAmount

Bases: BackboneElement

Chemical substances are a single substance type whose primary defining element is the molecular structure. Chemical substances shall be defined on the basis of their complete covalent molecular structure; the presence of a salt (counter-ion) and/or solvates (water, alcohols) is also captured. Purity, grade, physical form or particle size are not taken into account in the definition of a chemical substance or in the assignment of a Substance ID

Parameters:

Name Type Description Default
id str | None

Unique id for inter-element referencing

None
extension List[Extension] | None

Additional content defined by implementations

None
modifierExtension List[Extension] | None

Extensions that cannot be ignored even if unrecognized

None
amountQuantity Quantity | None

Used to capture quantitative values for a variety of elements. If only limits are given, the arithmetic mean would be the average. If only a single definite value for a given element is given, it would be captured in this field

None
amountRange Range | None

Used to capture quantitative values for a variety of elements. If only limits are given, the arithmetic mean would be the average. If only a single definite value for a given element is given, it would be captured in this field

None
amountString Annotated[str | String, BeforeValidator] | None

Used to capture quantitative values for a variety of elements. If only limits are given, the arithmetic mean would be the average. If only a single definite value for a given element is given, it would be captured in this field

None
amountType CodeableConcept | None

Most elements that require a quantitative value will also have a field called amount type. Amount type should always be specified because the actual value of the amount is often dependent on it. EXAMPLE: In capturing the actual relative amounts of substances or molecular fragments it is essential to indicate whether the amount refers to a mole ratio or weight ratio. For any given element an effort should be made to use same the amount type for all related definitional elements

None
amountText Annotated[str | String, BeforeValidator] | None

A textual comment on a numeric value

None
referenceRange Element | None

Reference range of possible or expected values

None

Timing

Path: fhircraft.fhir.resources.datatypes.R4.complex.timing.Timing

Bases: BackboneElement

A timing schedule that specifies an event that may occur multiple times

Parameters:

Name Type Description Default
id str | None

Unique id for inter-element referencing

None
extension List[Extension] | None

Additional content defined by implementations

None
modifierExtension List[Extension] | None

Extensions that cannot be ignored even if unrecognized

None
event List[Annotated[datetime | date | str | DateTime, BeforeValidator]] | None

When the event occurs

None
repeat TimingRepeat | None

When the event is to occur

None
code CodeableConcept | None

BID | TID | QID | AM | PM | QD | QOD | +

None

TimingRepeat

Path: fhircraft.fhir.resources.datatypes.R4.complex.timing.TimingRepeat

Bases: BackboneElement

When the event is to occur

Parameters:

Name Type Description Default
id str | None

Unique id for inter-element referencing

None
extension List[Extension] | None

Additional content defined by implementations

None
modifierExtension List[Extension] | None

Extensions that cannot be ignored even if unrecognized

None
boundsDuration Duration | None

Length/Range of lengths, or (Start and/or end) limits

None
boundsRange Range | None

Length/Range of lengths, or (Start and/or end) limits

None
boundsPeriod Period | None

Length/Range of lengths, or (Start and/or end) limits

None
count Annotated[int | PositiveInt, BeforeValidator] | None

Number of times to repeat

None
countMax Annotated[int | PositiveInt, BeforeValidator] | None

Maximum number of times to repeat

None
duration Annotated[float | Decimal, BeforeValidator] | None

How long when it happens

None
durationMax Annotated[float | Decimal, BeforeValidator] | None

How long when it happens

None
durationUnit Annotated[str | String | Code, BeforeValidator] | None

s | min | h | d | wk | mo | a

None
frequency Annotated[int | PositiveInt, BeforeValidator] | None

Event occurs frequency times per period

None
frequencyMax Annotated[int | PositiveInt, BeforeValidator] | None

Event occurs up to frequencyMax times per period

None
period Annotated[float | Decimal, BeforeValidator] | None

Event occurs frequency times per period

None
periodMax Annotated[float | Decimal, BeforeValidator] | None

Event occurs up to periodMax times per period

None
periodUnit Annotated[str | String | Code, BeforeValidator] | None

s | min | h | d | wk | mo | a

None
dayOfWeek List[Annotated[str | String | Code, BeforeValidator]] | None

mon | tue | wed | thu | fri | sat | sun

None
timeOfDay List[Annotated[time | Time, BeforeValidator]] | None

Specified time of day for action

None
when List[Annotated[str | String | Code, BeforeValidator]] | None

code for time period of occurrence

None
offset Annotated[int | UnsignedInt, BeforeValidator] | None

Minutes from event (before or after)

None

TriggerDefinition

Path: fhircraft.fhir.resources.datatypes.R4.complex.trigger_definition.TriggerDefinition

Bases: Element

Defines an expected trigger for a module

Parameters:

Name Type Description Default
id str | None

Unique id for inter-element referencing

None
extension List[Extension] | None

Additional content defined by implementations

None
type Annotated[str | String | Code, BeforeValidator] | None

named-event | periodic | data-changed | data-added | data-modified | data-removed | data-accessed | data-access-ended

None
name Annotated[str | String, BeforeValidator] | None

Name or URI that identifies the event

None
timingTiming Timing | None

Timing of the event

None
timingReference Reference | None

Timing of the event

None
timingDate Annotated[date | str | Date, BeforeValidator] | None

Timing of the event

None
timingDateTime Annotated[datetime | date | str | DateTime, BeforeValidator] | None

Timing of the event

None
data List[DataRequirement] | None

Triggering data of the event (multiple = 'and')

None
condition Expression | None

Whether the event triggers (boolean expression)

None

UsageContext

Path: fhircraft.fhir.resources.datatypes.R4.complex.usage_context.UsageContext

Bases: Element

Describes the context of use for a conformance or knowledge resource

Parameters:

Name Type Description Default
id str | None

Unique id for inter-element referencing

None
extension List[Extension] | None

Additional content defined by implementations

None
code Coding | None

Type of context being specified

None
valueCodeableConcept CodeableConcept | None

Value that defines the context

None
valueQuantity Quantity | None

Value that defines the context

None
valueRange Range | None

Value that defines the context

None
valueReference Reference | None

Value that defines the context

None

Xhtml

Path: fhircraft.fhir.resources.datatypes.R4.complex.xhtml.Xhtml

Bases: Element

Primitive Type xhtml

Parameters:

Name Type Description Default
id str | None

Unique id for inter-element referencing

None
extension List[ForwardRef] | None

Additional content defined by implementations

None
value Annotated[str | String, BeforeValidator] | None

Actual xhtml

None