<StructureDefinition xmlns="http://hl7.org/fhir">
  <id value="EPMedPrescriptionLine-77dfabb7-37e1-4286-8253-6b64e30589c0" />
  <extension url="http://hl7.org/fhir/StructureDefinition/structuredefinition-category">
    <valueString value="Clinical.Medications" />
  </extension>
  <extension url="http://hl7.org/fhir/StructureDefinition/structuredefinition-security-category">
    <valueCode value="patient" />
  </extension>
  <url value="https://www.esante.lu/fhir-spec/StructureDefinition/EPMedPrescriptionLine" />
  <version value="0.1.0" />
  <name value="EPMedPrescriptionLine" />
  <status value="draft" />
  <fhirVersion value="4.0.1" />
  <mapping>
    <identity value="workflow" />
    <uri value="http://hl7.org/fhir/workflow" />
    <name value="Workflow Pattern" />
  </mapping>
  <mapping>
    <identity value="script10.6" />
    <uri value="http://ncpdp.org/SCRIPT10_6" />
    <name value="Mapping to NCPDP SCRIPT 10.6" />
  </mapping>
  <mapping>
    <identity value="rim" />
    <uri value="http://hl7.org/v3" />
    <name value="RIM Mapping" />
  </mapping>
  <mapping>
    <identity value="w5" />
    <uri value="http://hl7.org/fhir/fivews" />
    <name value="FiveWs Pattern Mapping" />
  </mapping>
  <mapping>
    <identity value="v2" />
    <uri value="http://hl7.org/v2" />
    <name value="HL7 v2 Mapping" />
  </mapping>
  <kind value="resource" />
  <abstract value="false" />
  <type value="MedicationRequest" />
  <baseDefinition value="http://hl7.org/fhir/StructureDefinition/MedicationRequest" />
  <derivation value="constraint" />
  <differential>
    <element id="MedicationRequest">
      <path value="MedicationRequest" />
      <short value="A prescription line" />
    </element>
    <element id="MedicationRequest.id">
      <path value="MedicationRequest.id" />
      <definition value="The logical id of the resource, as used in the URL for the resource. Once assigned, this value never changes.&#xD;&#xA;Is assigned by the server, do not provide a value." />
    </element>
    <element id="MedicationRequest.meta">
      <path value="MedicationRequest.meta" />
      <min value="1" />
    </element>
    <element id="MedicationRequest.meta.id">
      <path value="MedicationRequest.meta.id" />
      <max value="0" />
    </element>
    <element id="MedicationRequest.meta.versionId">
      <path value="MedicationRequest.meta.versionId" />
      <max value="0" />
    </element>
    <element id="MedicationRequest.meta.lastUpdated">
      <path value="MedicationRequest.meta.lastUpdated" />
      <max value="0" />
    </element>
    <element id="MedicationRequest.meta.source">
      <path value="MedicationRequest.meta.source" />
      <max value="0" />
    </element>
    <element id="MedicationRequest.meta.profile">
      <path value="MedicationRequest.meta.profile" />
      <min value="1" />
      <max value="1" />
      <fixedCanonical value="https://www.esante.lu/fhir-spec/StructureDefinition/EPMedPrescriptionLine" />
    </element>
    <element id="MedicationRequest.meta.security">
      <path value="MedicationRequest.meta.security" />
      <max value="0" />
    </element>
    <element id="MedicationRequest.meta.tag">
      <path value="MedicationRequest.meta.tag" />
      <max value="0" />
    </element>
    <element id="MedicationRequest.implicitRules">
      <path value="MedicationRequest.implicitRules" />
      <max value="0" />
    </element>
    <element id="MedicationRequest.language">
      <path value="MedicationRequest.language" />
      <max value="0" />
    </element>
    <element id="MedicationRequest.text">
      <path value="MedicationRequest.text" />
      <max value="0" />
    </element>
    <element id="MedicationRequest.contained">
      <path value="MedicationRequest.contained" />
      <max value="0" />
    </element>
    <element id="MedicationRequest.identifier">
      <path value="MedicationRequest.identifier" />
      <short value="Identifier of the prescription line" />
      <min value="1" />
      <max value="1" />
      <type>
        <code value="Identifier" />
        <profile value="https://www.esante.lu/fhir-spec/StructureDefinition/EPSimpleIdentifier" />
      </type>
    </element>
    <element id="MedicationRequest.status">
      <path value="MedicationRequest.status" />
      <condition value="val-activeOrCompleted" />
      <constraint>
        <key value="val-activeOrCompleted" />
        <severity value="error" />
        <human value="Only active or completed is allowed" />
        <expression value="$this=&quot;active&quot; or $this=&quot;completed&quot;" />
        <source value="https://www.esante.lu/fhir-spec/StructureDefinition/EPMedPrescriptionLine" />
      </constraint>
    </element>
    <element id="MedicationRequest.statusReason">
      <path value="MedicationRequest.statusReason" />
      <max value="0" />
    </element>
    <element id="MedicationRequest.intent">
      <path value="MedicationRequest.intent" />
      <short value="order" />
      <definition value="Constant" />
      <fixedCode value="order" />
    </element>
    <element id="MedicationRequest.category">
      <path value="MedicationRequest.category" />
      <short value="Type of request" />
      <definition value="Constant" />
      <min value="1" />
      <max value="1" />
    </element>
    <element id="MedicationRequest.category.id">
      <path value="MedicationRequest.category.id" />
      <max value="0" />
    </element>
    <element id="MedicationRequest.category.coding">
      <path value="MedicationRequest.category.coding" />
      <min value="1" />
      <max value="1" />
      <fixedCoding>
        <system value="urn:oid:1.3.182.5.56" />
        <code value="MED_PRESC_LINE" />
      </fixedCoding>
    </element>
    <element id="MedicationRequest.category.coding.id">
      <path value="MedicationRequest.category.coding.id" />
      <max value="0" />
    </element>
    <element id="MedicationRequest.category.coding.system">
      <path value="MedicationRequest.category.coding.system" />
      <min value="1" />
    </element>
    <element id="MedicationRequest.category.coding.version">
      <path value="MedicationRequest.category.coding.version" />
      <max value="0" />
    </element>
    <element id="MedicationRequest.category.coding.code">
      <path value="MedicationRequest.category.coding.code" />
      <min value="1" />
    </element>
    <element id="MedicationRequest.category.coding.display">
      <path value="MedicationRequest.category.coding.display" />
      <max value="0" />
    </element>
    <element id="MedicationRequest.category.coding.userSelected">
      <path value="MedicationRequest.category.coding.userSelected" />
      <max value="0" />
    </element>
    <element id="MedicationRequest.category.text">
      <path value="MedicationRequest.category.text" />
      <max value="0" />
    </element>
    <element id="MedicationRequest.priority">
      <path value="MedicationRequest.priority" />
      <max value="0" />
    </element>
    <element id="MedicationRequest.doNotPerform">
      <path value="MedicationRequest.doNotPerform" />
      <max value="0" />
    </element>
    <element id="MedicationRequest.reported[x]">
      <path value="MedicationRequest.reported[x]" />
      <max value="0" />
    </element>
    <element id="MedicationRequest.medication[x]">
      <path value="MedicationRequest.medication[x]" />
      <type>
        <code value="Reference" />
        <targetProfile value="https://www.esante.lu/fhir-spec/StructureDefinition/EPMedicationPrescription" />
        <targetProfile value="https://www.esante.lu/fhir-spec/StructureDefinition/EPMedicationNoRef" />
        <aggregation value="referenced" />
        <aggregation value="bundled" />
      </type>
    </element>
    <element id="MedicationRequest.medication[x].id">
      <path value="MedicationRequest.medication[x].id" />
      <max value="0" />
    </element>
    <element id="MedicationRequest.medication[x].reference">
      <path value="MedicationRequest.medication[x].reference" />
      <short value="A medication" />
      <definition value="See examples:&#xD;&#xA;If the medication is in the referential, simply link to it through the prescription code&#xD;&#xA;If the medication is not in the referential, you have to create it, put it in the Bundle and link to it through its fullURL" />
      <min value="1" />
      <example>
        <label value="Known medication" />
        <valueString value="Medication?identifier=urn:oid:1.3.182.5.47|2006028443" />
      </example>
      <example>
        <label value="Medication not in the referential" />
        <valueString value="Medication/urn:uuid:595bbd26-b841-4028-817d-adbcc4cdad3b" />
      </example>
      <condition value="val-refMedicationPres" />
      <constraint>
        <key value="val-refMedicationPres" />
        <severity value="error" />
        <human value="SHALL reference a prescriptable medication by its identifier or by its fullURL" />
        <expression value="(startsWith('Medication?identifier=urn:oid:1.3.182.5.47|') and length()=53) or (startsWith('Medication/urn:uuid:') and length()=56)" />
        <source value="https://www.esante.lu/fhir-spec/StructureDefinition/EPMedPrescriptionLine" />
      </constraint>
    </element>
    <element id="MedicationRequest.medication[x].type">
      <path value="MedicationRequest.medication[x].type" />
      <max value="0" />
    </element>
    <element id="MedicationRequest.medication[x].identifier">
      <path value="MedicationRequest.medication[x].identifier" />
      <max value="0" />
    </element>
    <element id="MedicationRequest.medication[x].display">
      <path value="MedicationRequest.medication[x].display" />
      <max value="0" />
    </element>
    <element id="MedicationRequest.subject">
      <path value="MedicationRequest.subject" />
      <short value="The patient" />
      <type>
        <code value="Reference" />
        <targetProfile value="http://hl7.org/fhir/StructureDefinition/Patient" />
        <aggregation value="referenced" />
      </type>
    </element>
    <element id="MedicationRequest.subject.id">
      <path value="MedicationRequest.subject.id" />
      <max value="0" />
    </element>
    <element id="MedicationRequest.subject.reference">
      <path value="MedicationRequest.subject.reference" />
      <short value="The patient referenced by its matricule" />
      <min value="1" />
      <example>
        <label value="Example" />
        <valueString value="Patient?identifier=urn:oid:1.3.182.4.4|1904112000166" />
      </example>
      <condition value="val-patByMatricule" />
      <constraint>
        <key value="val-patByMatricule" />
        <severity value="error" />
        <human value="The Patient SHALL be referenced by its matricule" />
        <expression value="startsWith('Patient?identifier=urn:oid:1.3.182.4.4|') and length()=52" />
        <source value="https://www.esante.lu/fhir-spec/StructureDefinition/EPMedPrescriptionLine" />
      </constraint>
    </element>
    <element id="MedicationRequest.subject.type">
      <path value="MedicationRequest.subject.type" />
      <max value="0" />
    </element>
    <element id="MedicationRequest.subject.identifier">
      <path value="MedicationRequest.subject.identifier" />
      <max value="0" />
    </element>
    <element id="MedicationRequest.subject.display">
      <path value="MedicationRequest.subject.display" />
      <max value="0" />
    </element>
    <element id="MedicationRequest.encounter">
      <path value="MedicationRequest.encounter" />
      <max value="0" />
    </element>
    <element id="MedicationRequest.supportingInformation">
      <path value="MedicationRequest.supportingInformation" />
      <max value="0" />
    </element>
    <element id="MedicationRequest.supportingInformation.reference">
      <path value="MedicationRequest.supportingInformation.reference" />
      <min value="1" />
    </element>
    <element id="MedicationRequest.supportingInformation.type">
      <path value="MedicationRequest.supportingInformation.type" />
      <max value="0" />
    </element>
    <element id="MedicationRequest.supportingInformation.identifier">
      <path value="MedicationRequest.supportingInformation.identifier" />
      <max value="0" />
    </element>
    <element id="MedicationRequest.supportingInformation.display">
      <path value="MedicationRequest.supportingInformation.display" />
      <max value="0" />
    </element>
    <element id="MedicationRequest.authoredOn">
      <path value="MedicationRequest.authoredOn" />
      <short value="Prescrpition date" />
      <min value="1" />
    </element>
    <element id="MedicationRequest.requester">
      <path value="MedicationRequest.requester" />
      <short value="The prescriber" />
      <min value="1" />
      <type>
        <code value="Reference" />
        <targetProfile value="https://www.esante.lu/fhir-spec/StructureDefinition/EPPractitioner" />
        <aggregation value="referenced" />
      </type>
    </element>
    <element id="MedicationRequest.requester.id">
      <path value="MedicationRequest.requester.id" />
      <max value="0" />
    </element>
    <element id="MedicationRequest.requester.reference">
      <path value="MedicationRequest.requester.reference" />
      <short value="A health professional referenced by its eHealthID" />
      <min value="1" />
      <example>
        <label value="Example" />
        <valueString value="Practitioner?identifier=urn:oid:1.3.182.4.1|2999999617" />
      </example>
      <condition value="val-1" />
      <constraint>
        <key value="val-1" />
        <severity value="error" />
        <human value="A Practitioner SHALL be referenced by its eHealthID" />
        <expression value="startsWith('Practitioner?identifier=urn:oid:1.3.182.4.1|2') and length()=54" />
        <source value="https://www.esante.lu/fhir-spec/StructureDefinition/EPMedPrescriptionLine" />
      </constraint>
    </element>
    <element id="MedicationRequest.requester.type">
      <path value="MedicationRequest.requester.type" />
      <max value="0" />
    </element>
    <element id="MedicationRequest.requester.identifier">
      <path value="MedicationRequest.requester.identifier" />
      <max value="0" />
    </element>
    <element id="MedicationRequest.requester.display">
      <path value="MedicationRequest.requester.display" />
      <max value="0" />
    </element>
    <element id="MedicationRequest.performer">
      <path value="MedicationRequest.performer" />
      <max value="0" />
    </element>
    <element id="MedicationRequest.performerType">
      <path value="MedicationRequest.performerType" />
      <max value="0" />
    </element>
    <element id="MedicationRequest.recorder">
      <path value="MedicationRequest.recorder" />
      <max value="0" />
    </element>
    <element id="MedicationRequest.reasonCode">
      <path value="MedicationRequest.reasonCode" />
      <max value="0" />
    </element>
    <element id="MedicationRequest.reasonReference">
      <path value="MedicationRequest.reasonReference" />
      <max value="0" />
    </element>
    <element id="MedicationRequest.instantiatesCanonical">
      <path value="MedicationRequest.instantiatesCanonical" />
      <max value="0" />
    </element>
    <element id="MedicationRequest.instantiatesUri">
      <path value="MedicationRequest.instantiatesUri" />
      <max value="0" />
    </element>
    <element id="MedicationRequest.basedOn">
      <path value="MedicationRequest.basedOn" />
      <max value="0" />
    </element>
    <element id="MedicationRequest.groupIdentifier">
      <path value="MedicationRequest.groupIdentifier" />
      <max value="0" />
    </element>
    <element id="MedicationRequest.courseOfTherapyType">
      <path value="MedicationRequest.courseOfTherapyType" />
      <max value="0" />
    </element>
    <element id="MedicationRequest.insurance">
      <path value="MedicationRequest.insurance" />
      <max value="0" />
    </element>
    <element id="MedicationRequest.note">
      <path value="MedicationRequest.note" />
      <max value="0" />
    </element>
    <element id="MedicationRequest.dosageInstruction">
      <path value="MedicationRequest.dosageInstruction" />
      <min value="1" />
    </element>
    <element id="MedicationRequest.dosageInstruction.id">
      <path value="MedicationRequest.dosageInstruction.id" />
      <max value="0" />
    </element>
    <element id="MedicationRequest.dosageInstruction.sequence">
      <path value="MedicationRequest.dosageInstruction.sequence" />
      <max value="0" />
    </element>
    <element id="MedicationRequest.dosageInstruction.text">
      <path value="MedicationRequest.dosageInstruction.text" />
      <short value="Free text dosage instructions" />
    </element>
    <element id="MedicationRequest.dosageInstruction.additionalInstruction">
      <path value="MedicationRequest.dosageInstruction.additionalInstruction" />
      <max value="0" />
    </element>
    <element id="MedicationRequest.dosageInstruction.patientInstruction">
      <path value="MedicationRequest.dosageInstruction.patientInstruction" />
      <short value="Patient oriented instructions" />
    </element>
    <element id="MedicationRequest.dosageInstruction.timing">
      <path value="MedicationRequest.dosageInstruction.timing" />
      <short value="When medication should be taken" />
    </element>
    <element id="MedicationRequest.dosageInstruction.timing.id">
      <path value="MedicationRequest.dosageInstruction.timing.id" />
      <max value="0" />
    </element>
    <element id="MedicationRequest.dosageInstruction.timing.event">
      <path value="MedicationRequest.dosageInstruction.timing.event" />
      <max value="0" />
    </element>
    <element id="MedicationRequest.dosageInstruction.timing.repeat">
      <path value="MedicationRequest.dosageInstruction.timing.repeat" />
      <min value="1" />
    </element>
    <element id="MedicationRequest.dosageInstruction.timing.repeat.id">
      <path value="MedicationRequest.dosageInstruction.timing.repeat.id" />
      <max value="0" />
    </element>
    <element id="MedicationRequest.dosageInstruction.timing.repeat.bounds[x]">
      <path value="MedicationRequest.dosageInstruction.timing.repeat.bounds[x]" />
      <type>
        <code value="Duration" />
      </type>
      <type>
        <code value="Period" />
      </type>
    </element>
    <element id="MedicationRequest.dosageInstruction.timing.code">
      <path value="MedicationRequest.dosageInstruction.timing.code" />
      <max value="0" />
    </element>
    <element id="MedicationRequest.dosageInstruction.asNeeded[x]">
      <path value="MedicationRequest.dosageInstruction.asNeeded[x]" />
      <max value="0" />
    </element>
    <element id="MedicationRequest.dosageInstruction.site">
      <path value="MedicationRequest.dosageInstruction.site" />
      <max value="0" />
    </element>
    <element id="MedicationRequest.dosageInstruction.route">
      <path value="MedicationRequest.dosageInstruction.route" />
      <short value="Route of administration" />
      <type>
        <code value="CodeableConcept" />
        <profile value="https://www.esante.lu/fhir-spec/StructureDefinition/EPCodeableConcept" />
      </type>
    </element>
    <element id="MedicationRequest.dosageInstruction.route.coding">
      <path value="MedicationRequest.dosageInstruction.route.coding" />
      <binding>
        <strength value="required" />
        <valueSet value="https://www.esante.lu/fhir-spec/ValueSet/PharRoutes" />
      </binding>
    </element>
    <element id="MedicationRequest.dosageInstruction.method">
      <path value="MedicationRequest.dosageInstruction.method" />
      <max value="0" />
    </element>
    <element id="MedicationRequest.dosageInstruction.doseAndRate">
      <path value="MedicationRequest.dosageInstruction.doseAndRate" />
      <short value="Amount of medication" />
    </element>
    <element id="MedicationRequest.dosageInstruction.doseAndRate.id">
      <path value="MedicationRequest.dosageInstruction.doseAndRate.id" />
      <max value="0" />
    </element>
    <element id="MedicationRequest.dosageInstruction.doseAndRate.type">
      <path value="MedicationRequest.dosageInstruction.doseAndRate.type" />
      <max value="0" />
    </element>
    <element id="MedicationRequest.dosageInstruction.maxDosePerPeriod">
      <path value="MedicationRequest.dosageInstruction.maxDosePerPeriod" />
      <max value="0" />
    </element>
    <element id="MedicationRequest.dosageInstruction.maxDosePerAdministration">
      <path value="MedicationRequest.dosageInstruction.maxDosePerAdministration" />
      <max value="0" />
    </element>
    <element id="MedicationRequest.dosageInstruction.maxDosePerLifetime">
      <path value="MedicationRequest.dosageInstruction.maxDosePerLifetime" />
      <max value="0" />
    </element>
    <element id="MedicationRequest.dispenseRequest">
      <path value="MedicationRequest.dispenseRequest" />
      <max value="0" />
    </element>
    <element id="MedicationRequest.dispenseRequest.dispenseInterval">
      <path value="MedicationRequest.dispenseRequest.dispenseInterval" />
      <max value="0" />
    </element>
    <element id="MedicationRequest.dispenseRequest.numberOfRepeatsAllowed">
      <path value="MedicationRequest.dispenseRequest.numberOfRepeatsAllowed" />
      <max value="0" />
    </element>
    <element id="MedicationRequest.dispenseRequest.expectedSupplyDuration">
      <path value="MedicationRequest.dispenseRequest.expectedSupplyDuration" />
      <max value="0" />
    </element>
    <element id="MedicationRequest.dispenseRequest.performer">
      <path value="MedicationRequest.dispenseRequest.performer" />
      <max value="0" />
    </element>
    <element id="MedicationRequest.substitution">
      <path value="MedicationRequest.substitution" />
      <max value="0" />
    </element>
    <element id="MedicationRequest.priorPrescription">
      <path value="MedicationRequest.priorPrescription" />
      <max value="0" />
    </element>
    <element id="MedicationRequest.detectedIssue">
      <path value="MedicationRequest.detectedIssue" />
      <max value="0" />
    </element>
    <element id="MedicationRequest.eventHistory">
      <path value="MedicationRequest.eventHistory" />
      <max value="0" />
    </element>
  </differential>
</StructureDefinition>