{
  "resourceType" : "StructureDefinition",
  "id" : "InFulfillmentOf",
  "text" : {
    "status" : "generated",
    "div" : "<div xmlns=\"http://www.w3.org/1999/xhtml\">\n      <p>This class represents those orders that are fulfilled by this document. For instance, a provider orders an X-Ray. The X-Ray is performed. A radiologist reads the X-Ray and generates a report. The X-Ray order identifier is transmitted in the Order class, the performed X-Ray procedure is transmitted in the ServiceEvent class, and the ClinicalDocument.code would be valued with &quot;Diagnostic Imaging Report&quot;.</p>\n    </div>"
  },
  "extension" : [{
    "url" : "http://hl7.org/fhir/tools/StructureDefinition/logical-target",
    "_valueBoolean" : {
      "extension" : [{
        "url" : "http://hl7.org/fhir/StructureDefinition/data-absent-reason",
        "valueCode" : "not-applicable"
      }]
    }
  },
  {
    "url" : "http://hl7.org/fhir/tools/StructureDefinition/xml-namespace",
    "valueUri" : "urn:hl7-org:v3"
  },
  {
    "url" : "http://hl7.org/fhir/tools/StructureDefinition/xml-name",
    "valueString" : "inFulfillmentOf"
  },
  {
    "url" : "http://hl7.org/fhir/tools/StructureDefinition/logical-container",
    "valueUri" : "http://hl7.org/cda/stds/core/StructureDefinition/ClinicalDocument"
  },
  {
    "url" : "http://hl7.org/fhir/tools/StructureDefinition/type-profile-style",
    "valueCode" : "cda"
  }],
  "url" : "http://hl7.org/cda/stds/core/StructureDefinition/InFulfillmentOf",
  "version" : "2.0.2-sd",
  "name" : "InFulfillmentOf",
  "title" : "InFulfillmentOf (CDA Class)",
  "status" : "active",
  "experimental" : false,
  "date" : "2026-03-04T22:49:45+00:00",
  "publisher" : "Health Level 7",
  "contact" : [{
    "name" : "HL7 International - Structured Documents",
    "telecom" : [{
      "system" : "url",
      "value" : "http://www.hl7.org/Special/committees/structure"
    },
    {
      "system" : "email",
      "value" : "structdog@lists.HL7.org"
    }]
  }],
  "description" : "This class represents those orders that are fulfilled by this document. For instance, a provider orders an X-Ray. The X-Ray is performed. A radiologist reads the X-Ray and generates a report. The X-Ray order identifier is transmitted in the Order class, the performed X-Ray procedure is transmitted in the ServiceEvent class, and the ClinicalDocument.code would be valued with \"Diagnostic Imaging Report\".",
  "fhirVersion" : "5.0.0",
  "mapping" : [{
    "identity" : "rim",
    "uri" : "http://hl7.org/v3",
    "name" : "RIM Mapping"
  }],
  "kind" : "logical",
  "abstract" : false,
  "type" : "http://hl7.org/cda/stds/core/StructureDefinition/InFulfillmentOf",
  "baseDefinition" : "http://hl7.org/cda/stds/core/StructureDefinition/InfrastructureRoot",
  "derivation" : "specialization",
  "snapshot" : {
    "extension" : [{
      "url" : "http://hl7.org/fhir/tools/StructureDefinition/snapshot-base-version",
      "valueString" : "2.0.2-sd"
    }],
    "element" : [{
      "id" : "InFulfillmentOf",
      "path" : "InFulfillmentOf",
      "short" : "Base for all types and resources",
      "definition" : "Defines the basic properties of every data value. This is an abstract type, meaning that no value can be just a data value without belonging to any concrete type. Every concrete type is a specialization of this general abstract DataValue type.",
      "min" : 1,
      "max" : "1",
      "base" : {
        "path" : "Base",
        "min" : 0,
        "max" : "*"
      },
      "isModifier" : false,
      "mapping" : [{
        "identity" : "rim",
        "map" : "n/a"
      }]
    },
    {
      "id" : "InFulfillmentOf.nullFlavor",
      "path" : "InFulfillmentOf.nullFlavor",
      "representation" : ["xmlAttr"],
      "label" : "Exceptional Value Detail",
      "definition" : "If a value is an exceptional value (NULL-value), this specifies in what way and why proper information is missing.",
      "min" : 0,
      "max" : "1",
      "base" : {
        "path" : "ANY.nullFlavor",
        "min" : 0,
        "max" : "1"
      },
      "type" : [{
        "code" : "code",
        "profile" : ["http://hl7.org/cda/stds/core/StructureDefinition/cs-simple"]
      }],
      "binding" : {
        "strength" : "required",
        "valueSet" : "http://hl7.org/cda/stds/core/ValueSet/CDANullFlavor"
      }
    },
    {
      "id" : "InFulfillmentOf.realmCode",
      "path" : "InFulfillmentOf.realmCode",
      "definition" : "When valued in an instance, this attribute signals the imposition of realm-specific constraints. The value of this attribute identifies the realm in question",
      "min" : 0,
      "max" : "*",
      "base" : {
        "path" : "InfrastructureRoot.realmCode",
        "min" : 0,
        "max" : "*"
      },
      "type" : [{
        "code" : "http://hl7.org/cda/stds/core/StructureDefinition/CS"
      }]
    },
    {
      "id" : "InFulfillmentOf.typeId",
      "path" : "InFulfillmentOf.typeId",
      "definition" : "When valued in an instance, this attribute signals the imposition of constraints defined in an HL7-specified message type. This might be a common type (also known as CMET in the messaging communication environment), or content included within a wrapper. The value of this attribute provides a unique identifier for the type in question.",
      "min" : 0,
      "max" : "1",
      "base" : {
        "path" : "InfrastructureRoot.typeId",
        "min" : 0,
        "max" : "1"
      },
      "type" : [{
        "code" : "http://hl7.org/cda/stds/core/StructureDefinition/II"
      }],
      "constraint" : [{
        "key" : "II-1",
        "severity" : "error",
        "human" : "An II instance must have either a root or an nullFlavor.",
        "expression" : "root.exists() or nullFlavor.exists()",
        "source" : "http://hl7.org/cda/stds/core/StructureDefinition/InfrastructureRoot"
      }]
    },
    {
      "id" : "InFulfillmentOf.typeId.nullFlavor",
      "path" : "InFulfillmentOf.typeId.nullFlavor",
      "representation" : ["xmlAttr"],
      "label" : "Exceptional Value Detail",
      "definition" : "If a value is an exceptional value (NULL-value), this specifies in what way and why proper information is missing.",
      "min" : 0,
      "max" : "1",
      "base" : {
        "path" : "ANY.nullFlavor",
        "min" : 0,
        "max" : "1"
      },
      "type" : [{
        "code" : "code",
        "profile" : ["http://hl7.org/cda/stds/core/StructureDefinition/cs-simple"]
      }],
      "binding" : {
        "strength" : "required",
        "valueSet" : "http://hl7.org/cda/stds/core/ValueSet/CDANullFlavor"
      }
    },
    {
      "id" : "InFulfillmentOf.typeId.assigningAuthorityName",
      "path" : "InFulfillmentOf.typeId.assigningAuthorityName",
      "representation" : ["xmlAttr"],
      "label" : "Assigning Authority Name",
      "definition" : "A human readable name or mnemonic for the assigning authority. The Assigning Authority Name has no computational value. The purpose of a Assigning Authority Name is to assist an unaided human interpreter of an II value to interpret the authority. Note: no automated processing must depend on the assigning authority name to be present in any form.",
      "min" : 0,
      "max" : "1",
      "base" : {
        "path" : "II.assigningAuthorityName",
        "min" : 0,
        "max" : "1"
      },
      "type" : [{
        "code" : "string",
        "profile" : ["http://hl7.org/cda/stds/core/StructureDefinition/st-simple"]
      }]
    },
    {
      "id" : "InFulfillmentOf.typeId.displayable",
      "path" : "InFulfillmentOf.typeId.displayable",
      "representation" : ["xmlAttr"],
      "label" : "Displayable",
      "definition" : "Specifies if the identifier is intended for human display and data entry (displayable = true) as opposed to pure machine interoperation (displayable = false).",
      "min" : 0,
      "max" : "1",
      "base" : {
        "path" : "II.displayable",
        "min" : 0,
        "max" : "1"
      },
      "type" : [{
        "code" : "boolean",
        "profile" : ["http://hl7.org/cda/stds/core/StructureDefinition/bl-simple"]
      }]
    },
    {
      "id" : "InFulfillmentOf.typeId.root",
      "path" : "InFulfillmentOf.typeId.root",
      "representation" : ["xmlAttr"],
      "label" : "Root",
      "definition" : "Identifies the type as an HL7 Registered model",
      "min" : 1,
      "max" : "1",
      "base" : {
        "path" : "II.root",
        "min" : 0,
        "max" : "1"
      },
      "type" : [{
        "code" : "string",
        "profile" : ["http://hl7.org/cda/stds/core/StructureDefinition/oid",
        "http://hl7.org/cda/stds/core/StructureDefinition/uuid",
        "http://hl7.org/cda/stds/core/StructureDefinition/ruid"]
      }],
      "fixedString" : "2.16.840.1.113883.1.3"
    },
    {
      "id" : "InFulfillmentOf.typeId.extension",
      "path" : "InFulfillmentOf.typeId.extension",
      "representation" : ["xmlAttr"],
      "label" : "Extension",
      "definition" : "A character string as a unique identifier within the scope of the identifier root.",
      "min" : 1,
      "max" : "1",
      "base" : {
        "path" : "II.extension",
        "min" : 0,
        "max" : "1"
      },
      "type" : [{
        "code" : "string",
        "profile" : ["http://hl7.org/cda/stds/core/StructureDefinition/st-simple"]
      }]
    },
    {
      "id" : "InFulfillmentOf.templateId",
      "path" : "InFulfillmentOf.templateId",
      "definition" : "When valued in an instance, this attribute signals the imposition of a set of template-defined constraints. The value of this attribute provides a unique identifier for the templates in question",
      "min" : 0,
      "max" : "*",
      "base" : {
        "path" : "InfrastructureRoot.templateId",
        "min" : 0,
        "max" : "*"
      },
      "type" : [{
        "code" : "http://hl7.org/cda/stds/core/StructureDefinition/II"
      }]
    },
    {
      "id" : "InFulfillmentOf.typeCode",
      "path" : "InFulfillmentOf.typeCode",
      "representation" : ["xmlAttr"],
      "min" : 0,
      "max" : "1",
      "base" : {
        "path" : "InFulfillmentOf.typeCode",
        "min" : 0,
        "max" : "1"
      },
      "type" : [{
        "code" : "code",
        "profile" : ["http://hl7.org/cda/stds/core/StructureDefinition/cs-simple"]
      }],
      "fixedCode" : "FLFS",
      "binding" : {
        "strength" : "required",
        "valueSet" : "http://terminology.hl7.org/ValueSet/v3-ActRelationshipFulfills|2.0.0"
      }
    },
    {
      "id" : "InFulfillmentOf.order",
      "path" : "InFulfillmentOf.order",
      "min" : 1,
      "max" : "1",
      "base" : {
        "path" : "InFulfillmentOf.order",
        "min" : 1,
        "max" : "1"
      },
      "type" : [{
        "code" : "http://hl7.org/cda/stds/core/StructureDefinition/Order"
      }]
    }]
  },
  "differential" : {
    "element" : [{
      "id" : "InFulfillmentOf",
      "path" : "InFulfillmentOf",
      "min" : 1,
      "max" : "1"
    },
    {
      "id" : "InFulfillmentOf.typeCode",
      "path" : "InFulfillmentOf.typeCode",
      "representation" : ["xmlAttr"],
      "min" : 0,
      "max" : "1",
      "type" : [{
        "code" : "code",
        "profile" : ["http://hl7.org/cda/stds/core/StructureDefinition/cs-simple"]
      }],
      "fixedCode" : "FLFS",
      "binding" : {
        "strength" : "required",
        "valueSet" : "http://terminology.hl7.org/ValueSet/v3-ActRelationshipFulfills|2.0.0"
      }
    },
    {
      "id" : "InFulfillmentOf.order",
      "path" : "InFulfillmentOf.order",
      "min" : 1,
      "max" : "1",
      "type" : [{
        "code" : "http://hl7.org/cda/stds/core/StructureDefinition/Order"
      }]
    }]
  }
}