<?xml version="1.0" ?>
<mxfile host="app.diagrams.net" modified="2026-10-27T00:00:00.000Z" agent="ChatGPT" version="24.7.17" type="device">
  <diagram id="medical" name="门诊医疗信息系统类图">
    <mxGraphModel dx="1600" dy="1000" grid="1" gridSize="10" page="1" pageScale="1" pageWidth="1900" pageHeight="1200" math="0" shadow="0">
      <root>
        <mxCell id="0"/>
        <mxCell id="1" parent="0"/>
        <mxCell id="hospital" value="Hospital 医院" style="swimlane;html=1;startSize=34;horizontal=1;rounded=0;container=0;collapsible=0;whiteSpace=wrap;fillColor=#eaf2ff;swimlaneFillColor=#ffffff;strokeColor=#45658a;fontSize=14;fontStyle=1;" vertex="1" parent="1">
          <mxGeometry as="geometry" x="70" y="80" width="245" height="139"/>
        </mxCell>
        <mxCell id="hospitala" value="&lt;div style=&quot;text-align:left&quot;&gt;- hospitalId: String&lt;br&gt;- name: String&lt;/div&gt;" style="text;html=1;align=left;verticalAlign=top;whiteSpace=wrap;overflow=hidden;fontSize=12;spacingLeft=8;strokeColor=none;fillColor=none;" vertex="1" parent="hospital">
          <mxGeometry as="geometry" x="0" y="34" width="245" height="42"/>
        </mxCell>
        <mxCell id="hospitalo" value="&lt;div style=&quot;text-align:left&quot;&gt;+ addDepartment(d: Department): void&lt;/div&gt;" style="text;html=1;align=left;verticalAlign=top;whiteSpace=wrap;overflow=hidden;fontSize=12;spacingLeft=8;strokeColor=none;fillColor=none;" vertex="1" parent="hospital">
          <mxGeometry as="geometry" x="0" y="76" width="245" height="35"/>
        </mxCell>
        <mxCell id="department" value="Department 科室" style="swimlane;html=1;startSize=34;horizontal=1;rounded=0;container=0;collapsible=0;whiteSpace=wrap;fillColor=#eaf2ff;swimlaneFillColor=#ffffff;strokeColor=#45658a;fontSize=14;fontStyle=1;" vertex="1" parent="1">
          <mxGeometry as="geometry" x="400" y="80" width="245" height="139"/>
        </mxCell>
        <mxCell id="departmenta" value="&lt;div style=&quot;text-align:left&quot;&gt;- departmentId: String&lt;br&gt;- name: String&lt;/div&gt;" style="text;html=1;align=left;verticalAlign=top;whiteSpace=wrap;overflow=hidden;fontSize=12;spacingLeft=8;strokeColor=none;fillColor=none;" vertex="1" parent="department">
          <mxGeometry as="geometry" x="0" y="34" width="245" height="42"/>
        </mxCell>
        <mxCell id="departmento" value="&lt;div style=&quot;text-align:left&quot;&gt;+ assignDoctor(d: Doctor): void&lt;/div&gt;" style="text;html=1;align=left;verticalAlign=top;whiteSpace=wrap;overflow=hidden;fontSize=12;spacingLeft=8;strokeColor=none;fillColor=none;" vertex="1" parent="department">
          <mxGeometry as="geometry" x="0" y="76" width="245" height="35"/>
        </mxCell>
        <mxCell id="staff" value="MedicalStaff 医护人员" style="swimlane;html=1;startSize=34;horizontal=1;rounded=0;container=0;collapsible=0;whiteSpace=wrap;fillColor=#eaf2ff;swimlaneFillColor=#ffffff;strokeColor=#45658a;fontSize=14;fontStyle=2;" vertex="1" parent="1">
          <mxGeometry as="geometry" x="790" y="80" width="245" height="139"/>
        </mxCell>
        <mxCell id="staffa" value="&lt;div style=&quot;text-align:left&quot;&gt;- staffId: String&lt;br&gt;- name: String&lt;/div&gt;" style="text;html=1;align=left;verticalAlign=top;whiteSpace=wrap;overflow=hidden;fontSize=12;spacingLeft=8;strokeColor=none;fillColor=none;" vertex="1" parent="staff">
          <mxGeometry as="geometry" x="0" y="34" width="245" height="42"/>
        </mxCell>
        <mxCell id="staffo" value="&lt;div style=&quot;text-align:left&quot;&gt;+ work(): void&lt;/div&gt;" style="text;html=1;align=left;verticalAlign=top;whiteSpace=wrap;overflow=hidden;fontSize=12;spacingLeft=8;strokeColor=none;fillColor=none;" vertex="1" parent="staff">
          <mxGeometry as="geometry" x="0" y="76" width="245" height="35"/>
        </mxCell>
        <mxCell id="doctor" value="Doctor 医生" style="swimlane;html=1;startSize=34;horizontal=1;rounded=0;container=0;collapsible=0;whiteSpace=wrap;fillColor=#eaf2ff;swimlaneFillColor=#ffffff;strokeColor=#45658a;fontSize=14;fontStyle=1;" vertex="1" parent="1">
          <mxGeometry as="geometry" x="670" y="370" width="245" height="139"/>
        </mxCell>
        <mxCell id="doctora" value="&lt;div style=&quot;text-align:left&quot;&gt;- specialty: String&lt;br&gt;- licenseNo: String&lt;/div&gt;" style="text;html=1;align=left;verticalAlign=top;whiteSpace=wrap;overflow=hidden;fontSize=12;spacingLeft=8;strokeColor=none;fillColor=none;" vertex="1" parent="doctor">
          <mxGeometry as="geometry" x="0" y="34" width="245" height="42"/>
        </mxCell>
        <mxCell id="doctoro" value="&lt;div style=&quot;text-align:left&quot;&gt;+ diagnose(p: Patient): Diagnosis&lt;/div&gt;" style="text;html=1;align=left;verticalAlign=top;whiteSpace=wrap;overflow=hidden;fontSize=12;spacingLeft=8;strokeColor=none;fillColor=none;" vertex="1" parent="doctor">
          <mxGeometry as="geometry" x="0" y="76" width="245" height="35"/>
        </mxCell>
        <mxCell id="nurse" value="Nurse 护士" style="swimlane;html=1;startSize=34;horizontal=1;rounded=0;container=0;collapsible=0;whiteSpace=wrap;fillColor=#eaf2ff;swimlaneFillColor=#ffffff;strokeColor=#45658a;fontSize=14;fontStyle=1;" vertex="1" parent="1">
          <mxGeometry as="geometry" x="1010" y="370" width="245" height="132"/>
        </mxCell>
        <mxCell id="nursea" value="&lt;div style=&quot;text-align:left&quot;&gt;- grade: String&lt;/div&gt;" style="text;html=1;align=left;verticalAlign=top;whiteSpace=wrap;overflow=hidden;fontSize=12;spacingLeft=8;strokeColor=none;fillColor=none;" vertex="1" parent="nurse">
          <mxGeometry as="geometry" x="0" y="34" width="245" height="35"/>
        </mxCell>
        <mxCell id="nurseo" value="&lt;div style=&quot;text-align:left&quot;&gt;+ assist(p: Patient): void&lt;/div&gt;" style="text;html=1;align=left;verticalAlign=top;whiteSpace=wrap;overflow=hidden;fontSize=12;spacingLeft=8;strokeColor=none;fillColor=none;" vertex="1" parent="nurse">
          <mxGeometry as="geometry" x="0" y="69" width="245" height="35"/>
        </mxCell>
        <mxCell id="patient" value="Patient 患者" style="swimlane;html=1;startSize=34;horizontal=1;rounded=0;container=0;collapsible=0;whiteSpace=wrap;fillColor=#eaf2ff;swimlaneFillColor=#ffffff;strokeColor=#45658a;fontSize=14;fontStyle=1;" vertex="1" parent="1">
          <mxGeometry as="geometry" x="70" y="370" width="245" height="139"/>
        </mxCell>
        <mxCell id="patienta" value="&lt;div style=&quot;text-align:left&quot;&gt;- patientId: String&lt;br&gt;- name: String&lt;/div&gt;" style="text;html=1;align=left;verticalAlign=top;whiteSpace=wrap;overflow=hidden;fontSize=12;spacingLeft=8;strokeColor=none;fillColor=none;" vertex="1" parent="patient">
          <mxGeometry as="geometry" x="0" y="34" width="245" height="42"/>
        </mxCell>
        <mxCell id="patiento" value="&lt;div style=&quot;text-align:left&quot;&gt;+ book(d: Doctor): Appointment&lt;/div&gt;" style="text;html=1;align=left;verticalAlign=top;whiteSpace=wrap;overflow=hidden;fontSize=12;spacingLeft=8;strokeColor=none;fillColor=none;" vertex="1" parent="patient">
          <mxGeometry as="geometry" x="0" y="76" width="245" height="35"/>
        </mxCell>
        <mxCell id="appointment" value="Appointment 预约" style="swimlane;html=1;startSize=34;horizontal=1;rounded=0;container=0;collapsible=0;whiteSpace=wrap;fillColor=#eaf2ff;swimlaneFillColor=#ffffff;strokeColor=#45658a;fontSize=14;fontStyle=1;" vertex="1" parent="1">
          <mxGeometry as="geometry" x="350" y="690" width="245" height="160"/>
        </mxCell>
        <mxCell id="appointmenta" value="&lt;div style=&quot;text-align:left&quot;&gt;- appointmentId: String&lt;br&gt;- time: DateTime&lt;br&gt;- status: String&lt;/div&gt;" style="text;html=1;align=left;verticalAlign=top;whiteSpace=wrap;overflow=hidden;fontSize=12;spacingLeft=8;strokeColor=none;fillColor=none;" vertex="1" parent="appointment">
          <mxGeometry as="geometry" x="0" y="34" width="245" height="63"/>
        </mxCell>
        <mxCell id="appointmento" value="&lt;div style=&quot;text-align:left&quot;&gt;+ confirm(): boolean&lt;/div&gt;" style="text;html=1;align=left;verticalAlign=top;whiteSpace=wrap;overflow=hidden;fontSize=12;spacingLeft=8;strokeColor=none;fillColor=none;" vertex="1" parent="appointment">
          <mxGeometry as="geometry" x="0" y="97" width="245" height="35"/>
        </mxCell>
        <mxCell id="diagnosis" value="DiagnosisService 诊断服务" style="swimlane;html=1;startSize=34;horizontal=1;rounded=0;container=0;collapsible=0;whiteSpace=wrap;fillColor=#eaf2ff;swimlaneFillColor=#ffffff;strokeColor=#45658a;fontSize=14;fontStyle=1;" vertex="1" parent="1">
          <mxGeometry as="geometry" x="790" y="690" width="245" height="139"/>
        </mxCell>
        <mxCell id="diagnosisa" value="&lt;div style=&quot;text-align:left&quot;&gt;- serviceId: String&lt;/div&gt;" style="text;html=1;align=left;verticalAlign=top;whiteSpace=wrap;overflow=hidden;fontSize=12;spacingLeft=8;strokeColor=none;fillColor=none;" vertex="1" parent="diagnosis">
          <mxGeometry as="geometry" x="0" y="34" width="245" height="35"/>
        </mxCell>
        <mxCell id="diagnosiso" value="&lt;div style=&quot;text-align:left&quot;&gt;+ examine(p: Patient): Diagnosis&lt;br&gt;+ createPrescription(): Prescription&lt;/div&gt;" style="text;html=1;align=left;verticalAlign=top;whiteSpace=wrap;overflow=hidden;fontSize=12;spacingLeft=8;strokeColor=none;fillColor=none;" vertex="1" parent="diagnosis">
          <mxGeometry as="geometry" x="0" y="69" width="245" height="42"/>
        </mxCell>
        <mxCell id="check" value="«interface» ICheckable 可检查" style="swimlane;html=1;startSize=34;horizontal=1;rounded=0;container=0;collapsible=0;whiteSpace=wrap;fillColor=#eaf2ff;swimlaneFillColor=#ffffff;strokeColor=#45658a;fontSize=14;fontStyle=1;" vertex="1" parent="1">
          <mxGeometry as="geometry" x="1130" y="690" width="245" height="132"/>
        </mxCell>
        <mxCell id="checka" value="&lt;div style=&quot;text-align:left&quot;&gt;&lt;/div&gt;" style="text;html=1;align=left;verticalAlign=top;whiteSpace=wrap;overflow=hidden;fontSize=12;spacingLeft=8;strokeColor=none;fillColor=none;" vertex="1" parent="check">
          <mxGeometry as="geometry" x="0" y="34" width="245" height="35"/>
        </mxCell>
        <mxCell id="checko" value="&lt;div style=&quot;text-align:left&quot;&gt;+ examine(p: Patient): Diagnosis&lt;/div&gt;" style="text;html=1;align=left;verticalAlign=top;whiteSpace=wrap;overflow=hidden;fontSize=12;spacingLeft=8;strokeColor=none;fillColor=none;" vertex="1" parent="check">
          <mxGeometry as="geometry" x="0" y="69" width="245" height="35"/>
        </mxCell>
        <mxCell id="logger" value="Logger 日志器" style="swimlane;html=1;startSize=34;horizontal=1;rounded=0;container=0;collapsible=0;whiteSpace=wrap;fillColor=#eaf2ff;swimlaneFillColor=#ffffff;strokeColor=#45658a;fontSize=14;fontStyle=1;" vertex="1" parent="1">
          <mxGeometry as="geometry" x="1470" y="690" width="245" height="132"/>
        </mxCell>
        <mxCell id="loggera" value="&lt;div style=&quot;text-align:left&quot;&gt;- level: String&lt;/div&gt;" style="text;html=1;align=left;verticalAlign=top;whiteSpace=wrap;overflow=hidden;fontSize=12;spacingLeft=8;strokeColor=none;fillColor=none;" vertex="1" parent="logger">
          <mxGeometry as="geometry" x="0" y="34" width="245" height="35"/>
        </mxCell>
        <mxCell id="loggero" value="&lt;div style=&quot;text-align:left&quot;&gt;+ log(message: String): void&lt;/div&gt;" style="text;html=1;align=left;verticalAlign=top;whiteSpace=wrap;overflow=hidden;fontSize=12;spacingLeft=8;strokeColor=none;fillColor=none;" vertex="1" parent="logger">
          <mxGeometry as="geometry" x="0" y="69" width="245" height="35"/>
        </mxCell>
        <mxCell id="prescription" value="Prescription 处方" style="swimlane;html=1;startSize=34;horizontal=1;rounded=0;container=0;collapsible=0;whiteSpace=wrap;fillColor=#eaf2ff;swimlaneFillColor=#ffffff;strokeColor=#45658a;fontSize=14;fontStyle=1;" vertex="1" parent="1">
          <mxGeometry as="geometry" x="70" y="960" width="245" height="139"/>
        </mxCell>
        <mxCell id="prescriptiona" value="&lt;div style=&quot;text-align:left&quot;&gt;- prescriptionId: String&lt;br&gt;- createdAt: DateTime&lt;/div&gt;" style="text;html=1;align=left;verticalAlign=top;whiteSpace=wrap;overflow=hidden;fontSize=12;spacingLeft=8;strokeColor=none;fillColor=none;" vertex="1" parent="prescription">
          <mxGeometry as="geometry" x="0" y="34" width="245" height="42"/>
        </mxCell>
        <mxCell id="prescriptiono" value="&lt;div style=&quot;text-align:left&quot;&gt;+ addItem(i: PrescriptionItem): void&lt;/div&gt;" style="text;html=1;align=left;verticalAlign=top;whiteSpace=wrap;overflow=hidden;fontSize=12;spacingLeft=8;strokeColor=none;fillColor=none;" vertex="1" parent="prescription">
          <mxGeometry as="geometry" x="0" y="76" width="245" height="35"/>
        </mxCell>
        <mxCell id="item" value="PrescriptionItem 处方项" style="swimlane;html=1;startSize=34;horizontal=1;rounded=0;container=0;collapsible=0;whiteSpace=wrap;fillColor=#eaf2ff;swimlaneFillColor=#ffffff;strokeColor=#45658a;fontSize=14;fontStyle=1;" vertex="1" parent="1">
          <mxGeometry as="geometry" x="400" y="960" width="245" height="139"/>
        </mxCell>
        <mxCell id="itema" value="&lt;div style=&quot;text-align:left&quot;&gt;- drugName: String&lt;br&gt;- quantity: int&lt;/div&gt;" style="text;html=1;align=left;verticalAlign=top;whiteSpace=wrap;overflow=hidden;fontSize=12;spacingLeft=8;strokeColor=none;fillColor=none;" vertex="1" parent="item">
          <mxGeometry as="geometry" x="0" y="34" width="245" height="42"/>
        </mxCell>
        <mxCell id="itemo" value="&lt;div style=&quot;text-align:left&quot;&gt;+ subtotal(): Decimal&lt;/div&gt;" style="text;html=1;align=left;verticalAlign=top;whiteSpace=wrap;overflow=hidden;fontSize=12;spacingLeft=8;strokeColor=none;fillColor=none;" vertex="1" parent="item">
          <mxGeometry as="geometry" x="0" y="76" width="245" height="35"/>
        </mxCell>
        <mxCell id="e1" value="包含" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;strokeWidth=2;fontSize=12;labelBackgroundColor=#ffffff;startArrow=diamond;startFill=0;endArrow=none;html=1;" edge="1" parent="1" source="hospital" target="department">
          <mxGeometry as="geometry" relative="1"/>
        </mxCell>
        <mxCell id="e1s" value="1" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];fontSize=11;labelBackgroundColor=#ffffff;" vertex="1" connectable="0" parent="e1">
          <mxGeometry as="geometry" x="-0.85" y="-1" relative="1">
            <mxPoint as="offset" x="0" y="0"/>
          </mxGeometry>
        </mxCell>
        <mxCell id="e1t" value="1..*" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];fontSize=11;labelBackgroundColor=#ffffff;" vertex="1" connectable="0" parent="e1">
          <mxGeometry as="geometry" x="0.85" y="-1" relative="1">
            <mxPoint as="offset" x="0" y="0"/>
          </mxGeometry>
        </mxCell>
        <mxCell id="e2" value="继承" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;strokeWidth=2;fontSize=12;labelBackgroundColor=#ffffff;endArrow=block;endFill=0;html=1;" edge="1" parent="1" source="doctor" target="staff">
          <mxGeometry as="geometry" relative="1"/>
        </mxCell>
        <mxCell id="e3" value="继承" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;strokeWidth=2;fontSize=12;labelBackgroundColor=#ffffff;endArrow=block;endFill=0;html=1;" edge="1" parent="1" source="nurse" target="staff">
          <mxGeometry as="geometry" relative="1"/>
        </mxCell>
        <mxCell id="e4" value="发起" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;strokeWidth=2;fontSize=12;labelBackgroundColor=#ffffff;endArrow=open;endFill=0;html=1;" edge="1" parent="1" source="patient" target="appointment">
          <mxGeometry as="geometry" relative="1"/>
        </mxCell>
        <mxCell id="e4s" value="1" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];fontSize=11;labelBackgroundColor=#ffffff;" vertex="1" connectable="0" parent="e4">
          <mxGeometry as="geometry" x="-0.85" y="-1" relative="1">
            <mxPoint as="offset" x="0" y="0"/>
          </mxGeometry>
        </mxCell>
        <mxCell id="e4t" value="0..*" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];fontSize=11;labelBackgroundColor=#ffffff;" vertex="1" connectable="0" parent="e4">
          <mxGeometry as="geometry" x="0.85" y="-1" relative="1">
            <mxPoint as="offset" x="0" y="0"/>
          </mxGeometry>
        </mxCell>
        <mxCell id="e5" value="预约医生" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;strokeWidth=2;fontSize=12;labelBackgroundColor=#ffffff;endArrow=open;endFill=0;html=1;" edge="1" parent="1" source="appointment" target="doctor">
          <mxGeometry as="geometry" relative="1"/>
        </mxCell>
        <mxCell id="e5s" value="0..*" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];fontSize=11;labelBackgroundColor=#ffffff;" vertex="1" connectable="0" parent="e5">
          <mxGeometry as="geometry" x="-0.85" y="-1" relative="1">
            <mxPoint as="offset" x="0" y="0"/>
          </mxGeometry>
        </mxCell>
        <mxCell id="e5t" value="1" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];fontSize=11;labelBackgroundColor=#ffffff;" vertex="1" connectable="0" parent="e5">
          <mxGeometry as="geometry" x="0.85" y="-1" relative="1">
            <mxPoint as="offset" x="0" y="0"/>
          </mxGeometry>
        </mxCell>
        <mxCell id="e6" value="实现" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;strokeWidth=2;fontSize=12;labelBackgroundColor=#ffffff;endArrow=block;endFill=0;dashed=1;dashPattern=8 5;html=1;" edge="1" parent="1" source="diagnosis" target="check">
          <mxGeometry as="geometry" relative="1"/>
        </mxCell>
        <mxCell id="e7" value="记录日志" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;strokeWidth=2;fontSize=12;labelBackgroundColor=#ffffff;endArrow=open;endFill=0;dashed=1;dashPattern=8 5;html=1;" edge="1" parent="1" source="diagnosis" target="logger">
          <mxGeometry as="geometry" relative="1"/>
        </mxCell>
        <mxCell id="e8" value="包含" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;strokeWidth=2;fontSize=12;labelBackgroundColor=#ffffff;startArrow=diamond;startFill=1;endArrow=none;html=1;" edge="1" parent="1" source="prescription" target="item">
          <mxGeometry as="geometry" relative="1"/>
        </mxCell>
        <mxCell id="e8s" value="1" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];fontSize=11;labelBackgroundColor=#ffffff;" vertex="1" connectable="0" parent="e8">
          <mxGeometry as="geometry" x="-0.85" y="-1" relative="1">
            <mxPoint as="offset" x="0" y="0"/>
          </mxGeometry>
        </mxCell>
        <mxCell id="e8t" value="1..*" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];fontSize=11;labelBackgroundColor=#ffffff;" vertex="1" connectable="0" parent="e8">
          <mxGeometry as="geometry" x="0.85" y="-1" relative="1">
            <mxPoint as="offset" x="0" y="0"/>
          </mxGeometry>
        </mxCell>
        <mxCell id="e9" value="聘任" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;strokeWidth=2;fontSize=12;labelBackgroundColor=#ffffff;endArrow=open;endFill=0;html=1;" edge="1" parent="1" source="department" target="doctor">
          <mxGeometry as="geometry" relative="1"/>
        </mxCell>
        <mxCell id="e9s" value="1" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];fontSize=11;labelBackgroundColor=#ffffff;" vertex="1" connectable="0" parent="e9">
          <mxGeometry as="geometry" x="-0.85" y="-1" relative="1">
            <mxPoint as="offset" x="0" y="0"/>
          </mxGeometry>
        </mxCell>
        <mxCell id="e9t" value="0..*" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];fontSize=11;labelBackgroundColor=#ffffff;" vertex="1" connectable="0" parent="e9">
          <mxGeometry as="geometry" x="0.85" y="-1" relative="1">
            <mxPoint as="offset" x="0" y="0"/>
          </mxGeometry>
        </mxCell>
        <mxCell id="e10" value="使用" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;strokeWidth=2;fontSize=12;labelBackgroundColor=#ffffff;endArrow=open;endFill=0;html=1;" edge="1" parent="1" source="doctor" target="diagnosis">
          <mxGeometry as="geometry" relative="1"/>
        </mxCell>
        <mxCell id="e10s" value="1" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];fontSize=11;labelBackgroundColor=#ffffff;" vertex="1" connectable="0" parent="e10">
          <mxGeometry as="geometry" x="-0.85" y="-1" relative="1">
            <mxPoint as="offset" x="0" y="0"/>
          </mxGeometry>
        </mxCell>
        <mxCell id="e10t" value="1" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];fontSize=11;labelBackgroundColor=#ffffff;" vertex="1" connectable="0" parent="e10">
          <mxGeometry as="geometry" x="0.85" y="-1" relative="1">
            <mxPoint as="offset" x="0" y="0"/>
          </mxGeometry>
        </mxCell>
        <mxCell id="e11" value="生成" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;strokeWidth=2;fontSize=12;labelBackgroundColor=#ffffff;endArrow=open;endFill=0;dashed=1;dashPattern=8 5;html=1;" edge="1" parent="1" source="diagnosis" target="prescription">
          <mxGeometry as="geometry" relative="1"/>
        </mxCell>
      </root>
    </mxGraphModel>
  </diagram>
</mxfile>
