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 :: "WCP12_MultipleInstancesWithoutSynchronization"
2
+ .@ Entrance :: MultipleInstancesWithoutSynchronization
3
+
4
+ param $SIZE := 5
@@ -0,0 +1,19 @@
1
+ {
2
+ "PackageName": "WCP12_MultipleInstancesWithoutSynchronization",
3
+ "Parents": [
4
+
5
+ ],
6
+ "Documents": [
7
+ "MultipleInstancesWithoutSynchronization.pione",
8
+ "Package.pione"
9
+ ],
10
+ "Scenarios": [
11
+
12
+ ],
13
+ "Bins": [
14
+
15
+ ],
16
+ "Etcs": [
17
+
18
+ ]
19
+ }
@@ -1,28 +1,28 @@
1
- Rule Main
1
+ Rule MultipleInstancesWithDesignTimeKnowledge
2
2
  output 'o1'
3
3
  Flow
4
- rule Init
5
- rule A
6
4
  rule B
5
+ rule A
6
+ rule Init
7
7
  rule C
8
8
  End
9
9
 
10
- Rule Init
11
- output 'i1'.touch
10
+ Rule B
11
+ input 'p1'
12
+ output 'p2-{$N}'
13
+ param $N := 1.upto(5)
12
14
  End
13
15
 
14
16
  Rule A
15
17
  input 'i1'
16
- output 'p1'.touch
18
+ output 'p1'
17
19
  End
18
20
 
19
- Rule B
20
- input 'p1'
21
- output 'p2-{$N}'.touch
22
- param $N := 1.upto(5)
21
+ Rule Init
22
+ output 'i1'
23
23
  End
24
24
 
25
25
  Rule C
26
26
  input 'p2-*'.all
27
- output 'o1'.touch
27
+ output 'o1'
28
28
  End
@@ -0,0 +1,319 @@
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>>'o1'</text>
9
+ <graphics>
10
+ <offset x="1060" y="310"/>
11
+ </graphics>
12
+ </name>
13
+ <graphics>
14
+ <position x="1060" y="270"/>
15
+ <dimension x="40" y="40"/>
16
+ </graphics>
17
+ </place>
18
+ <place id="p6">
19
+ <name>
20
+ <text>'p2-*'.all</text>
21
+ <graphics>
22
+ <offset x="880" y="310"/>
23
+ </graphics>
24
+ </name>
25
+ <graphics>
26
+ <position x="880" y="270"/>
27
+ <dimension x="40" y="40"/>
28
+ </graphics>
29
+ </place>
30
+ <place id="p5">
31
+ <name>
32
+ <text>'p2-{$N}'</text>
33
+ <graphics>
34
+ <offset x="710" y="310"/>
35
+ </graphics>
36
+ </name>
37
+ <graphics>
38
+ <position x="710" y="270"/>
39
+ <dimension x="40" y="40"/>
40
+ </graphics>
41
+ </place>
42
+ <place id="p4">
43
+ <name>
44
+ <text>$N := 1.upto(5)</text>
45
+ <graphics>
46
+ <offset x="550" y="220"/>
47
+ </graphics>
48
+ </name>
49
+ <graphics>
50
+ <position x="550" y="180"/>
51
+ <dimension x="40" y="40"/>
52
+ </graphics>
53
+ <initialMarking>
54
+ <text>1</text>
55
+ </initialMarking>
56
+ </place>
57
+ <place id="p3">
58
+ <name>
59
+ <text>'p1'</text>
60
+ <graphics>
61
+ <offset x="550" y="310"/>
62
+ </graphics>
63
+ </name>
64
+ <graphics>
65
+ <position x="550" y="270"/>
66
+ <dimension x="40" y="40"/>
67
+ </graphics>
68
+ </place>
69
+ <place id="p2">
70
+ <name>
71
+ <text>'i1'</text>
72
+ <graphics>
73
+ <offset x="390" y="310"/>
74
+ </graphics>
75
+ </name>
76
+ <graphics>
77
+ <position x="390" y="270"/>
78
+ <dimension x="40" y="40"/>
79
+ </graphics>
80
+ </place>
81
+ <place id="p1">
82
+ <name>
83
+ <text/>
84
+ <graphics>
85
+ <offset x="230" y="310"/>
86
+ </graphics>
87
+ </name>
88
+ <graphics>
89
+ <position x="230" y="270"/>
90
+ <dimension x="40" y="40"/>
91
+ </graphics>
92
+ <initialMarking>
93
+ <text>1</text>
94
+ </initialMarking>
95
+ </place>
96
+ <transition id="t3">
97
+ <name>
98
+ <text>B</text>
99
+ <graphics>
100
+ <offset x="630" y="310"/>
101
+ </graphics>
102
+ </name>
103
+ <graphics>
104
+ <position x="630" y="270"/>
105
+ <dimension x="40" y="40"/>
106
+ </graphics>
107
+ <toolspecific tool="WoPeD" version="1.0">
108
+ <time>0</time>
109
+ <timeUnit>1</timeUnit>
110
+ <orientation>1</orientation>
111
+ </toolspecific>
112
+ </transition>
113
+ <transition id="t2">
114
+ <name>
115
+ <text>A</text>
116
+ <graphics>
117
+ <offset x="470" y="310"/>
118
+ </graphics>
119
+ </name>
120
+ <graphics>
121
+ <position x="470" y="270"/>
122
+ <dimension x="40" y="40"/>
123
+ </graphics>
124
+ <toolspecific tool="WoPeD" version="1.0">
125
+ <time>0</time>
126
+ <timeUnit>1</timeUnit>
127
+ <orientation>1</orientation>
128
+ </toolspecific>
129
+ </transition>
130
+ <transition id="t1">
131
+ <name>
132
+ <text>Init</text>
133
+ <graphics>
134
+ <offset x="310" y="310"/>
135
+ </graphics>
136
+ </name>
137
+ <graphics>
138
+ <position x="310" y="270"/>
139
+ <dimension x="40" y="40"/>
140
+ </graphics>
141
+ <toolspecific tool="WoPeD" version="1.0">
142
+ <time>0</time>
143
+ <timeUnit>1</timeUnit>
144
+ <orientation>1</orientation>
145
+ </toolspecific>
146
+ </transition>
147
+ <transition id="t4">
148
+ <name>
149
+ <text/>
150
+ <graphics>
151
+ <offset x="790" y="310"/>
152
+ </graphics>
153
+ </name>
154
+ <graphics>
155
+ <position x="790" y="270"/>
156
+ <dimension x="40" y="40"/>
157
+ </graphics>
158
+ <toolspecific tool="WoPeD" version="1.0">
159
+ <time>0</time>
160
+ <timeUnit>1</timeUnit>
161
+ <orientation>1</orientation>
162
+ </toolspecific>
163
+ </transition>
164
+ <transition id="t5">
165
+ <name>
166
+ <text>C</text>
167
+ <graphics>
168
+ <offset x="970" y="310"/>
169
+ </graphics>
170
+ </name>
171
+ <graphics>
172
+ <position x="970" y="270"/>
173
+ <dimension x="40" y="40"/>
174
+ </graphics>
175
+ <toolspecific tool="WoPeD" version="1.0">
176
+ <time>0</time>
177
+ <timeUnit>1</timeUnit>
178
+ <orientation>1</orientation>
179
+ </toolspecific>
180
+ </transition>
181
+ <arc id="a9" source="t4" target="p6">
182
+ <inscription>
183
+ <text>1</text>
184
+ </inscription>
185
+ <graphics/>
186
+ <toolspecific tool="WoPeD" version="1.0">
187
+ <probability>1.0</probability>
188
+ <displayProbabilityOn>false</displayProbabilityOn>
189
+ <displayProbabilityPosition x="500.0" y="0.0"/>
190
+ </toolspecific>
191
+ </arc>
192
+ <arc id="a10" source="p6" target="t5">
193
+ <inscription>
194
+ <text>1</text>
195
+ </inscription>
196
+ <graphics/>
197
+ <toolspecific tool="WoPeD" version="1.0">
198
+ <probability>1.0</probability>
199
+ <displayProbabilityOn>false</displayProbabilityOn>
200
+ <displayProbabilityPosition x="500.0" y="0.0"/>
201
+ </toolspecific>
202
+ </arc>
203
+ <arc id="a11" source="t5" target="p7">
204
+ <inscription>
205
+ <text>1</text>
206
+ </inscription>
207
+ <graphics/>
208
+ <toolspecific tool="WoPeD" version="1.0">
209
+ <probability>1.0</probability>
210
+ <displayProbabilityOn>false</displayProbabilityOn>
211
+ <displayProbabilityPosition x="500.0" y="0.0"/>
212
+ </toolspecific>
213
+ </arc>
214
+ <arc id="a1" source="p1" target="t1">
215
+ <inscription>
216
+ <text>1</text>
217
+ </inscription>
218
+ <graphics/>
219
+ <toolspecific tool="WoPeD" version="1.0">
220
+ <probability>1.0</probability>
221
+ <displayProbabilityOn>false</displayProbabilityOn>
222
+ <displayProbabilityPosition x="500.0" y="0.0"/>
223
+ </toolspecific>
224
+ </arc>
225
+ <arc id="a2" source="t1" target="p2">
226
+ <inscription>
227
+ <text>1</text>
228
+ </inscription>
229
+ <graphics/>
230
+ <toolspecific tool="WoPeD" version="1.0">
231
+ <probability>1.0</probability>
232
+ <displayProbabilityOn>false</displayProbabilityOn>
233
+ <displayProbabilityPosition x="500.0" y="0.0"/>
234
+ </toolspecific>
235
+ </arc>
236
+ <arc id="a3" source="p2" target="t2">
237
+ <inscription>
238
+ <text>1</text>
239
+ </inscription>
240
+ <graphics/>
241
+ <toolspecific tool="WoPeD" version="1.0">
242
+ <probability>1.0</probability>
243
+ <displayProbabilityOn>false</displayProbabilityOn>
244
+ <displayProbabilityPosition x="500.0" y="0.0"/>
245
+ </toolspecific>
246
+ </arc>
247
+ <arc id="a4" source="t2" target="p3">
248
+ <inscription>
249
+ <text>1</text>
250
+ </inscription>
251
+ <graphics/>
252
+ <toolspecific tool="WoPeD" version="1.0">
253
+ <probability>1.0</probability>
254
+ <displayProbabilityOn>false</displayProbabilityOn>
255
+ <displayProbabilityPosition x="500.0" y="0.0"/>
256
+ </toolspecific>
257
+ </arc>
258
+ <arc id="a5" source="p3" target="t3">
259
+ <inscription>
260
+ <text>1</text>
261
+ </inscription>
262
+ <graphics/>
263
+ <toolspecific tool="WoPeD" version="1.0">
264
+ <probability>1.0</probability>
265
+ <displayProbabilityOn>false</displayProbabilityOn>
266
+ <displayProbabilityPosition x="500.0" y="0.0"/>
267
+ </toolspecific>
268
+ </arc>
269
+ <arc id="a6" source="p4" target="t3">
270
+ <inscription>
271
+ <text>1</text>
272
+ </inscription>
273
+ <graphics/>
274
+ <toolspecific tool="WoPeD" version="1.0">
275
+ <probability>1.0</probability>
276
+ <displayProbabilityOn>false</displayProbabilityOn>
277
+ <displayProbabilityPosition x="500.0" y="0.0"/>
278
+ </toolspecific>
279
+ </arc>
280
+ <arc id="a7" source="t3" target="p5">
281
+ <inscription>
282
+ <text>1</text>
283
+ </inscription>
284
+ <graphics/>
285
+ <toolspecific tool="WoPeD" version="1.0">
286
+ <probability>1.0</probability>
287
+ <displayProbabilityOn>false</displayProbabilityOn>
288
+ <displayProbabilityPosition x="500.0" y="0.0"/>
289
+ </toolspecific>
290
+ </arc>
291
+ <arc id="a8" source="p5" target="t4">
292
+ <inscription>
293
+ <text>1</text>
294
+ </inscription>
295
+ <graphics/>
296
+ <toolspecific tool="WoPeD" version="1.0">
297
+ <probability>1.0</probability>
298
+ <displayProbabilityOn>false</displayProbabilityOn>
299
+ <displayProbabilityPosition x="500.0" y="0.0"/>
300
+ </toolspecific>
301
+ </arc>
302
+ <toolspecific tool="WoPeD" version="1.0">
303
+ <bounds>
304
+ <position x="2" y="22"/>
305
+ <dimension x="1905" y="784"/>
306
+ </bounds>
307
+ <scale>100</scale>
308
+ <treeWidthRight>1551</treeWidthRight>
309
+ <overviewPanelVisible>true</overviewPanelVisible>
310
+ <treeHeightOverview>100</treeHeightOverview>
311
+ <treePanelVisible>true</treePanelVisible>
312
+ <verticalLayout>false</verticalLayout>
313
+ <resources/>
314
+ <simulations/>
315
+ <partnerLinks/>
316
+ <variables/>
317
+ </toolspecific>
318
+ </net>
319
+ </pnml>
@@ -0,0 +1,2 @@
1
+ .@ PackageName :: "WCP13_MultipleInstancesWithDesignTimeKnowledge"
2
+ .@ Entrance :: MultipleInstancesWithDesignTimeKnowledge
@@ -0,0 +1,19 @@
1
+ {
2
+ "PackageName": "WCP13_MultipleInstancesWithDesignTimeKnowledge",
3
+ "Parents": [
4
+
5
+ ],
6
+ "Documents": [
7
+ "MultipleInstancesWithDesignTimeKnowledge.pione",
8
+ "Package.pione"
9
+ ],
10
+ "Scenarios": [
11
+
12
+ ],
13
+ "Bins": [
14
+
15
+ ],
16
+ "Etcs": [
17
+
18
+ ]
19
+ }
@@ -1,33 +1,30 @@
1
- param $NUM := 5
2
-
3
- Rule Main
1
+ Rule MultipleInstancesWithRunTimeKnowledge
4
2
  output 'o1'
5
3
  Flow
6
- rule Init
4
+ rule C
7
5
  rule A
6
+ rule Init
8
7
  rule B
9
- rule C
10
8
  End
11
9
 
12
- Rule Init
13
- output 'i1'.touch
10
+ Rule C
11
+ input 'p1'
12
+ output 'p2-{$N}'
13
+ param $N := 1.upto($NUM)
14
14
  End
15
15
 
16
16
  Rule A
17
17
  input 'i1'
18
- output 'p1'.touch
19
- output 'p3'.touch
18
+ output 'p1'
19
+ output 'p3'
20
+ End
21
+
22
+ Rule Init
23
+ output 'i1'
20
24
  End
21
25
 
22
26
  Rule B
23
27
  input 'p2-*'.all
24
28
  input 'p3'
25
- output 'o1'.touch
26
- End
27
-
28
- Rule C
29
- input 'p1'
30
- output 'p2-{$N}'.touch
31
- param $N := 1.upto($NUM)
29
+ output 'o1'
32
30
  End
33
-