Clinical Document Architecture
2.0.1-sd - release

Clinical Document Architecture, published by Health Level 7. This guide is not an authorized publication; it is the continuous build for version 2.0.1-sd built by the FHIR (HL7® FHIR® Standard) CI Build. This version is based on the current content of https://github.com/HL7/CDA-core-sd/ and changes regularly. See the Directory of published versions

Logical Model: SubstanceAdministration - JSON Profile

Active as of 2024-12-18

JSON representation of the SubstanceAdministration logical model.

Raw json | Download

{
  "resourceType" : "StructureDefinition",
  "id" : "SubstanceAdministration",
  "text" : {
    "status" : "generated",
    "div" : "<div xmlns=\"http://www.w3.org/1999/xhtml\">\n      <p>A derivative of the RIM SubstanceAdministration class, used for representing medication-related events such as medication history or planned medication administration orders.</p>\n      <p>SubstanceAdministration.negationInd, when set to &quot;true&quot;, is a positive assertion that the SubstanceAdministration as a whole is negated. Some properties such as SubstanceAdministration.id, SubstanceAdministration.moodCode, and the participations are not affected. These properties always have the same meaning: i.e., the author remains the author of the negative SubstanceAdministration. A substance administration statement with negationInd is still a statement about the specific fact described by the SubstanceAdministration. For instance, a negated &quot;aspirin administration&quot; means that the author positively denies that aspirin is being administered, and that he takes the same responsibility for such statement and the same requirement to have evidence for such statement than if he had not used negation.</p>\n      <p>SubstanceAdministration.priorityCode categorizes the priority of a substance administration. SubstanceAdministration.doseQuantity indicates how much medication is given per dose. SubstanceAdministration.rateQuantity can be used to indicate the rate at which the dose is to be administered (e.g., the flow rate for intravenous infusions). SubstanceAdministration.maxDoseQuantity is used to capture the maximum dose of the medication that can be given over a stated time interval (e.g., maximum daily dose of morphine, maximum lifetime dose of doxorubicin). SubstanceAdministration.effectiveTime is used to describe the timing of administration. It is modeled using the GTS data type to accommodate various dosing scenarios.</p>\n      <p>The capture of medication-related information also involves the interrelationship of SubstanceAdministration with several other classes. The consumable participation is used to bring in the LabeledDrug or Material entity that describes the administered substance. The LabeledDrug class, which is an Entity class playing the Role of Manufactured Product, identifies the drug that is consumed in the substance administration. The medication is identified by means of the LabeledDrug.code or the LabeledDrug.name. The Material entity is used to identify non-drug administered substances such as vaccines and blood products.</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" : "substanceAdministration"
    },
    {
      "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",
      "valueUri" : "cda"
    }
  ],
  "url" : "http://hl7.org/cda/stds/core/StructureDefinition/SubstanceAdministration",
  "version" : "2.0.1-sd",
  "name" : "SubstanceAdministration",
  "title" : "SubstanceAdministration (CDA Class)",
  "status" : "active",
  "experimental" : false,
  "date" : "2024-12-18T02:39:25+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" : "A derivative of the RIM SubstanceAdministration class, used for representing medication-related events such as medication history or planned medication administration orders.\n\nSubstanceAdministration.negationInd, when set to \"true\", is a positive assertion that the SubstanceAdministration as a whole is negated. Some properties such as SubstanceAdministration.id, SubstanceAdministration.moodCode, and the participations are not affected. These properties always have the same meaning: i.e., the author remains the author of the negative SubstanceAdministration. A substance administration statement with negationInd is still a statement about the specific fact described by the SubstanceAdministration. For instance, a negated \"aspirin administration\" means that the author positively denies that aspirin is being administered, and that he takes the same responsibility for such statement and the same requirement to have evidence for such statement than if he had not used negation.\n\nSubstanceAdministration.priorityCode categorizes the priority of a substance administration. SubstanceAdministration.doseQuantity indicates how much medication is given per dose. SubstanceAdministration.rateQuantity can be used to indicate the rate at which the dose is to be administered (e.g., the flow rate for intravenous infusions). SubstanceAdministration.maxDoseQuantity is used to capture the maximum dose of the medication that can be given over a stated time interval (e.g., maximum daily dose of morphine, maximum lifetime dose of doxorubicin). SubstanceAdministration.effectiveTime is used to describe the timing of administration. It is modeled using the GTS data type to accommodate various dosing scenarios.\n\nThe capture of medication-related information also involves the interrelationship of SubstanceAdministration with several other classes. The consumable participation is used to bring in the LabeledDrug or Material entity that describes the administered substance. The LabeledDrug class, which is an Entity class playing the Role of Manufactured Product, identifies the drug that is consumed in the substance administration. The medication is identified by means of the LabeledDrug.code or the LabeledDrug.name. The Material entity is used to identify non-drug administered substances such as vaccines and blood products.",
  "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/SubstanceAdministration",
  "baseDefinition" : "http://hl7.org/cda/stds/core/StructureDefinition/InfrastructureRoot",
  "derivation" : "specialization",
  "snapshot" : {
    "element" : [
      {
        "id" : "SubstanceAdministration",
        "path" : "SubstanceAdministration",
        "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" : "SubstanceAdministration.nullFlavor",
        "path" : "SubstanceAdministration.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" : "SubstanceAdministration.realmCode",
        "path" : "SubstanceAdministration.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" : "SubstanceAdministration.typeId",
        "path" : "SubstanceAdministration.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" : "SubstanceAdministration.typeId.nullFlavor",
        "path" : "SubstanceAdministration.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" : "SubstanceAdministration.typeId.assigningAuthorityName",
        "path" : "SubstanceAdministration.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" : "SubstanceAdministration.typeId.displayable",
        "path" : "SubstanceAdministration.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" : "SubstanceAdministration.typeId.root",
        "path" : "SubstanceAdministration.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" : "SubstanceAdministration.typeId.extension",
        "path" : "SubstanceAdministration.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" : "SubstanceAdministration.templateId",
        "path" : "SubstanceAdministration.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" : "SubstanceAdministration.classCode",
        "path" : "SubstanceAdministration.classCode",
        "representation" : [
          "xmlAttr"
        ],
        "min" : 1,
        "max" : "1",
        "base" : {
          "path" : "SubstanceAdministration.classCode",
          "min" : 1,
          "max" : "1"
        },
        "type" : [
          {
            "code" : "code",
            "profile" : [
              🔗 "http://hl7.org/cda/stds/core/StructureDefinition/cs-simple"
            ]
          }
        ],
        "fixedCode" : "SBADM",
        "binding" : {
          "strength" : "required",
          "valueSet" : "http://hl7.org/cda/stds/core/ValueSet/CDAActClass"
        }
      },
      {
        "id" : "SubstanceAdministration.moodCode",
        "path" : "SubstanceAdministration.moodCode",
        "representation" : [
          "xmlAttr"
        ],
        "min" : 1,
        "max" : "1",
        "base" : {
          "path" : "SubstanceAdministration.moodCode",
          "min" : 1,
          "max" : "1"
        },
        "type" : [
          {
            "code" : "code",
            "profile" : [
              🔗 "http://hl7.org/cda/stds/core/StructureDefinition/cs-simple"
            ]
          }
        ],
        "binding" : {
          "strength" : "required",
          "valueSet" : "http://terminology.hl7.org/ValueSet/v3-xDocumentSubstanceMood|2.0.0"
        }
      },
      {
        "id" : "SubstanceAdministration.id",
        "path" : "SubstanceAdministration.id",
        "min" : 0,
        "max" : "*",
        "base" : {
          "path" : "SubstanceAdministration.id",
          "min" : 0,
          "max" : "*"
        },
        "type" : [
          {
            "code" : "http://hl7.org/cda/stds/core/StructureDefinition/II"
          }
        ]
      },
      {
        "id" : "SubstanceAdministration.code",
        "path" : "SubstanceAdministration.code",
        "min" : 0,
        "max" : "1",
        "base" : {
          "path" : "SubstanceAdministration.code",
          "min" : 0,
          "max" : "1"
        },
        "type" : [
          {
            "code" : "http://hl7.org/cda/stds/core/StructureDefinition/CD"
          }
        ],
        "binding" : {
          "strength" : "example",
          "valueSet" : "http://hl7.org/cda/stds/core/ValueSet/CDAActSubstanceAdministrationCode"
        }
      },
      {
        "id" : "SubstanceAdministration.negationInd",
        "path" : "SubstanceAdministration.negationInd",
        "representation" : [
          "xmlAttr"
        ],
        "min" : 0,
        "max" : "1",
        "base" : {
          "path" : "SubstanceAdministration.negationInd",
          "min" : 0,
          "max" : "1"
        },
        "type" : [
          {
            "code" : "boolean",
            "profile" : [
              🔗 "http://hl7.org/cda/stds/core/StructureDefinition/bl-simple"
            ]
          }
        ]
      },
      {
        "id" : "SubstanceAdministration.text",
        "path" : "SubstanceAdministration.text",
        "min" : 0,
        "max" : "1",
        "base" : {
          "path" : "SubstanceAdministration.text",
          "min" : 0,
          "max" : "1"
        },
        "type" : [
          {
            "code" : "http://hl7.org/cda/stds/core/StructureDefinition/ED"
          }
        ]
      },
      {
        "id" : "SubstanceAdministration.statusCode",
        "path" : "SubstanceAdministration.statusCode",
        "min" : 0,
        "max" : "1",
        "base" : {
          "path" : "SubstanceAdministration.statusCode",
          "min" : 0,
          "max" : "1"
        },
        "type" : [
          {
            "code" : "http://hl7.org/cda/stds/core/StructureDefinition/CS"
          }
        ],
        "binding" : {
          "strength" : "required",
          "valueSet" : "http://terminology.hl7.org/ValueSet/v3-ActStatus"
        }
      },
      {
        "id" : "SubstanceAdministration.effectiveTime",
        "extension" : [
          {
            "url" : "http://hl7.org/fhir/StructureDefinition/elementdefinition-defaulttype",
            "valueCanonical" : "http://hl7.org/cda/stds/core/StructureDefinition/SXCM-TS"
          }
        ],
        "path" : "SubstanceAdministration.effectiveTime",
        "representation" : [
          "typeAttr"
        ],
        "min" : 0,
        "max" : "*",
        "base" : {
          "path" : "SubstanceAdministration.effectiveTime",
          "min" : 0,
          "max" : "*"
        },
        "type" : [
          {
            "code" : "http://hl7.org/cda/stds/core/StructureDefinition/SXCM-TS"
          },
          {
            "code" : "http://hl7.org/cda/stds/core/StructureDefinition/IVL-TS"
          },
          {
            "code" : "http://hl7.org/cda/stds/core/StructureDefinition/EIVL-TS"
          },
          {
            "code" : "http://hl7.org/cda/stds/core/StructureDefinition/PIVL-TS"
          },
          {
            "code" : "http://hl7.org/cda/stds/core/StructureDefinition/SXPR-TS"
          }
        ]
      },
      {
        "id" : "SubstanceAdministration.priorityCode",
        "path" : "SubstanceAdministration.priorityCode",
        "min" : 0,
        "max" : "1",
        "base" : {
          "path" : "SubstanceAdministration.priorityCode",
          "min" : 0,
          "max" : "1"
        },
        "type" : [
          {
            "code" : "http://hl7.org/cda/stds/core/StructureDefinition/CE"
          }
        ],
        "binding" : {
          "strength" : "example",
          "valueSet" : "http://terminology.hl7.org/ValueSet/v3-ActPriority"
        }
      },
      {
        "id" : "SubstanceAdministration.repeatNumber",
        "path" : "SubstanceAdministration.repeatNumber",
        "min" : 0,
        "max" : "1",
        "base" : {
          "path" : "SubstanceAdministration.repeatNumber",
          "min" : 0,
          "max" : "1"
        },
        "type" : [
          {
            "code" : "http://hl7.org/cda/stds/core/StructureDefinition/IVL-INT"
          }
        ]
      },
      {
        "id" : "SubstanceAdministration.routeCode",
        "path" : "SubstanceAdministration.routeCode",
        "min" : 0,
        "max" : "1",
        "base" : {
          "path" : "SubstanceAdministration.routeCode",
          "min" : 0,
          "max" : "1"
        },
        "type" : [
          {
            "code" : "http://hl7.org/cda/stds/core/StructureDefinition/CE"
          }
        ],
        "binding" : {
          "strength" : "example",
          "valueSet" : "http://terminology.hl7.org/ValueSet/v3-RouteOfAdministration"
        }
      },
      {
        "id" : "SubstanceAdministration.approachSiteCode",
        "path" : "SubstanceAdministration.approachSiteCode",
        "min" : 0,
        "max" : "*",
        "base" : {
          "path" : "SubstanceAdministration.approachSiteCode",
          "min" : 0,
          "max" : "*"
        },
        "type" : [
          {
            "code" : "http://hl7.org/cda/stds/core/StructureDefinition/CD"
          }
        ],
        "binding" : {
          "strength" : "example",
          "valueSet" : "http://terminology.hl7.org/ValueSet/v3-ActSite"
        }
      },
      {
        "id" : "SubstanceAdministration.doseQuantity",
        "path" : "SubstanceAdministration.doseQuantity",
        "min" : 0,
        "max" : "1",
        "base" : {
          "path" : "SubstanceAdministration.doseQuantity",
          "min" : 0,
          "max" : "1"
        },
        "type" : [
          {
            "code" : "http://hl7.org/cda/stds/core/StructureDefinition/IVL-PQ"
          }
        ]
      },
      {
        "id" : "SubstanceAdministration.rateQuantity",
        "path" : "SubstanceAdministration.rateQuantity",
        "min" : 0,
        "max" : "1",
        "base" : {
          "path" : "SubstanceAdministration.rateQuantity",
          "min" : 0,
          "max" : "1"
        },
        "type" : [
          {
            "code" : "http://hl7.org/cda/stds/core/StructureDefinition/IVL-PQ"
          }
        ]
      },
      {
        "id" : "SubstanceAdministration.maxDoseQuantity",
        "path" : "SubstanceAdministration.maxDoseQuantity",
        "min" : 0,
        "max" : "1",
        "base" : {
          "path" : "SubstanceAdministration.maxDoseQuantity",
          "min" : 0,
          "max" : "1"
        },
        "type" : [
          {
            "code" : "http://hl7.org/cda/stds/core/StructureDefinition/RTO-PQ-PQ"
          }
        ]
      },
      {
        "id" : "SubstanceAdministration.administrationUnitCode",
        "path" : "SubstanceAdministration.administrationUnitCode",
        "min" : 0,
        "max" : "1",
        "base" : {
          "path" : "SubstanceAdministration.administrationUnitCode",
          "min" : 0,
          "max" : "1"
        },
        "type" : [
          {
            "code" : "http://hl7.org/cda/stds/core/StructureDefinition/CE"
          }
        ],
        "binding" : {
          "strength" : "example",
          "valueSet" : "http://terminology.hl7.org/ValueSet/v3-AdministrableDrugForm"
        }
      },
      {
        "id" : "SubstanceAdministration.consumable",
        "path" : "SubstanceAdministration.consumable",
        "definition" : "The consumable participation is used to bring in the LabeledDrug or Material entity that describes the administered substance. The LabeledDrug class, which is an Entity class playing the Role of Manufactured Product, identifies the drug that is consumed in the substance administration. The medication is identified by means of the LabeledDrug.code or the LabeledDrug.name. The Material entity is used to identify non-drug administered substances such as vaccines and blood products.",
        "min" : 1,
        "max" : "1",
        "base" : {
          "path" : "SubstanceAdministration.consumable",
          "min" : 1,
          "max" : "1"
        },
        "type" : [
          {
            "code" : "http://hl7.org/cda/stds/core/StructureDefinition/InfrastructureRoot"
          }
        ]
      },
      {
        "id" : "SubstanceAdministration.consumable.nullFlavor",
        "path" : "SubstanceAdministration.consumable.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" : "SubstanceAdministration.consumable.realmCode",
        "path" : "SubstanceAdministration.consumable.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" : "SubstanceAdministration.consumable.typeId",
        "path" : "SubstanceAdministration.consumable.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()"
          }
        ]
      },
      {
        "id" : "SubstanceAdministration.consumable.typeId.nullFlavor",
        "path" : "SubstanceAdministration.consumable.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" : "SubstanceAdministration.consumable.typeId.assigningAuthorityName",
        "path" : "SubstanceAdministration.consumable.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" : "SubstanceAdministration.consumable.typeId.displayable",
        "path" : "SubstanceAdministration.consumable.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" : "SubstanceAdministration.consumable.typeId.root",
        "path" : "SubstanceAdministration.consumable.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" : "SubstanceAdministration.consumable.typeId.extension",
        "path" : "SubstanceAdministration.consumable.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" : "SubstanceAdministration.consumable.templateId",
        "path" : "SubstanceAdministration.consumable.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" : "SubstanceAdministration.consumable.typeCode",
        "path" : "SubstanceAdministration.consumable.typeCode",
        "representation" : [
          "xmlAttr"
        ],
        "min" : 0,
        "max" : "1",
        "base" : {
          "path" : "SubstanceAdministration.consumable.typeCode",
          "min" : 0,
          "max" : "1"
        },
        "type" : [
          {
            "code" : "code",
            "profile" : [
              🔗 "http://hl7.org/cda/stds/core/StructureDefinition/cs-simple"
            ]
          }
        ],
        "fixedCode" : "CSM",
        "binding" : {
          "strength" : "required",
          "valueSet" : "http://hl7.org/cda/stds/core/ValueSet/CDAParticipationType"
        }
      },
      {
        "id" : "SubstanceAdministration.consumable.manufacturedProduct",
        "path" : "SubstanceAdministration.consumable.manufacturedProduct",
        "min" : 1,
        "max" : "1",
        "base" : {
          "path" : "SubstanceAdministration.consumable.manufacturedProduct",
          "min" : 1,
          "max" : "1"
        },
        "type" : [
          {
            "code" : "http://hl7.org/cda/stds/core/StructureDefinition/ManufacturedProduct"
          }
        ]
      },
      {
        "id" : "SubstanceAdministration.subject",
        "path" : "SubstanceAdministration.subject",
        "min" : 0,
        "max" : "1",
        "base" : {
          "path" : "SubstanceAdministration.subject",
          "min" : 0,
          "max" : "1"
        },
        "type" : [
          {
            "code" : "http://hl7.org/cda/stds/core/StructureDefinition/Subject"
          }
        ]
      },
      {
        "id" : "SubstanceAdministration.specimen",
        "path" : "SubstanceAdministration.specimen",
        "min" : 0,
        "max" : "*",
        "base" : {
          "path" : "SubstanceAdministration.specimen",
          "min" : 0,
          "max" : "*"
        },
        "type" : [
          {
            "code" : "http://hl7.org/cda/stds/core/StructureDefinition/Specimen"
          }
        ]
      },
      {
        "id" : "SubstanceAdministration.performer",
        "path" : "SubstanceAdministration.performer",
        "min" : 0,
        "max" : "*",
        "base" : {
          "path" : "SubstanceAdministration.performer",
          "min" : 0,
          "max" : "*"
        },
        "type" : [
          {
            "code" : "http://hl7.org/cda/stds/core/StructureDefinition/Performer2"
          }
        ]
      },
      {
        "id" : "SubstanceAdministration.author",
        "path" : "SubstanceAdministration.author",
        "min" : 0,
        "max" : "*",
        "base" : {
          "path" : "SubstanceAdministration.author",
          "min" : 0,
          "max" : "*"
        },
        "type" : [
          {
            "code" : "http://hl7.org/cda/stds/core/StructureDefinition/Author"
          }
        ]
      },
      {
        "id" : "SubstanceAdministration.informant",
        "path" : "SubstanceAdministration.informant",
        "min" : 0,
        "max" : "*",
        "base" : {
          "path" : "SubstanceAdministration.informant",
          "min" : 0,
          "max" : "*"
        },
        "type" : [
          {
            "code" : "http://hl7.org/cda/stds/core/StructureDefinition/Informant"
          }
        ]
      },
      {
        "id" : "SubstanceAdministration.participant",
        "path" : "SubstanceAdministration.participant",
        "min" : 0,
        "max" : "*",
        "base" : {
          "path" : "SubstanceAdministration.participant",
          "min" : 0,
          "max" : "*"
        },
        "type" : [
          {
            "code" : "http://hl7.org/cda/stds/core/StructureDefinition/Participant2"
          }
        ]
      },
      {
        "id" : "SubstanceAdministration.entryRelationship",
        "path" : "SubstanceAdministration.entryRelationship",
        "min" : 0,
        "max" : "*",
        "base" : {
          "path" : "SubstanceAdministration.entryRelationship",
          "min" : 0,
          "max" : "*"
        },
        "type" : [
          {
            "code" : "http://hl7.org/cda/stds/core/StructureDefinition/EntryRelationship"
          }
        ]
      },
      {
        "id" : "SubstanceAdministration.reference",
        "path" : "SubstanceAdministration.reference",
        "min" : 0,
        "max" : "*",
        "base" : {
          "path" : "SubstanceAdministration.reference",
          "min" : 0,
          "max" : "*"
        },
        "type" : [
          {
            "code" : "http://hl7.org/cda/stds/core/StructureDefinition/Reference"
          }
        ]
      },
      {
        "id" : "SubstanceAdministration.precondition",
        "path" : "SubstanceAdministration.precondition",
        "min" : 0,
        "max" : "*",
        "base" : {
          "path" : "SubstanceAdministration.precondition",
          "min" : 0,
          "max" : "*"
        },
        "type" : [
          {
            "code" : "http://hl7.org/cda/stds/core/StructureDefinition/Precondition"
          }
        ]
      },
      {
        "id" : "SubstanceAdministration.sdtcInFulfillmentOf1",
        "extension" : [
          {
            "url" : "http://hl7.org/fhir/tools/StructureDefinition/xml-namespace",
            "valueUri" : "urn:hl7-org:sdtc"
          },
          {
            "url" : "http://hl7.org/fhir/tools/StructureDefinition/xml-name",
            "valueString" : "inFulfillmentOf1"
          }
        ],
        "path" : "SubstanceAdministration.sdtcInFulfillmentOf1",
        "min" : 0,
        "max" : "*",
        "base" : {
          "path" : "SubstanceAdministration.sdtcInFulfillmentOf1",
          "min" : 0,
          "max" : "*"
        },
        "type" : [
          {
            "code" : "http://hl7.org/cda/stds/core/StructureDefinition/InFulfillmentOf1"
          }
        ]
      }
    ]
  },
  "differential" : {
    "element" : [
      {
        "id" : "SubstanceAdministration",
        "path" : "SubstanceAdministration",
        "min" : 1,
        "max" : "1"
      },
      {
        "id" : "SubstanceAdministration.classCode",
        "path" : "SubstanceAdministration.classCode",
        "representation" : [
          "xmlAttr"
        ],
        "min" : 1,
        "max" : "1",
        "type" : [
          {
            "code" : "code",
            "profile" : [
              🔗 "http://hl7.org/cda/stds/core/StructureDefinition/cs-simple"
            ]
          }
        ],
        "fixedCode" : "SBADM",
        "binding" : {
          "strength" : "required",
          "valueSet" : "http://hl7.org/cda/stds/core/ValueSet/CDAActClass"
        }
      },
      {
        "id" : "SubstanceAdministration.moodCode",
        "path" : "SubstanceAdministration.moodCode",
        "representation" : [
          "xmlAttr"
        ],
        "min" : 1,
        "max" : "1",
        "type" : [
          {
            "code" : "code",
            "profile" : [
              🔗 "http://hl7.org/cda/stds/core/StructureDefinition/cs-simple"
            ]
          }
        ],
        "binding" : {
          "strength" : "required",
          "valueSet" : "http://terminology.hl7.org/ValueSet/v3-xDocumentSubstanceMood|2.0.0"
        }
      },
      {
        "id" : "SubstanceAdministration.id",
        "path" : "SubstanceAdministration.id",
        "min" : 0,
        "max" : "*",
        "type" : [
          {
            "code" : "http://hl7.org/cda/stds/core/StructureDefinition/II"
          }
        ]
      },
      {
        "id" : "SubstanceAdministration.code",
        "path" : "SubstanceAdministration.code",
        "min" : 0,
        "max" : "1",
        "type" : [
          {
            "code" : "http://hl7.org/cda/stds/core/StructureDefinition/CD"
          }
        ],
        "binding" : {
          "strength" : "example",
          "valueSet" : "http://hl7.org/cda/stds/core/ValueSet/CDAActSubstanceAdministrationCode"
        }
      },
      {
        "id" : "SubstanceAdministration.negationInd",
        "path" : "SubstanceAdministration.negationInd",
        "representation" : [
          "xmlAttr"
        ],
        "min" : 0,
        "max" : "1",
        "type" : [
          {
            "code" : "boolean",
            "profile" : [
              🔗 "http://hl7.org/cda/stds/core/StructureDefinition/bl-simple"
            ]
          }
        ]
      },
      {
        "id" : "SubstanceAdministration.text",
        "path" : "SubstanceAdministration.text",
        "min" : 0,
        "max" : "1",
        "type" : [
          {
            "code" : "http://hl7.org/cda/stds/core/StructureDefinition/ED"
          }
        ]
      },
      {
        "id" : "SubstanceAdministration.statusCode",
        "path" : "SubstanceAdministration.statusCode",
        "min" : 0,
        "max" : "1",
        "type" : [
          {
            "code" : "http://hl7.org/cda/stds/core/StructureDefinition/CS"
          }
        ],
        "binding" : {
          "strength" : "required",
          "valueSet" : "http://terminology.hl7.org/ValueSet/v3-ActStatus"
        }
      },
      {
        "id" : "SubstanceAdministration.effectiveTime",
        "extension" : [
          {
            "url" : "http://hl7.org/fhir/StructureDefinition/elementdefinition-defaulttype",
            "valueCanonical" : "http://hl7.org/cda/stds/core/StructureDefinition/SXCM-TS"
          }
        ],
        "path" : "SubstanceAdministration.effectiveTime",
        "representation" : [
          "typeAttr"
        ],
        "min" : 0,
        "max" : "*",
        "type" : [
          {
            "code" : "http://hl7.org/cda/stds/core/StructureDefinition/SXCM-TS"
          },
          {
            "code" : "http://hl7.org/cda/stds/core/StructureDefinition/IVL-TS"
          },
          {
            "code" : "http://hl7.org/cda/stds/core/StructureDefinition/EIVL-TS"
          },
          {
            "code" : "http://hl7.org/cda/stds/core/StructureDefinition/PIVL-TS"
          },
          {
            "code" : "http://hl7.org/cda/stds/core/StructureDefinition/SXPR-TS"
          }
        ]
      },
      {
        "id" : "SubstanceAdministration.priorityCode",
        "path" : "SubstanceAdministration.priorityCode",
        "min" : 0,
        "max" : "1",
        "type" : [
          {
            "code" : "http://hl7.org/cda/stds/core/StructureDefinition/CE"
          }
        ],
        "binding" : {
          "strength" : "example",
          "valueSet" : "http://terminology.hl7.org/ValueSet/v3-ActPriority"
        }
      },
      {
        "id" : "SubstanceAdministration.repeatNumber",
        "path" : "SubstanceAdministration.repeatNumber",
        "min" : 0,
        "max" : "1",
        "type" : [
          {
            "code" : "http://hl7.org/cda/stds/core/StructureDefinition/IVL-INT"
          }
        ]
      },
      {
        "id" : "SubstanceAdministration.routeCode",
        "path" : "SubstanceAdministration.routeCode",
        "min" : 0,
        "max" : "1",
        "type" : [
          {
            "code" : "http://hl7.org/cda/stds/core/StructureDefinition/CE"
          }
        ],
        "binding" : {
          "strength" : "example",
          "valueSet" : "http://terminology.hl7.org/ValueSet/v3-RouteOfAdministration"
        }
      },
      {
        "id" : "SubstanceAdministration.approachSiteCode",
        "path" : "SubstanceAdministration.approachSiteCode",
        "min" : 0,
        "max" : "*",
        "type" : [
          {
            "code" : "http://hl7.org/cda/stds/core/StructureDefinition/CD"
          }
        ],
        "binding" : {
          "strength" : "example",
          "valueSet" : "http://terminology.hl7.org/ValueSet/v3-ActSite"
        }
      },
      {
        "id" : "SubstanceAdministration.doseQuantity",
        "path" : "SubstanceAdministration.doseQuantity",
        "min" : 0,
        "max" : "1",
        "type" : [
          {
            "code" : "http://hl7.org/cda/stds/core/StructureDefinition/IVL-PQ"
          }
        ]
      },
      {
        "id" : "SubstanceAdministration.rateQuantity",
        "path" : "SubstanceAdministration.rateQuantity",
        "min" : 0,
        "max" : "1",
        "type" : [
          {
            "code" : "http://hl7.org/cda/stds/core/StructureDefinition/IVL-PQ"
          }
        ]
      },
      {
        "id" : "SubstanceAdministration.maxDoseQuantity",
        "path" : "SubstanceAdministration.maxDoseQuantity",
        "min" : 0,
        "max" : "1",
        "type" : [
          {
            "code" : "http://hl7.org/cda/stds/core/StructureDefinition/RTO-PQ-PQ"
          }
        ]
      },
      {
        "id" : "SubstanceAdministration.administrationUnitCode",
        "path" : "SubstanceAdministration.administrationUnitCode",
        "min" : 0,
        "max" : "1",
        "type" : [
          {
            "code" : "http://hl7.org/cda/stds/core/StructureDefinition/CE"
          }
        ],
        "binding" : {
          "strength" : "example",
          "valueSet" : "http://terminology.hl7.org/ValueSet/v3-AdministrableDrugForm"
        }
      },
      {
        "id" : "SubstanceAdministration.consumable",
        "path" : "SubstanceAdministration.consumable",
        "definition" : "The consumable participation is used to bring in the LabeledDrug or Material entity that describes the administered substance. The LabeledDrug class, which is an Entity class playing the Role of Manufactured Product, identifies the drug that is consumed in the substance administration. The medication is identified by means of the LabeledDrug.code or the LabeledDrug.name. The Material entity is used to identify non-drug administered substances such as vaccines and blood products.",
        "min" : 1,
        "max" : "1",
        "type" : [
          {
            "code" : "http://hl7.org/cda/stds/core/StructureDefinition/InfrastructureRoot"
          }
        ]
      },
      {
        "id" : "SubstanceAdministration.consumable.typeCode",
        "path" : "SubstanceAdministration.consumable.typeCode",
        "representation" : [
          "xmlAttr"
        ],
        "min" : 0,
        "max" : "1",
        "type" : [
          {
            "code" : "code",
            "profile" : [
              🔗 "http://hl7.org/cda/stds/core/StructureDefinition/cs-simple"
            ]
          }
        ],
        "fixedCode" : "CSM",
        "binding" : {
          "strength" : "required",
          "valueSet" : "http://hl7.org/cda/stds/core/ValueSet/CDAParticipationType"
        }
      },
      {
        "id" : "SubstanceAdministration.consumable.manufacturedProduct",
        "path" : "SubstanceAdministration.consumable.manufacturedProduct",
        "min" : 1,
        "max" : "1",
        "type" : [
          {
            "code" : "http://hl7.org/cda/stds/core/StructureDefinition/ManufacturedProduct"
          }
        ]
      },
      {
        "id" : "SubstanceAdministration.subject",
        "path" : "SubstanceAdministration.subject",
        "min" : 0,
        "max" : "1",
        "type" : [
          {
            "code" : "http://hl7.org/cda/stds/core/StructureDefinition/Subject"
          }
        ]
      },
      {
        "id" : "SubstanceAdministration.specimen",
        "path" : "SubstanceAdministration.specimen",
        "min" : 0,
        "max" : "*",
        "type" : [
          {
            "code" : "http://hl7.org/cda/stds/core/StructureDefinition/Specimen"
          }
        ]
      },
      {
        "id" : "SubstanceAdministration.performer",
        "path" : "SubstanceAdministration.performer",
        "min" : 0,
        "max" : "*",
        "type" : [
          {
            "code" : "http://hl7.org/cda/stds/core/StructureDefinition/Performer2"
          }
        ]
      },
      {
        "id" : "SubstanceAdministration.author",
        "path" : "SubstanceAdministration.author",
        "min" : 0,
        "max" : "*",
        "type" : [
          {
            "code" : "http://hl7.org/cda/stds/core/StructureDefinition/Author"
          }
        ]
      },
      {
        "id" : "SubstanceAdministration.informant",
        "path" : "SubstanceAdministration.informant",
        "min" : 0,
        "max" : "*",
        "type" : [
          {
            "code" : "http://hl7.org/cda/stds/core/StructureDefinition/Informant"
          }
        ]
      },
      {
        "id" : "SubstanceAdministration.participant",
        "path" : "SubstanceAdministration.participant",
        "min" : 0,
        "max" : "*",
        "type" : [
          {
            "code" : "http://hl7.org/cda/stds/core/StructureDefinition/Participant2"
          }
        ]
      },
      {
        "id" : "SubstanceAdministration.entryRelationship",
        "path" : "SubstanceAdministration.entryRelationship",
        "min" : 0,
        "max" : "*",
        "type" : [
          {
            "code" : "http://hl7.org/cda/stds/core/StructureDefinition/EntryRelationship"
          }
        ]
      },
      {
        "id" : "SubstanceAdministration.reference",
        "path" : "SubstanceAdministration.reference",
        "min" : 0,
        "max" : "*",
        "type" : [
          {
            "code" : "http://hl7.org/cda/stds/core/StructureDefinition/Reference"
          }
        ]
      },
      {
        "id" : "SubstanceAdministration.precondition",
        "path" : "SubstanceAdministration.precondition",
        "min" : 0,
        "max" : "*",
        "type" : [
          {
            "code" : "http://hl7.org/cda/stds/core/StructureDefinition/Precondition"
          }
        ]
      },
      {
        "id" : "SubstanceAdministration.sdtcInFulfillmentOf1",
        "extension" : [
          {
            "url" : "http://hl7.org/fhir/tools/StructureDefinition/xml-namespace",
            "valueUri" : "urn:hl7-org:sdtc"
          },
          {
            "url" : "http://hl7.org/fhir/tools/StructureDefinition/xml-name",
            "valueString" : "inFulfillmentOf1"
          }
        ],
        "path" : "SubstanceAdministration.sdtcInFulfillmentOf1",
        "min" : 0,
        "max" : "*",
        "type" : [
          {
            "code" : "http://hl7.org/cda/stds/core/StructureDefinition/InFulfillmentOf1"
          }
        ]
      }
    ]
  }
}