office-dynamixs-ai/doc/modelling-extraction.bpmn
2026-01-02 15:18:56 +01:00

231 lines
13 KiB
XML

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<bpmn2:definitions xmlns:bpmn2="http://www.omg.org/spec/BPMN/20100524/MODEL" xmlns:BPMN2="http://www.omg.org/spec/BPMN/20100524/MODEL" xmlns:bpmndi="http://www.omg.org/spec/BPMN/20100524/DI" xmlns:dc="http://www.omg.org/spec/DD/20100524/DC" xmlns:di="http://www.omg.org/spec/DD/20100524/DI" xmlns:imixs="http://www.imixs.org/bpmn2" xmlns:open-bpmn="http://open-bpmn.org/XMLSchema" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" exporter="org.openbpmn" exporterVersion="1.0.0" targetNamespace="http://open-bpmn.org">
<bpmn2:collaboration id="collaboration_1" name="Default Collaboration">
<bpmn2:participant id="participant_x0L42g" name="Default Process" processRef="process_1"/>
<bpmn2:participant id="participant_tRnOVw" name="Quotation" processRef="process_sMc7Dg">
<bpmn2:documentation id="documentation_vx4Wdw"/>
</bpmn2:participant>
</bpmn2:collaboration>
<bpmn2:extensionElements>
<open-bpmn:auto-align>true</open-bpmn:auto-align>
<imixs:item name="txtworkflowmodelversion" type="xs:string">
<imixs:value><![CDATA[default-en-1.0]]></imixs:value>
</imixs:item>
<imixs:item name="txtplugins" type="xs:string">
<imixs:value><![CDATA[org.imixs.workflow.engine.plugins.RulePlugin]]></imixs:value>
<imixs:value><![CDATA[org.imixs.workflow.engine.plugins.SplitAndJoinPlugin]]></imixs:value>
<imixs:value><![CDATA[org.imixs.workflow.engine.plugins.OwnerPlugin]]></imixs:value>
<imixs:value><![CDATA[org.imixs.workflow.engine.plugins.ApproverPlugin]]></imixs:value>
<imixs:value><![CDATA[org.imixs.workflow.engine.plugins.HistoryPlugin]]></imixs:value>
<imixs:value><![CDATA[org.imixs.workflow.engine.plugins.ApplicationPlugin]]></imixs:value>
<imixs:value><![CDATA[org.imixs.workflow.engine.plugins.IntervalPlugin]]></imixs:value>
<imixs:value><![CDATA[org.imixs.workflow.engine.plugins.MailPlugin]]></imixs:value>
<imixs:value><![CDATA[org.imixs.workflow.engine.plugins.ResultPlugin]]></imixs:value>
</imixs:item>
<imixs:item name="txtfieldmapping" type="xs:string">
<imixs:value><![CDATA[Creator|$creator]]></imixs:value>
<imixs:value><![CDATA[Owner|$owner]]></imixs:value>
<imixs:value><![CDATA[Editor|$editor]]></imixs:value>
</imixs:item>
</bpmn2:extensionElements>
<bpmn2:process definitionalCollaborationRef="collaboration_1" id="process_1" name="Default Process" processType="Public">
<bpmn2:documentation id="documentation_yIE0cQ"/>
<bpmn2:extensionElements>
<open-bpmn:auto-align>true</open-bpmn:auto-align>
</bpmn2:extensionElements>
</bpmn2:process>
<bpmn2:process definitionalCollaborationRef="collaboration_1" id="process_sMc7Dg" isExecutable="true" name="Quotation" processType="Private">
<bpmn2:intermediateCatchEvent id="event_niedQQ" imixs:activityid="10" name="✅ Summarization">
<bpmn2:documentation id="documentation_MBhkPQ"/>
<bpmn2:incoming>sequenceFlow_vjN4ow</bpmn2:incoming>
<bpmn2:outgoing>sequenceFlow_GAe7Gg</bpmn2:outgoing>
<bpmn2:signalEventDefinition id="signalEventDefinition_INWMRA" signalRef="signal_1"/>
</bpmn2:intermediateCatchEvent>
<bpmn2:dataObject id="dataObject_6cOkKQ" imixs:datatype="prompt-data" name="AI Agent">
<bpmn2:documentation id="documentation_AXhPdQ"><![CDATA[<?xml version="1.0" encoding="UTF-8"?>
<PromptDefinition>
<prompt_options>{"n_predict": 4096, "temperature": 0}</prompt_options>
<prompt><![CDATA[[INST] Du bist Sachbearbeiter in einem Unternehmen. Deine Aufgabe ist es, eingehende Vertragsdokumente zu prüfen. [/INST]
<FILECONTEXT>^.+\.([pP][dD][fF])$</FILECONTEXT>
</s>[INST]
Erstelle eine kurze Zusammenfassung der wichtigsten Elemente dieses Vertrags.
- Vertragsgeber
- Vertragsnehmer
- Gegenstand
- Laufzeit
[/INST]
]]]]><![CDATA[>
</prompt>
</PromptDefinition> ]]></bpmn2:documentation>
</bpmn2:dataObject>
<bpmn2:textAnnotation id="textAnnotation_0at23Q" textFormat="">
<bpmn2:text id="text_wUjgfQ"><![CDATA[☑️ Extract the following data fields from the document summary.
Required Fields:
- invoice_number: string
- invoice_date: date (normalize to ISO 8601: YYYY-MM-DD)
- due_date: date (normalize to ISO 8601: YYYY-MM-DD)
- vendor_name: string
- vendor_tax_id: string
- total_amount: decimal (normalize to standard format: 1234.56)
- currency: string (ISO 4217 code)
- payment_terms: string
Respond in XML format using the following structure:
<document>
<item name="invoice_number" type="string" />
...
</document>
Document Summary:
{summary_text}]]></bpmn2:text>
<bpmn2:documentation id="documentation_IG9UoA"/>
</bpmn2:textAnnotation>
<bpmn2:association id="association_6Hfsww" sourceRef="textAnnotation_0at23Q" targetRef="dataObject_6cOkKQ">
<bpmn2:documentation id="documentation_BvpU3g"/>
</bpmn2:association>
<bpmn2:association id="association_dpwf6A" sourceRef="dataObject_6cOkKQ" targetRef="event_coOKbw">
<bpmn2:documentation id="documentation_8CvVvA"/>
</bpmn2:association>
<bpmn2:task id="task_L133Xw" imixs:processid="200" name="&#128196; Invoice Processing">
<bpmn2:extensionElements/>
<bpmn2:documentation id="documentation_ramFEg"/>
<bpmn2:incoming>sequenceFlow_xzsTOg</bpmn2:incoming>
<bpmn2:outgoing>sequenceFlow_vjN4ow</bpmn2:outgoing>
</bpmn2:task>
<bpmn2:sequenceFlow id="sequenceFlow_GAe7Gg" sourceRef="event_niedQQ" targetRef="event_coOKbw">
<bpmn2:documentation id="documentation_tneb3w"/>
</bpmn2:sequenceFlow>
<bpmn2:intermediateThrowEvent id="event_5pszBQ" name="♻ API Calls">
<bpmn2:documentation id="documentation_AaXe9w"/>
<bpmn2:incoming>sequenceFlow_j8lGIw</bpmn2:incoming>
<bpmn2:linkEventDefinition id="linkEventDefinition_v0KICg"/>
</bpmn2:intermediateThrowEvent>
<bpmn2:intermediateCatchEvent id="event_qPfuAQ" name="Categoriyzation">
<bpmn2:documentation id="documentation_downwg"/>
<bpmn2:outgoing>sequenceFlow_xzsTOg</bpmn2:outgoing>
<bpmn2:linkEventDefinition id="linkEventDefinition_xwHE3g"/>
</bpmn2:intermediateCatchEvent>
<bpmn2:sequenceFlow id="sequenceFlow_xzsTOg" sourceRef="event_qPfuAQ" targetRef="task_L133Xw">
<bpmn2:documentation id="documentation_3oNU0w"/>
</bpmn2:sequenceFlow>
<bpmn2:sequenceFlow id="sequenceFlow_vjN4ow" sourceRef="task_L133Xw" targetRef="event_niedQQ">
<bpmn2:documentation id="documentation_a90yew"/>
</bpmn2:sequenceFlow>
<bpmn2:intermediateCatchEvent id="event_coOKbw" imixs:activityid="10" name="✅ Summarization">
<bpmn2:documentation id="documentation_vejT4Q"/>
<bpmn2:outgoing>sequenceFlow_j8lGIw</bpmn2:outgoing>
<bpmn2:signalEventDefinition id="signalEventDefinition_cZ2P5Q" signalRef="signal_1"/>
<bpmn2:incoming>association_dpwf6A</bpmn2:incoming>
<bpmn2:incoming>sequenceFlow_GAe7Gg</bpmn2:incoming>
</bpmn2:intermediateCatchEvent>
<bpmn2:sequenceFlow id="sequenceFlow_j8lGIw" sourceRef="event_coOKbw" targetRef="event_5pszBQ">
<bpmn2:documentation id="documentation_z2uUIQ"/>
</bpmn2:sequenceFlow>
<bpmn2:dataStoreReference id="dataStoreReference_5tcIIg" name="Data Store">
<bpmn2:documentation id="documentation_jbC8IQ"/>
</bpmn2:dataStoreReference>
<bpmn2:association id="association_0LCCpA" sourceRef="event_5pszBQ" targetRef="dataStoreReference_5tcIIg">
<bpmn2:documentation id="documentation_sYiG4A"/>
</bpmn2:association>
</bpmn2:process>
<bpmn2:message id="message_1" name="Message 1">
<bpmn2:documentation id="documentation_KTfSFQ"/>
</bpmn2:message>
<bpmn2:signal id="signal_1" name="Signal 1"/>
<bpmndi:BPMNDiagram id="BPMNDiagram_1" name="OpenBPMN Diagram">
<bpmndi:BPMNPlane bpmnElement="collaboration_1" id="BPMNPlane_1">
<bpmndi:BPMNShape bpmnElement="participant_tRnOVw" id="BPMNShape_j8YiYQ">
<dc:Bounds height="760.0" width="2500.0" x="90.0" y="130.0"/>
</bpmndi:BPMNShape>
<bpmndi:BPMNShape bpmnElement="participant_x0L42g" id="BPMNShape_D38FhA">
<dc:Bounds height="210.0" width="800.0" x="0.0" y="0.0"/>
</bpmndi:BPMNShape>
<bpmndi:BPMNShape bpmnElement="event_5pszBQ" id="BPMNShape_eCqWQw">
<dc:Bounds height="36.0" width="36.0" x="837.0" y="537.0"/>
<bpmndi:BPMNLabel id="BPMNLabel_0AKR2g">
<dc:Bounds height="20.0" width="100.0" x="805.0" y="576.0"/>
</bpmndi:BPMNLabel>
</bpmndi:BPMNShape>
<bpmndi:BPMNShape bpmnElement="message_1" id="BPMNShape_6VlRkw">
<dc:Bounds height="20.0" width="30.0" x="130.0" y="30.0"/>
<bpmndi:BPMNLabel id="BPMNLabel_FxvxBA">
<dc:Bounds height="20.0" width="100.0" x="95.0" y="55.0"/>
</bpmndi:BPMNLabel>
</bpmndi:BPMNShape>
<bpmndi:BPMNShape bpmnElement="event_niedQQ" id="BPMNShape_TjS4HQ">
<dc:Bounds height="36.0" width="36.0" x="557.0" y="537.0"/>
<bpmndi:BPMNLabel id="BPMNLabel_KXscdQ">
<dc:Bounds height="20.0" width="100.0" x="525.0" y="576.0"/>
</bpmndi:BPMNLabel>
</bpmndi:BPMNShape>
<bpmndi:BPMNShape bpmnElement="dataObject_6cOkKQ" id="BPMNShape_OX2wsg">
<dc:Bounds height="50.0" width="35.0" x="700.0" y="410.0"/>
<bpmndi:BPMNLabel id="BPMNLabel_HAEE0w">
<dc:Bounds height="20.0" width="100.0" x="667.5" y="465.0"/>
</bpmndi:BPMNLabel>
</bpmndi:BPMNShape>
<bpmndi:BPMNShape bpmnElement="textAnnotation_0at23Q" id="BPMNShape_iHgbbQ">
<dc:Bounds height="318.0" width="468.0" x="150.0" y="190.0"/>
</bpmndi:BPMNShape>
<bpmndi:BPMNShape bpmnElement="event_qPfuAQ" id="BPMNShape_mDg2JQ">
<dc:Bounds height="36.0" width="36.0" x="257.0" y="537.0"/>
<bpmndi:BPMNLabel id="BPMNLabel_BncPzw">
<dc:Bounds height="20.0" width="100.0" x="225.0" y="576.0"/>
</bpmndi:BPMNLabel>
</bpmndi:BPMNShape>
<bpmndi:BPMNShape bpmnElement="event_coOKbw" id="BPMNShape_xl46Xg">
<dc:Bounds height="36.0" width="36.0" x="697.0" y="537.0"/>
<bpmndi:BPMNLabel id="BPMNLabel_C7HeYQ">
<dc:Bounds height="20.0" width="100.0" x="665.0" y="576.0"/>
</bpmndi:BPMNLabel>
</bpmndi:BPMNShape>
<bpmndi:BPMNShape bpmnElement="dataStoreReference_5tcIIg" id="BPMNShape_lNbozw">
<dc:Bounds height="50.0" width="50.0" x="830.0" y="630.0"/>
<bpmndi:BPMNLabel id="BPMNLabel_o4auSg">
<dc:Bounds height="20.0" width="100.0" x="805.0" y="680.0"/>
</bpmndi:BPMNLabel>
</bpmndi:BPMNShape>
<bpmndi:BPMNEdge bpmnElement="association_6Hfsww" id="BPMNEdge_szAS0Q" sourceElement="BPMNShape_iHgbbQ" targetElement="BPMNShape_OX2wsg">
<di:waypoint x="618.0" y="352.0"/>
<di:waypoint x="711.0" y="352.0"/>
<di:waypoint x="711.0" y="410.0"/>
</bpmndi:BPMNEdge>
<bpmndi:BPMNEdge bpmnElement="association_dpwf6A" id="BPMNEdge_iilkRw" sourceElement="BPMNShape_OX2wsg" targetElement="BPMNShape_xl46Xg">
<di:waypoint x="718.0" y="460.0"/>
<di:waypoint x="718.0" y="499.0"/>
<di:waypoint x="715.0" y="499.0"/>
<di:waypoint x="715.0" y="537.0"/>
</bpmndi:BPMNEdge>
<bpmndi:BPMNShape bpmnElement="task_L133Xw" id="BPMNShape_YZRbHw">
<dc:Bounds height="50.0" width="110.0" x="360.0" y="530.0"/>
</bpmndi:BPMNShape>
<bpmndi:BPMNEdge bpmnElement="sequenceFlow_GAe7Gg" id="BPMNEdge_nO1aqw" sourceElement="BPMNShape_TjS4HQ" targetElement="BPMNShape_xl46Xg">
<di:waypoint x="593.0" y="555.0"/>
<di:waypoint x="597.0" y="555.0"/>
<di:waypoint x="697.0" y="555.0"/>
</bpmndi:BPMNEdge>
<bpmndi:BPMNEdge bpmnElement="sequenceFlow_xzsTOg" id="BPMNEdge_ToVbEg" sourceElement="BPMNShape_mDg2JQ" targetElement="BPMNShape_YZRbHw">
<di:waypoint x="293.0" y="555.0"/>
<di:waypoint x="360.0" y="555.0"/>
</bpmndi:BPMNEdge>
<bpmndi:BPMNEdge bpmnElement="sequenceFlow_vjN4ow" id="BPMNEdge_L0VhCw" sourceElement="BPMNShape_YZRbHw" targetElement="BPMNShape_TjS4HQ">
<di:waypoint x="470.0" y="555.0"/>
<di:waypoint x="557.0" y="555.0"/>
</bpmndi:BPMNEdge>
<bpmndi:BPMNEdge bpmnElement="sequenceFlow_j8lGIw" id="BPMNEdge_j9b58A" sourceElement="BPMNShape_xl46Xg" targetElement="BPMNShape_eCqWQw">
<di:waypoint x="733.0" y="555.0"/>
<di:waypoint x="837.0" y="555.0"/>
</bpmndi:BPMNEdge>
<bpmndi:BPMNEdge bpmnElement="association_0LCCpA" id="BPMNEdge_QZXPYA" sourceElement="BPMNShape_eCqWQw" targetElement="BPMNShape_lNbozw">
<di:waypoint x="855.0" y="573.0"/>
<di:waypoint x="855.0" y="630.0"/>
</bpmndi:BPMNEdge>
</bpmndi:BPMNPlane>
</bpmndi:BPMNDiagram>
</bpmn2:definitions>