FHIR © HL7.org  |  FHIRsmith 4.0.1  |  Server Home  |  XIG Home  |  XIG Stats  | 

FHIR IG analytics

Packagehl7.fhir.uv.tools
Resource TypeStructureDefinition
IdStructureDefinition-type-profile-constraints.json
FHIR VersionR5
Sourcehttps://build.fhir.org/ig/FHIR/fhir-tools-ig/StructureDefinition-type-profile-constraints.html
URLhttp://hl7.org/fhir/tools/StructureDefinition/type-profile-constraints
Version1.2.0
Statusactive
Date2026-10-02T01:17:33+00:00
NameTypeProfileConstraintsExt
TitleType Profile Constraints Extension
Realmuv
Authorityhl7
DescriptionRecords, on a type profile in a snapshot element, how much of what the profile says on its root element has been merged into the snapshot element. Snapshot generation merges the constraints on the root of a data type profile (cardinality, value ranges, fixed and pattern values, invariants, bindings, mappings, must-support and must-have-value) into the element that uses the profile, so the element carries them directly; this extension says whether that has been done fully, partially, or not at all, so that consumers such as validators know whether they still need to check the root of the type profile
TypeExtension
Kindcomplex-type

Resources that use this resource

No resources found


Resources that this resource uses

ValueSet
hl7.fhir.uv.tools#currenttype-profile-constraintsType Profile Constraints ValueSet

Examples of Use for Extension

No extension usage examples found


Narrative

Note: links and images are rebased to the (stated) source


English


Generated Narrative: StructureDefinition type-profile-constraints

NameFlagsCard.TypeDescription & Constraintsdoco
.. Extension 0..1ExtensionWhether the root constraints of this type profile are merged into the snapshot element
... extension 0..0Extension
... url 1..1uri"http://hl7.org/fhir/tools/StructureDefinition/type-profile-constraints"
... value[x] 1..1codeValue of extension
Binding: Type Profile Constraints ValueSet (required)

doco Documentation for this format

Spanish


Generated Narrative: StructureDefinition type-profile-constraints

NameFlagsCard.TypeDescription & Constraintsdoco
.. Extension 0..1ExtensionWhether the root constraints of this type profile are merged into the snapshot element
... extension 0..0Extension
... url 1..1uri"http://hl7.org/fhir/tools/StructureDefinition/type-profile-constraints"
... value[x] 1..1codeValue of extension
Binding: Type Profile Constraints ValueSet (required)

doco Documentation for this format

Source1

{
  "resourceType": "StructureDefinition",
  "id": "type-profile-constraints",
  "text": {
    "status": "extensions",
    "div": "<!-- snip (see above) -->"
  },
  "extension": [
    {
      "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fmm",
      "valueInteger": 1
    },
    {
      "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-profile-constraints",
  "identifier": [
    {
      "system": "urn:ietf:rfc:3986",
      "value": "urn:oid:2.16.840.1.113883.4.642.40.1.42.89"
    }
  ],
  "version": "1.2.0",
  "name": "TypeProfileConstraintsExt",
  "title": "Type Profile Constraints Extension",
  "status": "active",
  "experimental": false,
  "date": "2026-10-02T01:17:33+00:00",
  "publisher": "HL7 International / FHIR Infrastructure",
  "contact": [
    {
      "telecom": [
        {
          "system": "url",
          "value": "http://www.hl7.org/Special/committees/fiwg"
        }
      ]
    }
  ],
  "description": "Records, on a type profile in a snapshot element, how much of what the profile says on its root element has been merged into the snapshot element. Snapshot generation merges the constraints on the root of a data type profile (cardinality, value ranges, fixed and pattern values, invariants, bindings, mappings, must-support and must-have-value) into the element that uses the profile, so the element carries them directly; this extension says whether that has been done fully, partially, or not at all, so that consumers such as validators know whether they still need to check the root of the type profile",
  "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.profile"
    }
  ],
  "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": "Whether the root constraints of this type profile are merged into the snapshot element",
        "definition": "Whether the constraints this type profile makes on its root element have been merged into the snapshot element that uses the profile: fully, partially, or not at all. Only used in snapshots; set by the snapshot generator.",
        "comment": "Documentation (short, definition, comment etc.) on the root of a type profile is never merged, since it describes the type, not the element; that doesn't make the merge partial.",
        "min": 0,
        "max": "1",
        "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": "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.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-profile-constraints",
        "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": 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,
        "binding": {
          "strength": "required",
          "valueSet": "http://hl7.org/fhir/tools/ValueSet/type-profile-constraints"
        },
        "mapping": [
          {
            "identity": "rim",
            "map": "N/A"
          }
        ]
      }
    ]
  },
  "differential": {
    "element": [
      {
        "id": "Extension",
        "path": "Extension",
        "short": "Whether the root constraints of this type profile are merged into the snapshot element",
        "definition": "Whether the constraints this type profile makes on its root element have been merged into the snapshot element that uses the profile: fully, partially, or not at all. Only used in snapshots; set by the snapshot generator.",
        "comment": "Documentation (short, definition, comment etc.) on the root of a type profile is never merged, since it describes the type, not the element; that doesn't make the merge partial.",
        "min": 0,
        "max": "1",
        "meaningWhenMissing": "The snapshot was generated by a tool that doesn't record this, so it's unknown whether any constraints were merged: consumers should behave as if none were"
      },
      {
        "id": "Extension.extension",
        "path": "Extension.extension",
        "max": "0"
      },
      {
        "id": "Extension.url",
        "path": "Extension.url",
        "fixedUri": "http://hl7.org/fhir/tools/StructureDefinition/type-profile-constraints"
      },
      {
        "id": "Extension.value[x]",
        "path": "Extension.value[x]",
        "min": 1,
        "max": "1",
        "type": [
          {
            "code": "code"
          }
        ],
        "binding": {
          "strength": "required",
          "valueSet": "http://hl7.org/fhir/tools/ValueSet/type-profile-constraints"
        }
      }
    ]
  }
}