<StructureDefinition xmlns="http://hl7.org/fhir">
  <id value="profile-EnrollmentRequest" />
  <url value="https://bpcs.exchange/fhir/StructureDefinition/profile-EnrollmentRequest" />
  <name value="EnrollmentRequest" />
  <title value="Enrollment Request" />
  <status value="active" />
  <experimental value="false" />
  <description value="Information about the solicitation for family BPCS insurance coverage" />
  <fhirVersion value="5.0.0" />
  <mapping>
    <identity value="BPCS" />
    <name value="Internal BPCS API" />
  </mapping>
  <kind value="resource" />
  <abstract value="false" />
  <type value="EnrollmentRequest" />
  <baseDefinition value="http://hl7.org/fhir/StructureDefinition/EnrollmentRequest" />
  <derivation value="constraint" />
  <differential>
    <element id="EnrollmentRequest.id">
      <path value="EnrollmentRequest.id" />
      <comment value="This will be the same as the application number" />
      <min value="1" />
      <mustSupport value="true" />
    </element>
    <element id="EnrollmentRequest.extension">
      <path value="EnrollmentRequest.extension" />
      <min value="2" />
      <mustSupport value="true" />
    </element>
    <element id="EnrollmentRequest.extension:applicationStatus">
      <path value="EnrollmentRequest.extension" />
      <sliceName value="applicationStatus" />
      <min value="1" />
      <type>
        <code value="Extension" />
        <profile value="https://bpcs.exchange/fhir/StructureDefinition/ext-EnrollmentRequest-Status" />
      </type>
      <mustSupport value="true" />
    </element>
    <element id="EnrollmentRequest.extension:mode">
      <path value="EnrollmentRequest.extension" />
      <sliceName value="mode" />
      <min value="1" />
      <type>
        <code value="Extension" />
        <profile value="https://bpcs.exchange/fhir/StructureDefinition/ext-Resource-Mode" />
      </type>
      <mustSupport value="true" />
    </element>
    <element id="EnrollmentRequest.extension:resubmittedDate">
      <path value="EnrollmentRequest.extension" />
      <sliceName value="resubmittedDate" />
      <type>
        <code value="Extension" />
        <profile value="https://bpcs.exchange/fhir/StructureDefinition/ext-EnrollmentRequest-ResubmittedDate" />
      </type>
      <mustSupport value="true" />
    </element>
    <element id="EnrollmentRequest.status">
      <path value="EnrollmentRequest.status" />
      <min value="1" />
      <patternCode value="active" />
    </element>
    <element id="EnrollmentRequest.created">
      <path value="EnrollmentRequest.created" />
      <type>
        <code value="dateTime" />
        <profile value="https://bpcs.exchange/fhir/StructureDefinition/profile-dateTime-date" />
      </type>
      <mustSupport value="true" />
      <mapping>
        <identity value="BPCS" />
        <map value="ApplicationDTO.mailReceivedDate, FamilyHistoryDTO.appOrigRecdDt" />
      </mapping>
    </element>
    <element id="EnrollmentRequest.insurer">
      <path value="EnrollmentRequest.insurer" />
      <patternReference>
        <reference value="Organization/bpcs" />
      </patternReference>
    </element>
    <element id="EnrollmentRequest.candidate">
      <path value="EnrollmentRequest.candidate" />
      <type>
        <code value="Reference" />
        <profile value="https://bpcs.exchange/fhir/StructureDefinition/profile-Reference-group-or-patient" />
        <targetProfile value="https://bpcs.exchange/fhir/StructureDefinition/profile-Patient-search" />
      </type>
      <mustSupport value="true" />
    </element>
    <element id="EnrollmentRequest.coverage">
      <path value="EnrollmentRequest.coverage" />
      <type>
        <code value="Reference" />
        <profile value="https://bpcs.exchange/fhir/StructureDefinition/profile-Reference-rest" />
        <targetProfile value="https://bpcs.exchange/fhir/StructureDefinition/profile-Coverage-family-create" />
      </type>
      <mustSupport value="true" />
    </element>
  </differential>
</StructureDefinition>