UNPKG

55.3 kBJavaScriptView Raw
1'use strict';
2
3var minDash = require('min-dash');
4var moddle = require('moddle');
5var moddleXml = require('moddle-xml');
6
7/**
8 * A sub class of {@link Moddle} with support for import and export of BPMN 2.0 xml files.
9 *
10 * @class BpmnModdle
11 * @extends Moddle
12 *
13 * @param {Object|Array} packages to use for instantiating the model
14 * @param {Object} [options] additional options to pass over
15 */
16function BpmnModdle(packages, options) {
17 moddle.Moddle.call(this, packages, options);
18}
19
20BpmnModdle.prototype = Object.create(moddle.Moddle.prototype);
21
22/**
23 * The fromXML result.
24 *
25 * @typedef {Object} ParseResult
26 *
27 * @property {ModdleElement} rootElement
28 * @property {Array<Object>} references
29 * @property {Array<Error>} warnings
30 * @property {Object} elementsById - a mapping containing each ID -> ModdleElement
31 */
32
33/**
34 * The fromXML error.
35 *
36 * @typedef {Error} ParseError
37 *
38 * @property {Array<Error>} warnings
39 */
40
41/**
42 * Instantiates a BPMN model tree from a given xml string.
43 *
44 * @param {String} xmlStr
45 * @param {String} [typeName='bpmn:Definitions'] name of the root element
46 * @param {Object} [options] options to pass to the underlying reader
47 *
48 * @returns {Promise<ParseResult, ParseError>}
49 */
50BpmnModdle.prototype.fromXML = function(xmlStr, typeName, options) {
51
52 if (!minDash.isString(typeName)) {
53 options = typeName;
54 typeName = 'bpmn:Definitions';
55 }
56
57 var reader = new moddleXml.Reader(minDash.assign({ model: this, lax: true }, options));
58 var rootHandler = reader.handler(typeName);
59
60 return reader.fromXML(xmlStr, rootHandler);
61};
62
63
64/**
65 * The toXML result.
66 *
67 * @typedef {Object} SerializationResult
68 *
69 * @property {String} xml
70 */
71
72/**
73 * Serializes a BPMN 2.0 object tree to XML.
74 *
75 * @param {String} element the root element, typically an instance of `bpmn:Definitions`
76 * @param {Object} [options] to pass to the underlying writer
77 *
78 * @returns {Promise<SerializationResult, Error>}
79 */
80BpmnModdle.prototype.toXML = function(element, options) {
81
82 var writer = new moddleXml.Writer(options);
83
84 return new Promise(function(resolve, reject) {
85 try {
86 var result = writer.toXML(element);
87
88 return resolve({
89 xml: result
90 });
91 } catch (err) {
92 return reject(err);
93 }
94 });
95};
96
97var name$5 = "BPMN20";
98var uri$5 = "http://www.omg.org/spec/BPMN/20100524/MODEL";
99var prefix$5 = "bpmn";
100var associations$5 = [
101];
102var types$5 = [
103 {
104 name: "Interface",
105 superClass: [
106 "RootElement"
107 ],
108 properties: [
109 {
110 name: "name",
111 isAttr: true,
112 type: "String"
113 },
114 {
115 name: "operations",
116 type: "Operation",
117 isMany: true
118 },
119 {
120 name: "implementationRef",
121 isAttr: true,
122 type: "String"
123 }
124 ]
125 },
126 {
127 name: "Operation",
128 superClass: [
129 "BaseElement"
130 ],
131 properties: [
132 {
133 name: "name",
134 isAttr: true,
135 type: "String"
136 },
137 {
138 name: "inMessageRef",
139 type: "Message",
140 isReference: true
141 },
142 {
143 name: "outMessageRef",
144 type: "Message",
145 isReference: true
146 },
147 {
148 name: "errorRef",
149 type: "Error",
150 isMany: true,
151 isReference: true
152 },
153 {
154 name: "implementationRef",
155 isAttr: true,
156 type: "String"
157 }
158 ]
159 },
160 {
161 name: "EndPoint",
162 superClass: [
163 "RootElement"
164 ]
165 },
166 {
167 name: "Auditing",
168 superClass: [
169 "BaseElement"
170 ]
171 },
172 {
173 name: "GlobalTask",
174 superClass: [
175 "CallableElement"
176 ],
177 properties: [
178 {
179 name: "resources",
180 type: "ResourceRole",
181 isMany: true
182 }
183 ]
184 },
185 {
186 name: "Monitoring",
187 superClass: [
188 "BaseElement"
189 ]
190 },
191 {
192 name: "Performer",
193 superClass: [
194 "ResourceRole"
195 ]
196 },
197 {
198 name: "Process",
199 superClass: [
200 "FlowElementsContainer",
201 "CallableElement"
202 ],
203 properties: [
204 {
205 name: "processType",
206 type: "ProcessType",
207 isAttr: true
208 },
209 {
210 name: "isClosed",
211 isAttr: true,
212 type: "Boolean"
213 },
214 {
215 name: "auditing",
216 type: "Auditing"
217 },
218 {
219 name: "monitoring",
220 type: "Monitoring"
221 },
222 {
223 name: "properties",
224 type: "Property",
225 isMany: true
226 },
227 {
228 name: "laneSets",
229 isMany: true,
230 replaces: "FlowElementsContainer#laneSets",
231 type: "LaneSet"
232 },
233 {
234 name: "flowElements",
235 isMany: true,
236 replaces: "FlowElementsContainer#flowElements",
237 type: "FlowElement"
238 },
239 {
240 name: "artifacts",
241 type: "Artifact",
242 isMany: true
243 },
244 {
245 name: "resources",
246 type: "ResourceRole",
247 isMany: true
248 },
249 {
250 name: "correlationSubscriptions",
251 type: "CorrelationSubscription",
252 isMany: true
253 },
254 {
255 name: "supports",
256 type: "Process",
257 isMany: true,
258 isReference: true
259 },
260 {
261 name: "definitionalCollaborationRef",
262 type: "Collaboration",
263 isAttr: true,
264 isReference: true
265 },
266 {
267 name: "isExecutable",
268 isAttr: true,
269 type: "Boolean"
270 }
271 ]
272 },
273 {
274 name: "LaneSet",
275 superClass: [
276 "BaseElement"
277 ],
278 properties: [
279 {
280 name: "lanes",
281 type: "Lane",
282 isMany: true
283 },
284 {
285 name: "name",
286 isAttr: true,
287 type: "String"
288 }
289 ]
290 },
291 {
292 name: "Lane",
293 superClass: [
294 "BaseElement"
295 ],
296 properties: [
297 {
298 name: "name",
299 isAttr: true,
300 type: "String"
301 },
302 {
303 name: "partitionElementRef",
304 type: "BaseElement",
305 isAttr: true,
306 isReference: true
307 },
308 {
309 name: "partitionElement",
310 type: "BaseElement"
311 },
312 {
313 name: "flowNodeRef",
314 type: "FlowNode",
315 isMany: true,
316 isReference: true
317 },
318 {
319 name: "childLaneSet",
320 type: "LaneSet",
321 xml: {
322 serialize: "xsi:type"
323 }
324 }
325 ]
326 },
327 {
328 name: "GlobalManualTask",
329 superClass: [
330 "GlobalTask"
331 ]
332 },
333 {
334 name: "ManualTask",
335 superClass: [
336 "Task"
337 ]
338 },
339 {
340 name: "UserTask",
341 superClass: [
342 "Task"
343 ],
344 properties: [
345 {
346 name: "renderings",
347 type: "Rendering",
348 isMany: true
349 },
350 {
351 name: "implementation",
352 isAttr: true,
353 type: "String"
354 }
355 ]
356 },
357 {
358 name: "Rendering",
359 superClass: [
360 "BaseElement"
361 ]
362 },
363 {
364 name: "HumanPerformer",
365 superClass: [
366 "Performer"
367 ]
368 },
369 {
370 name: "PotentialOwner",
371 superClass: [
372 "HumanPerformer"
373 ]
374 },
375 {
376 name: "GlobalUserTask",
377 superClass: [
378 "GlobalTask"
379 ],
380 properties: [
381 {
382 name: "implementation",
383 isAttr: true,
384 type: "String"
385 },
386 {
387 name: "renderings",
388 type: "Rendering",
389 isMany: true
390 }
391 ]
392 },
393 {
394 name: "Gateway",
395 isAbstract: true,
396 superClass: [
397 "FlowNode"
398 ],
399 properties: [
400 {
401 name: "gatewayDirection",
402 type: "GatewayDirection",
403 "default": "Unspecified",
404 isAttr: true
405 }
406 ]
407 },
408 {
409 name: "EventBasedGateway",
410 superClass: [
411 "Gateway"
412 ],
413 properties: [
414 {
415 name: "instantiate",
416 "default": false,
417 isAttr: true,
418 type: "Boolean"
419 },
420 {
421 name: "eventGatewayType",
422 type: "EventBasedGatewayType",
423 isAttr: true,
424 "default": "Exclusive"
425 }
426 ]
427 },
428 {
429 name: "ComplexGateway",
430 superClass: [
431 "Gateway"
432 ],
433 properties: [
434 {
435 name: "activationCondition",
436 type: "Expression",
437 xml: {
438 serialize: "xsi:type"
439 }
440 },
441 {
442 name: "default",
443 type: "SequenceFlow",
444 isAttr: true,
445 isReference: true
446 }
447 ]
448 },
449 {
450 name: "ExclusiveGateway",
451 superClass: [
452 "Gateway"
453 ],
454 properties: [
455 {
456 name: "default",
457 type: "SequenceFlow",
458 isAttr: true,
459 isReference: true
460 }
461 ]
462 },
463 {
464 name: "InclusiveGateway",
465 superClass: [
466 "Gateway"
467 ],
468 properties: [
469 {
470 name: "default",
471 type: "SequenceFlow",
472 isAttr: true,
473 isReference: true
474 }
475 ]
476 },
477 {
478 name: "ParallelGateway",
479 superClass: [
480 "Gateway"
481 ]
482 },
483 {
484 name: "RootElement",
485 isAbstract: true,
486 superClass: [
487 "BaseElement"
488 ]
489 },
490 {
491 name: "Relationship",
492 superClass: [
493 "BaseElement"
494 ],
495 properties: [
496 {
497 name: "type",
498 isAttr: true,
499 type: "String"
500 },
501 {
502 name: "direction",
503 type: "RelationshipDirection",
504 isAttr: true
505 },
506 {
507 name: "source",
508 isMany: true,
509 isReference: true,
510 type: "Element"
511 },
512 {
513 name: "target",
514 isMany: true,
515 isReference: true,
516 type: "Element"
517 }
518 ]
519 },
520 {
521 name: "BaseElement",
522 isAbstract: true,
523 properties: [
524 {
525 name: "id",
526 isAttr: true,
527 type: "String",
528 isId: true
529 },
530 {
531 name: "documentation",
532 type: "Documentation",
533 isMany: true
534 },
535 {
536 name: "extensionDefinitions",
537 type: "ExtensionDefinition",
538 isMany: true,
539 isReference: true
540 },
541 {
542 name: "extensionElements",
543 type: "ExtensionElements"
544 }
545 ]
546 },
547 {
548 name: "Extension",
549 properties: [
550 {
551 name: "mustUnderstand",
552 "default": false,
553 isAttr: true,
554 type: "Boolean"
555 },
556 {
557 name: "definition",
558 type: "ExtensionDefinition",
559 isAttr: true,
560 isReference: true
561 }
562 ]
563 },
564 {
565 name: "ExtensionDefinition",
566 properties: [
567 {
568 name: "name",
569 isAttr: true,
570 type: "String"
571 },
572 {
573 name: "extensionAttributeDefinitions",
574 type: "ExtensionAttributeDefinition",
575 isMany: true
576 }
577 ]
578 },
579 {
580 name: "ExtensionAttributeDefinition",
581 properties: [
582 {
583 name: "name",
584 isAttr: true,
585 type: "String"
586 },
587 {
588 name: "type",
589 isAttr: true,
590 type: "String"
591 },
592 {
593 name: "isReference",
594 "default": false,
595 isAttr: true,
596 type: "Boolean"
597 },
598 {
599 name: "extensionDefinition",
600 type: "ExtensionDefinition",
601 isAttr: true,
602 isReference: true
603 }
604 ]
605 },
606 {
607 name: "ExtensionElements",
608 properties: [
609 {
610 name: "valueRef",
611 isAttr: true,
612 isReference: true,
613 type: "Element"
614 },
615 {
616 name: "values",
617 type: "Element",
618 isMany: true
619 },
620 {
621 name: "extensionAttributeDefinition",
622 type: "ExtensionAttributeDefinition",
623 isAttr: true,
624 isReference: true
625 }
626 ]
627 },
628 {
629 name: "Documentation",
630 superClass: [
631 "BaseElement"
632 ],
633 properties: [
634 {
635 name: "text",
636 type: "String",
637 isBody: true
638 },
639 {
640 name: "textFormat",
641 "default": "text/plain",
642 isAttr: true,
643 type: "String"
644 }
645 ]
646 },
647 {
648 name: "Event",
649 isAbstract: true,
650 superClass: [
651 "FlowNode",
652 "InteractionNode"
653 ],
654 properties: [
655 {
656 name: "properties",
657 type: "Property",
658 isMany: true
659 }
660 ]
661 },
662 {
663 name: "IntermediateCatchEvent",
664 superClass: [
665 "CatchEvent"
666 ]
667 },
668 {
669 name: "IntermediateThrowEvent",
670 superClass: [
671 "ThrowEvent"
672 ]
673 },
674 {
675 name: "EndEvent",
676 superClass: [
677 "ThrowEvent"
678 ]
679 },
680 {
681 name: "StartEvent",
682 superClass: [
683 "CatchEvent"
684 ],
685 properties: [
686 {
687 name: "isInterrupting",
688 "default": true,
689 isAttr: true,
690 type: "Boolean"
691 }
692 ]
693 },
694 {
695 name: "ThrowEvent",
696 isAbstract: true,
697 superClass: [
698 "Event"
699 ],
700 properties: [
701 {
702 name: "dataInputs",
703 type: "DataInput",
704 isMany: true
705 },
706 {
707 name: "dataInputAssociations",
708 type: "DataInputAssociation",
709 isMany: true
710 },
711 {
712 name: "inputSet",
713 type: "InputSet"
714 },
715 {
716 name: "eventDefinitions",
717 type: "EventDefinition",
718 isMany: true
719 },
720 {
721 name: "eventDefinitionRef",
722 type: "EventDefinition",
723 isMany: true,
724 isReference: true
725 }
726 ]
727 },
728 {
729 name: "CatchEvent",
730 isAbstract: true,
731 superClass: [
732 "Event"
733 ],
734 properties: [
735 {
736 name: "parallelMultiple",
737 isAttr: true,
738 type: "Boolean",
739 "default": false
740 },
741 {
742 name: "dataOutputs",
743 type: "DataOutput",
744 isMany: true
745 },
746 {
747 name: "dataOutputAssociations",
748 type: "DataOutputAssociation",
749 isMany: true
750 },
751 {
752 name: "outputSet",
753 type: "OutputSet"
754 },
755 {
756 name: "eventDefinitions",
757 type: "EventDefinition",
758 isMany: true
759 },
760 {
761 name: "eventDefinitionRef",
762 type: "EventDefinition",
763 isMany: true,
764 isReference: true
765 }
766 ]
767 },
768 {
769 name: "BoundaryEvent",
770 superClass: [
771 "CatchEvent"
772 ],
773 properties: [
774 {
775 name: "cancelActivity",
776 "default": true,
777 isAttr: true,
778 type: "Boolean"
779 },
780 {
781 name: "attachedToRef",
782 type: "Activity",
783 isAttr: true,
784 isReference: true
785 }
786 ]
787 },
788 {
789 name: "EventDefinition",
790 isAbstract: true,
791 superClass: [
792 "RootElement"
793 ]
794 },
795 {
796 name: "CancelEventDefinition",
797 superClass: [
798 "EventDefinition"
799 ]
800 },
801 {
802 name: "ErrorEventDefinition",
803 superClass: [
804 "EventDefinition"
805 ],
806 properties: [
807 {
808 name: "errorRef",
809 type: "Error",
810 isAttr: true,
811 isReference: true
812 }
813 ]
814 },
815 {
816 name: "TerminateEventDefinition",
817 superClass: [
818 "EventDefinition"
819 ]
820 },
821 {
822 name: "EscalationEventDefinition",
823 superClass: [
824 "EventDefinition"
825 ],
826 properties: [
827 {
828 name: "escalationRef",
829 type: "Escalation",
830 isAttr: true,
831 isReference: true
832 }
833 ]
834 },
835 {
836 name: "Escalation",
837 properties: [
838 {
839 name: "structureRef",
840 type: "ItemDefinition",
841 isAttr: true,
842 isReference: true
843 },
844 {
845 name: "name",
846 isAttr: true,
847 type: "String"
848 },
849 {
850 name: "escalationCode",
851 isAttr: true,
852 type: "String"
853 }
854 ],
855 superClass: [
856 "RootElement"
857 ]
858 },
859 {
860 name: "CompensateEventDefinition",
861 superClass: [
862 "EventDefinition"
863 ],
864 properties: [
865 {
866 name: "waitForCompletion",
867 isAttr: true,
868 type: "Boolean",
869 "default": true
870 },
871 {
872 name: "activityRef",
873 type: "Activity",
874 isAttr: true,
875 isReference: true
876 }
877 ]
878 },
879 {
880 name: "TimerEventDefinition",
881 superClass: [
882 "EventDefinition"
883 ],
884 properties: [
885 {
886 name: "timeDate",
887 type: "Expression",
888 xml: {
889 serialize: "xsi:type"
890 }
891 },
892 {
893 name: "timeCycle",
894 type: "Expression",
895 xml: {
896 serialize: "xsi:type"
897 }
898 },
899 {
900 name: "timeDuration",
901 type: "Expression",
902 xml: {
903 serialize: "xsi:type"
904 }
905 }
906 ]
907 },
908 {
909 name: "LinkEventDefinition",
910 superClass: [
911 "EventDefinition"
912 ],
913 properties: [
914 {
915 name: "name",
916 isAttr: true,
917 type: "String"
918 },
919 {
920 name: "target",
921 type: "LinkEventDefinition",
922 isAttr: true,
923 isReference: true
924 },
925 {
926 name: "source",
927 type: "LinkEventDefinition",
928 isMany: true,
929 isReference: true
930 }
931 ]
932 },
933 {
934 name: "MessageEventDefinition",
935 superClass: [
936 "EventDefinition"
937 ],
938 properties: [
939 {
940 name: "messageRef",
941 type: "Message",
942 isAttr: true,
943 isReference: true
944 },
945 {
946 name: "operationRef",
947 type: "Operation",
948 isAttr: true,
949 isReference: true
950 }
951 ]
952 },
953 {
954 name: "ConditionalEventDefinition",
955 superClass: [
956 "EventDefinition"
957 ],
958 properties: [
959 {
960 name: "condition",
961 type: "Expression",
962 xml: {
963 serialize: "xsi:type"
964 }
965 }
966 ]
967 },
968 {
969 name: "SignalEventDefinition",
970 superClass: [
971 "EventDefinition"
972 ],
973 properties: [
974 {
975 name: "signalRef",
976 type: "Signal",
977 isAttr: true,
978 isReference: true
979 }
980 ]
981 },
982 {
983 name: "Signal",
984 superClass: [
985 "RootElement"
986 ],
987 properties: [
988 {
989 name: "structureRef",
990 type: "ItemDefinition",
991 isAttr: true,
992 isReference: true
993 },
994 {
995 name: "name",
996 isAttr: true,
997 type: "String"
998 }
999 ]
1000 },
1001 {
1002 name: "ImplicitThrowEvent",
1003 superClass: [
1004 "ThrowEvent"
1005 ]
1006 },
1007 {
1008 name: "DataState",
1009 superClass: [
1010 "BaseElement"
1011 ],
1012 properties: [
1013 {
1014 name: "name",
1015 isAttr: true,
1016 type: "String"
1017 }
1018 ]
1019 },
1020 {
1021 name: "ItemAwareElement",
1022 superClass: [
1023 "BaseElement"
1024 ],
1025 properties: [
1026 {
1027 name: "itemSubjectRef",
1028 type: "ItemDefinition",
1029 isAttr: true,
1030 isReference: true
1031 },
1032 {
1033 name: "dataState",
1034 type: "DataState"
1035 }
1036 ]
1037 },
1038 {
1039 name: "DataAssociation",
1040 superClass: [
1041 "BaseElement"
1042 ],
1043 properties: [
1044 {
1045 name: "sourceRef",
1046 type: "ItemAwareElement",
1047 isMany: true,
1048 isReference: true
1049 },
1050 {
1051 name: "targetRef",
1052 type: "ItemAwareElement",
1053 isReference: true
1054 },
1055 {
1056 name: "transformation",
1057 type: "FormalExpression",
1058 xml: {
1059 serialize: "property"
1060 }
1061 },
1062 {
1063 name: "assignment",
1064 type: "Assignment",
1065 isMany: true
1066 }
1067 ]
1068 },
1069 {
1070 name: "DataInput",
1071 superClass: [
1072 "ItemAwareElement"
1073 ],
1074 properties: [
1075 {
1076 name: "name",
1077 isAttr: true,
1078 type: "String"
1079 },
1080 {
1081 name: "isCollection",
1082 "default": false,
1083 isAttr: true,
1084 type: "Boolean"
1085 },
1086 {
1087 name: "inputSetRef",
1088 type: "InputSet",
1089 isMany: true,
1090 isVirtual: true,
1091 isReference: true
1092 },
1093 {
1094 name: "inputSetWithOptional",
1095 type: "InputSet",
1096 isMany: true,
1097 isVirtual: true,
1098 isReference: true
1099 },
1100 {
1101 name: "inputSetWithWhileExecuting",
1102 type: "InputSet",
1103 isMany: true,
1104 isVirtual: true,
1105 isReference: true
1106 }
1107 ]
1108 },
1109 {
1110 name: "DataOutput",
1111 superClass: [
1112 "ItemAwareElement"
1113 ],
1114 properties: [
1115 {
1116 name: "name",
1117 isAttr: true,
1118 type: "String"
1119 },
1120 {
1121 name: "isCollection",
1122 "default": false,
1123 isAttr: true,
1124 type: "Boolean"
1125 },
1126 {
1127 name: "outputSetRef",
1128 type: "OutputSet",
1129 isMany: true,
1130 isVirtual: true,
1131 isReference: true
1132 },
1133 {
1134 name: "outputSetWithOptional",
1135 type: "OutputSet",
1136 isMany: true,
1137 isVirtual: true,
1138 isReference: true
1139 },
1140 {
1141 name: "outputSetWithWhileExecuting",
1142 type: "OutputSet",
1143 isMany: true,
1144 isVirtual: true,
1145 isReference: true
1146 }
1147 ]
1148 },
1149 {
1150 name: "InputSet",
1151 superClass: [
1152 "BaseElement"
1153 ],
1154 properties: [
1155 {
1156 name: "name",
1157 isAttr: true,
1158 type: "String"
1159 },
1160 {
1161 name: "dataInputRefs",
1162 type: "DataInput",
1163 isMany: true,
1164 isReference: true
1165 },
1166 {
1167 name: "optionalInputRefs",
1168 type: "DataInput",
1169 isMany: true,
1170 isReference: true
1171 },
1172 {
1173 name: "whileExecutingInputRefs",
1174 type: "DataInput",
1175 isMany: true,
1176 isReference: true
1177 },
1178 {
1179 name: "outputSetRefs",
1180 type: "OutputSet",
1181 isMany: true,
1182 isReference: true
1183 }
1184 ]
1185 },
1186 {
1187 name: "OutputSet",
1188 superClass: [
1189 "BaseElement"
1190 ],
1191 properties: [
1192 {
1193 name: "dataOutputRefs",
1194 type: "DataOutput",
1195 isMany: true,
1196 isReference: true
1197 },
1198 {
1199 name: "name",
1200 isAttr: true,
1201 type: "String"
1202 },
1203 {
1204 name: "inputSetRefs",
1205 type: "InputSet",
1206 isMany: true,
1207 isReference: true
1208 },
1209 {
1210 name: "optionalOutputRefs",
1211 type: "DataOutput",
1212 isMany: true,
1213 isReference: true
1214 },
1215 {
1216 name: "whileExecutingOutputRefs",
1217 type: "DataOutput",
1218 isMany: true,
1219 isReference: true
1220 }
1221 ]
1222 },
1223 {
1224 name: "Property",
1225 superClass: [
1226 "ItemAwareElement"
1227 ],
1228 properties: [
1229 {
1230 name: "name",
1231 isAttr: true,
1232 type: "String"
1233 }
1234 ]
1235 },
1236 {
1237 name: "DataInputAssociation",
1238 superClass: [
1239 "DataAssociation"
1240 ]
1241 },
1242 {
1243 name: "DataOutputAssociation",
1244 superClass: [
1245 "DataAssociation"
1246 ]
1247 },
1248 {
1249 name: "InputOutputSpecification",
1250 superClass: [
1251 "BaseElement"
1252 ],
1253 properties: [
1254 {
1255 name: "dataInputs",
1256 type: "DataInput",
1257 isMany: true
1258 },
1259 {
1260 name: "dataOutputs",
1261 type: "DataOutput",
1262 isMany: true
1263 },
1264 {
1265 name: "inputSets",
1266 type: "InputSet",
1267 isMany: true
1268 },
1269 {
1270 name: "outputSets",
1271 type: "OutputSet",
1272 isMany: true
1273 }
1274 ]
1275 },
1276 {
1277 name: "DataObject",
1278 superClass: [
1279 "FlowElement",
1280 "ItemAwareElement"
1281 ],
1282 properties: [
1283 {
1284 name: "isCollection",
1285 "default": false,
1286 isAttr: true,
1287 type: "Boolean"
1288 }
1289 ]
1290 },
1291 {
1292 name: "InputOutputBinding",
1293 properties: [
1294 {
1295 name: "inputDataRef",
1296 type: "InputSet",
1297 isAttr: true,
1298 isReference: true
1299 },
1300 {
1301 name: "outputDataRef",
1302 type: "OutputSet",
1303 isAttr: true,
1304 isReference: true
1305 },
1306 {
1307 name: "operationRef",
1308 type: "Operation",
1309 isAttr: true,
1310 isReference: true
1311 }
1312 ]
1313 },
1314 {
1315 name: "Assignment",
1316 superClass: [
1317 "BaseElement"
1318 ],
1319 properties: [
1320 {
1321 name: "from",
1322 type: "Expression",
1323 xml: {
1324 serialize: "xsi:type"
1325 }
1326 },
1327 {
1328 name: "to",
1329 type: "Expression",
1330 xml: {
1331 serialize: "xsi:type"
1332 }
1333 }
1334 ]
1335 },
1336 {
1337 name: "DataStore",
1338 superClass: [
1339 "RootElement",
1340 "ItemAwareElement"
1341 ],
1342 properties: [
1343 {
1344 name: "name",
1345 isAttr: true,
1346 type: "String"
1347 },
1348 {
1349 name: "capacity",
1350 isAttr: true,
1351 type: "Integer"
1352 },
1353 {
1354 name: "isUnlimited",
1355 "default": true,
1356 isAttr: true,
1357 type: "Boolean"
1358 }
1359 ]
1360 },
1361 {
1362 name: "DataStoreReference",
1363 superClass: [
1364 "ItemAwareElement",
1365 "FlowElement"
1366 ],
1367 properties: [
1368 {
1369 name: "dataStoreRef",
1370 type: "DataStore",
1371 isAttr: true,
1372 isReference: true
1373 }
1374 ]
1375 },
1376 {
1377 name: "DataObjectReference",
1378 superClass: [
1379 "ItemAwareElement",
1380 "FlowElement"
1381 ],
1382 properties: [
1383 {
1384 name: "dataObjectRef",
1385 type: "DataObject",
1386 isAttr: true,
1387 isReference: true
1388 }
1389 ]
1390 },
1391 {
1392 name: "ConversationLink",
1393 superClass: [
1394 "BaseElement"
1395 ],
1396 properties: [
1397 {
1398 name: "sourceRef",
1399 type: "InteractionNode",
1400 isAttr: true,
1401 isReference: true
1402 },
1403 {
1404 name: "targetRef",
1405 type: "InteractionNode",
1406 isAttr: true,
1407 isReference: true
1408 },
1409 {
1410 name: "name",
1411 isAttr: true,
1412 type: "String"
1413 }
1414 ]
1415 },
1416 {
1417 name: "ConversationAssociation",
1418 superClass: [
1419 "BaseElement"
1420 ],
1421 properties: [
1422 {
1423 name: "innerConversationNodeRef",
1424 type: "ConversationNode",
1425 isAttr: true,
1426 isReference: true
1427 },
1428 {
1429 name: "outerConversationNodeRef",
1430 type: "ConversationNode",
1431 isAttr: true,
1432 isReference: true
1433 }
1434 ]
1435 },
1436 {
1437 name: "CallConversation",
1438 superClass: [
1439 "ConversationNode"
1440 ],
1441 properties: [
1442 {
1443 name: "calledCollaborationRef",
1444 type: "Collaboration",
1445 isAttr: true,
1446 isReference: true
1447 },
1448 {
1449 name: "participantAssociations",
1450 type: "ParticipantAssociation",
1451 isMany: true
1452 }
1453 ]
1454 },
1455 {
1456 name: "Conversation",
1457 superClass: [
1458 "ConversationNode"
1459 ]
1460 },
1461 {
1462 name: "SubConversation",
1463 superClass: [
1464 "ConversationNode"
1465 ],
1466 properties: [
1467 {
1468 name: "conversationNodes",
1469 type: "ConversationNode",
1470 isMany: true
1471 }
1472 ]
1473 },
1474 {
1475 name: "ConversationNode",
1476 isAbstract: true,
1477 superClass: [
1478 "InteractionNode",
1479 "BaseElement"
1480 ],
1481 properties: [
1482 {
1483 name: "name",
1484 isAttr: true,
1485 type: "String"
1486 },
1487 {
1488 name: "participantRef",
1489 type: "Participant",
1490 isMany: true,
1491 isReference: true
1492 },
1493 {
1494 name: "messageFlowRefs",
1495 type: "MessageFlow",
1496 isMany: true,
1497 isReference: true
1498 },
1499 {
1500 name: "correlationKeys",
1501 type: "CorrelationKey",
1502 isMany: true
1503 }
1504 ]
1505 },
1506 {
1507 name: "GlobalConversation",
1508 superClass: [
1509 "Collaboration"
1510 ]
1511 },
1512 {
1513 name: "PartnerEntity",
1514 superClass: [
1515 "RootElement"
1516 ],
1517 properties: [
1518 {
1519 name: "name",
1520 isAttr: true,
1521 type: "String"
1522 },
1523 {
1524 name: "participantRef",
1525 type: "Participant",
1526 isMany: true,
1527 isReference: true
1528 }
1529 ]
1530 },
1531 {
1532 name: "PartnerRole",
1533 superClass: [
1534 "RootElement"
1535 ],
1536 properties: [
1537 {
1538 name: "name",
1539 isAttr: true,
1540 type: "String"
1541 },
1542 {
1543 name: "participantRef",
1544 type: "Participant",
1545 isMany: true,
1546 isReference: true
1547 }
1548 ]
1549 },
1550 {
1551 name: "CorrelationProperty",
1552 superClass: [
1553 "RootElement"
1554 ],
1555 properties: [
1556 {
1557 name: "correlationPropertyRetrievalExpression",
1558 type: "CorrelationPropertyRetrievalExpression",
1559 isMany: true
1560 },
1561 {
1562 name: "name",
1563 isAttr: true,
1564 type: "String"
1565 },
1566 {
1567 name: "type",
1568 type: "ItemDefinition",
1569 isAttr: true,
1570 isReference: true
1571 }
1572 ]
1573 },
1574 {
1575 name: "Error",
1576 superClass: [
1577 "RootElement"
1578 ],
1579 properties: [
1580 {
1581 name: "structureRef",
1582 type: "ItemDefinition",
1583 isAttr: true,
1584 isReference: true
1585 },
1586 {
1587 name: "name",
1588 isAttr: true,
1589 type: "String"
1590 },
1591 {
1592 name: "errorCode",
1593 isAttr: true,
1594 type: "String"
1595 }
1596 ]
1597 },
1598 {
1599 name: "CorrelationKey",
1600 superClass: [
1601 "BaseElement"
1602 ],
1603 properties: [
1604 {
1605 name: "correlationPropertyRef",
1606 type: "CorrelationProperty",
1607 isMany: true,
1608 isReference: true
1609 },
1610 {
1611 name: "name",
1612 isAttr: true,
1613 type: "String"
1614 }
1615 ]
1616 },
1617 {
1618 name: "Expression",
1619 superClass: [
1620 "BaseElement"
1621 ],
1622 isAbstract: false,
1623 properties: [
1624 {
1625 name: "body",
1626 isBody: true,
1627 type: "String"
1628 }
1629 ]
1630 },
1631 {
1632 name: "FormalExpression",
1633 superClass: [
1634 "Expression"
1635 ],
1636 properties: [
1637 {
1638 name: "language",
1639 isAttr: true,
1640 type: "String"
1641 },
1642 {
1643 name: "evaluatesToTypeRef",
1644 type: "ItemDefinition",
1645 isAttr: true,
1646 isReference: true
1647 }
1648 ]
1649 },
1650 {
1651 name: "Message",
1652 superClass: [
1653 "RootElement"
1654 ],
1655 properties: [
1656 {
1657 name: "name",
1658 isAttr: true,
1659 type: "String"
1660 },
1661 {
1662 name: "itemRef",
1663 type: "ItemDefinition",
1664 isAttr: true,
1665 isReference: true
1666 }
1667 ]
1668 },
1669 {
1670 name: "ItemDefinition",
1671 superClass: [
1672 "RootElement"
1673 ],
1674 properties: [
1675 {
1676 name: "itemKind",
1677 type: "ItemKind",
1678 isAttr: true
1679 },
1680 {
1681 name: "structureRef",
1682 isAttr: true,
1683 type: "String"
1684 },
1685 {
1686 name: "isCollection",
1687 "default": false,
1688 isAttr: true,
1689 type: "Boolean"
1690 },
1691 {
1692 name: "import",
1693 type: "Import",
1694 isAttr: true,
1695 isReference: true
1696 }
1697 ]
1698 },
1699 {
1700 name: "FlowElement",
1701 isAbstract: true,
1702 superClass: [
1703 "BaseElement"
1704 ],
1705 properties: [
1706 {
1707 name: "name",
1708 isAttr: true,
1709 type: "String"
1710 },
1711 {
1712 name: "auditing",
1713 type: "Auditing"
1714 },
1715 {
1716 name: "monitoring",
1717 type: "Monitoring"
1718 },
1719 {
1720 name: "categoryValueRef",
1721 type: "CategoryValue",
1722 isMany: true,
1723 isReference: true
1724 }
1725 ]
1726 },
1727 {
1728 name: "SequenceFlow",
1729 superClass: [
1730 "FlowElement"
1731 ],
1732 properties: [
1733 {
1734 name: "isImmediate",
1735 isAttr: true,
1736 type: "Boolean"
1737 },
1738 {
1739 name: "conditionExpression",
1740 type: "Expression",
1741 xml: {
1742 serialize: "xsi:type"
1743 }
1744 },
1745 {
1746 name: "sourceRef",
1747 type: "FlowNode",
1748 isAttr: true,
1749 isReference: true
1750 },
1751 {
1752 name: "targetRef",
1753 type: "FlowNode",
1754 isAttr: true,
1755 isReference: true
1756 }
1757 ]
1758 },
1759 {
1760 name: "FlowElementsContainer",
1761 isAbstract: true,
1762 superClass: [
1763 "BaseElement"
1764 ],
1765 properties: [
1766 {
1767 name: "laneSets",
1768 type: "LaneSet",
1769 isMany: true
1770 },
1771 {
1772 name: "flowElements",
1773 type: "FlowElement",
1774 isMany: true
1775 }
1776 ]
1777 },
1778 {
1779 name: "CallableElement",
1780 isAbstract: true,
1781 superClass: [
1782 "RootElement"
1783 ],
1784 properties: [
1785 {
1786 name: "name",
1787 isAttr: true,
1788 type: "String"
1789 },
1790 {
1791 name: "ioSpecification",
1792 type: "InputOutputSpecification",
1793 xml: {
1794 serialize: "property"
1795 }
1796 },
1797 {
1798 name: "supportedInterfaceRef",
1799 type: "Interface",
1800 isMany: true,
1801 isReference: true
1802 },
1803 {
1804 name: "ioBinding",
1805 type: "InputOutputBinding",
1806 isMany: true,
1807 xml: {
1808 serialize: "property"
1809 }
1810 }
1811 ]
1812 },
1813 {
1814 name: "FlowNode",
1815 isAbstract: true,
1816 superClass: [
1817 "FlowElement"
1818 ],
1819 properties: [
1820 {
1821 name: "incoming",
1822 type: "SequenceFlow",
1823 isMany: true,
1824 isReference: true
1825 },
1826 {
1827 name: "outgoing",
1828 type: "SequenceFlow",
1829 isMany: true,
1830 isReference: true
1831 },
1832 {
1833 name: "lanes",
1834 type: "Lane",
1835 isMany: true,
1836 isVirtual: true,
1837 isReference: true
1838 }
1839 ]
1840 },
1841 {
1842 name: "CorrelationPropertyRetrievalExpression",
1843 superClass: [
1844 "BaseElement"
1845 ],
1846 properties: [
1847 {
1848 name: "messagePath",
1849 type: "FormalExpression"
1850 },
1851 {
1852 name: "messageRef",
1853 type: "Message",
1854 isAttr: true,
1855 isReference: true
1856 }
1857 ]
1858 },
1859 {
1860 name: "CorrelationPropertyBinding",
1861 superClass: [
1862 "BaseElement"
1863 ],
1864 properties: [
1865 {
1866 name: "dataPath",
1867 type: "FormalExpression"
1868 },
1869 {
1870 name: "correlationPropertyRef",
1871 type: "CorrelationProperty",
1872 isAttr: true,
1873 isReference: true
1874 }
1875 ]
1876 },
1877 {
1878 name: "Resource",
1879 superClass: [
1880 "RootElement"
1881 ],
1882 properties: [
1883 {
1884 name: "name",
1885 isAttr: true,
1886 type: "String"
1887 },
1888 {
1889 name: "resourceParameters",
1890 type: "ResourceParameter",
1891 isMany: true
1892 }
1893 ]
1894 },
1895 {
1896 name: "ResourceParameter",
1897 superClass: [
1898 "BaseElement"
1899 ],
1900 properties: [
1901 {
1902 name: "name",
1903 isAttr: true,
1904 type: "String"
1905 },
1906 {
1907 name: "isRequired",
1908 isAttr: true,
1909 type: "Boolean"
1910 },
1911 {
1912 name: "type",
1913 type: "ItemDefinition",
1914 isAttr: true,
1915 isReference: true
1916 }
1917 ]
1918 },
1919 {
1920 name: "CorrelationSubscription",
1921 superClass: [
1922 "BaseElement"
1923 ],
1924 properties: [
1925 {
1926 name: "correlationKeyRef",
1927 type: "CorrelationKey",
1928 isAttr: true,
1929 isReference: true
1930 },
1931 {
1932 name: "correlationPropertyBinding",
1933 type: "CorrelationPropertyBinding",
1934 isMany: true
1935 }
1936 ]
1937 },
1938 {
1939 name: "MessageFlow",
1940 superClass: [
1941 "BaseElement"
1942 ],
1943 properties: [
1944 {
1945 name: "name",
1946 isAttr: true,
1947 type: "String"
1948 },
1949 {
1950 name: "sourceRef",
1951 type: "InteractionNode",
1952 isAttr: true,
1953 isReference: true
1954 },
1955 {
1956 name: "targetRef",
1957 type: "InteractionNode",
1958 isAttr: true,
1959 isReference: true
1960 },
1961 {
1962 name: "messageRef",
1963 type: "Message",
1964 isAttr: true,
1965 isReference: true
1966 }
1967 ]
1968 },
1969 {
1970 name: "MessageFlowAssociation",
1971 superClass: [
1972 "BaseElement"
1973 ],
1974 properties: [
1975 {
1976 name: "innerMessageFlowRef",
1977 type: "MessageFlow",
1978 isAttr: true,
1979 isReference: true
1980 },
1981 {
1982 name: "outerMessageFlowRef",
1983 type: "MessageFlow",
1984 isAttr: true,
1985 isReference: true
1986 }
1987 ]
1988 },
1989 {
1990 name: "InteractionNode",
1991 isAbstract: true,
1992 properties: [
1993 {
1994 name: "incomingConversationLinks",
1995 type: "ConversationLink",
1996 isMany: true,
1997 isVirtual: true,
1998 isReference: true
1999 },
2000 {
2001 name: "outgoingConversationLinks",
2002 type: "ConversationLink",
2003 isMany: true,
2004 isVirtual: true,
2005 isReference: true
2006 }
2007 ]
2008 },
2009 {
2010 name: "Participant",
2011 superClass: [
2012 "InteractionNode",
2013 "BaseElement"
2014 ],
2015 properties: [
2016 {
2017 name: "name",
2018 isAttr: true,
2019 type: "String"
2020 },
2021 {
2022 name: "interfaceRef",
2023 type: "Interface",
2024 isMany: true,
2025 isReference: true
2026 },
2027 {
2028 name: "participantMultiplicity",
2029 type: "ParticipantMultiplicity"
2030 },
2031 {
2032 name: "endPointRefs",
2033 type: "EndPoint",
2034 isMany: true,
2035 isReference: true
2036 },
2037 {
2038 name: "processRef",
2039 type: "Process",
2040 isAttr: true,
2041 isReference: true
2042 }
2043 ]
2044 },
2045 {
2046 name: "ParticipantAssociation",
2047 superClass: [
2048 "BaseElement"
2049 ],
2050 properties: [
2051 {
2052 name: "innerParticipantRef",
2053 type: "Participant",
2054 isAttr: true,
2055 isReference: true
2056 },
2057 {
2058 name: "outerParticipantRef",
2059 type: "Participant",
2060 isAttr: true,
2061 isReference: true
2062 }
2063 ]
2064 },
2065 {
2066 name: "ParticipantMultiplicity",
2067 properties: [
2068 {
2069 name: "minimum",
2070 "default": 0,
2071 isAttr: true,
2072 type: "Integer"
2073 },
2074 {
2075 name: "maximum",
2076 "default": 1,
2077 isAttr: true,
2078 type: "Integer"
2079 }
2080 ],
2081 superClass: [
2082 "BaseElement"
2083 ]
2084 },
2085 {
2086 name: "Collaboration",
2087 superClass: [
2088 "RootElement"
2089 ],
2090 properties: [
2091 {
2092 name: "name",
2093 isAttr: true,
2094 type: "String"
2095 },
2096 {
2097 name: "isClosed",
2098 isAttr: true,
2099 type: "Boolean"
2100 },
2101 {
2102 name: "participants",
2103 type: "Participant",
2104 isMany: true
2105 },
2106 {
2107 name: "messageFlows",
2108 type: "MessageFlow",
2109 isMany: true
2110 },
2111 {
2112 name: "artifacts",
2113 type: "Artifact",
2114 isMany: true
2115 },
2116 {
2117 name: "conversations",
2118 type: "ConversationNode",
2119 isMany: true
2120 },
2121 {
2122 name: "conversationAssociations",
2123 type: "ConversationAssociation"
2124 },
2125 {
2126 name: "participantAssociations",
2127 type: "ParticipantAssociation",
2128 isMany: true
2129 },
2130 {
2131 name: "messageFlowAssociations",
2132 type: "MessageFlowAssociation",
2133 isMany: true
2134 },
2135 {
2136 name: "correlationKeys",
2137 type: "CorrelationKey",
2138 isMany: true
2139 },
2140 {
2141 name: "choreographyRef",
2142 type: "Choreography",
2143 isMany: true,
2144 isReference: true
2145 },
2146 {
2147 name: "conversationLinks",
2148 type: "ConversationLink",
2149 isMany: true
2150 }
2151 ]
2152 },
2153 {
2154 name: "ChoreographyActivity",
2155 isAbstract: true,
2156 superClass: [
2157 "FlowNode"
2158 ],
2159 properties: [
2160 {
2161 name: "participantRef",
2162 type: "Participant",
2163 isMany: true,
2164 isReference: true
2165 },
2166 {
2167 name: "initiatingParticipantRef",
2168 type: "Participant",
2169 isAttr: true,
2170 isReference: true
2171 },
2172 {
2173 name: "correlationKeys",
2174 type: "CorrelationKey",
2175 isMany: true
2176 },
2177 {
2178 name: "loopType",
2179 type: "ChoreographyLoopType",
2180 "default": "None",
2181 isAttr: true
2182 }
2183 ]
2184 },
2185 {
2186 name: "CallChoreography",
2187 superClass: [
2188 "ChoreographyActivity"
2189 ],
2190 properties: [
2191 {
2192 name: "calledChoreographyRef",
2193 type: "Choreography",
2194 isAttr: true,
2195 isReference: true
2196 },
2197 {
2198 name: "participantAssociations",
2199 type: "ParticipantAssociation",
2200 isMany: true
2201 }
2202 ]
2203 },
2204 {
2205 name: "SubChoreography",
2206 superClass: [
2207 "ChoreographyActivity",
2208 "FlowElementsContainer"
2209 ],
2210 properties: [
2211 {
2212 name: "artifacts",
2213 type: "Artifact",
2214 isMany: true
2215 }
2216 ]
2217 },
2218 {
2219 name: "ChoreographyTask",
2220 superClass: [
2221 "ChoreographyActivity"
2222 ],
2223 properties: [
2224 {
2225 name: "messageFlowRef",
2226 type: "MessageFlow",
2227 isMany: true,
2228 isReference: true
2229 }
2230 ]
2231 },
2232 {
2233 name: "Choreography",
2234 superClass: [
2235 "Collaboration",
2236 "FlowElementsContainer"
2237 ]
2238 },
2239 {
2240 name: "GlobalChoreographyTask",
2241 superClass: [
2242 "Choreography"
2243 ],
2244 properties: [
2245 {
2246 name: "initiatingParticipantRef",
2247 type: "Participant",
2248 isAttr: true,
2249 isReference: true
2250 }
2251 ]
2252 },
2253 {
2254 name: "TextAnnotation",
2255 superClass: [
2256 "Artifact"
2257 ],
2258 properties: [
2259 {
2260 name: "text",
2261 type: "String"
2262 },
2263 {
2264 name: "textFormat",
2265 "default": "text/plain",
2266 isAttr: true,
2267 type: "String"
2268 }
2269 ]
2270 },
2271 {
2272 name: "Group",
2273 superClass: [
2274 "Artifact"
2275 ],
2276 properties: [
2277 {
2278 name: "categoryValueRef",
2279 type: "CategoryValue",
2280 isAttr: true,
2281 isReference: true
2282 }
2283 ]
2284 },
2285 {
2286 name: "Association",
2287 superClass: [
2288 "Artifact"
2289 ],
2290 properties: [
2291 {
2292 name: "associationDirection",
2293 type: "AssociationDirection",
2294 isAttr: true
2295 },
2296 {
2297 name: "sourceRef",
2298 type: "BaseElement",
2299 isAttr: true,
2300 isReference: true
2301 },
2302 {
2303 name: "targetRef",
2304 type: "BaseElement",
2305 isAttr: true,
2306 isReference: true
2307 }
2308 ]
2309 },
2310 {
2311 name: "Category",
2312 superClass: [
2313 "RootElement"
2314 ],
2315 properties: [
2316 {
2317 name: "categoryValue",
2318 type: "CategoryValue",
2319 isMany: true
2320 },
2321 {
2322 name: "name",
2323 isAttr: true,
2324 type: "String"
2325 }
2326 ]
2327 },
2328 {
2329 name: "Artifact",
2330 isAbstract: true,
2331 superClass: [
2332 "BaseElement"
2333 ]
2334 },
2335 {
2336 name: "CategoryValue",
2337 superClass: [
2338 "BaseElement"
2339 ],
2340 properties: [
2341 {
2342 name: "categorizedFlowElements",
2343 type: "FlowElement",
2344 isMany: true,
2345 isVirtual: true,
2346 isReference: true
2347 },
2348 {
2349 name: "value",
2350 isAttr: true,
2351 type: "String"
2352 }
2353 ]
2354 },
2355 {
2356 name: "Activity",
2357 isAbstract: true,
2358 superClass: [
2359 "FlowNode"
2360 ],
2361 properties: [
2362 {
2363 name: "isForCompensation",
2364 "default": false,
2365 isAttr: true,
2366 type: "Boolean"
2367 },
2368 {
2369 name: "default",
2370 type: "SequenceFlow",
2371 isAttr: true,
2372 isReference: true
2373 },
2374 {
2375 name: "ioSpecification",
2376 type: "InputOutputSpecification",
2377 xml: {
2378 serialize: "property"
2379 }
2380 },
2381 {
2382 name: "boundaryEventRefs",
2383 type: "BoundaryEvent",
2384 isMany: true,
2385 isReference: true
2386 },
2387 {
2388 name: "properties",
2389 type: "Property",
2390 isMany: true
2391 },
2392 {
2393 name: "dataInputAssociations",
2394 type: "DataInputAssociation",
2395 isMany: true
2396 },
2397 {
2398 name: "dataOutputAssociations",
2399 type: "DataOutputAssociation",
2400 isMany: true
2401 },
2402 {
2403 name: "startQuantity",
2404 "default": 1,
2405 isAttr: true,
2406 type: "Integer"
2407 },
2408 {
2409 name: "resources",
2410 type: "ResourceRole",
2411 isMany: true
2412 },
2413 {
2414 name: "completionQuantity",
2415 "default": 1,
2416 isAttr: true,
2417 type: "Integer"
2418 },
2419 {
2420 name: "loopCharacteristics",
2421 type: "LoopCharacteristics"
2422 }
2423 ]
2424 },
2425 {
2426 name: "ServiceTask",
2427 superClass: [
2428 "Task"
2429 ],
2430 properties: [
2431 {
2432 name: "implementation",
2433 isAttr: true,
2434 type: "String"
2435 },
2436 {
2437 name: "operationRef",
2438 type: "Operation",
2439 isAttr: true,
2440 isReference: true
2441 }
2442 ]
2443 },
2444 {
2445 name: "SubProcess",
2446 superClass: [
2447 "Activity",
2448 "FlowElementsContainer",
2449 "InteractionNode"
2450 ],
2451 properties: [
2452 {
2453 name: "triggeredByEvent",
2454 "default": false,
2455 isAttr: true,
2456 type: "Boolean"
2457 },
2458 {
2459 name: "artifacts",
2460 type: "Artifact",
2461 isMany: true
2462 }
2463 ]
2464 },
2465 {
2466 name: "LoopCharacteristics",
2467 isAbstract: true,
2468 superClass: [
2469 "BaseElement"
2470 ]
2471 },
2472 {
2473 name: "MultiInstanceLoopCharacteristics",
2474 superClass: [
2475 "LoopCharacteristics"
2476 ],
2477 properties: [
2478 {
2479 name: "isSequential",
2480 "default": false,
2481 isAttr: true,
2482 type: "Boolean"
2483 },
2484 {
2485 name: "behavior",
2486 type: "MultiInstanceBehavior",
2487 "default": "All",
2488 isAttr: true
2489 },
2490 {
2491 name: "loopCardinality",
2492 type: "Expression",
2493 xml: {
2494 serialize: "xsi:type"
2495 }
2496 },
2497 {
2498 name: "loopDataInputRef",
2499 type: "ItemAwareElement",
2500 isReference: true
2501 },
2502 {
2503 name: "loopDataOutputRef",
2504 type: "ItemAwareElement",
2505 isReference: true
2506 },
2507 {
2508 name: "inputDataItem",
2509 type: "DataInput",
2510 xml: {
2511 serialize: "property"
2512 }
2513 },
2514 {
2515 name: "outputDataItem",
2516 type: "DataOutput",
2517 xml: {
2518 serialize: "property"
2519 }
2520 },
2521 {
2522 name: "complexBehaviorDefinition",
2523 type: "ComplexBehaviorDefinition",
2524 isMany: true
2525 },
2526 {
2527 name: "completionCondition",
2528 type: "Expression",
2529 xml: {
2530 serialize: "xsi:type"
2531 }
2532 },
2533 {
2534 name: "oneBehaviorEventRef",
2535 type: "EventDefinition",
2536 isAttr: true,
2537 isReference: true
2538 },
2539 {
2540 name: "noneBehaviorEventRef",
2541 type: "EventDefinition",
2542 isAttr: true,
2543 isReference: true
2544 }
2545 ]
2546 },
2547 {
2548 name: "StandardLoopCharacteristics",
2549 superClass: [
2550 "LoopCharacteristics"
2551 ],
2552 properties: [
2553 {
2554 name: "testBefore",
2555 "default": false,
2556 isAttr: true,
2557 type: "Boolean"
2558 },
2559 {
2560 name: "loopCondition",
2561 type: "Expression",
2562 xml: {
2563 serialize: "xsi:type"
2564 }
2565 },
2566 {
2567 name: "loopMaximum",
2568 type: "Integer",
2569 isAttr: true
2570 }
2571 ]
2572 },
2573 {
2574 name: "CallActivity",
2575 superClass: [
2576 "Activity",
2577 "InteractionNode"
2578 ],
2579 properties: [
2580 {
2581 name: "calledElement",
2582 type: "String",
2583 isAttr: true
2584 }
2585 ]
2586 },
2587 {
2588 name: "Task",
2589 superClass: [
2590 "Activity",
2591 "InteractionNode"
2592 ]
2593 },
2594 {
2595 name: "SendTask",
2596 superClass: [
2597 "Task"
2598 ],
2599 properties: [
2600 {
2601 name: "implementation",
2602 isAttr: true,
2603 type: "String"
2604 },
2605 {
2606 name: "operationRef",
2607 type: "Operation",
2608 isAttr: true,
2609 isReference: true
2610 },
2611 {
2612 name: "messageRef",
2613 type: "Message",
2614 isAttr: true,
2615 isReference: true
2616 }
2617 ]
2618 },
2619 {
2620 name: "ReceiveTask",
2621 superClass: [
2622 "Task"
2623 ],
2624 properties: [
2625 {
2626 name: "implementation",
2627 isAttr: true,
2628 type: "String"
2629 },
2630 {
2631 name: "instantiate",
2632 "default": false,
2633 isAttr: true,
2634 type: "Boolean"
2635 },
2636 {
2637 name: "operationRef",
2638 type: "Operation",
2639 isAttr: true,
2640 isReference: true
2641 },
2642 {
2643 name: "messageRef",
2644 type: "Message",
2645 isAttr: true,
2646 isReference: true
2647 }
2648 ]
2649 },
2650 {
2651 name: "ScriptTask",
2652 superClass: [
2653 "Task"
2654 ],
2655 properties: [
2656 {
2657 name: "scriptFormat",
2658 isAttr: true,
2659 type: "String"
2660 },
2661 {
2662 name: "script",
2663 type: "String"
2664 }
2665 ]
2666 },
2667 {
2668 name: "BusinessRuleTask",
2669 superClass: [
2670 "Task"
2671 ],
2672 properties: [
2673 {
2674 name: "implementation",
2675 isAttr: true,
2676 type: "String"
2677 }
2678 ]
2679 },
2680 {
2681 name: "AdHocSubProcess",
2682 superClass: [
2683 "SubProcess"
2684 ],
2685 properties: [
2686 {
2687 name: "completionCondition",
2688 type: "Expression",
2689 xml: {
2690 serialize: "xsi:type"
2691 }
2692 },
2693 {
2694 name: "ordering",
2695 type: "AdHocOrdering",
2696 isAttr: true
2697 },
2698 {
2699 name: "cancelRemainingInstances",
2700 "default": true,
2701 isAttr: true,
2702 type: "Boolean"
2703 }
2704 ]
2705 },
2706 {
2707 name: "Transaction",
2708 superClass: [
2709 "SubProcess"
2710 ],
2711 properties: [
2712 {
2713 name: "protocol",
2714 isAttr: true,
2715 type: "String"
2716 },
2717 {
2718 name: "method",
2719 isAttr: true,
2720 type: "String"
2721 }
2722 ]
2723 },
2724 {
2725 name: "GlobalScriptTask",
2726 superClass: [
2727 "GlobalTask"
2728 ],
2729 properties: [
2730 {
2731 name: "scriptLanguage",
2732 isAttr: true,
2733 type: "String"
2734 },
2735 {
2736 name: "script",
2737 isAttr: true,
2738 type: "String"
2739 }
2740 ]
2741 },
2742 {
2743 name: "GlobalBusinessRuleTask",
2744 superClass: [
2745 "GlobalTask"
2746 ],
2747 properties: [
2748 {
2749 name: "implementation",
2750 isAttr: true,
2751 type: "String"
2752 }
2753 ]
2754 },
2755 {
2756 name: "ComplexBehaviorDefinition",
2757 superClass: [
2758 "BaseElement"
2759 ],
2760 properties: [
2761 {
2762 name: "condition",
2763 type: "FormalExpression"
2764 },
2765 {
2766 name: "event",
2767 type: "ImplicitThrowEvent"
2768 }
2769 ]
2770 },
2771 {
2772 name: "ResourceRole",
2773 superClass: [
2774 "BaseElement"
2775 ],
2776 properties: [
2777 {
2778 name: "resourceRef",
2779 type: "Resource",
2780 isReference: true
2781 },
2782 {
2783 name: "resourceParameterBindings",
2784 type: "ResourceParameterBinding",
2785 isMany: true
2786 },
2787 {
2788 name: "resourceAssignmentExpression",
2789 type: "ResourceAssignmentExpression"
2790 },
2791 {
2792 name: "name",
2793 isAttr: true,
2794 type: "String"
2795 }
2796 ]
2797 },
2798 {
2799 name: "ResourceParameterBinding",
2800 properties: [
2801 {
2802 name: "expression",
2803 type: "Expression",
2804 xml: {
2805 serialize: "xsi:type"
2806 }
2807 },
2808 {
2809 name: "parameterRef",
2810 type: "ResourceParameter",
2811 isAttr: true,
2812 isReference: true
2813 }
2814 ],
2815 superClass: [
2816 "BaseElement"
2817 ]
2818 },
2819 {
2820 name: "ResourceAssignmentExpression",
2821 properties: [
2822 {
2823 name: "expression",
2824 type: "Expression",
2825 xml: {
2826 serialize: "xsi:type"
2827 }
2828 }
2829 ],
2830 superClass: [
2831 "BaseElement"
2832 ]
2833 },
2834 {
2835 name: "Import",
2836 properties: [
2837 {
2838 name: "importType",
2839 isAttr: true,
2840 type: "String"
2841 },
2842 {
2843 name: "location",
2844 isAttr: true,
2845 type: "String"
2846 },
2847 {
2848 name: "namespace",
2849 isAttr: true,
2850 type: "String"
2851 }
2852 ]
2853 },
2854 {
2855 name: "Definitions",
2856 superClass: [
2857 "BaseElement"
2858 ],
2859 properties: [
2860 {
2861 name: "name",
2862 isAttr: true,
2863 type: "String"
2864 },
2865 {
2866 name: "targetNamespace",
2867 isAttr: true,
2868 type: "String"
2869 },
2870 {
2871 name: "expressionLanguage",
2872 "default": "http://www.w3.org/1999/XPath",
2873 isAttr: true,
2874 type: "String"
2875 },
2876 {
2877 name: "typeLanguage",
2878 "default": "http://www.w3.org/2001/XMLSchema",
2879 isAttr: true,
2880 type: "String"
2881 },
2882 {
2883 name: "imports",
2884 type: "Import",
2885 isMany: true
2886 },
2887 {
2888 name: "extensions",
2889 type: "Extension",
2890 isMany: true
2891 },
2892 {
2893 name: "rootElements",
2894 type: "RootElement",
2895 isMany: true
2896 },
2897 {
2898 name: "diagrams",
2899 isMany: true,
2900 type: "bpmndi:BPMNDiagram"
2901 },
2902 {
2903 name: "exporter",
2904 isAttr: true,
2905 type: "String"
2906 },
2907 {
2908 name: "relationships",
2909 type: "Relationship",
2910 isMany: true
2911 },
2912 {
2913 name: "exporterVersion",
2914 isAttr: true,
2915 type: "String"
2916 }
2917 ]
2918 }
2919];
2920var enumerations$3 = [
2921 {
2922 name: "ProcessType",
2923 literalValues: [
2924 {
2925 name: "None"
2926 },
2927 {
2928 name: "Public"
2929 },
2930 {
2931 name: "Private"
2932 }
2933 ]
2934 },
2935 {
2936 name: "GatewayDirection",
2937 literalValues: [
2938 {
2939 name: "Unspecified"
2940 },
2941 {
2942 name: "Converging"
2943 },
2944 {
2945 name: "Diverging"
2946 },
2947 {
2948 name: "Mixed"
2949 }
2950 ]
2951 },
2952 {
2953 name: "EventBasedGatewayType",
2954 literalValues: [
2955 {
2956 name: "Parallel"
2957 },
2958 {
2959 name: "Exclusive"
2960 }
2961 ]
2962 },
2963 {
2964 name: "RelationshipDirection",
2965 literalValues: [
2966 {
2967 name: "None"
2968 },
2969 {
2970 name: "Forward"
2971 },
2972 {
2973 name: "Backward"
2974 },
2975 {
2976 name: "Both"
2977 }
2978 ]
2979 },
2980 {
2981 name: "ItemKind",
2982 literalValues: [
2983 {
2984 name: "Physical"
2985 },
2986 {
2987 name: "Information"
2988 }
2989 ]
2990 },
2991 {
2992 name: "ChoreographyLoopType",
2993 literalValues: [
2994 {
2995 name: "None"
2996 },
2997 {
2998 name: "Standard"
2999 },
3000 {
3001 name: "MultiInstanceSequential"
3002 },
3003 {
3004 name: "MultiInstanceParallel"
3005 }
3006 ]
3007 },
3008 {
3009 name: "AssociationDirection",
3010 literalValues: [
3011 {
3012 name: "None"
3013 },
3014 {
3015 name: "One"
3016 },
3017 {
3018 name: "Both"
3019 }
3020 ]
3021 },
3022 {
3023 name: "MultiInstanceBehavior",
3024 literalValues: [
3025 {
3026 name: "None"
3027 },
3028 {
3029 name: "One"
3030 },
3031 {
3032 name: "All"
3033 },
3034 {
3035 name: "Complex"
3036 }
3037 ]
3038 },
3039 {
3040 name: "AdHocOrdering",
3041 literalValues: [
3042 {
3043 name: "Parallel"
3044 },
3045 {
3046 name: "Sequential"
3047 }
3048 ]
3049 }
3050];
3051var xml$1 = {
3052 tagAlias: "lowerCase",
3053 typePrefix: "t"
3054};
3055var BpmnPackage = {
3056 name: name$5,
3057 uri: uri$5,
3058 prefix: prefix$5,
3059 associations: associations$5,
3060 types: types$5,
3061 enumerations: enumerations$3,
3062 xml: xml$1
3063};
3064
3065var name$4 = "BPMNDI";
3066var uri$4 = "http://www.omg.org/spec/BPMN/20100524/DI";
3067var prefix$4 = "bpmndi";
3068var types$4 = [
3069 {
3070 name: "BPMNDiagram",
3071 properties: [
3072 {
3073 name: "plane",
3074 type: "BPMNPlane",
3075 redefines: "di:Diagram#rootElement"
3076 },
3077 {
3078 name: "labelStyle",
3079 type: "BPMNLabelStyle",
3080 isMany: true
3081 }
3082 ],
3083 superClass: [
3084 "di:Diagram"
3085 ]
3086 },
3087 {
3088 name: "BPMNPlane",
3089 properties: [
3090 {
3091 name: "bpmnElement",
3092 isAttr: true,
3093 isReference: true,
3094 type: "bpmn:BaseElement",
3095 redefines: "di:DiagramElement#modelElement"
3096 }
3097 ],
3098 superClass: [
3099 "di:Plane"
3100 ]
3101 },
3102 {
3103 name: "BPMNShape",
3104 properties: [
3105 {
3106 name: "bpmnElement",
3107 isAttr: true,
3108 isReference: true,
3109 type: "bpmn:BaseElement",
3110 redefines: "di:DiagramElement#modelElement"
3111 },
3112 {
3113 name: "isHorizontal",
3114 isAttr: true,
3115 type: "Boolean"
3116 },
3117 {
3118 name: "isExpanded",
3119 isAttr: true,
3120 type: "Boolean"
3121 },
3122 {
3123 name: "isMarkerVisible",
3124 isAttr: true,
3125 type: "Boolean"
3126 },
3127 {
3128 name: "label",
3129 type: "BPMNLabel"
3130 },
3131 {
3132 name: "isMessageVisible",
3133 isAttr: true,
3134 type: "Boolean"
3135 },
3136 {
3137 name: "participantBandKind",
3138 type: "ParticipantBandKind",
3139 isAttr: true
3140 },
3141 {
3142 name: "choreographyActivityShape",
3143 type: "BPMNShape",
3144 isAttr: true,
3145 isReference: true
3146 }
3147 ],
3148 superClass: [
3149 "di:LabeledShape"
3150 ]
3151 },
3152 {
3153 name: "BPMNEdge",
3154 properties: [
3155 {
3156 name: "label",
3157 type: "BPMNLabel"
3158 },
3159 {
3160 name: "bpmnElement",
3161 isAttr: true,
3162 isReference: true,
3163 type: "bpmn:BaseElement",
3164 redefines: "di:DiagramElement#modelElement"
3165 },
3166 {
3167 name: "sourceElement",
3168 isAttr: true,
3169 isReference: true,
3170 type: "di:DiagramElement",
3171 redefines: "di:Edge#source"
3172 },
3173 {
3174 name: "targetElement",
3175 isAttr: true,
3176 isReference: true,
3177 type: "di:DiagramElement",
3178 redefines: "di:Edge#target"
3179 },
3180 {
3181 name: "messageVisibleKind",
3182 type: "MessageVisibleKind",
3183 isAttr: true,
3184 "default": "initiating"
3185 }
3186 ],
3187 superClass: [
3188 "di:LabeledEdge"
3189 ]
3190 },
3191 {
3192 name: "BPMNLabel",
3193 properties: [
3194 {
3195 name: "labelStyle",
3196 type: "BPMNLabelStyle",
3197 isAttr: true,
3198 isReference: true,
3199 redefines: "di:DiagramElement#style"
3200 }
3201 ],
3202 superClass: [
3203 "di:Label"
3204 ]
3205 },
3206 {
3207 name: "BPMNLabelStyle",
3208 properties: [
3209 {
3210 name: "font",
3211 type: "dc:Font"
3212 }
3213 ],
3214 superClass: [
3215 "di:Style"
3216 ]
3217 }
3218];
3219var enumerations$2 = [
3220 {
3221 name: "ParticipantBandKind",
3222 literalValues: [
3223 {
3224 name: "top_initiating"
3225 },
3226 {
3227 name: "middle_initiating"
3228 },
3229 {
3230 name: "bottom_initiating"
3231 },
3232 {
3233 name: "top_non_initiating"
3234 },
3235 {
3236 name: "middle_non_initiating"
3237 },
3238 {
3239 name: "bottom_non_initiating"
3240 }
3241 ]
3242 },
3243 {
3244 name: "MessageVisibleKind",
3245 literalValues: [
3246 {
3247 name: "initiating"
3248 },
3249 {
3250 name: "non_initiating"
3251 }
3252 ]
3253 }
3254];
3255var associations$4 = [
3256];
3257var BpmnDiPackage = {
3258 name: name$4,
3259 uri: uri$4,
3260 prefix: prefix$4,
3261 types: types$4,
3262 enumerations: enumerations$2,
3263 associations: associations$4
3264};
3265
3266var name$3 = "DC";
3267var uri$3 = "http://www.omg.org/spec/DD/20100524/DC";
3268var prefix$3 = "dc";
3269var types$3 = [
3270 {
3271 name: "Boolean"
3272 },
3273 {
3274 name: "Integer"
3275 },
3276 {
3277 name: "Real"
3278 },
3279 {
3280 name: "String"
3281 },
3282 {
3283 name: "Font",
3284 properties: [
3285 {
3286 name: "name",
3287 type: "String",
3288 isAttr: true
3289 },
3290 {
3291 name: "size",
3292 type: "Real",
3293 isAttr: true
3294 },
3295 {
3296 name: "isBold",
3297 type: "Boolean",
3298 isAttr: true
3299 },
3300 {
3301 name: "isItalic",
3302 type: "Boolean",
3303 isAttr: true
3304 },
3305 {
3306 name: "isUnderline",
3307 type: "Boolean",
3308 isAttr: true
3309 },
3310 {
3311 name: "isStrikeThrough",
3312 type: "Boolean",
3313 isAttr: true
3314 }
3315 ]
3316 },
3317 {
3318 name: "Point",
3319 properties: [
3320 {
3321 name: "x",
3322 type: "Real",
3323 "default": "0",
3324 isAttr: true
3325 },
3326 {
3327 name: "y",
3328 type: "Real",
3329 "default": "0",
3330 isAttr: true
3331 }
3332 ]
3333 },
3334 {
3335 name: "Bounds",
3336 properties: [
3337 {
3338 name: "x",
3339 type: "Real",
3340 "default": "0",
3341 isAttr: true
3342 },
3343 {
3344 name: "y",
3345 type: "Real",
3346 "default": "0",
3347 isAttr: true
3348 },
3349 {
3350 name: "width",
3351 type: "Real",
3352 isAttr: true
3353 },
3354 {
3355 name: "height",
3356 type: "Real",
3357 isAttr: true
3358 }
3359 ]
3360 }
3361];
3362var associations$3 = [
3363];
3364var DcPackage = {
3365 name: name$3,
3366 uri: uri$3,
3367 prefix: prefix$3,
3368 types: types$3,
3369 associations: associations$3
3370};
3371
3372var name$2 = "DI";
3373var uri$2 = "http://www.omg.org/spec/DD/20100524/DI";
3374var prefix$2 = "di";
3375var types$2 = [
3376 {
3377 name: "DiagramElement",
3378 isAbstract: true,
3379 properties: [
3380 {
3381 name: "id",
3382 isAttr: true,
3383 isId: true,
3384 type: "String"
3385 },
3386 {
3387 name: "extension",
3388 type: "Extension"
3389 },
3390 {
3391 name: "owningDiagram",
3392 type: "Diagram",
3393 isReadOnly: true,
3394 isVirtual: true,
3395 isReference: true
3396 },
3397 {
3398 name: "owningElement",
3399 type: "DiagramElement",
3400 isReadOnly: true,
3401 isVirtual: true,
3402 isReference: true
3403 },
3404 {
3405 name: "modelElement",
3406 isReadOnly: true,
3407 isVirtual: true,
3408 isReference: true,
3409 type: "Element"
3410 },
3411 {
3412 name: "style",
3413 type: "Style",
3414 isReadOnly: true,
3415 isVirtual: true,
3416 isReference: true
3417 },
3418 {
3419 name: "ownedElement",
3420 type: "DiagramElement",
3421 isReadOnly: true,
3422 isMany: true,
3423 isVirtual: true
3424 }
3425 ]
3426 },
3427 {
3428 name: "Node",
3429 isAbstract: true,
3430 superClass: [
3431 "DiagramElement"
3432 ]
3433 },
3434 {
3435 name: "Edge",
3436 isAbstract: true,
3437 superClass: [
3438 "DiagramElement"
3439 ],
3440 properties: [
3441 {
3442 name: "source",
3443 type: "DiagramElement",
3444 isReadOnly: true,
3445 isVirtual: true,
3446 isReference: true
3447 },
3448 {
3449 name: "target",
3450 type: "DiagramElement",
3451 isReadOnly: true,
3452 isVirtual: true,
3453 isReference: true
3454 },
3455 {
3456 name: "waypoint",
3457 isUnique: false,
3458 isMany: true,
3459 type: "dc:Point",
3460 xml: {
3461 serialize: "xsi:type"
3462 }
3463 }
3464 ]
3465 },
3466 {
3467 name: "Diagram",
3468 isAbstract: true,
3469 properties: [
3470 {
3471 name: "id",
3472 isAttr: true,
3473 isId: true,
3474 type: "String"
3475 },
3476 {
3477 name: "rootElement",
3478 type: "DiagramElement",
3479 isReadOnly: true,
3480 isVirtual: true
3481 },
3482 {
3483 name: "name",
3484 isAttr: true,
3485 type: "String"
3486 },
3487 {
3488 name: "documentation",
3489 isAttr: true,
3490 type: "String"
3491 },
3492 {
3493 name: "resolution",
3494 isAttr: true,
3495 type: "Real"
3496 },
3497 {
3498 name: "ownedStyle",
3499 type: "Style",
3500 isReadOnly: true,
3501 isMany: true,
3502 isVirtual: true
3503 }
3504 ]
3505 },
3506 {
3507 name: "Shape",
3508 isAbstract: true,
3509 superClass: [
3510 "Node"
3511 ],
3512 properties: [
3513 {
3514 name: "bounds",
3515 type: "dc:Bounds"
3516 }
3517 ]
3518 },
3519 {
3520 name: "Plane",
3521 isAbstract: true,
3522 superClass: [
3523 "Node"
3524 ],
3525 properties: [
3526 {
3527 name: "planeElement",
3528 type: "DiagramElement",
3529 subsettedProperty: "DiagramElement-ownedElement",
3530 isMany: true
3531 }
3532 ]
3533 },
3534 {
3535 name: "LabeledEdge",
3536 isAbstract: true,
3537 superClass: [
3538 "Edge"
3539 ],
3540 properties: [
3541 {
3542 name: "ownedLabel",
3543 type: "Label",
3544 isReadOnly: true,
3545 subsettedProperty: "DiagramElement-ownedElement",
3546 isMany: true,
3547 isVirtual: true
3548 }
3549 ]
3550 },
3551 {
3552 name: "LabeledShape",
3553 isAbstract: true,
3554 superClass: [
3555 "Shape"
3556 ],
3557 properties: [
3558 {
3559 name: "ownedLabel",
3560 type: "Label",
3561 isReadOnly: true,
3562 subsettedProperty: "DiagramElement-ownedElement",
3563 isMany: true,
3564 isVirtual: true
3565 }
3566 ]
3567 },
3568 {
3569 name: "Label",
3570 isAbstract: true,
3571 superClass: [
3572 "Node"
3573 ],
3574 properties: [
3575 {
3576 name: "bounds",
3577 type: "dc:Bounds"
3578 }
3579 ]
3580 },
3581 {
3582 name: "Style",
3583 isAbstract: true,
3584 properties: [
3585 {
3586 name: "id",
3587 isAttr: true,
3588 isId: true,
3589 type: "String"
3590 }
3591 ]
3592 },
3593 {
3594 name: "Extension",
3595 properties: [
3596 {
3597 name: "values",
3598 isMany: true,
3599 type: "Element"
3600 }
3601 ]
3602 }
3603];
3604var associations$2 = [
3605];
3606var xml = {
3607 tagAlias: "lowerCase"
3608};
3609var DiPackage = {
3610 name: name$2,
3611 uri: uri$2,
3612 prefix: prefix$2,
3613 types: types$2,
3614 associations: associations$2,
3615 xml: xml
3616};
3617
3618var name$1 = "bpmn.io colors for BPMN";
3619var uri$1 = "http://bpmn.io/schema/bpmn/biocolor/1.0";
3620var prefix$1 = "bioc";
3621var types$1 = [
3622 {
3623 name: "ColoredShape",
3624 "extends": [
3625 "bpmndi:BPMNShape"
3626 ],
3627 properties: [
3628 {
3629 name: "stroke",
3630 isAttr: true,
3631 type: "String"
3632 },
3633 {
3634 name: "fill",
3635 isAttr: true,
3636 type: "String"
3637 }
3638 ]
3639 },
3640 {
3641 name: "ColoredEdge",
3642 "extends": [
3643 "bpmndi:BPMNEdge"
3644 ],
3645 properties: [
3646 {
3647 name: "stroke",
3648 isAttr: true,
3649 type: "String"
3650 },
3651 {
3652 name: "fill",
3653 isAttr: true,
3654 type: "String"
3655 }
3656 ]
3657 }
3658];
3659var enumerations$1 = [
3660];
3661var associations$1 = [
3662];
3663var BiocPackage = {
3664 name: name$1,
3665 uri: uri$1,
3666 prefix: prefix$1,
3667 types: types$1,
3668 enumerations: enumerations$1,
3669 associations: associations$1
3670};
3671
3672var name = "BPMN in Color";
3673var uri = "http://www.omg.org/spec/BPMN/non-normative/color/1.0";
3674var prefix = "color";
3675var types = [
3676 {
3677 name: "ColoredLabel",
3678 "extends": [
3679 "bpmndi:BPMNLabel"
3680 ],
3681 properties: [
3682 {
3683 name: "color",
3684 isAttr: true,
3685 type: "String"
3686 }
3687 ]
3688 },
3689 {
3690 name: "ColoredShape",
3691 "extends": [
3692 "bpmndi:BPMNShape"
3693 ],
3694 properties: [
3695 {
3696 name: "background-color",
3697 isAttr: true,
3698 type: "String"
3699 },
3700 {
3701 name: "border-color",
3702 isAttr: true,
3703 type: "String"
3704 }
3705 ]
3706 },
3707 {
3708 name: "ColoredEdge",
3709 "extends": [
3710 "bpmndi:BPMNEdge"
3711 ],
3712 properties: [
3713 {
3714 name: "border-color",
3715 isAttr: true,
3716 type: "String"
3717 }
3718 ]
3719 }
3720];
3721var enumerations = [
3722];
3723var associations = [
3724];
3725var BpmnInColorPackage = {
3726 name: name,
3727 uri: uri,
3728 prefix: prefix,
3729 types: types,
3730 enumerations: enumerations,
3731 associations: associations
3732};
3733
3734var packages = {
3735 bpmn: BpmnPackage,
3736 bpmndi: BpmnDiPackage,
3737 dc: DcPackage,
3738 di: DiPackage,
3739 bioc: BiocPackage,
3740 color: BpmnInColorPackage
3741};
3742
3743function simple(additionalPackages, options) {
3744 var pks = minDash.assign({}, packages, additionalPackages);
3745
3746 return new BpmnModdle(pks, options);
3747}
3748
3749module.exports = simple;