This page is part of the FHIR Specification (v0.0.82: DSTU 1). The current version which supercedes this version is 5.0.0. For a full list of available versions, see the Directory of published versions
The official URL for this profile is:
http://hl7.org/fhir/StructureDefinition/elementdefinition-de-dataelement
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, Inc. - FHIR Core WG.
Description of Profiles, Differentials, Snapshots, and how the XML and JSON presentations work.
This structure is derived from ElementDefinition.
unable to summarise extension (wrong count)
This structure is derived from ElementDefinition.
Name | Flags | Card. | Type | Description & Constraints |
---|---|---|---|---|
ElementDefinition | 1..1 | ElementDefinition | ||
path | ||||
representation | 0..0 | |||
name | ||||
label | ||||
code | ||||
slicing | 0..0 | |||
short | 0..0 | |||
definition | ||||
comments | ||||
requirements | ||||
alias | ||||
min | ||||
max | ||||
type | ||||
code | ||||
profile | 0..0 | |||
aggregation | 0..0 | |||
nameReference | 0..0 | |||
defaultValue[x] | ||||
meaningWhenMissing | ||||
fixed[x] | 0..0 | |||
pattern[x] | 0..0 | |||
example[x] | ||||
maxLength | ||||
condition | ||||
constraint | ||||
key | ||||
name | ||||
severity | ||||
human | ||||
xpath | ||||
mustSupport | ||||
isModifier | 0..0 | |||
isSummary | 0..0 | |||
binding | ||||
name | ||||
strength | ||||
description | ||||
valueSet[x] | ||||
mapping | ||||
identity | ||||
language | ||||
map | ||||
elementdefinition-question | 0..* | string | Prompt for element phrased as question | |
elementdefinition-allowedUnits | 0..1 | CodeableConcept, ValueSet | Units to use for measured value |
Name | Flags | Card. | Type | Description & Constraints |
---|---|---|---|---|
ElementDefinition | I | 1..1 | ElementDefinition | Definition of an elements in a resource or extension eld-13: Types must be unique by the combination of code and profile eld-14: Constraints must be unique by key eld-11: Binding can only be present for coded elements, string, and uri eld-8: Pattern and value are mutually exclusive eld-15: Constraint names must be unique. eld-16: default value and meaningWhenMissing are mutually exclusive eld-2: Min <= Max eld-7: Pattern may only be specified if there is one type eld-6: Fixed value may only be specified if there is one type eld-5: Either a namereference or a fixed value (but not both) is permitted |
elementdefinition-question | 0..* | string | Extension | |
elementdefinition-allowedUnits | 0..1 | CodeableConcept, ValueSet | Extension | |
path | 1..1 | string | The path of the element (see the Detailed Descriptions) | |
name | 0..1 | string | Name for this particular element definition (reference target) | |
label | 0..1 | string | Name for element to display with or prompt for element | |
code | 0..* | Coding | Defining code | |
definition | 0..1 | string | Full formal definition as narrative text | |
comments | 0..1 | string | Comments about the use of this element | |
requirements | 0..1 | string | Why is this needed? | |
alias | 0..* | string | Other names | |
min | I | 0..1 | integer | Minimum Cardinality |
max | I | 0..1 | string | Maximum Cardinality (a number or *) eld-3: Max SHALL be a number or "*" |
type | I | 0..* | Data type and Profile for this element eld-4: Aggregation may only be specified if one of the allowed types for the element is a resource | |
extension | 0..* | Extension | Additional Content defined by implementations | |
code | 1..1 | code | Name of Data type or Resource Binding: DataType (required) | |
defaultValue[x] | I | 0..1 | * | Specified value it missing from instance |
meaningWhenMissing | I | 0..1 | string | Implicit meaning when this element is missing |
example[x] | 0..1 | * | Example value: [as defined for type] | |
maxLength | 0..1 | integer | Max length for strings | |
condition | 0..* | id | Reference to invariant about presence | |
constraint | 0..* | Condition that must evaluate to true | ||
extension | 0..* | Extension | Additional Content defined by implementations | |
key | I | 1..1 | id | Target of 'condition' reference above |
name | I | 0..1 | string | Short human label |
severity | 1..1 | code | error | warning Binding: ConstraintSeverity (required) | |
human | 1..1 | string | Human description of constraint | |
xpath | 1..1 | string | XPath expression of constraint | |
mustSupport | 0..1 | boolean | If the element must supported | |
binding | I | 0..1 | ValueSet details if this is coded eld-9: Example value sets are always extensible eld-10: provide either a reference or a description (or both) | |
extension | 0..* | Extension | Additional Content defined by implementations | |
name | 1..1 | string | Descriptive Name | |
strength | 1..1 | code | required | extensible | preferred | example Binding: BindingStrength (required) | |
description | I | 0..1 | string | Human explanation of the value set |
valueSet[x] | I | 0..1 | uri, ValueSet | Source of value set eld-12: uri SHALL start with http:// or https:// |
mapping | 0..* | Map element to another set of definitions | ||
extension | 0..* | Extension | Additional Content defined by implementations | |
identity | 1..1 | id | Reference to mapping declaration | |
language | 0..1 | code | Computable language of mapping Binding: MimeType (required) | |
map | 1..1 | string | Details of the mapping |
todo
This structure is derived from ElementDefinition.
unable to summarise extension (wrong count)
Differential View
This structure is derived from ElementDefinition.
Name | Flags | Card. | Type | Description & Constraints |
---|---|---|---|---|
ElementDefinition | 1..1 | ElementDefinition | ||
path | ||||
representation | 0..0 | |||
name | ||||
label | ||||
code | ||||
slicing | 0..0 | |||
short | 0..0 | |||
definition | ||||
comments | ||||
requirements | ||||
alias | ||||
min | ||||
max | ||||
type | ||||
code | ||||
profile | 0..0 | |||
aggregation | 0..0 | |||
nameReference | 0..0 | |||
defaultValue[x] | ||||
meaningWhenMissing | ||||
fixed[x] | 0..0 | |||
pattern[x] | 0..0 | |||
example[x] | ||||
maxLength | ||||
condition | ||||
constraint | ||||
key | ||||
name | ||||
severity | ||||
human | ||||
xpath | ||||
mustSupport | ||||
isModifier | 0..0 | |||
isSummary | 0..0 | |||
binding | ||||
name | ||||
strength | ||||
description | ||||
valueSet[x] | ||||
mapping | ||||
identity | ||||
language | ||||
map | ||||
elementdefinition-question | 0..* | string | Prompt for element phrased as question | |
elementdefinition-allowedUnits | 0..1 | CodeableConcept, ValueSet | Units to use for measured value |
Snapshot View
Name | Flags | Card. | Type | Description & Constraints |
---|---|---|---|---|
ElementDefinition | I | 1..1 | ElementDefinition | Definition of an elements in a resource or extension eld-13: Types must be unique by the combination of code and profile eld-14: Constraints must be unique by key eld-11: Binding can only be present for coded elements, string, and uri eld-8: Pattern and value are mutually exclusive eld-15: Constraint names must be unique. eld-16: default value and meaningWhenMissing are mutually exclusive eld-2: Min <= Max eld-7: Pattern may only be specified if there is one type eld-6: Fixed value may only be specified if there is one type eld-5: Either a namereference or a fixed value (but not both) is permitted |
elementdefinition-question | 0..* | string | Extension | |
elementdefinition-allowedUnits | 0..1 | CodeableConcept, ValueSet | Extension | |
path | 1..1 | string | The path of the element (see the Detailed Descriptions) | |
name | 0..1 | string | Name for this particular element definition (reference target) | |
label | 0..1 | string | Name for element to display with or prompt for element | |
code | 0..* | Coding | Defining code | |
definition | 0..1 | string | Full formal definition as narrative text | |
comments | 0..1 | string | Comments about the use of this element | |
requirements | 0..1 | string | Why is this needed? | |
alias | 0..* | string | Other names | |
min | I | 0..1 | integer | Minimum Cardinality |
max | I | 0..1 | string | Maximum Cardinality (a number or *) eld-3: Max SHALL be a number or "*" |
type | I | 0..* | Data type and Profile for this element eld-4: Aggregation may only be specified if one of the allowed types for the element is a resource | |
extension | 0..* | Extension | Additional Content defined by implementations | |
code | 1..1 | code | Name of Data type or Resource Binding: DataType (required) | |
defaultValue[x] | I | 0..1 | * | Specified value it missing from instance |
meaningWhenMissing | I | 0..1 | string | Implicit meaning when this element is missing |
example[x] | 0..1 | * | Example value: [as defined for type] | |
maxLength | 0..1 | integer | Max length for strings | |
condition | 0..* | id | Reference to invariant about presence | |
constraint | 0..* | Condition that must evaluate to true | ||
extension | 0..* | Extension | Additional Content defined by implementations | |
key | I | 1..1 | id | Target of 'condition' reference above |
name | I | 0..1 | string | Short human label |
severity | 1..1 | code | error | warning Binding: ConstraintSeverity (required) | |
human | 1..1 | string | Human description of constraint | |
xpath | 1..1 | string | XPath expression of constraint | |
mustSupport | 0..1 | boolean | If the element must supported | |
binding | I | 0..1 | ValueSet details if this is coded eld-9: Example value sets are always extensible eld-10: provide either a reference or a description (or both) | |
extension | 0..* | Extension | Additional Content defined by implementations | |
name | 1..1 | string | Descriptive Name | |
strength | 1..1 | code | required | extensible | preferred | example Binding: BindingStrength (required) | |
description | I | 0..1 | string | Human explanation of the value set |
valueSet[x] | I | 0..1 | uri, ValueSet | Source of value set eld-12: uri SHALL start with http:// or https:// |
mapping | 0..* | Map element to another set of definitions | ||
extension | 0..* | Extension | Additional Content defined by implementations | |
identity | 1..1 | id | Reference to mapping declaration | |
language | 0..1 | code | Computable language of mapping Binding: MimeType (required) | |
map | 1..1 | string | Details of the mapping |
XML Template
JSON Template
todo
Other representations of profile: (todo)
Path | Name | Conformance | ValueSet |
ElementDefinition.representation | PropertyRepresentation | required | PropertyRepresentation |
ElementDefinition.slicing.rules | SlicingRules | required | SlicingRules |
ElementDefinition.type.code | DataType | required | DataType |
ElementDefinition.type.aggregation | AggregationMode | required | AggregationMode |
ElementDefinition.constraint.severity | ConstraintSeverity | required | ConstraintSeverity |
ElementDefinition.binding.strength | BindingStrength | required | BindingStrength |
ElementDefinition.mapping.language | MimeType | required | http://www.rfc-editor.org/bcp/bcp13.txt |
Id | Path | Name | Details |
eld-13 | ElementDefinition | Types must be unique by the combination of code and profile XPath: not(exists(for $type in f:type return $type/preceding-sibling::f:type[f:code/@value=$type/f:code/@value and f:profile/@value = $type/f:profile/@value])) | |
eld-14 | ElementDefinition | Constraints must be unique by key XPath: count(f:constraint) = count(distinct-values(f:constraint/f:key/@value)) | |
eld-11 | ElementDefinition | Binding can only be present for coded elements, string, and uri XPath: not(exists(f:binding)) or (count(f:type/f:code) = 0) or f:type/f:code/@value=('code','Coding','CodeableConcept','Quantity','Extension', 'string', 'uri') | |
eld-8 | ElementDefinition | Pattern and value are mutually exclusive XPath: not(exists(f:*[starts-with(local-name(.), 'pattern')])) or not(exists(f:*[starts-with(local-name(.), 'value')])) | |
eld-15 | ElementDefinition | Constraint names must be unique. XPath: count(f:constraint[f:name]) = count(distinct-values(f:constraint/f:name/@value)) | |
eld-16 | ElementDefinition | default value and meaningWhenMissing are mutually exclusive XPath: not(exists(f:*[starts-with(local-name(.), 'fixed')])) or not(exists(f:meaningWhenMissing)) | |
eld-2 | ElementDefinition | Min <= Max XPath: (not(f:max/@value) and not(f:min/@value)) or (f:max/@value = '*') or (f:max/@value >= f:min/@value) | |
eld-7 | ElementDefinition | Pattern may only be specified if there is one type XPath: not(exists(f:*[starts-with(local-name(.), 'pattern')])) or (count(f:type)=1 ) | |
eld-6 | ElementDefinition | Fixed value may only be specified if there is one type XPath: not(exists(f:*[starts-with(local-name(.), 'fixed')])) or (count(f:type)=1 ) | |
eld-5 | ElementDefinition | Either a namereference or a fixed value (but not both) is permitted XPath: not(exists(f:nameReference) and exists(f:*[starts-with(local-name(.), 'value')])) | |
eld-1 | ElementDefinition.slicing | If there are no discriminators, there must be a definition XPath: (f:discriminator) or (f:definition) | |
eld-3 | ElementDefinition.max | Max SHALL be a number or "*" XPath: @value='*' or (normalize-space(@value)!='' and normalize-space(translate(@value, '0123456789',''))='') | |
eld-4 | ElementDefinition.type | Aggregation may only be specified if one of the allowed types for the element is a resource XPath: not(exists(f:aggregation)) or exists(f:code[@value = 'Reference']) | |
eld-9 | ElementDefinition.binding | Example value sets are always extensible XPath: not(f:conformance/@value='example' and f:isExtensible/@value='false') | |
eld-10 | ElementDefinition.binding | provide either a reference or a description (or both) XPath: (exists(f:valueSetUri) or exists(f:valueSetReference)) or exists(f:description) | |
eld-12 | ElementDefinition.binding.valueSet[x] | uri SHALL start with http:// or https:// XPath: starts-with(@value, 'http:') or starts-with(@value, 'https:') |