PackagesCanonicalsLogsProblems
    Packages
    de.gematik.dipag@1.0.6
    https://gematik.de/fhir/dipag/StructureDefinition/dipag-documentreference-markierung
{
  "description": null,
  "_filename": "StructureDefinition-dipag-documentreference-markierung.json",
  "package_name": "de.gematik.dipag",
  "date": "2026-03-26",
  "derivation": "constraint",
  "publisher": "gematik GmbH",
  "fhirVersion": "4.0.1",
  "name": "DiPagDocumentReferenceMarkierung",
  "abstract": false,
  "type": "Extension",
  "experimental": "false",
  "resourceType": "StructureDefinition",
  "title": "Digitale Patientenrechnung DocumentReference Markierung",
  "package_version": "1.0.6",
  "status": "active",
  "id": "84906a69-d75c-4acb-946b-ef917db8ab3a",
  "kind": "complex-type",
  "url": "https://gematik.de/fhir/dipag/StructureDefinition/dipag-documentreference-markierung",
  "context": [ {
    "type": "element",
    "expression": "DocumentReference.meta"
  }, {
    "type": "element",
    "expression": "Parameters.parameter.value[x]"
  } ],
  "version": "1.0.6",
  "differential": {
    "element": [ {
      "id": "Extension",
      "path": "Extension",
      "constraint": [ {
        "key": "DiPagDocumentReferenceMarkierung-2",
        "human": "Details zum Gelesen-Status können nur angegeben werden wenn die Markierung vom Typ 'Gelesen' ist",
        "source": "https://gematik.de/fhir/dipag/StructureDefinition/dipag-documentreference-markierung",
        "severity": "error",
        "expression": "extension.where(url = 'gelesen').value.exists() implies extension.where(url = 'markierung').valueCoding.where(code = 'gelesen').exists()"
      }, {
        "key": "DiPagDocumentReferenceMarkierung-1",
        "human": "Details zur Art der Archivierung können nur angegeben werden wenn die Markierung vom Typ 'Archiviert' ist",
        "source": "https://gematik.de/fhir/dipag/StructureDefinition/dipag-documentreference-markierung",
        "severity": "error",
        "expression": "extension.where(url = 'artDerArchivierung').value.exists() implies extension.where(url = 'markierung').valueCoding.where(code = 'archiviert').exists()"
      }, {
        "key": "DiPagDocumentReferenceMarkierung-3",
        "human": "Details zu Status mit Kostenträger-Referenz können nur angegeben werden wenn die Markierung vom Typ 'eingereicht-frontend', eingereicht-post, 'geteilt' oder 'abgerufen' ist",
        "source": "https://gematik.de/fhir/dipag/StructureDefinition/dipag-documentreference-markierung",
        "severity": "error",
        "expression": "extension.where(url = 'kostentraeger').value.exists() implies (extension.where(url = 'markierung').valueCoding.where(code = 'eingereicht-frontend').exists() or extension.where(url = 'markierung').valueCoding.where(code = 'eingereicht-post').exists() or extension.where(url = 'markierung').valueCoding.where(code = 'geteilt').exists() or extension.where(url = 'markierung').valueCoding.where(code = 'abgerufen').exists())"
      } ]
    }, {
      "id": "Extension.extension",
      "min": 1,
      "path": "Extension.extension"
    }, {
      "id": "Extension.extension:markierung",
      "max": "1",
      "min": 1,
      "path": "Extension.extension",
      "sliceName": "markierung"
    }, {
      "id": "Extension.extension:markierung.extension",
      "max": "0",
      "path": "Extension.extension.extension"
    }, {
      "id": "Extension.extension:markierung.url",
      "path": "Extension.extension.url",
      "fixedUri": "markierung"
    }, {
      "id": "Extension.extension:markierung.value[x]",
      "min": 1,
      "path": "Extension.extension.value[x]",
      "type": [ {
        "code": "Coding"
      } ],
      "binding": {
        "strength": "required",
        "valueSet": "https://gematik.de/fhir/dipag/ValueSet/dipag-rechnung-markierung-vs"
      }
    }, {
      "id": "Extension.extension:zeitpunkt",
      "max": "1",
      "min": 0,
      "path": "Extension.extension",
      "sliceName": "zeitpunkt"
    }, {
      "id": "Extension.extension:zeitpunkt.extension",
      "max": "0",
      "path": "Extension.extension.extension"
    }, {
      "id": "Extension.extension:zeitpunkt.url",
      "path": "Extension.extension.url",
      "fixedUri": "zeitpunkt"
    }, {
      "id": "Extension.extension:zeitpunkt.value[x]",
      "min": 1,
      "path": "Extension.extension.value[x]",
      "type": [ {
        "code": "dateTime"
      } ]
    }, {
      "id": "Extension.extension:details",
      "max": "1",
      "min": 0,
      "path": "Extension.extension",
      "sliceName": "details"
    }, {
      "id": "Extension.extension:details.extension",
      "max": "0",
      "path": "Extension.extension.extension"
    }, {
      "id": "Extension.extension:details.url",
      "path": "Extension.extension.url",
      "fixedUri": "details"
    }, {
      "id": "Extension.extension:details.value[x]",
      "min": 1,
      "path": "Extension.extension.value[x]",
      "type": [ {
        "code": "string"
      } ]
    }, {
      "id": "Extension.extension:gelesen",
      "max": "1",
      "min": 0,
      "path": "Extension.extension",
      "sliceName": "gelesen"
    }, {
      "id": "Extension.extension:gelesen.extension",
      "max": "0",
      "path": "Extension.extension.extension"
    }, {
      "id": "Extension.extension:gelesen.url",
      "path": "Extension.extension.url",
      "fixedUri": "gelesen"
    }, {
      "id": "Extension.extension:gelesen.value[x]",
      "min": 1,
      "path": "Extension.extension.value[x]",
      "type": [ {
        "code": "boolean"
      } ]
    }, {
      "id": "Extension.extension:artDerArchivierung",
      "max": "1",
      "min": 0,
      "path": "Extension.extension",
      "sliceName": "artDerArchivierung"
    }, {
      "id": "Extension.extension:artDerArchivierung.extension",
      "max": "0",
      "path": "Extension.extension.extension"
    }, {
      "id": "Extension.extension:artDerArchivierung.url",
      "path": "Extension.extension.url",
      "fixedUri": "artDerArchivierung"
    }, {
      "id": "Extension.extension:artDerArchivierung.value[x]",
      "path": "Extension.extension.value[x]",
      "type": [ {
        "code": "Coding"
      } ],
      "binding": {
        "strength": "required",
        "valueSet": "https://gematik.de/fhir/dipag/ValueSet/dipag-dokument-artderarchivierung-vs"
      }
    }, {
      "id": "Extension.extension:kostentraeger",
      "max": "1",
      "min": 0,
      "path": "Extension.extension",
      "sliceName": "kostentraeger"
    }, {
      "id": "Extension.extension:kostentraeger.extension",
      "max": "0",
      "path": "Extension.extension.extension"
    }, {
      "id": "Extension.extension:kostentraeger.url",
      "path": "Extension.extension.url",
      "fixedUri": "kostentraeger"
    }, {
      "id": "Extension.extension:kostentraeger.value[x]",
      "min": 1,
      "path": "Extension.extension.value[x]",
      "type": [ {
        "code": "Reference"
      } ]
    }, {
      "id": "Extension.url",
      "path": "Extension.url",
      "fixedUri": "https://gematik.de/fhir/dipag/StructureDefinition/dipag-documentreference-markierung"
    }, {
      "id": "Extension.value[x]",
      "max": "0",
      "path": "Extension.value[x]"
    } ]
  },
  "contact": [ {
    "telecom": [ {
      "value": "http://gematik.de/",
      "system": "url"
    } ]
  } ],
  "baseDefinition": "http://hl7.org/fhir/StructureDefinition/Extension"
}