Release 5 Draft Ballot

This page is part of the FHIR Specification (v4.6.0: R5 Draft Ballot). 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: R5 R4B R4 R3 R2

StructureDefinition: elementdefinition-de

FHIR Infrastructure Work Group Maturity Level: 1Trial UseUse Context: Any

The official URL for this profile is:

http://hl7.org/fhir/StructureDefinition/elementdefinition-de

Identifies how the ElementDefinition data type is used when it appears within a data element

This profile was published on Sat, Feb 28, 2015 00:00+1100 as a draft by Health Level Seven International (Orders and Observations).

Formal Views of Profile Content

Description of Profiles, Differentials, Snapshots, and how the XML and JSON presentations work.

This structure is derived from ElementDefinition.

This structure is derived from ElementDefinition.

NameFlagsCard.TypeDescription & Constraintsdoco
.. ElementDefinition I0..*ElementDefinitionDefinition of an element in a resource or extension
... id 0..1stringUnique id for inter-element referencing
... extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
... elementdefinition-question 0..*stringPrompt for element phrased as question
URL: http://hl7.org/fhir/StructureDefinition/elementdefinition-question
... elementdefinition-allowedUnits 0..1CodeableConcept, canonical(ValueSet)Units to use for measured value
URL: http://hl7.org/fhir/StructureDefinition/elementdefinition-allowedUnits
Binding: UCUM Codes (required)
... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
... path Σ1..1stringPath of the element in the hierarchy of elements
... sliceName Σ0..1stringName for this particular element (in a set of slices)
... sliceIsConstraining Σ0..1booleanIf this slice definition constrains an inherited slice definition (or not)
... label Σ0..1stringName for element to display with or prompt for element
... code Σ0..*CodingCorresponding codes in terminologies
Binding: LOINC Codes (example)
... definition Σ0..1markdownFull formal definition as narrative text
... comment Σ0..1markdownComments about the use of this element
... requirements Σ0..1markdownWhy this resource has been created
... alias Σ0..*stringOther names
... min ΣI0..1unsignedIntMinimum Cardinality
... max ΣI0..1stringMaximum Cardinality (a number or *)
... base Σ0..1ElementBase definition information for tools
.... id 0..1stringUnique id for inter-element referencing
.... extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
.... path Σ1..1stringPath that identifies the base element
.... min Σ1..1unsignedIntMin cardinality of the base element
.... max Σ1..1stringMax cardinality of the base element
... type ΣI0..*ElementData type and Profile for this element
.... id 0..1stringUnique id for inter-element referencing
.... extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
.... code Σ1..1uriData type or Resource (reference to definition)
Binding: FHIRDefinedType (extensible)
.... targetProfile Σ0..*canonical(StructureDefinition | ImplementationGuide)Profile (StructureDefinition or IG) on the Reference/canonical target - one must apply
.... versioning Σ0..1codeeither | independent | specific
Binding: ReferenceVersionRules (required)
... defaultValue[x] ΣI0..1Specified value if missing from instance
.... defaultValueBase64Binarybase64Binary
.... defaultValueBooleanboolean
.... defaultValueCanonicalcanonical(Any)
.... defaultValueCodecode
.... defaultValueDatedate
.... defaultValueDateTimedateTime
.... defaultValueDecimaldecimal
.... defaultValueIdid
.... defaultValueInstantinstant
.... defaultValueIntegerinteger
.... defaultValueInteger64integer64
.... defaultValueMarkdownmarkdown
.... defaultValueOidoid
.... defaultValuePositiveIntpositiveInt
.... defaultValueStringstring
.... defaultValueTimetime
.... defaultValueUnsignedIntunsignedInt
.... defaultValueUriuri
.... defaultValueUrlurl
.... defaultValueUuiduuid
.... defaultValueAddressAddress
.... defaultValueAgeAge
.... defaultValueAnnotationAnnotation
.... defaultValueAttachmentAttachment
.... defaultValueCodeableConceptCodeableConcept
.... defaultValueCodingCoding
.... defaultValueContactPointContactPoint
.... defaultValueCountCount
.... defaultValueDistanceDistance
.... defaultValueDurationDuration
.... defaultValueHumanNameHumanName
.... defaultValueIdentifierIdentifier
.... defaultValueMoneyMoney
.... defaultValuePeriodPeriod
.... defaultValueQuantityQuantity
.... defaultValueRangeRange
.... defaultValueRatioRatio
.... defaultValueReferenceReference(Any)
.... defaultValueSampledDataSampledData
.... defaultValueSignatureSignature
.... defaultValueTimingTiming
.... defaultValueContactDetailContactDetail
.... defaultValueContributorContributor
.... defaultValueDataRequirementDataRequirement
.... defaultValueExpressionExpression
.... defaultValueParameterDefinitionParameterDefinition
.... defaultValueRelatedArtifactRelatedArtifact
.... defaultValueTriggerDefinitionTriggerDefinition
.... defaultValueUsageContextUsageContext
.... defaultValueDosageDosage
.... defaultValueMetaMeta
... meaningWhenMissing ΣI0..1markdownImplicit meaning when this element is missing
... orderMeaning Σ0..1stringWhat the order of the elements means
... example Σ0..*ElementExample value (as defined for type)
.... id 0..1stringUnique id for inter-element referencing
.... extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
.... label Σ1..1stringDescribes the purpose of this example
.... value[x] Σ1..1Value of Example (one of allowed types)
..... valueBase64Binarybase64Binary
..... valueBooleanboolean
..... valueCanonicalcanonical(Any)
..... valueCodecode
..... valueDatedate
..... valueDateTimedateTime
..... valueDecimaldecimal
..... valueIdid
..... valueInstantinstant
..... valueIntegerinteger
..... valueInteger64integer64
..... valueMarkdownmarkdown
..... valueOidoid
..... valuePositiveIntpositiveInt
..... valueStringstring
..... valueTimetime
..... valueUnsignedIntunsignedInt
..... valueUriuri
..... valueUrlurl
..... valueUuiduuid
..... valueAddressAddress
..... valueAgeAge
..... valueAnnotationAnnotation
..... valueAttachmentAttachment
..... valueCodeableConceptCodeableConcept
..... valueCodingCoding
..... valueContactPointContactPoint
..... valueCountCount
..... valueDistanceDistance
..... valueDurationDuration
..... valueHumanNameHumanName
..... valueIdentifierIdentifier
..... valueMoneyMoney
..... valuePeriodPeriod
..... valueQuantityQuantity
..... valueRangeRange
..... valueRatioRatio
..... valueReferenceReference(Any)
..... valueSampledDataSampledData
..... valueSignatureSignature
..... valueTimingTiming
..... valueContactDetailContactDetail
..... valueContributorContributor
..... valueDataRequirementDataRequirement
..... valueExpressionExpression
..... valueParameterDefinitionParameterDefinition
..... valueRelatedArtifactRelatedArtifact
..... valueTriggerDefinitionTriggerDefinition
..... valueUsageContextUsageContext
..... valueDosageDosage
..... valueMetaMeta
... minValue[x] Σ0..1Minimum Allowed Value (for some types)
.... minValueDatedate
.... minValueDateTimedateTime
.... minValueInstantinstant
.... minValueTimetime
.... minValueDecimaldecimal
.... minValueIntegerinteger
.... minValueInteger64integer64
.... minValuePositiveIntpositiveInt
.... minValueUnsignedIntunsignedInt
.... minValueQuantityQuantity
... maxValue[x] Σ0..1Maximum Allowed Value (for some types)
.... maxValueDatedate
.... maxValueDateTimedateTime
.... maxValueInstantinstant
.... maxValueTimetime
.... maxValueDecimaldecimal
.... maxValueIntegerinteger
.... maxValueInteger64integer64
.... maxValuePositiveIntpositiveInt
.... maxValueUnsignedIntunsignedInt
.... maxValueQuantityQuantity
... maxLength Σ0..1integerMax length for strings
... condition Σ0..*idReference to invariant about presence
... constraint ΣI0..*ElementCondition that must evaluate to true
.... id 0..1stringUnique id for inter-element referencing
.... extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
.... key ΣI1..1idTarget of 'condition' reference above
.... requirements Σ0..1stringWhy this constraint is necessary or appropriate
.... severity Σ1..1codeerror | warning
Binding: ConstraintSeverity (required)
.... human Σ1..1stringHuman description of constraint
.... expression Σ0..1stringFHIRPath expression of constraint
.... xpath Σ0..1stringXPath expression of constraint
.... source Σ0..1canonical(StructureDefinition)Reference to original source of constraint
... mustSupport Σ0..1booleanIf the element must be supported
... isModifierReason Σ0..1stringReason that this element is marked as a modifier
... binding ΣI0..1ElementValueSet details if this is coded
.... id 0..1stringUnique id for inter-element referencing
.... extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
.... strength Σ1..1coderequired | extensible | preferred | example
Binding: BindingStrength (required)
.... description Σ0..1stringHuman explanation of the value set
.... valueSet ΣI0..1canonical(ValueSet)Source of value set
... mapping Σ0..*ElementMap element to another set of definitions
.... id 0..1stringUnique id for inter-element referencing
.... extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
.... identity Σ1..1idReference to mapping declaration
.... language Σ0..1codeComputable language of mapping
Binding: MimeType (required): BCP 13 (RFCs 2045, 2046, 2047, 4288, 4289 and 2049)

.... map Σ1..1stringDetails of the mapping
.... comment Σ0..1stringComments about the mapping or its use

doco Documentation for this format
<!-- DataElement constraint on ElementDefinition data type -->doco

<ElementDefinition xmlns="http://hl7.org/fhir"
>
  <!-- from Element: extension -->
 <modifierExtension><!-- ?? 0..* Extension  Extensions that cannot be ignored even if unrecognized  --></modifierExtension>
 <path value="[string]"/><!-- ?? 1..1 Path of the element in the hierarchy of elements -->
 <representation value="[code]"/><!-- ?? 0..0 xmlAttr | xmlText | typeAttr | cdaText | xhtml -->
 <sliceName value="[string]"/><!-- ?? 0..1 Name for this particular element (in a set of slices) -->
 <sliceIsConstraining value="[boolean]"/><!-- ?? 0..1 
     If this slice definition constrains an inherited slice definition (or not) -->
 <label value="[string]"/><!-- ?? 0..1 Name for element to display with or prompt for element -->
 <code><!-- ?? 0..* Coding Corresponding codes in terminologies --></code>
 <slicing> ?? 0..0 Element  <!-- ?? 0..0 This element is sliced - slices follow -->
 </slicing>
 <short value="[string]"/><!-- ?? 0..0 Concise definition for space-constrained presentation -->
 <definition value="[markdown]"/><!-- ?? 0..1 Full formal definition as narrative text -->
 <comment value="[markdown]"/><!-- ?? 0..1 Comments about the use of this element -->
 <requirements value="[markdown]"/><!-- ?? 0..1 Why this resource has been created -->
 <alias value="[string]"/><!-- ?? 0..* Other names -->
 <min value="[unsignedInt]"/><!-- ?? 0..1 Minimum Cardinality -->
 <max value="[string]"/><!-- ?? 0..1 Maximum Cardinality (a number or *) -->
 <base> ?? 0..1 Element  <!-- ?? 0..1 Base definition information for tools -->
  <path value="[string]"/><!-- ?? 1..1 Path that identifies the base element -->
  <min value="[unsignedInt]"/><!-- ?? 1..1 Min cardinality of the base element -->
  <max value="[string]"/><!-- ?? 1..1 Max cardinality of the base element -->
 </base>
 <contentReference value="[uri]"/><!-- ?? 0..0 Reference to definition of content for the element -->
 <type> ?? 0..* Element  <!-- ?? 0..* Data type and Profile for this element -->
  <code value="[uri]"/><!-- ?? 1..1 Data type or Resource (reference to definition) -->
  <profile value="[canonical]"/><!-- ?? 0..0 Profiles (StructureDefinition or IG) - one must apply -->
  <targetProfile value="[canonical]"/><!-- ?? 0..* 
      Profile (StructureDefinition or IG) on the Reference/canonical target - one must apply -->
  <aggregation value="[code]"/><!-- ?? 0..0 contained | referenced | bundled - how aggregated -->
  <versioning value="[code]"/><!-- ?? 0..1 either | independent | specific -->
 </type>
 <defaultValue[x]><!-- ?? 0..1 base64Binary|boolean|canonical|
   code|date|dateTime|decimal|id|instant|integer|integer64|markdown|oid|
   positiveInt|string|time|unsignedInt|uri|url|uuid|Address|Age|Annotation|
   Attachment|CodeableConcept|Coding|ContactPoint|Count|Distance|Duration|
   HumanName|Identifier|Money|Period|Quantity|Range|Ratio|Reference|SampledData|
   Signature|Timing|ContactDetail|Contributor|DataRequirement|Expression|
   ParameterDefinition|RelatedArtifact|TriggerDefinition|UsageContext|Dosage|
   Meta Specified value if missing from instance --></defaultValue[x]>
 <meaningWhenMissing value="[markdown]"/><!-- ?? 0..1 Implicit meaning when this element is missing -->
 <orderMeaning value="[string]"/><!-- ?? 0..1 What the order of the elements means -->
 <fixed[x]><!-- ?? 0..0 base64Binary|boolean|canonical|code|date|
   dateTime|decimal|id|instant|integer|integer64|markdown|oid|positiveInt|string|
   time|unsignedInt|uri|url|uuid|Address|Age|Annotation|Attachment|
   CodeableConcept|Coding|ContactPoint|Count|Distance|Duration|HumanName|
   Identifier|Money|Period|Quantity|Range|Ratio|Reference|SampledData|Signature|
   Timing|ContactDetail|Contributor|DataRequirement|Expression|
   ParameterDefinition|RelatedArtifact|TriggerDefinition|UsageContext|Dosage|
   Meta Value must be exactly this --></fixed[x]>
 <pattern[x]><!-- ?? 0..0 base64Binary|boolean|canonical|code|
   date|dateTime|decimal|id|instant|integer|integer64|markdown|oid|positiveInt|
   string|time|unsignedInt|uri|url|uuid|Address|Age|Annotation|Attachment|
   CodeableConcept|Coding|ContactPoint|Count|Distance|Duration|HumanName|
   Identifier|Money|Period|Quantity|Range|Ratio|Reference|SampledData|Signature|
   Timing|ContactDetail|Contributor|DataRequirement|Expression|
   ParameterDefinition|RelatedArtifact|TriggerDefinition|UsageContext|Dosage|
   Meta Value must have at least these property values --></pattern[x]>
 <example> ?? 0..* Element  <!-- ?? 0..* Example value (as defined for type) -->
  <label value="[string]"/><!-- ?? 1..1 Describes the purpose of this example -->
  <value[x]><!-- ?? 1..1 base64Binary|boolean|canonical|
    code|date|dateTime|decimal|id|instant|integer|integer64|markdown|oid|
    positiveInt|string|time|unsignedInt|uri|url|uuid|Address|Age|Annotation|
    Attachment|CodeableConcept|Coding|ContactPoint|Count|Distance|Duration|
    HumanName|Identifier|Money|Period|Quantity|Range|Ratio|Reference|SampledData|
    Signature|Timing|ContactDetail|Contributor|DataRequirement|Expression|
    ParameterDefinition|RelatedArtifact|TriggerDefinition|UsageContext|Dosage|
    Meta Value of Example (one of allowed types) --></value[x]>
 </example>
 <minValue[x]><!-- ?? 0..1 date|dateTime|instant|time|decimal|
   integer|integer64|positiveInt|unsignedInt|Quantity 
     Minimum Allowed Value (for some types) --></minValue[x]>
 <maxValue[x]><!-- ?? 0..1 date|dateTime|instant|time|decimal|
   integer|integer64|positiveInt|unsignedInt|Quantity 
     Maximum Allowed Value (for some types) --></maxValue[x]>
 <maxLength value="[integer]"/><!-- ?? 0..1 Max length for strings -->
 <condition value="[id]"/><!-- ?? 0..* Reference to invariant about presence -->
 <constraint> ?? 0..* Element  <!-- ?? 0..* Condition that must evaluate to true -->
  <key value="[id]"/><!-- ?? 1..1 Target of 'condition' reference above -->
  <requirements value="[string]"/><!-- ?? 0..1 Why this constraint is necessary or appropriate -->
  <severity value="[code]"/><!-- ?? 1..1 error | warning -->
  <human value="[string]"/><!-- ?? 1..1 Human description of constraint -->
  <expression value="[string]"/><!-- ?? 0..1 FHIRPath expression of constraint -->
  <xpath value="[string]"/><!-- ?? 0..1 XPath expression of constraint -->
  <source value="[canonical]"/><!-- ?? 0..1 Reference to original source of constraint -->
 </constraint>
 <mustSupport value="[boolean]"/><!-- ?? 0..1 If the element must be supported -->
 <isModifier value="[boolean]"/><!-- ?? 0..0 If this modifies the meaning of other elements -->
 <isModifierReason value="[string]"/><!-- ?? 0..1 Reason that this element is marked as a modifier -->
 <isSummary value="[boolean]"/><!-- ?? 0..0 Include when _summary = true? -->
 <binding> ?? 0..1 Element  <!-- ?? 0..1 ValueSet details if this is coded -->
  <strength value="[code]"/><!-- ?? 1..1 required | extensible | preferred | example -->
  <description value="[string]"/><!-- ?? 0..1 Human explanation of the value set -->
  <valueSet value="[canonical]"/><!-- ?? 0..1 Source of value set -->
 </binding>
 <mapping> ?? 0..* Element  <!-- ?? 0..* Map element to another set of definitions -->
  <identity value="[id]"/><!-- ?? 1..1 Reference to mapping declaration -->
  <language value="[code]"/><!-- ?? 0..1 Computable language of mapping -->
  <map value="[string]"/><!-- ?? 1..1 Details of the mapping -->
  <comment value="[string]"/><!-- ?? 0..1 Comments about the mapping or its use -->
 </mapping>
</ElementDefinition>
{ // DataElement constraint on ElementDefinition data type
  // from Element: extension
    "extension" : [ //  sliced by value:url  in the specified order, Open 
      { // Prompt for element phrased as question // C?
        // from Element: extension
      },
      { // Units to use for measured value // C?
        // from Element: extension
      }
    ],
    "modifierExtension" : [{ Extension }], // C?Extensions that cannot be ignored even if unrecognized
    "path" : "<string>", // C? R! Path of the element in the hierarchy of elements
    "sliceName" : "<string>", // C?Name for this particular element (in a set of slices)
    "sliceIsConstraining" : <boolean>, // C?If this slice definition constrains an inherited slice definition (or not)
    "label" : "<string>", // C?Name for element to display with or prompt for element
    "code" : [{ Coding }], // C?Corresponding codes in terminologies
    "definition" : "<markdown>", // C?Full formal definition as narrative text
    "comment" : "<markdown>", // C?Comments about the use of this element
    "requirements" : "<markdown>", // C?Why this resource has been created
    "alias" : ["<string>"], // C?Other names
    "min" : "<unsignedInt>", // C?Minimum Cardinality
    "max" : "<string>", // C?Maximum Cardinality (a number or *)
    "base" : { Element }, // C?Base definition information for tools
    "type" : [{ Element }], // C?Data type and Profile for this element
// value[x]: Specified value if missing from instance. One of these 51:
    "defaultValueBase64Binary" : "<base64Binary>", // C?Specified value if missing from instance
    "defaultValueBoolean" : <boolean>, // C?Specified value if missing from instance
    "defaultValueCanonical" : "<canonical>", // C?Specified value if missing from instance
    "defaultValueCode" : "<code>", // C?Specified value if missing from instance
    "defaultValueDate" : "<date>", // C?Specified value if missing from instance
    "defaultValueDateTime" : "<dateTime>", // C?Specified value if missing from instance
    "defaultValueDecimal" : <decimal>, // C?Specified value if missing from instance
    "defaultValueId" : "<id>", // C?Specified value if missing from instance
    "defaultValueInstant" : "<instant>", // C?Specified value if missing from instance
    "defaultValueInteger" : <integer>, // C?Specified value if missing from instance
    "defaultValueInteger64" : "<integer64>", // C?Specified value if missing from instance
    "defaultValueMarkdown" : "<markdown>", // C?Specified value if missing from instance
    "defaultValueOid" : "<oid>", // C?Specified value if missing from instance
    "defaultValuePositiveInt" : "<positiveInt>", // C?Specified value if missing from instance
    "defaultValueString" : "<string>", // C?Specified value if missing from instance
    "defaultValueTime" : "<time>", // C?Specified value if missing from instance
    "defaultValueUnsignedInt" : "<unsignedInt>", // C?Specified value if missing from instance
    "defaultValueUri" : "<uri>", // C?Specified value if missing from instance
    "defaultValueUrl" : "<url>" // C?Specified value if missing from instance
    "defaultValueUuid" : "<uuid>", // C?Specified value if missing from instance
    "defaultValueAddress" : { Address }, // C?Specified value if missing from instance
    "defaultValueAge" : { Age }, // C?Specified value if missing from instance
    "defaultValueAnnotation" : { Annotation }, // C?Specified value if missing from instance
    "defaultValueAttachment" : { Attachment }, // C?Specified value if missing from instance
    "defaultValueCodeableConcept" : { CodeableConcept }, // C?Specified value if missing from instance
    "defaultValueCoding" : { Coding }, // C?Specified value if missing from instance
    "defaultValueContactPoint" : { ContactPoint }, // C?Specified value if missing from instance
    "defaultValueCount" : { Count }, // C?Specified value if missing from instance
    "defaultValueDistance" : { Distance }, // C?Specified value if missing from instance
    "defaultValueDuration" : { Duration }, // C?Specified value if missing from instance
    "defaultValueHumanName" : { HumanName }, // C?Specified value if missing from instance
    "defaultValueIdentifier" : { Identifier }, // C?Specified value if missing from instance
    "defaultValueMoney" : { Money }, // C?Specified value if missing from instance
    "defaultValuePeriod" : { Period }, // C?Specified value if missing from instance
    "defaultValueQuantity" : { Quantity }, // C?Specified value if missing from instance
    "defaultValueRange" : { Range }, // C?Specified value if missing from instance
    "defaultValueRatio" : { Ratio }, // C?Specified value if missing from instance
    "defaultValueReference" : { Reference }, // C?Specified value if missing from instance
    "defaultValueSampledData" : { SampledData }, // C?Specified value if missing from instance
    "defaultValueSignature" : { Signature }, // C?Specified value if missing from instance
    "defaultValueTiming" : { Timing }, // C?Specified value if missing from instance
    "defaultValueContactDetail" : { ContactDetail }, // C?Specified value if missing from instance
    "defaultValueContributor" : { Contributor }, // C?Specified value if missing from instance
    "defaultValueDataRequirement" : { DataRequirement }, // C?Specified value if missing from instance
    "defaultValueExpression" : { Expression }, // C?Specified value if missing from instance
    "defaultValueParameterDefinition" : { ParameterDefinition }, // C?Specified value if missing from instance
    "defaultValueRelatedArtifact" : { RelatedArtifact }, // C?Specified value if missing from instance
    "defaultValueTriggerDefinition" : { TriggerDefinition }, // C?Specified value if missing from instance
    "defaultValueUsageContext" : { UsageContext }, // C?Specified value if missing from instance
    "defaultValueDosage" : { Dosage }, // C?Specified value if missing from instance
    "defaultValueMeta" : { Meta }, // C?Specified value if missing from instance
    "meaningWhenMissing" : "<markdown>", // C?Implicit meaning when this element is missing
    "orderMeaning" : "<string>", // C?What the order of the elements means
// value[x]: Value must be exactly this. One of these 51:
// value[x]: Value must have at least these property values. One of these 51:
    "example" : [{ Element }], // C?Example value (as defined for type)
// value[x]: Minimum Allowed Value (for some types). One of these 10:
    "minValueDate" : "<date>", // C?Minimum Allowed Value (for some types)
    "minValueDateTime" : "<dateTime>", // C?Minimum Allowed Value (for some types)
    "minValueInstant" : "<instant>", // C?Minimum Allowed Value (for some types)
    "minValueTime" : "<time>", // C?Minimum Allowed Value (for some types)
    "minValueDecimal" : <decimal>, // C?Minimum Allowed Value (for some types)
    "minValueInteger" : <integer>, // C?Minimum Allowed Value (for some types)
    "minValueInteger64" : "<integer64>", // C?Minimum Allowed Value (for some types)
    "minValuePositiveInt" : "<positiveInt>", // C?Minimum Allowed Value (for some types)
    "minValueUnsignedInt" : "<unsignedInt>", // C?Minimum Allowed Value (for some types)
    "minValueQuantity" : { Quantity }, // C?Minimum Allowed Value (for some types)
// value[x]: Maximum Allowed Value (for some types). One of these 10:
    "maxValueDate" : "<date>", // C?Maximum Allowed Value (for some types)
    "maxValueDateTime" : "<dateTime>", // C?Maximum Allowed Value (for some types)
    "maxValueInstant" : "<instant>", // C?Maximum Allowed Value (for some types)
    "maxValueTime" : "<time>", // C?Maximum Allowed Value (for some types)
    "maxValueDecimal" : <decimal>, // C?Maximum Allowed Value (for some types)
    "maxValueInteger" : <integer>, // C?Maximum Allowed Value (for some types)
    "maxValueInteger64" : "<integer64>", // C?Maximum Allowed Value (for some types)
    "maxValuePositiveInt" : "<positiveInt>", // C?Maximum Allowed Value (for some types)
    "maxValueUnsignedInt" : "<unsignedInt>", // C?Maximum Allowed Value (for some types)
    "maxValueQuantity" : { Quantity }, // C?Maximum Allowed Value (for some types)
    "maxLength" : <integer>, // C?Max length for strings
    "condition" : ["<id>"], // C?Reference to invariant about presence
    "constraint" : [{ Element }], // C?Condition that must evaluate to true
    "mustSupport" : <boolean>, // C?If the element must be supported
    "isModifierReason" : "<string>", // C?Reason that this element is marked as a modifier
    "binding" : { Element }, // C?ValueSet details if this is coded
    "mapping" : [{ Element }], // C?Map element to another set of definitions
  }

This structure is derived from ElementDefinition.

Differential View

This structure is derived from ElementDefinition.

Snapshot View

NameFlagsCard.TypeDescription & Constraintsdoco
.. ElementDefinition I0..*ElementDefinitionDefinition of an element in a resource or extension
... id 0..1stringUnique id for inter-element referencing
... extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
... elementdefinition-question 0..*stringPrompt for element phrased as question
URL: http://hl7.org/fhir/StructureDefinition/elementdefinition-question
... elementdefinition-allowedUnits 0..1CodeableConcept, canonical(ValueSet)Units to use for measured value
URL: http://hl7.org/fhir/StructureDefinition/elementdefinition-allowedUnits
Binding: UCUM Codes (required)
... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
... path Σ1..1stringPath of the element in the hierarchy of elements
... sliceName Σ0..1stringName for this particular element (in a set of slices)
... sliceIsConstraining Σ0..1booleanIf this slice definition constrains an inherited slice definition (or not)
... label Σ0..1stringName for element to display with or prompt for element
... code Σ0..*CodingCorresponding codes in terminologies
Binding: LOINC Codes (example)
... definition Σ0..1markdownFull formal definition as narrative text
... comment Σ0..1markdownComments about the use of this element
... requirements Σ0..1markdownWhy this resource has been created
... alias Σ0..*stringOther names
... min ΣI0..1unsignedIntMinimum Cardinality
... max ΣI0..1stringMaximum Cardinality (a number or *)
... base Σ0..1ElementBase definition information for tools
.... id 0..1stringUnique id for inter-element referencing
.... extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
.... path Σ1..1stringPath that identifies the base element
.... min Σ1..1unsignedIntMin cardinality of the base element
.... max Σ1..1stringMax cardinality of the base element
... type ΣI0..*ElementData type and Profile for this element
.... id 0..1stringUnique id for inter-element referencing
.... extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
.... code Σ1..1uriData type or Resource (reference to definition)
Binding: FHIRDefinedType (extensible)
.... targetProfile Σ0..*canonical(StructureDefinition | ImplementationGuide)Profile (StructureDefinition or IG) on the Reference/canonical target - one must apply
.... versioning Σ0..1codeeither | independent | specific
Binding: ReferenceVersionRules (required)
... defaultValue[x] ΣI0..1Specified value if missing from instance
.... defaultValueBase64Binarybase64Binary
.... defaultValueBooleanboolean
.... defaultValueCanonicalcanonical(Any)
.... defaultValueCodecode
.... defaultValueDatedate
.... defaultValueDateTimedateTime
.... defaultValueDecimaldecimal
.... defaultValueIdid
.... defaultValueInstantinstant
.... defaultValueIntegerinteger
.... defaultValueInteger64integer64
.... defaultValueMarkdownmarkdown
.... defaultValueOidoid
.... defaultValuePositiveIntpositiveInt
.... defaultValueStringstring
.... defaultValueTimetime
.... defaultValueUnsignedIntunsignedInt
.... defaultValueUriuri
.... defaultValueUrlurl
.... defaultValueUuiduuid
.... defaultValueAddressAddress
.... defaultValueAgeAge
.... defaultValueAnnotationAnnotation
.... defaultValueAttachmentAttachment
.... defaultValueCodeableConceptCodeableConcept
.... defaultValueCodingCoding
.... defaultValueContactPointContactPoint
.... defaultValueCountCount
.... defaultValueDistanceDistance
.... defaultValueDurationDuration
.... defaultValueHumanNameHumanName
.... defaultValueIdentifierIdentifier
.... defaultValueMoneyMoney
.... defaultValuePeriodPeriod
.... defaultValueQuantityQuantity
.... defaultValueRangeRange
.... defaultValueRatioRatio
.... defaultValueReferenceReference(Any)
.... defaultValueSampledDataSampledData
.... defaultValueSignatureSignature
.... defaultValueTimingTiming
.... defaultValueContactDetailContactDetail
.... defaultValueContributorContributor
.... defaultValueDataRequirementDataRequirement
.... defaultValueExpressionExpression
.... defaultValueParameterDefinitionParameterDefinition
.... defaultValueRelatedArtifactRelatedArtifact
.... defaultValueTriggerDefinitionTriggerDefinition
.... defaultValueUsageContextUsageContext
.... defaultValueDosageDosage
.... defaultValueMetaMeta
... meaningWhenMissing ΣI0..1markdownImplicit meaning when this element is missing
... orderMeaning Σ0..1stringWhat the order of the elements means
... example Σ0..*ElementExample value (as defined for type)
.... id 0..1stringUnique id for inter-element referencing
.... extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
.... label Σ1..1stringDescribes the purpose of this example
.... value[x] Σ1..1Value of Example (one of allowed types)
..... valueBase64Binarybase64Binary
..... valueBooleanboolean
..... valueCanonicalcanonical(Any)
..... valueCodecode
..... valueDatedate
..... valueDateTimedateTime
..... valueDecimaldecimal
..... valueIdid
..... valueInstantinstant
..... valueIntegerinteger
..... valueInteger64integer64
..... valueMarkdownmarkdown
..... valueOidoid
..... valuePositiveIntpositiveInt
..... valueStringstring
..... valueTimetime
..... valueUnsignedIntunsignedInt
..... valueUriuri
..... valueUrlurl
..... valueUuiduuid
..... valueAddressAddress
..... valueAgeAge
..... valueAnnotationAnnotation
..... valueAttachmentAttachment
..... valueCodeableConceptCodeableConcept
..... valueCodingCoding
..... valueContactPointContactPoint
..... valueCountCount
..... valueDistanceDistance
..... valueDurationDuration
..... valueHumanNameHumanName
..... valueIdentifierIdentifier
..... valueMoneyMoney
..... valuePeriodPeriod
..... valueQuantityQuantity
..... valueRangeRange
..... valueRatioRatio
..... valueReferenceReference(Any)
..... valueSampledDataSampledData
..... valueSignatureSignature
..... valueTimingTiming
..... valueContactDetailContactDetail
..... valueContributorContributor
..... valueDataRequirementDataRequirement
..... valueExpressionExpression
..... valueParameterDefinitionParameterDefinition
..... valueRelatedArtifactRelatedArtifact
..... valueTriggerDefinitionTriggerDefinition
..... valueUsageContextUsageContext
..... valueDosageDosage
..... valueMetaMeta
... minValue[x] Σ0..1Minimum Allowed Value (for some types)
.... minValueDatedate
.... minValueDateTimedateTime
.... minValueInstantinstant
.... minValueTimetime
.... minValueDecimaldecimal
.... minValueIntegerinteger
.... minValueInteger64integer64
.... minValuePositiveIntpositiveInt
.... minValueUnsignedIntunsignedInt
.... minValueQuantityQuantity
... maxValue[x] Σ0..1Maximum Allowed Value (for some types)
.... maxValueDatedate
.... maxValueDateTimedateTime
.... maxValueInstantinstant
.... maxValueTimetime
.... maxValueDecimaldecimal
.... maxValueIntegerinteger
.... maxValueInteger64integer64
.... maxValuePositiveIntpositiveInt
.... maxValueUnsignedIntunsignedInt
.... maxValueQuantityQuantity
... maxLength Σ0..1integerMax length for strings
... condition Σ0..*idReference to invariant about presence
... constraint ΣI0..*ElementCondition that must evaluate to true
.... id 0..1stringUnique id for inter-element referencing
.... extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
.... key ΣI1..1idTarget of 'condition' reference above
.... requirements Σ0..1stringWhy this constraint is necessary or appropriate
.... severity Σ1..1codeerror | warning
Binding: ConstraintSeverity (required)
.... human Σ1..1stringHuman description of constraint
.... expression Σ0..1stringFHIRPath expression of constraint
.... xpath Σ0..1stringXPath expression of constraint
.... source Σ0..1canonical(StructureDefinition)Reference to original source of constraint
... mustSupport Σ0..1booleanIf the element must be supported
... isModifierReason Σ0..1stringReason that this element is marked as a modifier
... binding ΣI0..1ElementValueSet details if this is coded
.... id 0..1stringUnique id for inter-element referencing
.... extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
.... strength Σ1..1coderequired | extensible | preferred | example
Binding: BindingStrength (required)
.... description Σ0..1stringHuman explanation of the value set
.... valueSet ΣI0..1canonical(ValueSet)Source of value set
... mapping Σ0..*ElementMap element to another set of definitions
.... id 0..1stringUnique id for inter-element referencing
.... extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
.... identity Σ1..1idReference to mapping declaration
.... language Σ0..1codeComputable language of mapping
Binding: MimeType (required): BCP 13 (RFCs 2045, 2046, 2047, 4288, 4289 and 2049)

.... map Σ1..1stringDetails of the mapping
.... comment Σ0..1stringComments about the mapping or its use

doco Documentation for this format

XML Template

<!-- DataElement constraint on ElementDefinition data type -->doco

<ElementDefinition xmlns="http://hl7.org/fhir"
>
  <!-- from Element: extension -->
 <modifierExtension><!-- ?? 0..* Extension  Extensions that cannot be ignored even if unrecognized  --></modifierExtension>
 <path value="[string]"/><!-- ?? 1..1 Path of the element in the hierarchy of elements -->
 <representation value="[code]"/><!-- ?? 0..0 xmlAttr | xmlText | typeAttr | cdaText | xhtml -->
 <sliceName value="[string]"/><!-- ?? 0..1 Name for this particular element (in a set of slices) -->
 <sliceIsConstraining value="[boolean]"/><!-- ?? 0..1 
     If this slice definition constrains an inherited slice definition (or not) -->
 <label value="[string]"/><!-- ?? 0..1 Name for element to display with or prompt for element -->
 <code><!-- ?? 0..* Coding Corresponding codes in terminologies --></code>
 <slicing> ?? 0..0 Element  <!-- ?? 0..0 This element is sliced - slices follow -->
 </slicing>
 <short value="[string]"/><!-- ?? 0..0 Concise definition for space-constrained presentation -->
 <definition value="[markdown]"/><!-- ?? 0..1 Full formal definition as narrative text -->
 <comment value="[markdown]"/><!-- ?? 0..1 Comments about the use of this element -->
 <requirements value="[markdown]"/><!-- ?? 0..1 Why this resource has been created -->
 <alias value="[string]"/><!-- ?? 0..* Other names -->
 <min value="[unsignedInt]"/><!-- ?? 0..1 Minimum Cardinality -->
 <max value="[string]"/><!-- ?? 0..1 Maximum Cardinality (a number or *) -->
 <base> ?? 0..1 Element  <!-- ?? 0..1 Base definition information for tools -->
  <path value="[string]"/><!-- ?? 1..1 Path that identifies the base element -->
  <min value="[unsignedInt]"/><!-- ?? 1..1 Min cardinality of the base element -->
  <max value="[string]"/><!-- ?? 1..1 Max cardinality of the base element -->
 </base>
 <contentReference value="[uri]"/><!-- ?? 0..0 Reference to definition of content for the element -->
 <type> ?? 0..* Element  <!-- ?? 0..* Data type and Profile for this element -->
  <code value="[uri]"/><!-- ?? 1..1 Data type or Resource (reference to definition) -->
  <profile value="[canonical]"/><!-- ?? 0..0 Profiles (StructureDefinition or IG) - one must apply -->
  <targetProfile value="[canonical]"/><!-- ?? 0..* 
      Profile (StructureDefinition or IG) on the Reference/canonical target - one must apply -->
  <aggregation value="[code]"/><!-- ?? 0..0 contained | referenced | bundled - how aggregated -->
  <versioning value="[code]"/><!-- ?? 0..1 either | independent | specific -->
 </type>
 <defaultValue[x]><!-- ?? 0..1 base64Binary|boolean|canonical|
   code|date|dateTime|decimal|id|instant|integer|integer64|markdown|oid|
   positiveInt|string|time|unsignedInt|uri|url|uuid|Address|Age|Annotation|
   Attachment|CodeableConcept|Coding|ContactPoint|Count|Distance|Duration|
   HumanName|Identifier|Money|Period|Quantity|Range|Ratio|Reference|SampledData|
   Signature|Timing|ContactDetail|Contributor|DataRequirement|Expression|
   ParameterDefinition|RelatedArtifact|TriggerDefinition|UsageContext|Dosage|
   Meta Specified value if missing from instance --></defaultValue[x]>
 <meaningWhenMissing value="[markdown]"/><!-- ?? 0..1 Implicit meaning when this element is missing -->
 <orderMeaning value="[string]"/><!-- ?? 0..1 What the order of the elements means -->
 <fixed[x]><!-- ?? 0..0 base64Binary|boolean|canonical|code|date|
   dateTime|decimal|id|instant|integer|integer64|markdown|oid|positiveInt|string|
   time|unsignedInt|uri|url|uuid|Address|Age|Annotation|Attachment|
   CodeableConcept|Coding|ContactPoint|Count|Distance|Duration|HumanName|
   Identifier|Money|Period|Quantity|Range|Ratio|Reference|SampledData|Signature|
   Timing|ContactDetail|Contributor|DataRequirement|Expression|
   ParameterDefinition|RelatedArtifact|TriggerDefinition|UsageContext|Dosage|
   Meta Value must be exactly this --></fixed[x]>
 <pattern[x]><!-- ?? 0..0 base64Binary|boolean|canonical|code|
   date|dateTime|decimal|id|instant|integer|integer64|markdown|oid|positiveInt|
   string|time|unsignedInt|uri|url|uuid|Address|Age|Annotation|Attachment|
   CodeableConcept|Coding|ContactPoint|Count|Distance|Duration|HumanName|
   Identifier|Money|Period|Quantity|Range|Ratio|Reference|SampledData|Signature|
   Timing|ContactDetail|Contributor|DataRequirement|Expression|
   ParameterDefinition|RelatedArtifact|TriggerDefinition|UsageContext|Dosage|
   Meta Value must have at least these property values --></pattern[x]>
 <example> ?? 0..* Element  <!-- ?? 0..* Example value (as defined for type) -->
  <label value="[string]"/><!-- ?? 1..1 Describes the purpose of this example -->
  <value[x]><!-- ?? 1..1 base64Binary|boolean|canonical|
    code|date|dateTime|decimal|id|instant|integer|integer64|markdown|oid|
    positiveInt|string|time|unsignedInt|uri|url|uuid|Address|Age|Annotation|
    Attachment|CodeableConcept|Coding|ContactPoint|Count|Distance|Duration|
    HumanName|Identifier|Money|Period|Quantity|Range|Ratio|Reference|SampledData|
    Signature|Timing|ContactDetail|Contributor|DataRequirement|Expression|
    ParameterDefinition|RelatedArtifact|TriggerDefinition|UsageContext|Dosage|
    Meta Value of Example (one of allowed types) --></value[x]>
 </example>
 <minValue[x]><!-- ?? 0..1 date|dateTime|instant|time|decimal|
   integer|integer64|positiveInt|unsignedInt|Quantity 
     Minimum Allowed Value (for some types) --></minValue[x]>
 <maxValue[x]><!-- ?? 0..1 date|dateTime|instant|time|decimal|
   integer|integer64|positiveInt|unsignedInt|Quantity 
     Maximum Allowed Value (for some types) --></maxValue[x]>
 <maxLength value="[integer]"/><!-- ?? 0..1 Max length for strings -->
 <condition value="[id]"/><!-- ?? 0..* Reference to invariant about presence -->
 <constraint> ?? 0..* Element  <!-- ?? 0..* Condition that must evaluate to true -->
  <key value="[id]"/><!-- ?? 1..1 Target of 'condition' reference above -->
  <requirements value="[string]"/><!-- ?? 0..1 Why this constraint is necessary or appropriate -->
  <severity value="[code]"/><!-- ?? 1..1 error | warning -->
  <human value="[string]"/><!-- ?? 1..1 Human description of constraint -->
  <expression value="[string]"/><!-- ?? 0..1 FHIRPath expression of constraint -->
  <xpath value="[string]"/><!-- ?? 0..1 XPath expression of constraint -->
  <source value="[canonical]"/><!-- ?? 0..1 Reference to original source of constraint -->
 </constraint>
 <mustSupport value="[boolean]"/><!-- ?? 0..1 If the element must be supported -->
 <isModifier value="[boolean]"/><!-- ?? 0..0 If this modifies the meaning of other elements -->
 <isModifierReason value="[string]"/><!-- ?? 0..1 Reason that this element is marked as a modifier -->
 <isSummary value="[boolean]"/><!-- ?? 0..0 Include when _summary = true? -->
 <binding> ?? 0..1 Element  <!-- ?? 0..1 ValueSet details if this is coded -->
  <strength value="[code]"/><!-- ?? 1..1 required | extensible | preferred | example -->
  <description value="[string]"/><!-- ?? 0..1 Human explanation of the value set -->
  <valueSet value="[canonical]"/><!-- ?? 0..1 Source of value set -->
 </binding>
 <mapping> ?? 0..* Element  <!-- ?? 0..* Map element to another set of definitions -->
  <identity value="[id]"/><!-- ?? 1..1 Reference to mapping declaration -->
  <language value="[code]"/><!-- ?? 0..1 Computable language of mapping -->
  <map value="[string]"/><!-- ?? 1..1 Details of the mapping -->
  <comment value="[string]"/><!-- ?? 0..1 Comments about the mapping or its use -->
 </mapping>
</ElementDefinition>

JSON Template

{ // DataElement constraint on ElementDefinition data type
  // from Element: extension
    "extension" : [ //  sliced by value:url  in the specified order, Open 
      { // Prompt for element phrased as question // C?
        // from Element: extension
      },
      { // Units to use for measured value // C?
        // from Element: extension
      }
    ],
    "modifierExtension" : [{ Extension }], // C?Extensions that cannot be ignored even if unrecognized
    "path" : "<string>", // C? R! Path of the element in the hierarchy of elements
    "sliceName" : "<string>", // C?Name for this particular element (in a set of slices)
    "sliceIsConstraining" : <boolean>, // C?If this slice definition constrains an inherited slice definition (or not)
    "label" : "<string>", // C?Name for element to display with or prompt for element
    "code" : [{ Coding }], // C?Corresponding codes in terminologies
    "definition" : "<markdown>", // C?Full formal definition as narrative text
    "comment" : "<markdown>", // C?Comments about the use of this element
    "requirements" : "<markdown>", // C?Why this resource has been created
    "alias" : ["<string>"], // C?Other names
    "min" : "<unsignedInt>", // C?Minimum Cardinality
    "max" : "<string>", // C?Maximum Cardinality (a number or *)
    "base" : { Element }, // C?Base definition information for tools
    "type" : [{ Element }], // C?Data type and Profile for this element
// value[x]: Specified value if missing from instance. One of these 51:
    "defaultValueBase64Binary" : "<base64Binary>", // C?Specified value if missing from instance
    "defaultValueBoolean" : <boolean>, // C?Specified value if missing from instance
    "defaultValueCanonical" : "<canonical>", // C?Specified value if missing from instance
    "defaultValueCode" : "<code>", // C?Specified value if missing from instance
    "defaultValueDate" : "<date>", // C?Specified value if missing from instance
    "defaultValueDateTime" : "<dateTime>", // C?Specified value if missing from instance
    "defaultValueDecimal" : <decimal>, // C?Specified value if missing from instance
    "defaultValueId" : "<id>", // C?Specified value if missing from instance
    "defaultValueInstant" : "<instant>", // C?Specified value if missing from instance
    "defaultValueInteger" : <integer>, // C?Specified value if missing from instance
    "defaultValueInteger64" : "<integer64>", // C?Specified value if missing from instance
    "defaultValueMarkdown" : "<markdown>", // C?Specified value if missing from instance
    "defaultValueOid" : "<oid>", // C?Specified value if missing from instance
    "defaultValuePositiveInt" : "<positiveInt>", // C?Specified value if missing from instance
    "defaultValueString" : "<string>", // C?Specified value if missing from instance
    "defaultValueTime" : "<time>", // C?Specified value if missing from instance
    "defaultValueUnsignedInt" : "<unsignedInt>", // C?Specified value if missing from instance
    "defaultValueUri" : "<uri>", // C?Specified value if missing from instance
    "defaultValueUrl" : "<url>" // C?Specified value if missing from instance
    "defaultValueUuid" : "<uuid>", // C?Specified value if missing from instance
    "defaultValueAddress" : { Address }, // C?Specified value if missing from instance
    "defaultValueAge" : { Age }, // C?Specified value if missing from instance
    "defaultValueAnnotation" : { Annotation }, // C?Specified value if missing from instance
    "defaultValueAttachment" : { Attachment }, // C?Specified value if missing from instance
    "defaultValueCodeableConcept" : { CodeableConcept }, // C?Specified value if missing from instance
    "defaultValueCoding" : { Coding }, // C?Specified value if missing from instance
    "defaultValueContactPoint" : { ContactPoint }, // C?Specified value if missing from instance
    "defaultValueCount" : { Count }, // C?Specified value if missing from instance
    "defaultValueDistance" : { Distance }, // C?Specified value if missing from instance
    "defaultValueDuration" : { Duration }, // C?Specified value if missing from instance
    "defaultValueHumanName" : { HumanName }, // C?Specified value if missing from instance
    "defaultValueIdentifier" : { Identifier }, // C?Specified value if missing from instance
    "defaultValueMoney" : { Money }, // C?Specified value if missing from instance
    "defaultValuePeriod" : { Period }, // C?Specified value if missing from instance
    "defaultValueQuantity" : { Quantity }, // C?Specified value if missing from instance
    "defaultValueRange" : { Range }, // C?Specified value if missing from instance
    "defaultValueRatio" : { Ratio }, // C?Specified value if missing from instance
    "defaultValueReference" : { Reference }, // C?Specified value if missing from instance
    "defaultValueSampledData" : { SampledData }, // C?Specified value if missing from instance
    "defaultValueSignature" : { Signature }, // C?Specified value if missing from instance
    "defaultValueTiming" : { Timing }, // C?Specified value if missing from instance
    "defaultValueContactDetail" : { ContactDetail }, // C?Specified value if missing from instance
    "defaultValueContributor" : { Contributor }, // C?Specified value if missing from instance
    "defaultValueDataRequirement" : { DataRequirement }, // C?Specified value if missing from instance
    "defaultValueExpression" : { Expression }, // C?Specified value if missing from instance
    "defaultValueParameterDefinition" : { ParameterDefinition }, // C?Specified value if missing from instance
    "defaultValueRelatedArtifact" : { RelatedArtifact }, // C?Specified value if missing from instance
    "defaultValueTriggerDefinition" : { TriggerDefinition }, // C?Specified value if missing from instance
    "defaultValueUsageContext" : { UsageContext }, // C?Specified value if missing from instance
    "defaultValueDosage" : { Dosage }, // C?Specified value if missing from instance
    "defaultValueMeta" : { Meta }, // C?Specified value if missing from instance
    "meaningWhenMissing" : "<markdown>", // C?Implicit meaning when this element is missing
    "orderMeaning" : "<string>", // C?What the order of the elements means
// value[x]: Value must be exactly this. One of these 51:
// value[x]: Value must have at least these property values. One of these 51:
    "example" : [{ Element }], // C?Example value (as defined for type)
// value[x]: Minimum Allowed Value (for some types). One of these 10:
    "minValueDate" : "<date>", // C?Minimum Allowed Value (for some types)
    "minValueDateTime" : "<dateTime>", // C?Minimum Allowed Value (for some types)
    "minValueInstant" : "<instant>", // C?Minimum Allowed Value (for some types)
    "minValueTime" : "<time>", // C?Minimum Allowed Value (for some types)
    "minValueDecimal" : <decimal>, // C?Minimum Allowed Value (for some types)
    "minValueInteger" : <integer>, // C?Minimum Allowed Value (for some types)
    "minValueInteger64" : "<integer64>", // C?Minimum Allowed Value (for some types)
    "minValuePositiveInt" : "<positiveInt>", // C?Minimum Allowed Value (for some types)
    "minValueUnsignedInt" : "<unsignedInt>", // C?Minimum Allowed Value (for some types)
    "minValueQuantity" : { Quantity }, // C?Minimum Allowed Value (for some types)
// value[x]: Maximum Allowed Value (for some types). One of these 10:
    "maxValueDate" : "<date>", // C?Maximum Allowed Value (for some types)
    "maxValueDateTime" : "<dateTime>", // C?Maximum Allowed Value (for some types)
    "maxValueInstant" : "<instant>", // C?Maximum Allowed Value (for some types)
    "maxValueTime" : "<time>", // C?Maximum Allowed Value (for some types)
    "maxValueDecimal" : <decimal>, // C?Maximum Allowed Value (for some types)
    "maxValueInteger" : <integer>, // C?Maximum Allowed Value (for some types)
    "maxValueInteger64" : "<integer64>", // C?Maximum Allowed Value (for some types)
    "maxValuePositiveInt" : "<positiveInt>", // C?Maximum Allowed Value (for some types)
    "maxValueUnsignedInt" : "<unsignedInt>", // C?Maximum Allowed Value (for some types)
    "maxValueQuantity" : { Quantity }, // C?Maximum Allowed Value (for some types)
    "maxLength" : <integer>, // C?Max length for strings
    "condition" : ["<id>"], // C?Reference to invariant about presence
    "constraint" : [{ Element }], // C?Condition that must evaluate to true
    "mustSupport" : <boolean>, // C?If the element must be supported
    "isModifierReason" : "<string>", // C?Reason that this element is marked as a modifier
    "binding" : { Element }, // C?ValueSet details if this is coded
    "mapping" : [{ Element }], // C?Map element to another set of definitions
  }

 

Alternate definitions: Master Definition (XML, JSON), Schematron

Terminology Bindings

PathNameConformanceValueSet
ElementDefinition.codeLOINC CodesexampleLOINC Codes
ElementDefinition.slicing.discriminator.typeDiscriminatorTyperequiredDiscriminatorType
ElementDefinition.slicing.rulesSlicingRulesrequiredSlicingRules
ElementDefinition.type.codeFHIRDefinedTypeextensibleFHIRDefinedType
ElementDefinition.type.versioningReferenceVersionRulesrequiredReferenceVersionRules
ElementDefinition.constraint.severityConstraintSeverityrequiredConstraintSeverity
ElementDefinition.binding.strengthBindingStrengthrequiredBindingStrength
ElementDefinition.mapping.languageMimeTyperequiredMimeType
.