<StructureDefinition xmlns="http://hl7.org/fhir">
  <id value="crane-cccn-pathway-document-object-requirement" />
  <url value="http://crane4health.eu/fhir/StructureDefinition/crane-cccn-pathway-document-object-requirement" />
  <version value="1.0.0-alpha" />
  <name value="CraNE_CCCN_Pathway_Document_Object_Requirement" />
  <title value="CraNE CCCN Pathway Document Object Requirement" />
  <status value="draft" />
  <date value="2024-08-31" />
  <publisher value="CraNE Joint Action" />
  <contact>
    <name value="CraNE Joint Action" />
    <telecom>
      <system value="url" />
      <value value="https://crane4health.eu" />
    </telecom>
  </contact>
  <contact>
    <name value="Research Group Digital Health, TUD University of Technology" />
    <telecom>
      <system value="url" />
      <value value="https://tu-dresden.de/bu/wirtschaft/winf/digital-health" />
    </telecom>
    <telecom>
      <system value="email" />
      <value value="marcel.susky@tu-dresden.de" />
    </telecom>
    <telecom>
      <system value="email" />
      <value value="peggy.richter@tu-dresden.de" />
    </telecom>
  </contact>
  <description value="The profile for the CraNE Comprehensive Cancer Care Network Pathway Document Object Requirement" />
  <jurisdiction>
    <coding>
      <system value="http://unstats.un.org/unsd/methods/m49/m49.htm" />
      <code value="150" />
    </coding>
  </jurisdiction>
  <copyright value="2024+" />
  <fhirVersion value="4.0.1" />
  <kind value="complex-type" />
  <abstract value="false" />
  <type value="DataRequirement" />
  <baseDefinition value="http://hl7.org/fhir/StructureDefinition/DataRequirement" />
  <derivation value="constraint" />
  <differential>
    <element id="DataRequirement.type">
      <path value="DataRequirement.type" />
      <fixedCode value="DocumentReference" />
    </element>
    <element id="DataRequirement.profile">
      <path value="DataRequirement.profile" />
      <slicing>
        <discriminator>
          <type value="profile" />
          <path value="$this" />
        </discriminator>
        <description value="Slice for required type/profile representing an clinical document" />
        <ordered value="false" />
        <rules value="open" />
      </slicing>
    </element>
    <element id="DataRequirement.profile:DocumentObject">
      <path value="DataRequirement.profile" />
      <sliceName value="DocumentObject" />
      <min value="0" />
      <max value="*" />
      <patternCanonical value="http://crane4health.eu/fhir/StructureDefinition/crane-cccn-pathway-document-object" />
      <mustSupport value="true" />
    </element>
    <element id="DataRequirement.codeFilter">
      <path value="DataRequirement.codeFilter" />
      <slicing>
        <discriminator>
          <type value="value" />
          <path value="path" />
        </discriminator>
        <discriminator>
          <type value="pattern" />
          <path value="code" />
        </discriminator>
        <description value="Slice for expected document class or type" />
        <ordered value="false" />
        <rules value="open" />
      </slicing>
    </element>
    <element id="DataRequirement.codeFilter:DocumentType">
      <path value="DataRequirement.codeFilter" />
      <sliceName value="DocumentType" />
      <min value="0" />
      <max value="*" />
      <mustSupport value="true" />
    </element>
    <element id="DataRequirement.codeFilter:DocumentType.path">
      <path value="DataRequirement.codeFilter.path" />
      <min value="1" />
      <fixedString value="type" />
    </element>
    <element id="DataRequirement.codeFilter:DocumentType.code">
      <path value="DataRequirement.codeFilter.code" />
      <binding>
        <strength value="required" />
        <valueSet value="http://hl7.org/fhir/ValueSet/c80-doc-typecodes" />
      </binding>
    </element>
    <element id="DataRequirement.codeFilter:DocumentClass">
      <path value="DataRequirement.codeFilter" />
      <sliceName value="DocumentClass" />
      <min value="0" />
      <max value="*" />
      <mustSupport value="true" />
    </element>
    <element id="DataRequirement.codeFilter:DocumentClass.path">
      <path value="DataRequirement.codeFilter.path" />
      <min value="1" />
      <fixedString value="category" />
    </element>
    <element id="DataRequirement.codeFilter:DocumentClass.code">
      <path value="DataRequirement.codeFilter.code" />
      <binding>
        <strength value="required" />
        <valueSet value="http://hl7.org/fhir/ValueSet/document-classcodes" />
      </binding>
    </element>
    <element id="DataRequirement.codeFilter:IheDeXdsDocumentType">
      <path value="DataRequirement.codeFilter" />
      <sliceName value="IheDeXdsDocumentType" />
      <min value="0" />
      <max value="*" />
      <mustSupport value="true" />
    </element>
    <element id="DataRequirement.codeFilter:IheDeXdsDocumentType.path">
      <path value="DataRequirement.codeFilter.path" />
      <min value="1" />
      <patternString value="type" />
    </element>
    <element id="DataRequirement.codeFilter:IheDeXdsDocumentType.code">
      <path value="DataRequirement.codeFilter.code" />
      <binding>
        <strength value="required" />
        <valueSet value="http://ihe-d.de/ValueSets/IHEXDStypeCode" />
      </binding>
    </element>
    <element id="DataRequirement.codeFilter:IheDeXdsDocumentClass">
      <path value="DataRequirement.codeFilter" />
      <sliceName value="IheDeXdsDocumentClass" />
      <min value="0" />
      <max value="*" />
      <mustSupport value="true" />
    </element>
    <element id="DataRequirement.codeFilter:IheDeXdsDocumentClass.path">
      <path value="DataRequirement.codeFilter.path" />
      <min value="1" />
      <patternString value="category" />
    </element>
    <element id="DataRequirement.codeFilter:IheDeXdsDocumentClass.code">
      <path value="DataRequirement.codeFilter.code" />
      <binding>
        <strength value="required" />
        <valueSet value="http://ihe-d.de/ValueSets/IHEXDSclassCode" />
      </binding>
    </element>
  </differential>
</StructureDefinition>