{
  "resourceType" : "CodeSystem",
  "id" : "type-profile-constraints",
  "language" : "en",
  "text" : {
    "status" : "generated",
    "div" : "<div xml:lang=\"en\" lang=\"en\"><hr/><p><b>English</b></p><hr/><p class=\"res-header-id\"><b>Generated Narrative: CodeSystem type-profile-constraints</b></p><a name=\"type-profile-constraints\"> </a><a name=\"hctype-profile-constraints\"> </a><p>This case-sensitive code system <code>http://hl7.org/fhir/tools/CodeSystem/type-profile-constraints</code> defines the following codes:</p><table class=\"codes\"><tr><td style=\"white-space:nowrap\"><b>Code</b></td><td><b>Display</b></td><td><b>Definition</b></td></tr><tr><td style=\"white-space:nowrap\">full<a name=\"type-profile-constraints-full\"> </a></td><td>Fully merged</td><td>Everything the type profile constrains on its root element (over and above the underlying type) has been merged into this element in the snapshot: cardinality, value ranges, fixed and pattern values, invariants, bindings, mappings and the must-support and must-have-value flags. A consumer can rely on the snapshot element and does not need to check the root of the type profile separately</td></tr><tr><td style=\"white-space:nowrap\">partial<a name=\"type-profile-constraints-partial\"> </a></td><td>Partially merged</td><td>Some of the constraints on the root of the type profile have been merged into this element, but not all of them - for example, the invariants on the root of a resource profile (whose meaning changes when the resource is treated as an element), or a value range that could not be compared. A consumer must still check the root of the type profile</td></tr><tr><td style=\"white-space:nowrap\">none<a name=\"type-profile-constraints-none\"> </a></td><td>Not merged</td><td>None of the constraints on the root of the type profile have been merged into this element - for example, because the element has more than one type profile (any one of which may apply), or more than one type, or because the profile could not be found. A consumer must check the root of the type profile</td></tr></table></div>"
  },
  "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-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/CodeSystem/type-profile-constraints",
  "identifier" : [{
    "system" : "urn:ietf:rfc:3986",
    "value" : "urn:oid:2.16.840.1.113883.4.642.40.1.16.17"
  }],
  "version" : "1.3.0",
  "name" : "TypeProfileConstraintsCS",
  "title" : "Type Profile Constraints Codes",
  "status" : "active",
  "experimental" : false,
  "date" : "2026-10-05T19:03:47+00:00",
  "publisher" : "HL7 International / FHIR Infrastructure",
  "contact" : [{
    "telecom" : [{
      "system" : "url",
      "value" : "http://www.hl7.org/Special/committees/fiwg"
    }]
  }],
  "description" : "How much of what a type profile says on its root element has been merged into the snapshot element that uses the profile",
  "jurisdiction" : [{
    "coding" : [{
      "system" : "http://unstats.un.org/unsd/methods/m49/m49.htm",
      "code" : "001"
    }]
  }],
  "caseSensitive" : true,
  "content" : "complete",
  "concept" : [{
    "code" : "full",
    "display" : "Fully merged",
    "definition" : "Everything the type profile constrains on its root element (over and above the underlying type) has been merged into this element in the snapshot: cardinality, value ranges, fixed and pattern values, invariants, bindings, mappings and the must-support and must-have-value flags. A consumer can rely on the snapshot element and does not need to check the root of the type profile separately"
  },
  {
    "code" : "partial",
    "display" : "Partially merged",
    "definition" : "Some of the constraints on the root of the type profile have been merged into this element, but not all of them - for example, the invariants on the root of a resource profile (whose meaning changes when the resource is treated as an element), or a value range that could not be compared. A consumer must still check the root of the type profile"
  },
  {
    "code" : "none",
    "display" : "Not merged",
    "definition" : "None of the constraints on the root of the type profile have been merged into this element - for example, because the element has more than one type profile (any one of which may apply), or more than one type, or because the profile could not be found. A consumer must check the root of the type profile"
  }]
}