{
  "resourceType": "StructureDefinition",
  "id": "ext-Document",
  "url": "https://vitalhub.com/fhir/StructureDefinition/ext-Document",
  "name": "DocumentExtension",
  "title": "Document Extension",
  "status": "active",
  "publisher": "VitalHub",
  "description": "Extension to capture uploaded document metadata, contents reference, and GUID for linking documents to other records.",
  "fhirVersion": "4.0.1",
  "kind": "complex-type",
  "abstract": false,
  "type": "Extension",
  "baseDefinition": "http://hl7.org/fhir/StructureDefinition/Extension",
  "derivation": "constraint",
  "context": [
    {
      "type": "element",
      "expression": "Consent"
    },
    {
      "type": "element",
      "expression": "DocumentReference"
    }
  ],
  "differential": {
    "element": [
      {
        "id": "Extension",
        "path": "Extension",
        "short": "Document",
        "definition": "Complex extension capturing document metadata, contents, and GUID."
      },
      {
        "id": "Extension.url",
        "path": "Extension.url",
        "min": 1,
        "max": "1",
        "fixedUri": "https://vitalhub.com/fhir/StructureDefinition/ext-Document"
      },
      {
        "id": "Extension.extension",
        "path": "Extension.extension",
        "min": 0,
        "max": "*",
        "slicing": {
          "discriminator": [
            {
              "type": "value",
              "path": "url"
            }
          ],
          "ordered": false,
          "rules": "open"
        }
      },
      {
        "id": "Extension.extension:title",
        "path": "Extension.extension",
        "sliceName": "title",
        "short": "Document title",
        "definition": "The name of the document.",
        "min": 0,
        "max": "1"
      },
      {
        "id": "Extension.extension:title.url",
        "path": "Extension.extension.url",
        "fixedUri": "https://vitalhub.com/fhir/StructureDefinition/ext-Document#title"
      },
      {
        "id": "Extension.extension:title.valueString",
        "path": "Extension.extension.valueString",
        "min": 0,
        "max": "1",
        "type": [
          {
            "code": "string"
          }
        ]
      },
      {
        "id": "Extension.extension:creation",
        "path": "Extension.extension",
        "sliceName": "creation",
        "short": "Document creation date/time",
        "definition": "The date and time the document was created.",
        "min": 0,
        "max": "1"
      },
      {
        "id": "Extension.extension:creation.url",
        "path": "Extension.extension.url",
        "min": 1,
        "max": "1",
        "fixedUri": "https://vitalhub.com/fhir/StructureDefinition/ext-Document#creation"
      },
      {
        "id": "Extension.extension:creation.valueDateTime",
        "path": "Extension.extension.valueDateTime",
        "min": 0,
        "max": "1",
        "type": [
          {
            "code": "dateTime"
          }
        ]
      },
      {
        "id": "Extension.extension:documentContents",
        "path": "Extension.extension",
        "sliceName": "documentContents",
        "short": "Document contents",
        "definition": "Reference to the Binary resource holding the document contents.",
        "min": 0,
        "max": "1"
      },
      {
        "id": "Extension.extension:documentContents.url",
        "path": "Extension.extension.url",
        "min": 1,
        "max": "1",
        "fixedUri": "https://vitalhub.com/fhir/StructureDefinition/ext-Document#documentContents"
      },
      {
        "id": "Extension.extension:documentContents.valueReference",
        "path": "Extension.extension.valueReference",
        "min": 1,
        "max": "1",
        "type": [
          {
            "code": "Reference",
            "profile": [
              "http://hl7.org/fhir/StructureDefinition/Binary"
            ]
          }
        ]
      },
      {
        "id": "Extension.extension:documentGUID",
        "path": "Extension.extension",
        "sliceName": "documentGUID",
        "short": "Document GUID",
        "definition": "GUID linking the document to other extensions or records.",
        "min": 0,
        "max": "1"
      },
      {
        "id": "Extension.extension:documentGUID.url",
        "path": "Extension.extension.url",
        "min": 1,
        "max": "1",
        "fixedUri": "https://vitalhub.com/fhir/StructureDefinition/ext-Document#documentGUID"
      },
      {
        "id": "Extension.extension:documentGUID.valueUri",
        "path": "Extension.extension.valueUri",
        "min": 1,
        "max": "1",
        "type": [
          {
            "code": "uri"
          }
        ]
      },
      {
        "id": "Extension.extension:contenttype",
        "path": "Extension.extension",
        "sliceName": "contenttype",
        "short": "Document MIME type",
        "definition": "The MIME type of the document.",
        "min": 0,
        "max": "1"
      },
      {
        "id": "Extension.extension:contenttype.url",
        "path": "Extension.extension.url",
        "min": 1,
        "max": "1",
        "fixedUri": "https://vitalhub.com/fhir/StructureDefinition/ext-Document#contenttype"
      },
      {
        "id": "Extension.extension:contenttype.valueCode",
        "path": "Extension.extension.valueCode",
        "min": 0,
        "max": "1",
        "type": [
          {
            "code": "code"
          }
        ],
        "binding": {
          "strength": "required",
          "valueSet": "http://hl7.org/fhir/ValueSet/mimetypes"
        }
      },
      {
        "id": "Extension.extension:description",
        "path": "Extension.extension",
        "sliceName": "description",
        "short": "Document description",
        "definition": "Description of the document.",
        "min": 0,
        "max": "1"
      },
      {
        "id": "Extension.extension:description.url",
        "path": "Extension.extension.url",
        "min": 1,
        "max": "1",
        "fixedUri": "https://vitalhub.com/fhir/StructureDefinition/ext-Document#description"
      },
      {
        "id": "Extension.extension:description.valueString",
        "path": "Extension.extension.valueString",
        "min": 0,
        "max": "1",
        "type": [
          {
            "code": "string"
          }
        ]
      },
      {
        "id": "Extension.extension:organization",
        "path": "Extension.extension",
        "sliceName": "organization",
        "short": "Issuing organization",
        "definition": "Organization associated with the document, selected from the Organizations ValueSet.",
        "min": 0,
        "max": "1"
      },
      {
        "id": "Extension.extension:organization.url",
        "path": "Extension.extension.url",
        "min": 1,
        "max": "1",
        "fixedUri": "https://vitalhub.com/fhir/StructureDefinition/ext-organization"
      },
      {
        "id": "Extension.extension:organization.valueCodeableConcept",
        "path": "Extension.extension.valueCodeableConcept",
        "min": 1,
        "max": "1",
        "type": [
          {
            "code": "CodeableConcept"
          }
        ],
        "binding": {
          "strength": "required",
          "valueSet": "https://vitalhub.com/fhir/ValueSet/vs-Organizations"
        }
      }
    ]
  }
}