pione 0.4.2 → 0.5.0.alpha.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (306) hide show
  1. checksums.yaml +8 -8
  2. data/.travis.yml +1 -1
  3. data/History.txt +6 -0
  4. data/example/ActionError/ActionError.action.md +11 -0
  5. data/example/ActionError/ActionError.pione +6 -3
  6. data/example/ActionError/ActionError.pnml +86 -0
  7. data/example/ActionError/Package.pione +2 -0
  8. data/example/ActionError/pione-package.json +5 -1
  9. data/example/CTFCorrection/CTFCorrection.action.md +46 -0
  10. data/example/CTFCorrection/CTFCorrection.pione +19 -41
  11. data/example/CTFCorrection/CTFCorrection.pnml +839 -0
  12. data/example/CTFCorrection/Package.pione +1 -0
  13. data/example/CTFCorrection/Params.pione +21 -0
  14. data/example/CTFCorrection/pione-package.json +20 -0
  15. data/example/ChildPackage/ChildPackage.pione +8 -0
  16. data/example/ChildPackage/pione-package.json +20 -0
  17. data/example/CountChar/CountChar.pione +31 -0
  18. data/example/CountChar/CountChar.pnml +239 -0
  19. data/example/CountChar/Main.pione +6 -26
  20. data/example/CountChar/Main.pnml +32 -100
  21. data/example/CountChar/Package.pione +1 -0
  22. data/example/CountChar/pione-package.json +3 -1
  23. data/example/DeferredChoice/DeferredChoice.action.md +46 -0
  24. data/example/DeferredChoice/DeferredChoice.pione +2 -7
  25. data/example/DeferredChoice/DeferredChoice.pnml +371 -0
  26. data/example/DeferredChoice/Package.pione +4 -0
  27. data/example/DeferredChoice/pione-package.json +7 -3
  28. data/example/DeferredChoiceWithPage/DeferredChoiceWithPage.action.md +34 -0
  29. data/example/DeferredChoiceWithPage/DefferredChoiceWithPage.pnml +371 -0
  30. data/example/DeferredChoiceWithPage/Package.pione +2 -0
  31. data/example/FeatureExample/FeatureExample.action.md +7 -0
  32. data/example/FeatureExample/FeatureExample.pione +7 -4
  33. data/example/FeatureExample/FeatureExample.pnml +86 -0
  34. data/example/FeatureExample/Package.pione +1 -0
  35. data/example/FeatureExample/pione-package.json +4 -0
  36. data/example/Fib/Fib.action.md +33 -0
  37. data/example/Fib/Fib.pnml +208 -0
  38. data/example/Fib/FibN.pnml +807 -0
  39. data/example/Fib/Package.pione +6 -0
  40. data/example/HelloWorld/HelloWorld.action.md +7 -0
  41. data/example/HelloWorld/HelloWorld.pione +6 -2
  42. data/example/HelloWorld/HelloWorld.pnml +86 -0
  43. data/example/HelloWorld/Package.pione +2 -0
  44. data/example/HelloWorld/pione-package.json +5 -1
  45. data/example/Interaction/Interaction.action.md +21 -0
  46. data/example/Interaction/Interaction.pnml +89 -0
  47. data/example/Interaction/Package.pione +2 -0
  48. data/example/LoopByTouch/LoopByTouch.pione +32 -12
  49. data/example/LoopByTouch/LoopByTouch.pnml +575 -0
  50. data/example/LoopByTouch/Package.pione +3 -0
  51. data/example/LoopByTouch/PairLoop.pione +6 -7
  52. data/example/LoopByTouch/PairLoop.pnml +188 -0
  53. data/example/LoopByTouch/SingleLoop.pione +6 -0
  54. data/example/LoopByTouch/SingleLoop.pnml +86 -0
  55. data/example/LoopByTouch/TripletLoop.pione +12 -13
  56. data/example/LoopByTouch/TripletLoop.pnml +239 -0
  57. data/example/LoopByTouch/pione-package.json +7 -3
  58. data/example/LucasNumber/LucasNumber.action.md +25 -0
  59. data/example/LucasNumber/LucasNumber.pnml +244 -0
  60. data/example/LucasNumber/LucasNumberN.pnml +1719 -0
  61. data/example/LucasNumber/Package.pione +2 -0
  62. data/example/MakePair/MakePair.pione +8 -10
  63. data/example/MakePair/MakePair.pnml +1141 -0
  64. data/example/MakePair/Package.pione +2 -0
  65. data/example/MakePair/pione-package.json +7 -3
  66. data/example/MakePair/scenario/case1/pione-scenario.json +30 -30
  67. data/example/MakePair/scenario/case2/pione-scenario.json +10 -10
  68. data/example/MakePair/scenario/case3/pione-scenario.json +28 -28
  69. data/example/OddSelector/OddSelector.pione +8 -8
  70. data/example/OddSelector/OddSelector.pnml +401 -0
  71. data/example/OddSelector/Package.pione +2 -0
  72. data/example/OddSelector/pione-package.json +4 -0
  73. data/example/OddSelector/scenario/pione-scenario.json +8 -8
  74. data/example/ParentPackage/ParentPackage.pione +13 -0
  75. data/example/ParentPackage/pione-package.json +18 -0
  76. data/example/PegasusWMS/Merge/Package.pione +2 -0
  77. data/example/PegasusWMS/Merge/PegasusWMSMerge.action.md +17 -0
  78. data/example/PegasusWMS/Merge/{Merge.pione → PegasusWMSMerge.pione} +9 -10
  79. data/example/PegasusWMS/Merge/PegasusWMSMerge.pnml +217 -0
  80. data/example/PegasusWMS/Merge/pione-package.json +6 -2
  81. data/example/PegasusWMS/Pipeline/Package.pione +2 -0
  82. data/example/PegasusWMS/Pipeline/PegasusWMSPipeline.action.md +17 -0
  83. data/example/PegasusWMS/Pipeline/{Pipeline.pione → PegasusWMSPipeline.pione} +7 -9
  84. data/example/PegasusWMS/Pipeline/PegasusWMSPipeline.pnml +137 -0
  85. data/example/PegasusWMS/Pipeline/pione-package.json +6 -2
  86. data/example/PegasusWMS/Split/Package.pione +2 -0
  87. data/example/PegasusWMS/Split/PegasusWMSSplit.action.md +19 -0
  88. data/example/PegasusWMS/Split/{Split.pione → PegasusWMSSplit.pione} +9 -10
  89. data/example/PegasusWMS/Split/PegasusWMSSplit.pnml +293 -0
  90. data/example/PegasusWMS/Split/pione-package.json +6 -2
  91. data/example/ScoreAggregation/Package.pione +2 -0
  92. data/example/ScoreAggregation/ScoreAggregation.action.md +56 -0
  93. data/example/ScoreAggregation/ScoreAggregation.pione +37 -76
  94. data/example/ScoreAggregation/ScoreAggregation.pnml +1221 -0
  95. data/example/ScoreAggregation/pione-package.json +6 -2
  96. data/example/ScoreAggregation/scenario/case1/pione-scenario.json +21 -21
  97. data/example/SelectRuleByParam/Package.pione +2 -0
  98. data/example/SelectRuleByParam/SelectRuleByParam.action.md +19 -0
  99. data/example/SelectRuleByParam/SelectRuleByParam.pnml +388 -0
  100. data/example/SequentialParameter/Package.pione +2 -0
  101. data/example/SequentialParameter/SequentialParameter.pione +9 -3
  102. data/example/SequentialParameter/SequentialParameter.pnml +140 -0
  103. data/example/SequentialParameter/pione-package.json +19 -0
  104. data/example/SerialProcessing/A.pione +25 -0
  105. data/example/SerialProcessing/A.pnml +395 -0
  106. data/example/SerialProcessing/B.pione +25 -0
  107. data/example/SerialProcessing/B.pnml +395 -0
  108. data/example/SerialProcessing/Package.pione +2 -0
  109. data/example/SerialProcessing/SerialProcessing.pione +9 -60
  110. data/example/SerialProcessing/SerialProcessing.pnml +160 -0
  111. data/example/SerialProcessing/pione-package.json +7 -1
  112. data/example/SieveOfEratosthenes/CreateUndeterminedNumbers.pnml +157 -0
  113. data/example/SieveOfEratosthenes/Package.pione +4 -0
  114. data/example/SieveOfEratosthenes/Sieve.pnml +1493 -0
  115. data/example/SieveOfEratosthenes/SieveOfEratosthenes.pnml +174 -0
  116. data/example/SingleParticlesWithRef/Create3dinfo.pnml +342 -0
  117. data/example/SingleParticlesWithRef/Package.pione +42 -0
  118. data/example/SingleParticlesWithRef/SingleParticlesWithRef.action.md +34 -0
  119. data/example/SingleParticlesWithRef/SingleParticlesWithRef.pnml +404 -0
  120. data/example/SingleParticlesWithRef/{Makefile → misc/Makefile} +0 -0
  121. data/example/SingleParticlesWithRef/{SingleParticlesWithRef.Display2.pione → misc/SingleParticlesWithRef.Display2.pione} +0 -0
  122. data/example/SingleParticlesWithRef/{SingleParticlesWithRef.Makefile → misc/SingleParticlesWithRef.Makefile} +0 -0
  123. data/example/SingleParticlesWithRef/{SingleParticlesWithRefFull.pione → misc/SingleParticlesWithRefFull.pione} +0 -0
  124. data/example/Sum/CalcEachLine.pione +30 -0
  125. data/example/Sum/CalcEachLine.pnml +327 -0
  126. data/example/Sum/Package.pione +2 -0
  127. data/example/Sum/Sum.action.md +35 -0
  128. data/example/Sum/Sum.pione +9 -35
  129. data/example/Sum/Sum.pnml +191 -0
  130. data/example/Sum/pione-package.json +5 -0
  131. data/example/Touch/Package.pione +2 -0
  132. data/example/Touch/Touch.pione +8 -2
  133. data/example/Touch/Touch.pnml +89 -0
  134. data/example/Touch/pione-package.json +4 -0
  135. data/example/WorkflowPatterns/01_Sequence/Package.pione +2 -0
  136. data/example/WorkflowPatterns/01_Sequence/Sequence.pione +9 -9
  137. data/example/WorkflowPatterns/01_Sequence/Sequence.pnml +191 -0
  138. data/example/WorkflowPatterns/01_Sequence/pione-package.json +19 -0
  139. data/example/WorkflowPatterns/02_PrallelSplit/Package.pione +2 -0
  140. data/example/WorkflowPatterns/02_PrallelSplit/ParallelSplit.pione +12 -12
  141. data/example/WorkflowPatterns/02_PrallelSplit/ParallelSplit.pnml +265 -0
  142. data/example/WorkflowPatterns/02_PrallelSplit/pione-package.json +19 -0
  143. data/example/WorkflowPatterns/03_Synchronization/Package.pione +2 -0
  144. data/example/WorkflowPatterns/03_Synchronization/Synchronization.pione +12 -13
  145. data/example/WorkflowPatterns/03_Synchronization/Synchronization.pnml +273 -0
  146. data/example/WorkflowPatterns/03_Synchronization/pione-package.json +19 -0
  147. data/example/WorkflowPatterns/04_ExclusiveChoice/ExclusiveChoice.pione +15 -22
  148. data/example/WorkflowPatterns/04_ExclusiveChoice/ExclusiveChoice.pnml +533 -0
  149. data/example/WorkflowPatterns/04_ExclusiveChoice/Package.pione +4 -0
  150. data/example/WorkflowPatterns/04_ExclusiveChoice/pione-package.json +19 -0
  151. data/example/WorkflowPatterns/05_SimpleMerge/Package.pione +4 -0
  152. data/example/WorkflowPatterns/05_SimpleMerge/SimpleMerge.pione +10 -18
  153. data/example/WorkflowPatterns/05_SimpleMerge/SimpleMerge.pnml +431 -0
  154. data/example/WorkflowPatterns/05_SimpleMerge/pione-package.json +19 -0
  155. data/example/WorkflowPatterns/06_MultiChoice/MultiChoice.pione +20 -28
  156. data/example/WorkflowPatterns/06_MultiChoice/MultiChoice.pnml +797 -0
  157. data/example/WorkflowPatterns/06_MultiChoice/Package.pione +5 -0
  158. data/example/WorkflowPatterns/06_MultiChoice/pione-package.json +19 -0
  159. data/example/WorkflowPatterns/07_StructuredSynchronizingMerge/Package.pione +5 -0
  160. data/example/WorkflowPatterns/07_StructuredSynchronizingMerge/StructuredSynchronizingMerge.pnml +668 -0
  161. data/example/WorkflowPatterns/08_MultiMerge/MultiMerge.pione +9 -20
  162. data/example/WorkflowPatterns/08_MultiMerge/MultiMerge.pnml +551 -0
  163. data/example/WorkflowPatterns/08_MultiMerge/Package.pione +4 -0
  164. data/example/WorkflowPatterns/08_MultiMerge/pione-package.json +19 -0
  165. data/example/WorkflowPatterns/11_ImplicitTermination/ImplicitTermination.pione +9 -17
  166. data/example/WorkflowPatterns/11_ImplicitTermination/ImplicitTermination.pnml +188 -0
  167. data/example/WorkflowPatterns/11_ImplicitTermination/Package.pione +2 -0
  168. data/example/WorkflowPatterns/11_ImplicitTermination/pione-package.json +19 -0
  169. data/example/WorkflowPatterns/12_MultipleInstancesWithoutSynchronization/MultipleInstancesWithoutSynchronization.pione +11 -11
  170. data/example/WorkflowPatterns/12_MultipleInstancesWithoutSynchronization/MultipleInstancesWithoutSynchronization.pnml +319 -0
  171. data/example/WorkflowPatterns/12_MultipleInstancesWithoutSynchronization/Package.pione +4 -0
  172. data/example/WorkflowPatterns/12_MultipleInstancesWithoutSynchronization/pione-package.json +19 -0
  173. data/example/WorkflowPatterns/13_MultipleInstancesWithDesignTimeKnowledge/MultipleInstancesWithDesignTimeKnowledge.pione +11 -11
  174. data/example/WorkflowPatterns/13_MultipleInstancesWithDesignTimeKnowledge/MultipleInstancesWithDesignTimeKnowledge.pnml +319 -0
  175. data/example/WorkflowPatterns/13_MultipleInstancesWithDesignTimeKnowledge/Package.pione +2 -0
  176. data/example/WorkflowPatterns/13_MultipleInstancesWithDesignTimeKnowledge/pione-package.json +19 -0
  177. data/example/WorkflowPatterns/14_MultipleInstancesWithRunTimeKnowledge/MultipleInstancesWithRunTimeKnowledge.pione +14 -17
  178. data/example/WorkflowPatterns/14_MultipleInstancesWithRunTimeKnowledge/MultipleInstancesWithRunTimeKnowledge.pnml +355 -0
  179. data/example/WorkflowPatterns/14_MultipleInstancesWithRunTimeKnowledge/Package.pione +4 -0
  180. data/example/WorkflowPatterns/14_MultipleInstancesWithRunTimeKnowledge/pione-package.json +19 -0
  181. data/example/WorkflowPatterns/33_GeneralizedANDJoin/GeneralizedANDJoin.pione +9 -10
  182. data/example/WorkflowPatterns/33_GeneralizedANDJoin/GeneralizedANDJoin.pnml +409 -0
  183. data/example/WorkflowPatterns/33_GeneralizedANDJoin/Package.pione +2 -0
  184. data/example/WorkflowPatterns/33_GeneralizedANDJoin/pione-package.json +19 -0
  185. data/example/WorkflowPatterns/37_LocalSynchronizingMerge/A.pione +34 -0
  186. data/example/WorkflowPatterns/37_LocalSynchronizingMerge/A.pnml +570 -0
  187. data/example/WorkflowPatterns/37_LocalSynchronizingMerge/LocalSynchronizingMerge.pione +36 -70
  188. data/example/WorkflowPatterns/37_LocalSynchronizingMerge/LocalSynchronizingMerge.pnml +854 -0
  189. data/example/WorkflowPatterns/37_LocalSynchronizingMerge/Package.pione +5 -0
  190. data/example/WorkflowPatterns/37_LocalSynchronizingMerge/pione-package.json +20 -0
  191. data/example/WorkflowPatterns/38_GeneralSynchronizingMerge/GeneralSynchronizingMerge.pnml +1003 -0
  192. data/example/WorkflowPatterns/38_GeneralSynchronizingMerge/Package.pione +6 -0
  193. data/example/WorkflowPatterns/41_ThreadMerge/A.pnml +429 -0
  194. data/example/WorkflowPatterns/41_ThreadMerge/A1.pnml +141 -0
  195. data/example/WorkflowPatterns/41_ThreadMerge/Package.pione +2 -0
  196. data/example/WorkflowPatterns/41_ThreadMerge/ThreadMerge.pnml +205 -0
  197. data/example/WorkflowPatterns/42_ThreadSplit/Package.pione +2 -0
  198. data/example/WorkflowPatterns/42_ThreadSplit/ThreadSplit.pnml +217 -0
  199. data/lib/pione/agent/job-manager.rb +4 -3
  200. data/lib/pione/agent/task-worker.rb +2 -7
  201. data/lib/pione/command.rb +1 -0
  202. data/lib/pione/command/basic-command.rb +3 -1
  203. data/lib/pione/command/command-exception.rb +14 -0
  204. data/lib/pione/command/pione-action-exec.rb +4 -1
  205. data/lib/pione/command/pione-clean.rb +13 -6
  206. data/lib/pione/command/pione-client.rb +5 -5
  207. data/lib/pione/command/pione-compile.rb +1 -1
  208. data/lib/pione/command/pione-log-format.rb +1 -1
  209. data/lib/pione/command/pione-package-add.rb +1 -1
  210. data/lib/pione/command/pione-package-build.rb +87 -32
  211. data/lib/pione/command/pione-package-remove.rb +117 -0
  212. data/lib/pione/command/pione-package.rb +1 -0
  213. data/lib/pione/command/spawner.rb +12 -3
  214. data/lib/pione/lang/boolean.rb +1 -1
  215. data/lib/pione/lang/common-parser.rb +5 -3
  216. data/lib/pione/lang/context-parser.rb +8 -2
  217. data/lib/pione/lang/context-transformer.rb +13 -3
  218. data/lib/pione/lang/context.rb +20 -2
  219. data/lib/pione/lang/data-expr.rb +1 -1
  220. data/lib/pione/lang/declaration-parser.rb +18 -4
  221. data/lib/pione/lang/declaration-transformer.rb +1 -1
  222. data/lib/pione/lang/declaration.rb +5 -3
  223. data/lib/pione/lang/definition.rb +1 -0
  224. data/lib/pione/lang/environment.rb +37 -2
  225. data/lib/pione/lang/expr.rb +10 -12
  226. data/lib/pione/lang/feature-expr.rb +1 -1
  227. data/lib/pione/lang/float.rb +1 -1
  228. data/lib/pione/lang/integer.rb +1 -1
  229. data/lib/pione/lang/keyed-sequence.rb +5 -5
  230. data/lib/pione/lang/lang-exception.rb +9 -5
  231. data/lib/pione/lang/literal-parser.rb +2 -2
  232. data/lib/pione/lang/literal-transformer.rb +3 -0
  233. data/lib/pione/lang/message.rb +3 -3
  234. data/lib/pione/lang/ordinal-sequence.rb +1 -1
  235. data/lib/pione/lang/package-expr.rb +1 -1
  236. data/lib/pione/lang/parameters.rb +1 -1
  237. data/lib/pione/lang/pione-method.rb +16 -16
  238. data/lib/pione/lang/rule-expr.rb +6 -1
  239. data/lib/pione/lang/sequence.rb +8 -3
  240. data/lib/pione/lang/string.rb +1 -1
  241. data/lib/pione/lang/ticket-expr.rb +1 -1
  242. data/lib/pione/lang/type.rb +17 -8
  243. data/lib/pione/lang/variable.rb +4 -1
  244. data/lib/pione/literate-action.rb +1 -2
  245. data/lib/pione/literate-action/document.rb +1 -1
  246. data/lib/pione/literate-action/handler.rb +22 -7
  247. data/lib/pione/literate-action/{parser.rb → markdown-parser.rb} +2 -1
  248. data/lib/pione/log/domain-log.rb +1 -1
  249. data/lib/pione/model/task-worker-broker-model.rb +1 -1
  250. data/lib/pione/package/package-database.rb +16 -2
  251. data/lib/pione/package/package-exception.rb +1 -1
  252. data/lib/pione/package/package-handler.rb +11 -7
  253. data/lib/pione/package/package-info.rb +13 -7
  254. data/lib/pione/package/package-scanner.rb +1 -1
  255. data/lib/pione/package/scenario-info.rb +2 -2
  256. data/lib/pione/pnml.rb +6 -0
  257. data/lib/pione/pnml/compiler.rb +329 -95
  258. data/lib/pione/pnml/declaration-extractor.rb +90 -0
  259. data/lib/pione/pnml/input-merge-complement.rb +17 -11
  260. data/lib/pione/pnml/input-parallelization-complement.rb +10 -6
  261. data/lib/pione/pnml/input-reduction.rb +5 -5
  262. data/lib/pione/pnml/invalid-arc-elimination.rb +2 -2
  263. data/lib/pione/pnml/io-expansion.rb +9 -5
  264. data/lib/pione/pnml/isolated-element-elimination.rb +2 -2
  265. data/lib/pione/pnml/label-extractor.rb +258 -0
  266. data/lib/pione/pnml/net-rewriter.rb +6 -4
  267. data/lib/pione/pnml/output-decomposition-complement.rb +12 -7
  268. data/lib/pione/pnml/output-reduction.rb +11 -5
  269. data/lib/pione/pnml/output-synchronization-complement.rb +11 -7
  270. data/lib/pione/pnml/parser.rb +106 -0
  271. data/lib/pione/pnml/pione-model.rb +685 -230
  272. data/lib/pione/pnml/pnml-model.rb +73 -41
  273. data/lib/pione/pnml/ticket-instantiation.rb +42 -0
  274. data/lib/pione/rule-engine/action-handler.rb +212 -135
  275. data/lib/pione/rule-engine/basic-handler.rb +29 -3
  276. data/lib/pione/rule-engine/engine-exception.rb +10 -6
  277. data/lib/pione/system/status.rb +12 -6
  278. data/lib/pione/version.rb +1 -1
  279. data/lib/rootage/help.md.erb +45 -0
  280. data/lib/rootage/help.rb +1 -0
  281. data/lib/rootage/scenario.rb +20 -2
  282. data/misc/pione-completion.bash +15 -5
  283. data/misc/pione-completion.zsh +16 -6
  284. data/test/command/spec_pione-client.rb +60 -60
  285. data/test/lang/data/context-parser.yml +12 -1
  286. data/test/lang/spec_pione-method.rb +7 -6
  287. data/test/literate-action/spec_handler.rb +19 -13
  288. data/test/literate-action/{spec_parser.rb → spec_markdown-parser.rb} +3 -3
  289. data/test/log/spec_message-log-receiver.rb +1 -1
  290. data/test/package/spec_package-info.rb +1 -1
  291. data/test/pnml/spec_input-merge-complement.rb +4 -2
  292. data/test/pnml/spec_input-parallelization-complement.rb +4 -2
  293. data/test/pnml/spec_input-reduction.rb +8 -4
  294. data/test/pnml/spec_invalid-arc-elimination.rb +2 -1
  295. data/test/pnml/spec_io-expansion.rb +4 -2
  296. data/test/pnml/spec_isolated-element-elimination.rb +2 -1
  297. data/test/pnml/spec_label-extractor.rb +100 -0
  298. data/test/pnml/spec_output-decomposition-complement.rb +4 -2
  299. data/test/pnml/spec_output-reduction.rb +8 -4
  300. data/test/pnml/spec_output-synchronization-complement.rb +4 -2
  301. data/test/pnml/spec_pione-element.rb +116 -37
  302. data/test/pnml/spec_pnml-element.rb +32 -8
  303. data/test/rule-engine/spec_action-handler.rb +12 -20
  304. metadata +159 -16
  305. data/example/CTFCorrection/package.yml +0 -1
  306. data/example/DeferredChoice/bin/ui.xml +0 -28
@@ -0,0 +1,4 @@
1
+ .@ PackageName :: "WCP04_ExclusiveChoice"
2
+ .@ Entrance :: ExclusiveChoice
3
+
4
+ param $COND := true
@@ -0,0 +1,19 @@
1
+ {
2
+ "PackageName": "WCP04_ExclusiveChoice",
3
+ "Parents": [
4
+
5
+ ],
6
+ "Documents": [
7
+ "ExclusiveChoice.pione",
8
+ "Package.pione"
9
+ ],
10
+ "Scenarios": [
11
+
12
+ ],
13
+ "Bins": [
14
+
15
+ ],
16
+ "Etcs": [
17
+
18
+ ]
19
+ }
@@ -0,0 +1,4 @@
1
+ .@ PackageName :: "WCP05_SimpleMerge"
2
+ .@ Entrance :: SimpleMerge
3
+
4
+ param $COND := true
@@ -1,44 +1,36 @@
1
- param $CASE := "A"
2
-
3
- Rule Main
1
+ Rule SimpleMerge
4
2
  output 'o1'
5
3
  Flow
6
- rule Init
7
4
  rule A
8
5
  rule B
9
6
  rule C
10
- End
11
-
12
- Rule Init
13
- output 'i1' or 'i2'
14
- Flow
15
- if $CASE == "A"
16
- rule Init1
7
+ if $COND
8
+ rule Init1
17
9
  else
18
- rule Init2
10
+ rule Init2
19
11
  end
12
+
20
13
  End
21
14
 
22
15
  Rule Init1
23
- output 'i1'.touch
16
+ output 'i1'
24
17
  End
25
18
 
26
19
  Rule Init2
27
- output 'i2'.touch
20
+ output 'i2'
28
21
  End
29
22
 
30
23
  Rule A
31
24
  input 'i1'
32
- output 'p1'.touch
25
+ output 'p1'
33
26
  End
34
27
 
35
28
  Rule B
36
29
  input 'i2'
37
- output 'p1'.touch
30
+ output 'p1'
38
31
  End
39
32
 
40
33
  Rule C
41
34
  input 'p1'
42
- output 'o1'.touch
35
+ output 'o1'
43
36
  End
44
-
@@ -0,0 +1,431 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <!--PLEASE DO NOT EDIT THIS FILE
3
+ Created with Workflow PetriNet Designer Version 3.2.0 (woped.org)-->
4
+ <pnml>
5
+ <net type="http://www.informatik.hu-berlin.de/top/pntd/ptNetb" id="noID">
6
+ <place id="p7">
7
+ <name>
8
+ <text>'p1'</text>
9
+ <graphics>
10
+ <offset x="870" y="280"/>
11
+ </graphics>
12
+ </name>
13
+ <graphics>
14
+ <position x="870" y="240"/>
15
+ <dimension x="40" y="40"/>
16
+ </graphics>
17
+ </place>
18
+ <place id="p6">
19
+ <name>
20
+ <text>'i2'</text>
21
+ <graphics>
22
+ <offset x="680" y="350"/>
23
+ </graphics>
24
+ </name>
25
+ <graphics>
26
+ <position x="680" y="310"/>
27
+ <dimension x="40" y="40"/>
28
+ </graphics>
29
+ </place>
30
+ <place id="p5">
31
+ <name>
32
+ <text>'i1'</text>
33
+ <graphics>
34
+ <offset x="680" y="210"/>
35
+ </graphics>
36
+ </name>
37
+ <graphics>
38
+ <position x="680" y="170"/>
39
+ <dimension x="40" y="40"/>
40
+ </graphics>
41
+ </place>
42
+ <place id="p4">
43
+ <name>
44
+ <text/>
45
+ <graphics>
46
+ <offset x="480" y="350"/>
47
+ </graphics>
48
+ </name>
49
+ <graphics>
50
+ <position x="480" y="310"/>
51
+ <dimension x="40" y="40"/>
52
+ </graphics>
53
+ </place>
54
+ <place id="p3">
55
+ <name>
56
+ <text/>
57
+ <graphics>
58
+ <offset x="480" y="210"/>
59
+ </graphics>
60
+ </name>
61
+ <graphics>
62
+ <position x="480" y="170"/>
63
+ <dimension x="40" y="40"/>
64
+ </graphics>
65
+ </place>
66
+ <place id="p2">
67
+ <name>
68
+ <text>$COND</text>
69
+ <graphics>
70
+ <offset x="300" y="280"/>
71
+ </graphics>
72
+ </name>
73
+ <graphics>
74
+ <position x="300" y="240"/>
75
+ <dimension x="40" y="40"/>
76
+ </graphics>
77
+ </place>
78
+ <place id="p1">
79
+ <name>
80
+ <text/>
81
+ <graphics>
82
+ <offset x="140" y="280"/>
83
+ </graphics>
84
+ </name>
85
+ <graphics>
86
+ <position x="140" y="240"/>
87
+ <dimension x="40" y="40"/>
88
+ </graphics>
89
+ </place>
90
+ <place id="p8">
91
+ <name>
92
+ <text>>'o1'</text>
93
+ <graphics>
94
+ <offset x="1030" y="280"/>
95
+ </graphics>
96
+ </name>
97
+ <graphics>
98
+ <position x="1030" y="240"/>
99
+ <dimension x="40" y="40"/>
100
+ </graphics>
101
+ </place>
102
+ <transition id="t3">
103
+ <name>
104
+ <text>then</text>
105
+ <graphics>
106
+ <offset x="380" y="210"/>
107
+ </graphics>
108
+ </name>
109
+ <graphics>
110
+ <position x="380" y="170"/>
111
+ <dimension x="40" y="40"/>
112
+ </graphics>
113
+ <toolspecific tool="WoPeD" version="1.0">
114
+ <time>0</time>
115
+ <timeUnit>1</timeUnit>
116
+ <orientation>1</orientation>
117
+ </toolspecific>
118
+ </transition>
119
+ <transition id="t1">
120
+ <name>
121
+ <text>if</text>
122
+ <graphics>
123
+ <offset x="220" y="280"/>
124
+ </graphics>
125
+ </name>
126
+ <graphics>
127
+ <position x="220" y="240"/>
128
+ <dimension x="40" y="40"/>
129
+ </graphics>
130
+ <toolspecific tool="WoPeD" version="1.0">
131
+ <time>0</time>
132
+ <timeUnit>1</timeUnit>
133
+ <orientation>1</orientation>
134
+ </toolspecific>
135
+ </transition>
136
+ <transition id="t4">
137
+ <name>
138
+ <text>Init1</text>
139
+ <graphics>
140
+ <offset x="580" y="210"/>
141
+ </graphics>
142
+ </name>
143
+ <graphics>
144
+ <position x="580" y="170"/>
145
+ <dimension x="40" y="40"/>
146
+ </graphics>
147
+ <toolspecific tool="WoPeD" version="1.0">
148
+ <time>0</time>
149
+ <timeUnit>1</timeUnit>
150
+ <orientation>1</orientation>
151
+ </toolspecific>
152
+ </transition>
153
+ <transition id="t5">
154
+ <name>
155
+ <text>else</text>
156
+ <graphics>
157
+ <offset x="380" y="350"/>
158
+ </graphics>
159
+ </name>
160
+ <graphics>
161
+ <position x="380" y="310"/>
162
+ <dimension x="40" y="40"/>
163
+ </graphics>
164
+ <toolspecific tool="WoPeD" version="1.0">
165
+ <time>0</time>
166
+ <timeUnit>1</timeUnit>
167
+ <orientation>1</orientation>
168
+ </toolspecific>
169
+ </transition>
170
+ <transition id="t6">
171
+ <name>
172
+ <text>Init2</text>
173
+ <graphics>
174
+ <offset x="580" y="350"/>
175
+ </graphics>
176
+ </name>
177
+ <graphics>
178
+ <position x="580" y="310"/>
179
+ <dimension x="40" y="40"/>
180
+ </graphics>
181
+ <toolspecific tool="WoPeD" version="1.0">
182
+ <time>0</time>
183
+ <timeUnit>1</timeUnit>
184
+ <orientation>1</orientation>
185
+ </toolspecific>
186
+ </transition>
187
+ <transition id="t7">
188
+ <name>
189
+ <text>A</text>
190
+ <graphics>
191
+ <offset x="780" y="210"/>
192
+ </graphics>
193
+ </name>
194
+ <graphics>
195
+ <position x="780" y="170"/>
196
+ <dimension x="40" y="40"/>
197
+ </graphics>
198
+ <toolspecific tool="WoPeD" version="1.0">
199
+ <time>0</time>
200
+ <timeUnit>1</timeUnit>
201
+ <orientation>1</orientation>
202
+ </toolspecific>
203
+ </transition>
204
+ <transition id="t8">
205
+ <name>
206
+ <text>B</text>
207
+ <graphics>
208
+ <offset x="780" y="350"/>
209
+ </graphics>
210
+ </name>
211
+ <graphics>
212
+ <position x="780" y="310"/>
213
+ <dimension x="40" y="40"/>
214
+ </graphics>
215
+ <toolspecific tool="WoPeD" version="1.0">
216
+ <time>0</time>
217
+ <timeUnit>1</timeUnit>
218
+ <orientation>1</orientation>
219
+ </toolspecific>
220
+ </transition>
221
+ <transition id="t9">
222
+ <name>
223
+ <text>C</text>
224
+ <graphics>
225
+ <offset x="950" y="280"/>
226
+ </graphics>
227
+ </name>
228
+ <graphics>
229
+ <position x="950" y="240"/>
230
+ <dimension x="40" y="40"/>
231
+ </graphics>
232
+ <toolspecific tool="WoPeD" version="1.0">
233
+ <time>0</time>
234
+ <timeUnit>1</timeUnit>
235
+ <orientation>1</orientation>
236
+ </toolspecific>
237
+ </transition>
238
+ <arc id="a16" source="t9" target="p8">
239
+ <inscription>
240
+ <text>1</text>
241
+ </inscription>
242
+ <graphics/>
243
+ <toolspecific tool="WoPeD" version="1.0">
244
+ <probability>1.0</probability>
245
+ <displayProbabilityOn>false</displayProbabilityOn>
246
+ <displayProbabilityPosition x="500.0" y="0.0"/>
247
+ </toolspecific>
248
+ </arc>
249
+ <arc id="a9" source="t4" target="p5">
250
+ <inscription>
251
+ <text>1</text>
252
+ </inscription>
253
+ <graphics/>
254
+ <toolspecific tool="WoPeD" version="1.0">
255
+ <probability>1.0</probability>
256
+ <displayProbabilityOn>false</displayProbabilityOn>
257
+ <displayProbabilityPosition x="500.0" y="0.0"/>
258
+ </toolspecific>
259
+ </arc>
260
+ <arc id="a14" source="t8" target="p7">
261
+ <inscription>
262
+ <text>1</text>
263
+ </inscription>
264
+ <graphics/>
265
+ <toolspecific tool="WoPeD" version="1.0">
266
+ <probability>1.0</probability>
267
+ <displayProbabilityOn>false</displayProbabilityOn>
268
+ <displayProbabilityPosition x="500.0" y="0.0"/>
269
+ </toolspecific>
270
+ </arc>
271
+ <arc id="a15" source="p7" target="t9">
272
+ <inscription>
273
+ <text>1</text>
274
+ </inscription>
275
+ <graphics/>
276
+ <toolspecific tool="WoPeD" version="1.0">
277
+ <probability>1.0</probability>
278
+ <displayProbabilityOn>false</displayProbabilityOn>
279
+ <displayProbabilityPosition x="500.0" y="0.0"/>
280
+ </toolspecific>
281
+ </arc>
282
+ <arc id="a12" source="p6" target="t8">
283
+ <inscription>
284
+ <text>1</text>
285
+ </inscription>
286
+ <graphics/>
287
+ <toolspecific tool="WoPeD" version="1.0">
288
+ <probability>1.0</probability>
289
+ <displayProbabilityOn>false</displayProbabilityOn>
290
+ <displayProbabilityPosition x="500.0" y="0.0"/>
291
+ </toolspecific>
292
+ </arc>
293
+ <arc id="a13" source="t7" target="p7">
294
+ <inscription>
295
+ <text>1</text>
296
+ </inscription>
297
+ <graphics/>
298
+ <toolspecific tool="WoPeD" version="1.0">
299
+ <probability>1.0</probability>
300
+ <displayProbabilityOn>false</displayProbabilityOn>
301
+ <displayProbabilityPosition x="500.0" y="0.0"/>
302
+ </toolspecific>
303
+ </arc>
304
+ <arc id="a10" source="t6" target="p6">
305
+ <inscription>
306
+ <text>1</text>
307
+ </inscription>
308
+ <graphics/>
309
+ <toolspecific tool="WoPeD" version="1.0">
310
+ <probability>1.0</probability>
311
+ <displayProbabilityOn>false</displayProbabilityOn>
312
+ <displayProbabilityPosition x="500.0" y="0.0"/>
313
+ </toolspecific>
314
+ </arc>
315
+ <arc id="a11" source="p5" target="t7">
316
+ <inscription>
317
+ <text>1</text>
318
+ </inscription>
319
+ <graphics/>
320
+ <toolspecific tool="WoPeD" version="1.0">
321
+ <probability>1.0</probability>
322
+ <displayProbabilityOn>false</displayProbabilityOn>
323
+ <displayProbabilityPosition x="500.0" y="0.0"/>
324
+ </toolspecific>
325
+ </arc>
326
+ <arc id="a1" source="p1" target="t1">
327
+ <inscription>
328
+ <text>1</text>
329
+ </inscription>
330
+ <graphics/>
331
+ <toolspecific tool="WoPeD" version="1.0">
332
+ <probability>1.0</probability>
333
+ <displayProbabilityOn>false</displayProbabilityOn>
334
+ <displayProbabilityPosition x="500.0" y="0.0"/>
335
+ </toolspecific>
336
+ </arc>
337
+ <arc id="a2" source="t1" target="p2">
338
+ <inscription>
339
+ <text>1</text>
340
+ </inscription>
341
+ <graphics/>
342
+ <toolspecific tool="WoPeD" version="1.0">
343
+ <probability>1.0</probability>
344
+ <displayProbabilityOn>false</displayProbabilityOn>
345
+ <displayProbabilityPosition x="500.0" y="0.0"/>
346
+ </toolspecific>
347
+ </arc>
348
+ <arc id="a3" source="p2" target="t3">
349
+ <inscription>
350
+ <text>1</text>
351
+ </inscription>
352
+ <graphics/>
353
+ <toolspecific tool="WoPeD" version="1.0">
354
+ <probability>1.0</probability>
355
+ <displayProbabilityOn>false</displayProbabilityOn>
356
+ <displayProbabilityPosition x="500.0" y="0.0"/>
357
+ </toolspecific>
358
+ </arc>
359
+ <arc id="a4" source="t3" target="p3">
360
+ <inscription>
361
+ <text>1</text>
362
+ </inscription>
363
+ <graphics/>
364
+ <toolspecific tool="WoPeD" version="1.0">
365
+ <probability>1.0</probability>
366
+ <displayProbabilityOn>false</displayProbabilityOn>
367
+ <displayProbabilityPosition x="500.0" y="0.0"/>
368
+ </toolspecific>
369
+ </arc>
370
+ <arc id="a5" source="p3" target="t4">
371
+ <inscription>
372
+ <text>1</text>
373
+ </inscription>
374
+ <graphics/>
375
+ <toolspecific tool="WoPeD" version="1.0">
376
+ <probability>1.0</probability>
377
+ <displayProbabilityOn>false</displayProbabilityOn>
378
+ <displayProbabilityPosition x="500.0" y="0.0"/>
379
+ </toolspecific>
380
+ </arc>
381
+ <arc id="a6" source="p2" target="t5">
382
+ <inscription>
383
+ <text>1</text>
384
+ </inscription>
385
+ <graphics/>
386
+ <toolspecific tool="WoPeD" version="1.0">
387
+ <probability>1.0</probability>
388
+ <displayProbabilityOn>false</displayProbabilityOn>
389
+ <displayProbabilityPosition x="500.0" y="0.0"/>
390
+ </toolspecific>
391
+ </arc>
392
+ <arc id="a7" source="t5" target="p4">
393
+ <inscription>
394
+ <text>1</text>
395
+ </inscription>
396
+ <graphics/>
397
+ <toolspecific tool="WoPeD" version="1.0">
398
+ <probability>1.0</probability>
399
+ <displayProbabilityOn>false</displayProbabilityOn>
400
+ <displayProbabilityPosition x="500.0" y="0.0"/>
401
+ </toolspecific>
402
+ </arc>
403
+ <arc id="a8" source="p4" target="t6">
404
+ <inscription>
405
+ <text>1</text>
406
+ </inscription>
407
+ <graphics/>
408
+ <toolspecific tool="WoPeD" version="1.0">
409
+ <probability>1.0</probability>
410
+ <displayProbabilityOn>false</displayProbabilityOn>
411
+ <displayProbabilityPosition x="500.0" y="0.0"/>
412
+ </toolspecific>
413
+ </arc>
414
+ <toolspecific tool="WoPeD" version="1.0">
415
+ <bounds>
416
+ <position x="2" y="22"/>
417
+ <dimension x="1905" y="784"/>
418
+ </bounds>
419
+ <scale>100</scale>
420
+ <treeWidthRight>1551</treeWidthRight>
421
+ <overviewPanelVisible>true</overviewPanelVisible>
422
+ <treeHeightOverview>100</treeHeightOverview>
423
+ <treePanelVisible>true</treePanelVisible>
424
+ <verticalLayout>false</verticalLayout>
425
+ <resources/>
426
+ <simulations/>
427
+ <partnerLinks/>
428
+ <variables/>
429
+ </toolspecific>
430
+ </net>
431
+ </pnml>