| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256 |
- <?xml version="1.0" encoding="UTF-8"?>
- <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
- xmlns:xs="http://www.w3.org/2001/XMLSchema"
- xmlns:exslt="http://exslt.org/common"
- xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- 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"
- exclude-result-prefixes="xs exslt xsi"
- version="2.0">
- <!--
-
-
- xmlns:di="http://www.omg.org/spec/DD/20100524/DI"
- xmlns:ext="http://org.eclipse.bpmn2/ext" -->
- <xsl:output omit-xml-declaration="no" indent="yes" method="xml" encoding="UTF-8" version="1.0"/>
-
-
- <xsl:strip-space elements="*"/>
-
- <xsl:template name="sequence_gen_from_task_subprocess">
- <xsl:for-each select="outgoing">
- <xsl:element name="bpmn2:sequenceFlow">
- <xsl:attribute name="id" select="concat(../EventName,'_',.)"/>
- <xsl:attribute name="sourceRef" select="../EventName"/>
- <xsl:attribute name="targetRef" select="."/>
- </xsl:element>
- </xsl:for-each>
- </xsl:template>
-
- <xsl:template name="procesy_to_bpmn_subprocess">
- <xsl:param name="procesy_gen_include"/>
- <xsl:comment>origin at X=0.0 Y=0.0</xsl:comment>
- <xsl:element name="bpmn2:definitions">
- <xsl:namespace name="bpmn2" select="'http://www.omg.org/spec/BPMN/20100524/MODEL'"/>
- <xsl:namespace name="bpmndi" select="'http://www.omg.org/spec/BPMN/20100524/DI'"/>
- <xsl:namespace name="dc" select="'http://www.omg.org/spec/DD/20100524/DC'"/>
- <xsl:namespace name="di" select="'http://www.omg.org/spec/DD/20100524/DI'"/>
- <xsl:namespace name="ext" select="'http://org.eclipse.bpmn2/ext'"/>
- <xsl:attribute name="id" select="'Definitions_1'"/>
- <xsl:attribute name="exporter" select="'org.eclipse.bpmn2.modeler.core'"/>
- <xsl:attribute name="targetNamespace" select="'http://org.eclipse.bpmn2/default/process'"/>
-
- <xsl:element name="bpmn2:collaboration">
- <xsl:attribute name="id" select="'Collaboration_1'"/>
- <xsl:attribute name="name" select="'Collaboration 1'"/>
- <!-- jakis domyslny participant ? do basenu ? -->
- <xsl:element name="bpmn2:participant">
- <xsl:attribute name="id" select="'Participant_2'"/>
- <xsl:attribute name="name" select="'Default Process Pool 1'"/>
- <xsl:attribute name="processRef" select="'eclipse_basen_event_task_task'"/>
- </xsl:element>
- <!-- tutaj trzeba wylistowac baseny stanowiska -->
- <!--
- <xsl:for-each select="/lanes_descriptions/lane[TYPE='STANOWISKO'][1]">
- <xsl:element name="bpmn2:participant">
- <xsl:attribute name="id" select="concat('Participant_',ID_ZASOB)"/>
- <xsl:attribute name="name" select="concat('Participant ',DESC)"/>
- <xsl:attribute name="processRef" select="concat('ID_ZASOB_',ID_ZASOB)"/>
- </xsl:element>
- </xsl:for-each>
- </xsl:element>
- -->
- <!-- domyslny basen do zdefiniowania 2x-->
- <xsl:element name="bpmn2:process">
- <xsl:attribute name="id" select="'eclipse_basen_event_task_task'"/>
- <xsl:attribute name="name" select="'Default Process'"/>
- </xsl:element>
-
- <!-- Tu jedziemy po procesach -->
- <xsl:for-each select="/lanes_descriptions/lane[TYPE='STANOWISKO'][1]">
- <xsl:element name="bpmn2:process">
- <xsl:attribute name="id" select="concat('ID_ZASOB_',ID_ZASOB)"/>
- <xsl:attribute name="name" select="DESC"/>
- <xsl:attribute name="definitionalCollaborationRef" select="'Collaboration_1'"/>
- <!-- jade event init tutaj -->
-
- <xsl:for-each select="exslt:node-set($procesy_gen_include)/root/lane"> <!-- TODO trzeba zdjac ten ogranicznik DEV @2014-12 -->
-
- <!--
- <xsl:element name="bpmn2:intermediateThrowEvent">
- <xsl:attribute name="id" select="concat('id_proces_init_',id_proces_init)"/>
- <xsl:attribute name="name" select="concat('Proces_init ',id_proces_init)"/>
- <xsl:element name="bpmn2:outgoing">
- <xsl:value-of select="concat('task_',id_proces_init)"/>
- </xsl:element>
- </xsl:element>
- <xsl:variable name="last_connection_from"/>
-
- <xsl:variable name="last_connection_from"/>
- <xsl:for-each select="tasks/task">
-
- <xsl:variable name="last_pos" select="position()-1"/>
- <xsl:variable name="next_pos" select="position()+1"/>
-
-
- <xsl:element name="bpmn2:manualTask">
- <xsl:attribute name="id" select="concat('task_',.)"/>
- <xsl:attribute name="name" select="concat('Task ',.)"/>
-
- <xsl:choose>
- <xsl:when test="position()=1">
- <xsl:element name="bpmn2:incoming">
- <xsl:value-of select="concat('id_proces_init_',.)"/>
- </xsl:element>
- <xsl:if test="../../tasks/task[position()=$next_pos]">
- <xsl:element name="bpmn2:outgoing">
- <xsl:value-of select="concat('task_',../../tasks/task[position()=$next_pos])"/>
- </xsl:element>
- </xsl:if>
-
- </xsl:when>
- <xsl:otherwise>
- <xsl:element name="bpmn2:incoming">
- <xsl:value-of select="concat('task_',../../tasks/task[position()=$last_pos])"/>
- </xsl:element>
- <xsl:choose>
- <xsl:when test="../../tasks/task[position()=$next_pos]">
- <xsl:element name="bpmn2:outgoing">
- <xsl:value-of select="concat('task_',../../tasks/task[position()=$next_pos])"/>
- </xsl:element>
- </xsl:when>
- <xsl:otherwise>
- <xsl:element name="bpmn2:outgoing">
- <xsl:value-of select="concat('endEvent_',.)"/>
- </xsl:element>
- </xsl:otherwise>
- </xsl:choose>
-
- </xsl:otherwise>
- </xsl:choose>
-
-
- </xsl:element>
-
- <xsl:if test="not(../../tasks/task[position()=$next_pos])">
- <xsl:element name="bpmn2:endEvent">
- <xsl:attribute name="id" select="concat('endEvent_',.)"/>
- <xsl:attribute name="name" select="concat('endEvent ',.)"/>
- <xsl:element name="incoming">
- <xsl:value-of select="concat('task_',.)"/>
- </xsl:element>
- </xsl:element>
- </xsl:if>
-
-
-
- </xsl:for-each>
- -->
- <xsl:for-each select="StartEvents/StartEvent">
- <xsl:element name="bpmn2:intermediateThrowEvent">
- <xsl:attribute name="id" select="EventName"/>
- <xsl:attribute name="name" select="EventName"/>
- <xsl:for-each select="incoming">
- <xsl:element name="bpmn2:incoming">
- <xsl:value-of select="concat(.,'_',../EventName)"/>
- </xsl:element>
- </xsl:for-each>
- <xsl:for-each select="outgoing">
- <xsl:element name="bpmn2:outgoing">
- <xsl:value-of select="concat(../EventName,'_',.)"/>
- </xsl:element>
- </xsl:for-each>
- </xsl:element>
- <xsl:call-template name="sequence_gen_from_task_subprocess"/>
- </xsl:for-each>
-
- <xsl:for-each select="Tasks/Task">
- <xsl:element name="bpmn2:manualTask">
- <xsl:attribute name="id" select="EventName"/>
- <xsl:attribute name="name" select="EventName"/>
- <xsl:for-each select="incoming">
- <xsl:element name="bpmn2:incoming">
- <xsl:value-of select="concat(.,'_',../EventName)"/>
- </xsl:element>
- </xsl:for-each>
- <xsl:for-each select="outgoing">
- <xsl:element name="bpmn2:outgoing">
- <xsl:value-of select="concat(../EventName,'_',.)"/>
- </xsl:element>
- </xsl:for-each>
- </xsl:element>
- <xsl:call-template name="sequence_gen_from_task_subprocess"/>
- </xsl:for-each>
-
- <xsl:for-each select="EndEvents/EndEvent">
- <xsl:element name="bpmn2:endEvent">
- <xsl:attribute name="id" select="EventName"/>
- <xsl:attribute name="name" select="EventName"/>
- <xsl:for-each select="incoming">
- <xsl:element name="bpmn2:incoming">
- <xsl:value-of select="concat(.,'_',../EventName)"/>
- </xsl:element>
- </xsl:for-each>
- <xsl:for-each select="outgoing">
- <xsl:element name="bpmn2:outgoing">
- <xsl:value-of select="concat(../EventName,'_',.)"/>
- </xsl:element>
- </xsl:for-each>
- </xsl:element>
- <xsl:call-template name="sequence_gen_from_task_subprocess"/>
- </xsl:for-each>
-
-
- </xsl:for-each>
-
- </xsl:element>
- </xsl:for-each>
- <!-- diagram TODO
- <xsl:element name="bpmndi:BPMNDiagram">
- <xsl:attribute name="id" select="'BPMNDiagram_1'"/>
- <xsl:attribute name="name" select="'Default Process Diagram'"/>
- <xsl:element name="bpmndi:BPMNPlane">
- <xsl:attribute name="id" select="'BPMNPlane_1'"/>
- <xsl:attribute name="name" select="'eclipse_basen_event_task_task'"/>
-
- <xsl:for-each select="/lanes_descriptions/lane[TYPE='STANOWISKO']">
- <xsl:element name="bpmndi:BPMNShape">
- <xsl:attribute name="id" select="concat('BPMNShape_Participant_',ID_ZASOB)"/>
- <xsl:attribute name="bpmnElement" select="concat('Participant_',ID_ZASOB)"/>
- <xsl:attribute name="isHorizontal" select="'true'"/>
- <xsl:element name="dc:Bounds">
- <xsl:attribute name="height" select="'150'"/>
- <xsl:attribute name="width" select="'500'"/>
- <xsl:attribute name="x" select="'50'"/>
- <xsl:attribute name="y" select="'90'"/>
- </xsl:element>
- <xsl:element name="bpmndi:BPMNLabel">
- <xsl:attribute name="id" select="concat('BPMNLabel_',ID_ZASOB)"/>
- <xsl:attribute name="labelStyle" select="'BPMNLabelStyle_1'"/>
- <xsl:element name="dc:Bounds">
- <xsl:attribute name="height" select="'26.0'"/>
- <xsl:attribute name="width" select="'10.0'"/>
- <xsl:attribute name="x" select="'36.0'"/>
- <xsl:attribute name="y" select="'152.0'"/>
- </xsl:element>
- </xsl:element>
- </xsl:element>
- </xsl:for-each>
-
- </xsl:element>
- <bpmndi:BPMNLabelStyle id="BPMNLabelStyle_1">
- <dc:Font name="arial" size="9.0"/>
- </bpmndi:BPMNLabelStyle>
-
- </xsl:element>
-
- -->
-
-
-
- </xsl:element>
- </xsl:template>
- </xsl:stylesheet>
|