Package | hl7.fhir.uv.tools |
Type | StructureDefinition |
Id | type-specifier |
FHIR Version | R5 |
Source | http://hl7.org/fhir/tools/https://build.fhir.org/ig/FHIR/fhir-tools-ig/StructureDefinition-type-specifier.html |
URL | http://hl7.org/fhir/tools/StructureDefinition/type-specifier |
Version | 0.6.0-cibuild |
Status | active |
Date | 2025-07-10T21:17:02+00:00 |
Name | TypeSpecifier |
Title | Type Specifier Extension |
Realm | uv |
Authority | hl7 |
Description | In some logical models, the type of content at one location depends on the value of some other element, and the type is otherwise not explicit in the instance. In such cases, the type of the element is assigned an abstract ancestor type, and this extension specifies how to determine what type is actually used |
Type | Extension |
Kind | complex-type |
No resources found
No resources found
Note: links and images are rebased to the (stated) source
English
Generated Narrative: StructureDefinition type-specifier
Name | Flags | Card. | Type | Description & Constraints |
---|---|---|---|---|
![]() ![]() | 0..* | Extension | Indicates that this repeating element is represented as an object in json and the named one of the two sub-elements is the key for the other one | |
![]() ![]() ![]() | 2..2 | Extension | Extension Slice: Unordered, Closed by value:url | |
![]() ![]() ![]() ![]() | 1..1 | Extension | Condition for this type (FHIRPath) | |
![]() ![]() ![]() ![]() ![]() | 0..0 | |||
![]() ![]() ![]() ![]() ![]() | 1..1 | uri | "condition" | |
![]() ![]() ![]() ![]() ![]() | 1..1 | string | Value of extension | |
![]() ![]() ![]() ![]() | 1..1 | Extension | The type (uri - usually full URI of logical model type_ | |
![]() ![]() ![]() ![]() ![]() | 0..0 | |||
![]() ![]() ![]() ![]() ![]() | 1..1 | uri | "type" | |
![]() ![]() ![]() ![]() ![]() | 1..1 | code | Value of extension | |
![]() ![]() ![]() | 1..1 | uri | "http://hl7.org/fhir/tools/StructureDefinition/type-specifier" | |
![]() ![]() ![]() | 0..0 | |||
Spanish
Generated Narrative: StructureDefinition type-specifier
Name | Flags | Card. | Type | Description & Constraints |
---|---|---|---|---|
![]() ![]() | 0..* | Extension | Indicates that this repeating element is represented as an object in json and the named one of the two sub-elements is the key for the other one | |
![]() ![]() ![]() | 2..2 | Extension | Extension Slice: Unordered, Closed by value:url | |
![]() ![]() ![]() | Content/Rules for all slices | |||
![]() ![]() ![]() ![]() | 1..1 | Extension | Condition for this type (FHIRPath) | |
![]() ![]() ![]() ![]() ![]() | 0..0 | |||
![]() ![]() ![]() ![]() ![]() | 1..1 | uri | "condition" | |
![]() ![]() ![]() ![]() ![]() | 1..1 | string | Value of extension | |
![]() ![]() ![]() | Content/Rules for all slices | |||
![]() ![]() ![]() ![]() | 1..1 | Extension | The type (uri - usually full URI of logical model type_ | |
![]() ![]() ![]() ![]() ![]() | 0..0 | |||
![]() ![]() ![]() ![]() ![]() | 1..1 | uri | "type" | |
![]() ![]() ![]() ![]() ![]() | 1..1 | code | Value of extension | |
![]() ![]() ![]() | 1..1 | uri | "http://hl7.org/fhir/tools/StructureDefinition/type-specifier" | |
![]() ![]() ![]() | 0..0 | |||
{ "resourceType": "StructureDefinition", "id": "type-specifier", "text": { "status": "extensions", "div": "<!-- snip (see above) -->" }, "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fmm", "valueInteger": 3 }, { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-wg", "valueCode": "fhir" }, { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-type-characteristics", "valueCode": "can-bind" }, { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-standards-status", "valueCode": "informative", "_valueCode": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-conformance-derivedFrom", "valueCanonical": "http://hl7.org/fhir/tools/ImplementationGuide/hl7.fhir.uv.tools" } ] } } ], "url": "http://hl7.org/fhir/tools/StructureDefinition/type-specifier", "identifier": [ { "system": "urn:ietf:rfc:3986", "value": "urn:oid:2.16.840.1.113883.4.642.40.1.42.41" } ], "version": "0.6.0-cibuild", "name": "TypeSpecifier", "title": "Type Specifier Extension", "status": "active", "experimental": false, "date": "2025-07-10T21:17:02+00:00", "publisher": "HL7 International / FHIR Infrastructure", "contact": [ { "telecom": [ { "system": "url", "value": "http://www.hl7.org/Special/committees/fiwg" } ] } ], "description": "In some logical models, the type of content at one location depends on the value of some other element, and the type is otherwise not explicit in the instance. In such cases, the type of the element is assigned an abstract ancestor type, and this extension specifies how to determine what type is actually used", "jurisdiction": [ { "coding": [ { "system": "http://unstats.un.org/unsd/methods/m49/m49.htm", "code": "001" } ] } ], "fhirVersion": "5.0.0", "mapping": [ { "identity": "rim", "uri": "http://hl7.org/v3", "name": "RIM Mapping" } ], "kind": "complex-type", "abstract": false, "context": [ { "type": "element", "expression": "ElementDefinition" } ], "type": "Extension", "baseDefinition": "http://hl7.org/fhir/StructureDefinition/Extension", "derivation": "constraint", "snapshot": { "extension": [ { "url": "http://hl7.org/fhir/tools/StructureDefinition/snapshot-base-version", "valueString": "5.0.0" } ], "element": [ { "id": "Extension", "path": "Extension", "short": "Indicates that this repeating element is represented as an object in json and the named one of the two sub-elements is the key for the other one", "definition": "type-specifiers applied to bindable elements.", "min": 0, "max": "*", "base": { "path": "Extension", "min": 0, "max": "*" }, "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "source": "http://hl7.org/fhir/StructureDefinition/Element" }, { "key": "ext-1", "severity": "error", "human": "Must have either extensions or value[x], not both", "expression": "extension.exists() != value.exists()", "source": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false }, { "id": "Extension.id", "path": "Extension.id", "representation": [ "xmlAttr" ], "short": "Unique id for inter-element referencing", "definition": "Unique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.", "min": 0, "max": "1", "base": { "path": "Element.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "id" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "condition": [ "ele-1" ], "isModifier": false, "isSummary": false, "mapping": [ { "identity": "rim", "map": "n/a" } ] }, { "id": "Extension.extension", "path": "Extension.extension", "slicing": { "discriminator": [ { "type": "value", "path": "url" } ], "description": "Extensions are always sliced by (at least) url", "rules": "closed" }, "short": "Extension", "definition": "An Extension", "min": 2, "max": "2", "base": { "path": "Element.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "source": "http://hl7.org/fhir/StructureDefinition/Element" }, { "key": "ext-1", "severity": "error", "human": "Must have either extensions or value[x], not both", "expression": "extension.exists() != value.exists()", "source": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "Extension.extension:condition", "path": "Extension.extension", "sliceName": "condition", "short": "Condition for this type (FHIRPath)", "definition": "The FHIRPath expression for this type to be true.", "min": 1, "max": "1", "base": { "path": "Element.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "source": "http://hl7.org/fhir/StructureDefinition/Element" }, { "key": "ext-1", "severity": "error", "human": "Must have either extensions or value[x], not both", "expression": "extension.exists() != value.exists()", "source": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "Extension.extension:condition.id", "path": "Extension.extension.id", "representation": [ "xmlAttr" ], "short": "Unique id for inter-element referencing", "definition": "Unique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.", "min": 0, "max": "1", "base": { "path": "Element.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "id" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "condition": [ "ele-1" ], "isModifier": false, "isSummary": false, "mapping": [ { "identity": "rim", "map": "n/a" } ] }, { "id": "Extension.extension:condition.extension", "path": "Extension.extension.extension", "slicing": { "discriminator": [ { "type": "value", "path": "url" } ], "description": "Extensions are always sliced by (at least) url", "rules": "open" }, "short": "Extension", "definition": "An Extension", "min": 0, "max": "0", "base": { "path": "Element.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "source": "http://hl7.org/fhir/StructureDefinition/Element" }, { "key": "ext-1", "severity": "error", "human": "Must have either extensions or value[x], not both", "expression": "extension.exists() != value.exists()", "source": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "Extension.extension:condition.url", "path": "Extension.extension.url", "representation": [ "xmlAttr" ], "short": "identifies the meaning of the extension", "definition": "Source of the definition for the extension code - a logical name or a URL.", "comment": "The definition may point directly to a computable or human-readable definition of the extensibility codes, or it may be a logical URI as declared in some other specification. The definition SHALL be a URI for the Structure Definition defining the extension.", "min": 1, "max": "1", "base": { "path": "Extension.url", "min": 1, "max": "1" }, "type": [ { "code": "uri" } ], "fixedUri": "condition", "isModifier": false, "isSummary": false, "mapping": [ { "identity": "rim", "map": "N/A" } ] }, { "id": "Extension.extension:condition.value[x]", "path": "Extension.extension.value[x]", "short": "Value of extension", "definition": "Value of extension - must be one of a constrained set of the data types (see [Extensibility](http://hl7.org/fhir/R5/extensibility.html) for a list).", "min": 1, "max": "1", "base": { "path": "Extension.value[x]", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "condition": [ "ext-1" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "mapping": [ { "identity": "rim", "map": "N/A" } ] }, { "id": "Extension.extension:type", "path": "Extension.extension", "sliceName": "type", "short": "The type (uri - usually full URI of logical model type_", "definition": "An Extension", "min": 1, "max": "1", "base": { "path": "Element.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "source": "http://hl7.org/fhir/StructureDefinition/Element" }, { "key": "ext-1", "severity": "error", "human": "Must have either extensions or value[x], not both", "expression": "extension.exists() != value.exists()", "source": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "Extension.extension:type.id", "path": "Extension.extension.id", "representation": [ "xmlAttr" ], "short": "Unique id for inter-element referencing", "definition": "Unique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.", "min": 0, "max": "1", "base": { "path": "Element.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "id" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "condition": [ "ele-1" ], "isModifier": false, "isSummary": false, "mapping": [ { "identity": "rim", "map": "n/a" } ] }, { "id": "Extension.extension:type.extension", "path": "Extension.extension.extension", "slicing": { "discriminator": [ { "type": "value", "path": "url" } ], "description": "Extensions are always sliced by (at least) url", "rules": "open" }, "short": "Extension", "definition": "An Extension", "min": 0, "max": "0", "base": { "path": "Element.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "source": "http://hl7.org/fhir/StructureDefinition/Element" }, { "key": "ext-1", "severity": "error", "human": "Must have either extensions or value[x], not both", "expression": "extension.exists() != value.exists()", "source": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "Extension.extension:type.url", "path": "Extension.extension.url", "representation": [ "xmlAttr" ], "short": "identifies the meaning of the extension", "definition": "Source of the definition for the extension code - a logical name or a URL.", "comment": "The definition may point directly to a computable or human-readable definition of the extensibility codes, or it may be a logical URI as declared in some other specification. The definition SHALL be a URI for the Structure Definition defining the extension.", "min": 1, "max": "1", "base": { "path": "Extension.url", "min": 1, "max": "1" }, "type": [ { "code": "uri" } ], "fixedUri": "type", "isModifier": false, "isSummary": false, "mapping": [ { "identity": "rim", "map": "N/A" } ] }, { "id": "Extension.extension:type.value[x]", "path": "Extension.extension.value[x]", "short": "Value of extension", "definition": "Value of extension - must be one of a constrained set of the data types (see [Extensibility](http://hl7.org/fhir/R5/extensibility.html) for a list).", "min": 1, "max": "1", "base": { "path": "Extension.value[x]", "min": 0, "max": "1" }, "type": [ { "code": "code" } ], "condition": [ "ext-1" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "mapping": [ { "identity": "rim", "map": "N/A" } ] }, { "id": "Extension.url", "path": "Extension.url", "representation": [ "xmlAttr" ], "short": "identifies the meaning of the extension", "definition": "Source of the definition for the extension code - a logical name or a URL.", "comment": "The definition may point directly to a computable or human-readable definition of the extensibility codes, or it may be a logical URI as declared in some other specification. The definition SHALL be a URI for the Structure Definition defining the extension.", "min": 1, "max": "1", "base": { "path": "Extension.url", "min": 1, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "uri" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "fixedUri": "http://hl7.org/fhir/tools/StructureDefinition/type-specifier", "isModifier": false, "isSummary": false, "mapping": [ { "identity": "rim", "map": "N/A" } ] }, { "id": "Extension.value[x]", "path": "Extension.value[x]", "short": "Value of extension", "definition": "Value of extension - must be one of a constrained set of the data types (see [Extensibility](http://hl7.org/fhir/R5/extensibility.html) for a list).", "min": 0, "max": "0", "base": { "path": "Extension.value[x]", "min": 0, "max": "1" }, "type": [ { "code": "base64Binary" }, { "code": "boolean" }, { "code": "canonical" }, { "code": "code" }, { "code": "date" }, { "code": "dateTime" }, { "code": "decimal" }, { "code": "id" }, { "code": "instant" }, { "code": "integer" }, { "code": "integer64" }, { "code": "markdown" }, { "code": "oid" }, { "code": "positiveInt" }, { "code": "string" }, { "code": "time" }, { "code": "unsignedInt" }, { "code": "uri" }, { "code": "url" }, { "code": "uuid" }, { "code": "Address" }, { "code": "Age" }, { "code": "Annotation" }, { "code": "Attachment" }, { "code": "CodeableConcept" }, { "code": "CodeableReference" }, { "code": "Coding" }, { "code": "ContactPoint" }, { "code": "Count" }, { "code": "Distance" }, { "code": "Duration" }, { "code": "HumanName" }, { "code": "Identifier" }, { "code": "Money" }, { "code": "Period" }, { "code": "Quantity" }, { "code": "Range" }, { "code": "Ratio" }, { "code": "RatioRange" }, { "code": "Reference" }, { "code": "SampledData" }, { "code": "Signature" }, { "code": "Timing" }, { "code": "ContactDetail" }, { "code": "DataRequirement" }, { "code": "Expression" }, { "code": "ParameterDefinition" }, { "code": "RelatedArtifact" }, { "code": "TriggerDefinition" }, { "code": "UsageContext" }, { "code": "Availability" }, { "code": "ExtendedContactDetail" }, { "code": "Dosage" }, { "code": "Meta" } ], "condition": [ "ext-1" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "mapping": [ { "identity": "rim", "map": "N/A" } ] } ] }, "differential": { "element": [ { "id": "Extension", "path": "Extension", "short": "Indicates that this repeating element is represented as an object in json and the named one of the two sub-elements is the key for the other one", "definition": "type-specifiers applied to bindable elements.", "min": 0, "max": "*" }, { "id": "Extension.extension", "path": "Extension.extension", "slicing": { "discriminator": [ { "type": "value", "path": "url" } ], "description": "Extensions are sliced by url", "rules": "closed" }, "min": 2, "max": "2" }, { "id": "Extension.extension:condition", "path": "Extension.extension", "sliceName": "condition", "short": "Condition for this type (FHIRPath)", "definition": "The FHIRPath expression for this type to be true.", "min": 1, "max": "1", "type": [ { "code": "Extension" } ] }, { "id": "Extension.extension:condition.extension", "path": "Extension.extension.extension", "max": "0" }, { "id": "Extension.extension:condition.url", "path": "Extension.extension.url", "type": [ { "code": "uri" } ], "fixedUri": "condition" }, { "id": "Extension.extension:condition.value[x]", "path": "Extension.extension.value[x]", "min": 1, "type": [ { "code": "string" } ] }, { "id": "Extension.extension:type", "path": "Extension.extension", "sliceName": "type", "short": "The type (uri - usually full URI of logical model type_", "min": 1, "max": "1", "type": [ { "code": "Extension" } ] }, { "id": "Extension.extension:type.extension", "path": "Extension.extension.extension", "max": "0" }, { "id": "Extension.extension:type.url", "path": "Extension.extension.url", "type": [ { "code": "uri" } ], "fixedUri": "type" }, { "id": "Extension.extension:type.value[x]", "path": "Extension.extension.value[x]", "min": 1, "type": [ { "code": "code" } ] }, { "id": "Extension.url", "path": "Extension.url", "fixedUri": "http://hl7.org/fhir/tools/StructureDefinition/type-specifier" }, { "id": "Extension.value[x]", "path": "Extension.value[x]", "max": "0" } ] } }