{
  "resourceType": "StructureDefinition",
  "id": "HiisCatalogEntryHistory",
  "url": "https://fhir.bfarm.de/StructureDefinition/HiisCatalogEntryHistory",
  "version": "3.1.0-TEST",
  "name": "HiisCatalogEntryHistory",
  "title": "HiisCatalogEntryHistory",
  "status": "draft",
  "description": "Extension for the change history of a HIIS catalog entry.",
  "fhirVersion": "4.0.1",
  "kind": "complex-type",
  "abstract": false,
  "context": [
    {
      "type": "element",
      "expression": "CatalogEntry"
    }
  ],
  "type": "Extension",
  "baseDefinition": "http://hl7.org/fhir/StructureDefinition/Extension",
  "derivation": "constraint",
  "differential": {
    "element": [
      {
        "id": "Extension",
        "path": "Extension",
        "short": "Change History",
        "definition": "Contains all public entries of the change history.",
        "mustSupport": true
      },
      {
        "id": "Extension.extension",
        "path": "Extension.extension",
        "mustSupport": true
      },
      {
        "id": "Extension.extension:entry",
        "path": "Extension.extension",
        "sliceName": "entry",
        "short": "Entry",
        "definition": "An entry in the change history.",
        "min": 0,
        "max": "*",
        "mustSupport": true
      },
      {
        "id": "Extension.extension:entry.extension",
        "path": "Extension.extension.extension",
        "min": 2,
        "mustSupport": true
      },
      {
        "id": "Extension.extension:entry.extension:date",
        "path": "Extension.extension.extension",
        "sliceName": "date",
        "short": "Date",
        "definition": "Date of the entry in the change history",
        "min": 1,
        "max": "1",
        "mustSupport": true
      },
      {
        "id": "Extension.extension:entry.extension:date.extension",
        "path": "Extension.extension.extension.extension",
        "max": "0"
      },
      {
        "id": "Extension.extension:entry.extension:date.url",
        "path": "Extension.extension.extension.url",
        "fixedUri": "date"
      },
      {
        "id": "Extension.extension:entry.extension:date.value[x]",
        "path": "Extension.extension.extension.value[x]",
        "slicing": {
          "discriminator": [
            {
              "type": "type",
              "path": "$this"
            }
          ],
          "ordered": false,
          "rules": "open"
        },
        "min": 1
      },
      {
        "id": "Extension.extension:entry.extension:date.value[x]:valueDateTime",
        "path": "Extension.extension.extension.value[x]",
        "sliceName": "valueDateTime",
        "min": 1,
        "max": "1",
        "type": [
          {
            "code": "dateTime"
          }
        ],
        "mustSupport": true
      },
      {
        "id": "Extension.extension:entry.extension:remark",
        "path": "Extension.extension.extension",
        "sliceName": "remark",
        "short": "Remark",
        "definition": "Remark on the entry in the change history",
        "min": 0,
        "max": "1",
        "mustSupport": true
      },
      {
        "id": "Extension.extension:entry.extension:remark.extension",
        "path": "Extension.extension.extension.extension",
        "max": "0"
      },
      {
        "id": "Extension.extension:entry.extension:remark.url",
        "path": "Extension.extension.extension.url",
        "fixedUri": "remark"
      },
      {
        "id": "Extension.extension:entry.extension:remark.value[x]",
        "path": "Extension.extension.extension.value[x]",
        "slicing": {
          "discriminator": [
            {
              "type": "type",
              "path": "$this"
            }
          ],
          "ordered": false,
          "rules": "open"
        },
        "min": 1
      },
      {
        "id": "Extension.extension:entry.extension:remark.value[x]:valueString",
        "path": "Extension.extension.extension.value[x]",
        "sliceName": "valueString",
        "min": 1,
        "max": "1",
        "type": [
          {
            "code": "string"
          }
        ],
        "mustSupport": true
      },
      {
        "id": "Extension.extension:entry.extension:title",
        "path": "Extension.extension.extension",
        "sliceName": "title",
        "short": "Title",
        "definition": "Title of the entry in the change history",
        "min": 0,
        "max": "1",
        "mustSupport": true
      },
      {
        "id": "Extension.extension:entry.extension:title.extension",
        "path": "Extension.extension.extension.extension",
        "max": "0"
      },
      {
        "id": "Extension.extension:entry.extension:title.url",
        "path": "Extension.extension.extension.url",
        "fixedUri": "title"
      },
      {
        "id": "Extension.extension:entry.extension:title.value[x]",
        "path": "Extension.extension.extension.value[x]",
        "slicing": {
          "discriminator": [
            {
              "type": "type",
              "path": "$this"
            }
          ],
          "ordered": false,
          "rules": "open"
        },
        "min": 1
      },
      {
        "id": "Extension.extension:entry.extension:title.value[x]:valueString",
        "path": "Extension.extension.extension.value[x]",
        "sliceName": "valueString",
        "min": 1,
        "max": "1",
        "type": [
          {
            "code": "string"
          }
        ],
        "mustSupport": true
      },
      {
        "id": "Extension.extension:entry.extension:type",
        "path": "Extension.extension.extension",
        "sliceName": "type",
        "short": "Type",
        "definition": "Type of the entry in the change history",
        "min": 1,
        "max": "1",
        "mustSupport": true
      },
      {
        "id": "Extension.extension:entry.extension:type.extension",
        "path": "Extension.extension.extension.extension",
        "max": "0"
      },
      {
        "id": "Extension.extension:entry.extension:type.url",
        "path": "Extension.extension.extension.url",
        "fixedUri": "type"
      },
      {
        "id": "Extension.extension:entry.extension:type.value[x]",
        "path": "Extension.extension.extension.value[x]",
        "slicing": {
          "discriminator": [
            {
              "type": "type",
              "path": "$this"
            }
          ],
          "ordered": false,
          "rules": "open"
        },
        "min": 1
      },
      {
        "id": "Extension.extension:entry.extension:type.value[x]:valueCoding",
        "path": "Extension.extension.extension.value[x]",
        "sliceName": "valueCoding",
        "min": 1,
        "max": "1",
        "type": [
          {
            "code": "Coding"
          }
        ],
        "mustSupport": true
      },
      {
        "id": "Extension.extension:entry.extension:type.value[x]:valueCoding.system",
        "path": "Extension.extension.extension.value[x].system",
        "mustSupport": true
      },
      {
        "id": "Extension.extension:entry.extension:type.value[x]:valueCoding.code",
        "path": "Extension.extension.extension.value[x].code",
        "mustSupport": true
      },
      {
        "id": "Extension.extension:entry.url",
        "path": "Extension.extension.url",
        "fixedUri": "entry"
      },
      {
        "id": "Extension.extension:entry.value[x]",
        "path": "Extension.extension.value[x]",
        "max": "0"
      },
      {
        "id": "Extension.url",
        "path": "Extension.url",
        "fixedUri": "https://fhir.bfarm.de/StructureDefinition/HiisCatalogEntryHistory"
      },
      {
        "id": "Extension.value[x]",
        "path": "Extension.value[x]",
        "max": "0"
      }
    ]
  }
}