<StructureDefinition xmlns="http://hl7.org/fhir">
  <id value="profile-careplan-servicerequest" />
  <url value="https://fhir.synapxe.sg/StructureDefinition/profile-careplan-servicerequest" />
  <name value="CarePlanServiceRequest" />
  <title value="CarePlan Service Request Profile" />
  <status value="active" />
  <publisher value="Synapxe" />
  <description value="ServiceRequest profile for representing a planned activity within a CarePlan." />
  <fhirVersion value="5.0.0" />
  <kind value="resource" />
  <abstract value="false" />
  <type value="ServiceRequest" />
  <baseDefinition value="http://hl7.org/fhir/StructureDefinition/ServiceRequest" />
  <derivation value="constraint" />
  <differential>
    <element id="ServiceRequest.identifier">
      <path value="ServiceRequest.identifier" />
      <slicing>
        <discriminator>
          <type value="value" />
          <path value="system" />
        </discriminator>
        <rules value="open" />
      </slicing>
      <min value="1" />
    </element>
    <element id="ServiceRequest.identifier:recordID">
      <path value="ServiceRequest.identifier" />
      <sliceName value="recordID" />
      <min value="1" />
      <max value="1" />
      <type>
        <code value="Identifier" />
        <profile value="https://fhir.synapxe.sg/StructureDefinition/profile-identifier-record-id" />
      </type>
    </element>
    <element id="ServiceRequest.identifier:sequenceNo">
      <path value="ServiceRequest.identifier" />
      <sliceName value="sequenceNo" />
      <max value="1" />
      <type>
        <code value="Identifier" />
        <profile value="https://fhir.synapxe.sg/StructureDefinition/profile-identifier-sequence-no" />
      </type>
    </element>
    <element id="ServiceRequest.instantiatesCanonical">
      <path value="ServiceRequest.instantiatesCanonical" />
      <max value="0" />
    </element>
    <element id="ServiceRequest.instantiatesUri">
      <path value="ServiceRequest.instantiatesUri" />
      <max value="0" />
    </element>
    <element id="ServiceRequest.basedOn">
      <path value="ServiceRequest.basedOn" />
      <max value="0" />
    </element>
    <element id="ServiceRequest.replaces">
      <path value="ServiceRequest.replaces" />
      <max value="0" />
    </element>
    <element id="ServiceRequest.requisition">
      <path value="ServiceRequest.requisition" />
      <max value="0" />
    </element>
    <element id="ServiceRequest.intent">
      <path value="ServiceRequest.intent" />
      <patternCode value="plan" />
    </element>
    <element id="ServiceRequest.category">
      <path value="ServiceRequest.category" />
      <max value="1" />
      <type>
        <code value="CodeableConcept" />
        <profile value="https://fhir.synapxe.sg/StructureDefinition/profile-codeableconcept" />
      </type>
    </element>
    <element id="ServiceRequest.priority">
      <path value="ServiceRequest.priority" />
      <max value="0" />
    </element>
    <element id="ServiceRequest.code.concept">
      <path value="ServiceRequest.code.concept" />
      <min value="1" />
      <type>
        <code value="CodeableConcept" />
        <profile value="https://fhir.synapxe.sg/StructureDefinition/profile-codeableconcept" />
      </type>
    </element>
    <element id="ServiceRequest.code.reference">
      <path value="ServiceRequest.code.reference" />
      <max value="0" />
    </element>
    <element id="ServiceRequest.orderDetail">
      <path value="ServiceRequest.orderDetail" />
      <max value="0" />
    </element>
    <element id="ServiceRequest.quantity[x]">
      <path value="ServiceRequest.quantity[x]" />
      <max value="0" />
    </element>
    <element id="ServiceRequest.subject">
      <path value="ServiceRequest.subject" />
      <type>
        <code value="Reference" />
        <profile value="https://fhir.synapxe.sg/StructureDefinition/profile-reference-patient" />
        <targetProfile value="https://fhir.synapxe.sg/StructureDefinition/profile-patient" />
      </type>
    </element>
    <element id="ServiceRequest.focus">
      <path value="ServiceRequest.focus" />
      <max value="0" />
    </element>
    <element id="ServiceRequest.encounter">
      <path value="ServiceRequest.encounter" />
      <max value="0" />
    </element>
    <element id="ServiceRequest.occurrence[x]">
      <path value="ServiceRequest.occurrence[x]" />
      <type>
        <code value="Timing" />
      </type>
    </element>
    <element id="ServiceRequest.asNeeded[x]">
      <path value="ServiceRequest.asNeeded[x]" />
      <max value="0" />
    </element>
    <element id="ServiceRequest.authoredOn">
      <path value="ServiceRequest.authoredOn" />
      <max value="0" />
    </element>
    <element id="ServiceRequest.requester">
      <path value="ServiceRequest.requester" />
      <max value="0" />
    </element>
    <element id="ServiceRequest.performerType">
      <path value="ServiceRequest.performerType" />
      <max value="0" />
    </element>
    <element id="ServiceRequest.performer">
      <path value="ServiceRequest.performer" />
      <slicing>
        <discriminator>
          <type value="value" />
          <path value="type" />
        </discriminator>
        <rules value="closed" />
      </slicing>
      <type>
        <code value="Reference" />
        <targetProfile value="https://fhir.synapxe.sg/StructureDefinition/profile-patient" />
        <targetProfile value="https://fhir.synapxe.sg/StructureDefinition/profile-practitioner" />
        <targetProfile value="https://fhir.synapxe.sg/StructureDefinition/profile-relatedperson" />
        <targetProfile value="https://fhir.synapxe.sg/StructureDefinition/profile-organization" />
      </type>
    </element>
    <element id="ServiceRequest.performer:Practitioner">
      <path value="ServiceRequest.performer" />
      <sliceName value="Practitioner" />
      <max value="1" />
      <type>
        <code value="Reference" />
        <profile value="https://fhir.synapxe.sg/StructureDefinition/profile-reference-practitioner" />
        <targetProfile value="https://fhir.synapxe.sg/StructureDefinition/profile-practitioner" />
      </type>
    </element>
    <element id="ServiceRequest.performer:RelatedPerson">
      <path value="ServiceRequest.performer" />
      <sliceName value="RelatedPerson" />
      <max value="1" />
      <type>
        <code value="Reference" />
        <targetProfile value="https://fhir.synapxe.sg/StructureDefinition/profile-relatedperson" />
      </type>
    </element>
    <element id="ServiceRequest.performer:RelatedPerson.type">
      <path value="ServiceRequest.performer.type" />
      <min value="1" />
      <patternUri value="RelatedPerson" />
    </element>
    <element id="ServiceRequest.performer:RelatedPerson.identifier">
      <path value="ServiceRequest.performer.identifier" />
      <max value="0" />
    </element>
    <element id="ServiceRequest.performer:RelatedPerson.display">
      <path value="ServiceRequest.performer.display" />
      <min value="1" />
    </element>
    <element id="ServiceRequest.performer:Organization">
      <path value="ServiceRequest.performer" />
      <sliceName value="Organization" />
      <max value="1" />
      <type>
        <code value="Reference" />
        <profile value="https://fhir.synapxe.sg/StructureDefinition/profile-reference-organization" />
        <targetProfile value="https://fhir.synapxe.sg/StructureDefinition/profile-organization" />
      </type>
    </element>
    <element id="ServiceRequest.location">
      <path value="ServiceRequest.location" />
      <max value="1" />
      <type>
        <code value="CodeableReference" />
        <targetProfile value="https://fhir.synapxe.sg/StructureDefinition/profile-location" />
      </type>
    </element>
    <element id="ServiceRequest.location.concept">
      <path value="ServiceRequest.location.concept" />
      <max value="0" />
    </element>
    <element id="ServiceRequest.location.reference">
      <path value="ServiceRequest.location.reference" />
      <min value="1" />
      <type>
        <code value="Reference" />
        <profile value="https://fhir.synapxe.sg/StructureDefinition/profile-reference-location" />
        <targetProfile value="https://fhir.synapxe.sg/StructureDefinition/profile-location" />
      </type>
    </element>
    <element id="ServiceRequest.reason">
      <path value="ServiceRequest.reason" />
      <max value="0" />
    </element>
    <element id="ServiceRequest.insurance">
      <path value="ServiceRequest.insurance" />
      <max value="0" />
    </element>
    <element id="ServiceRequest.supportingInfo">
      <path value="ServiceRequest.supportingInfo" />
      <max value="0" />
    </element>
    <element id="ServiceRequest.specimen">
      <path value="ServiceRequest.specimen" />
      <max value="0" />
    </element>
    <element id="ServiceRequest.bodySite">
      <path value="ServiceRequest.bodySite" />
      <max value="0" />
    </element>
    <element id="ServiceRequest.bodyStructure">
      <path value="ServiceRequest.bodyStructure" />
      <max value="0" />
    </element>
    <element id="ServiceRequest.note">
      <path value="ServiceRequest.note" />
      <max value="1" />
      <type>
        <code value="Annotation" />
        <profile value="https://fhir.synapxe.sg/StructureDefinition/profile-annotation" />
      </type>
    </element>
    <element id="ServiceRequest.patientInstruction">
      <path value="ServiceRequest.patientInstruction" />
      <max value="0" />
    </element>
    <element id="ServiceRequest.relevantHistory">
      <path value="ServiceRequest.relevantHistory" />
      <max value="0" />
    </element>
  </differential>
</StructureDefinition>