[rules-users] Designer 2.1 install doubts

Cristiano Gavião cvgaviao at gmail.com
Tue Mar 13 00:04:04 EDT 2012


Hi again,

Well, I already did this before. But now I've discovered that its 
working when called from a file inside a guvnor package. but not 
directly in the browser..

But I got a error that prevents the model (see the attached picture) 
saved properly. at least when I tried to open the saved file I got a 
black canvas.

> 00:29:06,846 ERROR 
> [org.apache.catalina.core.ContainerBase.[jboss.web].[default-host].[/designer].[UUIDBasedRepositoryServlet]] 
> (http--127.0.0.1-8080-6) Servlet.service() for servlet 
> UUIDBasedRepositoryServlet threw exception: 
> java.lang.IllegalArgumentException: No enum const class 
> org.jbpm.designer.bpmn2.impl.Bpmn20Stencil.ReusableSubprocess_None
>     at java.lang.Enum.valueOf(Enum.java:196) [:1.6.0_29]
>     at 
> org.jbpm.designer.bpmn2.impl.Bpmn20Stencil.valueOf(Bpmn20Stencil.java:35) 
> [classes:]
>     at 
> org.jbpm.designer.bpmn2.impl.Bpmn20Stencil.createElement(Bpmn20Stencil.java:134) 
> [classes:]
>     at 
> org.jbpm.designer.bpmn2.impl.Bpmn2JsonUnmarshaller.createBaseElement(Bpmn2JsonUnmarshaller.java:3670) 
> [classes:]
>     at 
> org.jbpm.designer.bpmn2.impl.Bpmn2JsonUnmarshaller.unmarshallItem(Bpmn2JsonUnmarshaller.java:1628) 
> [classes:]
>     at 
> org.jbpm.designer.bpmn2.impl.Bpmn2JsonUnmarshaller.unmarshallItem(Bpmn2JsonUnmarshaller.java:1553) 
> [classes:]
>     at 
> org.jbpm.designer.bpmn2.impl.Bpmn2JsonUnmarshaller.unmarshall(Bpmn2JsonUnmarshaller.java:223) 
> [classes:]
>     at 
> org.jbpm.designer.bpmn2.impl.Bpmn2JsonUnmarshaller.unmarshall(Bpmn2JsonUnmarshaller.java:199) 
> [classes:]
>     at 
> org.jbpm.designer.web.profile.impl.JbpmProfileImpl$1.parseModel(JbpmProfileImpl.java:222) 
> [classes:]
>     at 
> org.jbpm.designer.web.repository.impl.UUIDBasedJbpmRepository.toXML(UUIDBasedJbpmRepository.java:63) 
> [classes:]
>     at 
> org.jbpm.designer.web.server.UUIDBasedRepositoryServlet.doPost(UUIDBasedRepositoryServlet.java:134) 
> [classes:]
>     at javax.servlet.http.HttpServlet.service(HttpServlet.java:754) 
> [jboss-servlet-api_3.0_spec-1.0.0.Final.jar:1.0.0.Final]
>     at javax.servlet.http.HttpServlet.service(HttpServlet.java:847) 
> [jboss-servlet-api_3.0_spec-1.0.0.Final.jar:1.0.0.Final]
>     at 
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:329) 
> [jbossweb-7.0.1.Final.jar:7.0.2.Final]
>     at 
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:248) 
> [jbossweb-7.0.1.Final.jar:7.0.2.Final]
>     at 
> org.jbpm.designer.web.filter.impl.PluggableFilter.doFilter(PluggableFilter.java:70) 
> [classes:]
>     at 
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:280) 
> [jbossweb-7.0.1.Final.jar:7.0.2.Final]
>     at 
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:248) 
> [jbossweb-7.0.1.Final.jar:7.0.2.Final]
>     at 
> org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:275) 
> [jbossweb-7.0.1.Final.jar:7.0.2.Final]
>     at 
> org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:161) 
> [jbossweb-7.0.1.Final.jar:7.0.2.Final]
>     at 
> org.jboss.as.web.security.SecurityContextAssociationValve.invoke(SecurityContextAssociationValve.java:139) 
> [jboss-as-web-7.0.2.Final.jar:7.0.2.Final]
>     at org.jboss.as.web.NamingValve.invoke(NamingValve.java:57) 
> [jboss-as-web-7.0.2.Final.jar:7.0.2.Final]
>     at 
> org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:154) 
> [jbossweb-7.0.1.Final.jar:7.0.2.Final]
>     at 
> org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) 
> [jbossweb-7.0.1.Final.jar:7.0.2.Final]
>     at 
> org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) 
> [jbossweb-7.0.1.Final.jar:7.0.2.Final]
>     at 
> org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:362) 
> [jbossweb-7.0.1.Final.jar:7.0.2.Final]
>     at 
> org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:877) 
> [jbossweb-7.0.1.Final.jar:7.0.2.Final]
>     at 
> org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:667) 
> [jbossweb-7.0.1.Final.jar:7.0.2.Final]
>     at 
> org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:952) [jbossweb-7.0.1.Final.jar:7.0.2.Final]
>     at java.lang.Thread.run(Thread.java:680) [:1.6.0_29]
>
> 00:29:06,850 INFO  [stdout] (http--127.0.0.1-8080-4) ERROR 13-03 
> 00:29:06,849 (LoggingHelper.java:error:74)      Server returned HTTP 
> response code: 500 for URL: 
> http://localhost:8080/designer/uuidRepository?profile=jbpm&action=toXML&pp=Log%2CEmail
> 00:29:06,851 INFO  [stdout] (http--127.0.0.1-8080-4) 
> java.io.IOException: Server returned HTTP response code: 500 for URL: 
> http://localhost:8080/designer/uuidRepository?profile=jbpm&action=toXML&pp=Log%2CEmail
> 00:29:06,851 INFO  [stdout] (http--127.0.0.1-8080-4)     at 
> sun.net.www.protocol.http.HttpURLConnection.getInputStream(HttpURLConnection.java:1436)
> 00:29:06,851 INFO  [stdout] (http--127.0.0.1-8080-4)     at 
> org.drools.guvnor.server.contenthandler.BPMN2ProcessHandler.serialize(BPMN2ProcessHandler.java:159)
> 00:29:06,851 INFO  [stdout] (http--127.0.0.1-8080-4)     at 
> org.drools.guvnor.server.contenthandler.BPMN2ProcessHandler.storeAssetContent(BPMN2ProcessHandler.java:124)
> 00:29:06,851 INFO  [stdout] (http--127.0.0.1-8080-4)     at 
> org.drools.guvnor.server.RepositoryAssetOperations.checkinVersion(RepositoryAssetOperations.java:133)
> 00:29:06,851 INFO  [stdout] (http--127.0.0.1-8080-4)     at 
> org.drools.guvnor.server.RepositoryAssetService.checkinVersion(RepositoryAssetService.java:153)
> 00:29:06,851 INFO  [stdout] (http--127.0.0.1-8080-4)     at 
> sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> 00:29:06,851 INFO  [stdout] (http--127.0.0.1-8080-4)     at 
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
> 00:29:06,851 INFO  [stdout] (http--127.0.0.1-8080-4)     at 
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
> 00:29:06,852 INFO  [stdout] (http--127.0.0.1-8080-4)     at 
> java.lang.reflect.Method.invoke(Method.java:597)
> 00:29:06,852 INFO  [stdout] (http--127.0.0.1-8080-4)     at 
> org.jboss.seam.util.Reflections.invoke(Reflections.java:22)
> 00:29:06,852 INFO  [stdout] (http--127.0.0.1-8080-4)     at 
> org.jboss.seam.intercept.RootInvocationContext.proceed(RootInvocationContext.java:32)
> 00:29:06,852 INFO  [stdout] (http--127.0.0.1-8080-4)     at 
> org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:56)
> 00:29:06,852 INFO  [stdout] (http--127.0.0.1-8080-4)     at 
> org.jboss.seam.transaction.RollbackInterceptor.aroundInvoke(RollbackInterceptor.java:28)
> 00:29:06,852 INFO  [stdout] (http--127.0.0.1-8080-4)     at 
> org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:68)
> 00:29:06,852 INFO  [stdout] (http--127.0.0.1-8080-4)     at 
> org.jboss.seam.core.BijectionInterceptor.aroundInvoke(BijectionInterceptor.java:77)
> 00:29:06,852 INFO  [stdout] (http--127.0.0.1-8080-4)     at 
> org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:68)
> 00:29:06,852 INFO  [stdout] (http--127.0.0.1-8080-4)     at 
> org.jboss.seam.core.MethodContextInterceptor.aroundInvoke(MethodContextInterceptor.java:44)
> 00:29:06,852 INFO  [stdout] (http--127.0.0.1-8080-4)     at 
> org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:68)
> 00:29:06,853 INFO  [stdout] (http--127.0.0.1-8080-4)     at 
> org.jboss.seam.security.SecurityInterceptor.aroundInvoke(SecurityInterceptor.java:163)
> 00:29:06,853 INFO  [stdout] (http--127.0.0.1-8080-4)     at 
> org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:68)
> 00:29:06,853 INFO  [stdout] (http--127.0.0.1-8080-4)     at 
> org.jboss.seam.intercept.RootInterceptor.invoke(RootInterceptor.java:107)
> 00:29:06,853 INFO  [stdout] (http--127.0.0.1-8080-4)     at 
> org.jboss.seam.intercept.JavaBeanInterceptor.interceptInvocation(JavaBeanInterceptor.java:185)
> 00:29:06,853 INFO  [stdout] (http--127.0.0.1-8080-4)     at 
> org.jboss.seam.intercept.JavaBeanInterceptor.invoke(JavaBeanInterceptor.java:103)
> 00:29:06,853 INFO  [stdout] (http--127.0.0.1-8080-4)     at 
> org.drools.guvnor.server.RepositoryAssetService_$$_javassist_seam_8.checkinVersion(RepositoryAssetService_$$_javassist_seam_8.java)
> 00:29:06,853 INFO  [stdout] (http--127.0.0.1-8080-4)     at 
> org.drools.guvnor.server.RepositoryServiceServlet.checkinVersion(RepositoryServiceServlet.java:635)
> 00:29:06,853 INFO  [stdout] (http--127.0.0.1-8080-4)     at 
> sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> 00:29:06,853 INFO  [stdout] (http--127.0.0.1-8080-4)     at 
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
> 00:29:06,853 INFO  [stdout] (http--127.0.0.1-8080-4)     at 
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
> 00:29:06,854 INFO  [stdout] (http--127.0.0.1-8080-4)     at 
> java.lang.reflect.Method.invoke(Method.java:597)
> 00:29:06,854 INFO  [stdout] (http--127.0.0.1-8080-4)     at 
> com.google.gwt.user.server.rpc.RPC.invokeAndEncodeResponse(RPC.java:569)
> 00:29:06,854 INFO  [stdout] (http--127.0.0.1-8080-4)     at 
> com.google.gwt.user.server.rpc.RemoteServiceServlet.processCall(RemoteServiceServlet.java:208)
> 00:29:06,854 INFO  [stdout] (http--127.0.0.1-8080-4)     at 
> com.google.gwt.user.server.rpc.RemoteServiceServlet.processPost(RemoteServiceServlet.java:248)
> 00:29:06,854 INFO  [stdout] (http--127.0.0.1-8080-4)     at 
> com.google.gwt.user.server.rpc.AbstractRemoteServiceServlet.doPost(AbstractRemoteServiceServlet.java:62)
> 00:29:06,854 INFO  [stdout] (http--127.0.0.1-8080-4)     at 
> javax.servlet.http.HttpServlet.service(HttpServlet.java:754)
> 00:29:06,854 INFO  [stdout] (http--127.0.0.1-8080-4)     at 
> javax.servlet.http.HttpServlet.service(HttpServlet.java:847)
> 00:29:06,854 INFO  [stdout] (http--127.0.0.1-8080-4)     at 
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:329)
> 00:29:06,854 INFO  [stdout] (http--127.0.0.1-8080-4)     at 
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:248)
> 00:29:06,854 INFO  [stdout] (http--127.0.0.1-8080-4)     at 
> org.jboss.seam.web.ContextFilter$1.process(ContextFilter.java:42)
> 00:29:06,855 INFO  [stdout] (http--127.0.0.1-8080-4)     at 
> org.jboss.seam.servlet.ContextualHttpServletRequest.run(ContextualHttpServletRequest.java:65)
> 00:29:06,855 INFO  [stdout] (http--127.0.0.1-8080-4)     at 
> org.jboss.seam.web.ContextFilter.doFilter(ContextFilter.java:37)
> 00:29:06,855 INFO  [stdout] (http--127.0.0.1-8080-4)     at 
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:280)
> 00:29:06,855 INFO  [stdout] (http--127.0.0.1-8080-4)     at 
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:248)
> 00:29:06,855 INFO  [stdout] (http--127.0.0.1-8080-4)     at 
> org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:275)
> 00:29:06,855 INFO  [stdout] (http--127.0.0.1-8080-4)     at 
> org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:161)
> 00:29:06,855 INFO  [stdout] (http--127.0.0.1-8080-4)     at 
> org.jboss.as.web.security.SecurityContextAssociationValve.invoke(SecurityContextAssociationValve.java:139)
> 00:29:06,855 INFO  [stdout] (http--127.0.0.1-8080-4)     at 
> org.jboss.as.web.NamingValve.invoke(NamingValve.java:57)
> 00:29:06,855 INFO  [stdout] (http--127.0.0.1-8080-4)     at 
> org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:154)
> 00:29:06,855 INFO  [stdout] (http--127.0.0.1-8080-4)     at 
> org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
> 00:29:06,855 INFO  [stdout] (http--127.0.0.1-8080-4)     at 
> org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
> 00:29:06,856 INFO  [stdout] (http--127.0.0.1-8080-4)     at 
> org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:362)
> 00:29:06,856 INFO  [stdout] (http--127.0.0.1-8080-4)     at 
> org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:877)
> 00:29:06,856 INFO  [stdout] (http--127.0.0.1-8080-4)     at 
> org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:667)
> 00:29:06,856 INFO  [stdout] (http--127.0.0.1-8080-4)     at 
> org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:952)
> 00:29:06,856 INFO  [stdout] (http--127.0.0.1-8080-4)     at 
> java.lang.Thread.run(Thread.java:680)
> 00:29:07,055 INFO  [stdout] (http--127.0.0.1-8080-4) (null: -1, -1): 
> Premature end of file.
> 00:29:07,140 INFO  [org.jbpm.designer.server.EditorHandler] 
> (http--127.0.0.1-8080-4) Performing diagram information pre-processing 
> steps.
> 00:29:07,665 INFO  
> [org.jbpm.designer.web.preprocessing.impl.JbpmPreprocessingUnit] 
> (http--127.0.0.1-8080-4) Successfully deleted file 
> :/Users/cvgaviao/Library/JavaApps/jbpm-installer/jboss-as-7.0.2.Final/standalone/tmp/vfs/temp4941937837370a97/designer.war-d06fd578f3179836/stencilsets/bpmn2.0jbpm/bpmn2.0jbpm.json
> 00:29:07,673 INFO  
> [org.jbpm.designer.web.preprocessing.impl.JbpmPreprocessingUnit] 
> (http--127.0.0.1-8080-4) Created 
> file:/Users/cvgaviao/Library/JavaApps/jbpm-installer/jboss-as-7.0.2.Final/standalone/tmp/vfs/temp4941937837370a97/designer.war-d06fd578f3179836/stencilsets/bpmn2.0jbpm/bpmn2.0jbpm.json
> 00:29:07,674 INFO  
> [org.jbpm.designer.web.preprocessing.impl.JbpmPreprocessingUnit] 
> (http--127.0.0.1-8080-4) Successfully deleted file 
> :/Users/cvgaviao/Library/JavaApps/jbpm-installer/jboss-as-7.0.2.Final/standalone/tmp/vfs/temp4941937837370a97/designer.war-d06fd578f3179836/stencilsets/bpmn2.0jbpm/view/activity/workitems/Email.svg
> 00:29:07,675 INFO  
> [org.jbpm.designer.web.preprocessing.impl.JbpmPreprocessingUnit] 
> (http--127.0.0.1-8080-4) Successfully deleted file 
> :/Users/cvgaviao/Library/JavaApps/jbpm-installer/jboss-as-7.0.2.Final/standalone/tmp/vfs/temp4941937837370a97/designer.war-d06fd578f3179836/stencilsets/bpmn2.0jbpm/view/activity/workitems/Log.svg
> 00:29:07,678 INFO  
> [org.jbpm.designer.web.preprocessing.impl.JbpmPreprocessingUnit] 
> (http--127.0.0.1-8080-4) Created 
> file:/Users/cvgaviao/Library/JavaApps/jbpm-installer/jboss-as-7.0.2.Final/standalone/tmp/vfs/temp4941937837370a97/designer.war-d06fd578f3179836/stencilsets/bpmn2.0jbpm/view/activity/workitems/Log.svg
> 00:29:07,680 INFO  
> [org.jbpm.designer.web.preprocessing.impl.JbpmPreprocessingUnit] 
> (http--127.0.0.1-8080-4) Created 
> file:/Users/cvgaviao/Library/JavaApps/jbpm-installer/jboss-as-7.0.2.Final/standalone/tmp/vfs/temp4941937837370a97/designer.war-d06fd578f3179836/stencilsets/bpmn2.0jbpm/view/activity/workitems/Email.svg
> 00:29:08,420 INFO  [stdout] (http--127.0.0.1-8080-6) (null: -1, -1): 
> Premature end of file.
> 00:29:09,100 INFO  [org.jbpm.designer.web.server.DictionaryServlet] 
> (http--127.0.0.1-8080-4) check connection response code: 500

what could be?

regards

On 12/03/12 19:37, Tihomir Surdilovic wrote:
> Most likely you are missing an empty designer.dodeploy file in your AS 
> installation deploy directory.
> You can install designer without guvnor, however designer is currently 
> storing processes in guvnor, so as standalone you can only view 
> existing processes, but not create/save new ones.
>
> Hope this helps.
>
>
> On 3/12/12 5:47 PM, Cristiano Gavião wrote:
>> Hi,
>> I want to try the new version of Designer. So, I've got the 
>> designer-2.1-jboss7.war from people.redhat.com/tsurdilo/designer/master.
>> I've renamed to designer.war and deployed into my jboss AS7 that 
>> comes with jbpm-5.2.0.Final-installer-full.
>>
>> JbossAS console at 
>> http://localhost:9990/console/App.html#deployment-list shows me that 
>> designer is enabled but when I try the url 
>> http://localhost:8080/designer/ I got a 404 error.
>>
>> Am I missing something ?
>>
>> Btw, must I have guvnor working just to try designer or can I deploy 
>> it in a fresh jboss AS instance ?
>>
>> regards,
>>
>> Cristiano
>>
>>
>> _______________________________________________
>> rules-users mailing list
>> rules-users at lists.jboss.org
>> https://lists.jboss.org/mailman/listinfo/rules-users
>

-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.jboss.org/pipermail/rules-users/attachments/20120313/6d4d89a2/attachment-0001.html 
-------------- next part --------------
{
	"title":"jBPM BPMN2 (Full)",
	"namespace":"http://b3mn.org/stencilset/bpmn2.0#",
	"description":"This is the jBPM BPMN 2.0 stencil set specification.",
 	"propertyPackages": [
 		{
 			"name":"baseAttributes",
 			"properties": [
				{
					"id":"name",
					"type":"String",
					"title":"Name",
					"value":"",
					"description":"The descriptive name of the BPMN element.",
					"readonly":false,
					"optional":true,
					"length":"",
					"wrapLines" : true,
					"refToView":"text_name"	
				},
				{
					"id":"documentation",
					"type":"Text",
					"title":"Documentation",
					"value":"",
					"description":"This attribute is used to annotate the BPMN element, such as descriptions and other documentation.",
					"readonly":false,
					"optional":true,
					"length":"",
					"wrapLines":true,
					"popular" : true
				}
 			]
 		},
		{
			"name" : "bgColor",
			"properties" : [
				{
					"id":"bgcolor",
					"type":"Color",
					"title":"BackgroundColor",
					"value":"#ffffff",
					"description":"",
					"readonly":false,
					"optional":false,
					"refToView": "fill_el",
					"fill":true,
					"stroke":false
				}
			]
		},
		/**{
			"name" : "condition",
			"properties" : [
				{
					"id":"condition",
					"type":"String",
					"title":"Condition",
					"value":"",
					"description":"",
					"readonly":false,
					"optional":false,
					"popular":true
				}
			]
		},**/
		{
			"name":"boundaryevent",
			"properties":[
				{
					"id":"boundarycancelactivity",
					"type":"Choice",
					"title":"CancelActivity",
					"value":"false",
					"description":"Denotes whether the activity should be cancelled or not, i.e., whether the boundary catch event acts as an error or an escalation. If the activity is not cancelled, multiple instances of that handler can run concurrently.",
					"readonly":false,
					"optional":true,
					"items": [
						{
							"id": "c1",
							"title":"false",
							"value":"false"
						},
						{
							"id": "c2",
							"title": "true",
							"value": "true"
						}
					]                                               
				}
			]
		},
 		{
 			"name":"catchEventAttributes",
 			"properties":[
 				/**{
					"id":"eventdefinitionref",
					"type":"String",
					"title":"EventDefinitionRef",
					"value":"",
					"description":"EventDefinitionRefs (EventDefinition) is an attribute that defines the type of reusable triggers expected for a catch Event.",
					"readonly":false,
					"optional":true,
					"length":"",
					"wrapLines":true
				},**/
				/**{
					"id":"eventdefinition",
					"type":"String",
					"title":"EventDefinition",
					"value":"",
					"description":"EventDefinition is an attribute that defines the type of contained triggers expected for a catch Event.",
					"readonly":false,
					"optional":true,
					"length":"",
					"wrapLines":true
				},**/
				{
					"id":"dataoutputassociations",
					"type":"Dataassignment",
					"title":"DataOutputAssociations",
					"value":"",
					"description":"The Data Associations of the catch Event.",
					"readonly":false,
					"optional":true,
					"length":"",
					"wrapLines":true
				},
				{
					"id":"dataoutput",
					"type":"Dataoutput",
					"title":"DataOutput",
					"value":"",
					"description":"The Data Associations of the catch Event.",
					"readonly":false,
					"optional":true,
					"length":"",
					"wrapLines":true
				}
				/**,
				{
					"id":"outputset",
					"type":"Text",
					"title":"OutputSet",
					"value":"",
					"description":"The OutputSet for the catch Event.",
					"readonly":false,
					"optional":true,
					"length":"",
					"wrapLines":true
				}**/
 			]
 		},
 		{
 			"name":"throwEventAttributes",
 			"properties":[
 				/**{
					"id":"eventdefinitionref",
					"type":"String",
					"title":"EventDefinitionRef",
					"value":"",
					"description":"EventDefinitionRefs (EventDefinition) is an attribute that defines the type of reusable triggers expected for a catch Event.",
					"readonly":false,
					"optional":true,
					"length":"",
					"wrapLines":true
				},**/
				{
					"id":"eventdefinitions",
					"type":"String",
					"title":"EventDefinitions",
					"value":"",
					"description":"EventDefinitions (EventDefinition) is an attribute that defines the type of contained triggers expected for a catch Event.",
					"readonly":false,
					"optional":true,
					"length":"",
					"wrapLines":true
				},
				{
					"id":"datainputassociations",
					"type":"Dataassignment",
					"title":"DataInputAssociations",
					"value":"",
					"description":"The Data Associations of the throw Event.",
					"readonly":false,
					"optional":true,
					"length":"",
					"wrapLines":true
				},
				{
					"id":"datainput",
					"type":"String",
					"title":"Data Input",
					"value":"",
					"description":"The Data Associations of the throw Event.",
					"readonly":false,
					"optional":true,
					"length":"",
					"wrapLines":true
				}
				/**,
				{
					"id":"inputset",
					"type":"String",
					"title":"InputSet",
					"value":"",
					"description":"The InputSet for the throw Event.",
					"readonly":false,
					"optional":true,
					"length":"",
					"wrapLines":true
				}**/
 			]
 		},
 		{
 			"name" : "compensationThrowing",
 			"properties" : [
 				{
 					"id":"waitforcompletion",
					"type":"Boolean",
					"title":"Wait for completion",
					"value":true,
					"popular":true,
					"description":"Determine whether a throw compensation is performed synchronously or asynchronously.",
					"readonly":false,
					"optional":true
 				}
 			]
 		},
 		{
 			"name" : "compensation",
 			"properties" : [
 				{
 					"id":"activityref",
					"type":"String",
					"title":"Activity reference",
					"value":"",
					"popular":true,
					"description":"The activity related to the compensation event",
					"readonly":false,
					"optional":true
 				}
 			]
 		},
 		{
 			"name":"interrupting",
 			"properties":[
 				{
					"id":"isinterrupting",
					"type":"Boolean",
					"title":"Is Interrupting",
					"value":true,
					"description":"This attribute denotes whether the Sub-Process encompassing the Event Sub-Process should be cancelled or not.",
					"inverseBoolean":false,
					"readonly":false,
					"optional":true,
					"refToView": [
						"frame",
						"frame2"
					]
				}
 			]
 		},
		{
			"name" : "diagram",
			"properties" : [
				{
					"id":"executable",
					"type":"Boolean",
					"title":"Executable",
					"value":true,
					"description":"Executable",
					"readonly":false,
					"optional":true
				},
				{
					"id":"package",
					"type":"String",
					"title":"Package",
					"value":"examples",
					"description":"Package",
					"readonly":false,
					"optional":true
				},
				{
					"id":"vardefs",
					"type":"Vardef",
					"title":"Variable Definitions",
					"value":"",
					"description":"Variable Definitions",
					"readonly":false,
					"optional":true
				},
				{
					"id":"adhocprocess",
					"type":"Choice",
					"title":"AdHoc",
					"value":"false",
					"description":"Defines an AdHoc process",
					"readonly":false,
					"optional":true,
					"items": [
						{
							"id": "c1",
							"title":"false",
							"value":"false"
						},
						{
							"id": "c2",
							"title": "true",
							"value": "true"
						}
					]                                               
				},
				{
					"id":"imports",
					"type":"Import",
					"title":"Imports",
					"value":"",
					"description":"Comma-separated imports",
					"readonly":false,
					"optional":true
				},
				{
					"id":"globals",
					"type":"Global",
					"title":"Globals",
					"value":"",
					"description":"Comma-separated globals",
					"readonly":false,
					"optional":true
				},
				{
					"id":"id",
					"type":"String",
					"title":"ID",
					"value":"examples.MyIssue",
					"description":"ID",
					"readonly":false,
					"optional":true
				},
				{
					"id":"version",
					"type":"String",
					"title":"Version",
					"value":"",
					"description":"This defines the Version number of the Diagram.",
					"readonly":false,
					"optional":true,
					"length":"50"
				},
				/**{
					"id":"author",
					"type":"String",
					"title":"Author",
					"value":"",
					"description":"This holds the name of the author of the Diagram.",
					"readonly":false,
					"optional":true,
					"length":"50"
				},**/
				/**{
					"id":"language",
					"type":"String",
					"title":"Language",
					"value":"English",
					"description":"This holds the name of the language in which text is written.",
					"readonly":false,
					"optional":true,
					"length":"50"
				},**/
				/**{	
					"id":"namespaces",
					"type":"Complex",
					"title":"Namespaces",
					"value":"",
					"description":"Additional namespaces and theire prefixes used in the diagram., ",
					"readonly":false,
					"optional":true,
					"complexItems": [
						{
							"id":"prefix",
							"name":"Prefix",
							"type":"String",
							"value":"",
							"width":100,
							"optional":false 
						},
						{
							"id":"url",
							"name":"URL",
							"type":"String",
							"value":"",
							"width":200,
							"optional":false 
						}
					]
				},**/
				{
					"id":"targetnamespace",
					"type":"String",
					"title":"Target Namespace",
					"value":"http://www.omg.org/bpmn20",
					"description":"Defines the XML namespace of the elements inside the document.",
					"readonly":true,
					"optional":true,
					"length":"50"
				},
				/**{
					"id":"expressionlanguage",
					"type":"String",
					"title":"ExpressionLanguage",
					"value":"http://www.w3.org/1999/XPath",
					"description":"A Language may be provided so that the syntax of expressions used in the Diagram can be understood.",
					"readonly":false,
					"optional":true,
					"length":"50"
				},**/
				{
					"id":"typelanguage",
					"type":"String",
					"title":"TypeLanguage",
					"value":"http://www.w3.org/2001/XMLSchema",
					"description":"This attribute identifies the type system used by the elements of this Definition.",
					"readonly":true,
					"optional":true,
					"length":"50"
				},
				/**{
					"id":"creationdate",
					"type":"Date",
					"title":"CreationDate",
					"value":"",
					"description":"This defines the date on which the Diagram was created.",
					"readonly":false,
					"optional":true,
					"dateFormat":"j/m/y"
				},**/
				/**{
					"id":"modificationdate",
					"type":"Date",
					"title":"ModificationDate",
					"value":"",
					"description":"This defines the date on which the Diagram was last modified.",
					"readonly":false,
					"optional":true,
					"dateFormat":"j/m/y"
				}**/
			]
		},
		{
			"name": "flowElement",
			"properties" : [
				/**{
					"id":"categories",
					"type":"String",
					"title":"Categories",
					"value":"",
					"description":"",
					"readonly":false,
					"optional":true,
					"refToView":"",
					"length":"50",
					"wrapLines":true
				}**/
			]
		},
		{
			"name" : "itemAwareElement",
			"properties" : [
				{
					"id" : "itemsubjectref",
					"type" : "String",
					"title" : "ItemSubjectRef",
					"description" : "Specification of the items that are stored or conveyed by the ItemAwareElement",
					"readonly" : false,
					"optional" : true,
					"length" : 50,
					"wrapLines" : true
				},
				{
					"id" : "datastate",
					"type" : "String",
					"title" : "DataState",
					"description" : "A reference to the DataState, which defines certain states for the data contained in the item.",
					"readonly" : false,
					"optional" : true,
					"length" : 50,
					"wrapLines" : true
				}
			]
		},
		/**{
			"name":"properties",
			"properties": [
				{
					"id":"properties",
					"type":"Complex",
					"title":"Properties",
					"value":"",
					"description":"Modeler-defined properties MAY be added to an Activity. These properties are local to the Activity. (e.g., Add Customer.Customer Name).",
					"readonly": 	false,
					"optional": 	false,
					"complexItems": [
						{
							"id":"name",
							"name":"Name",
							"type":"String",
							"value":"",
							"width":100,
							"optional":false 
						},
						{
							"id":"datastate",
							"name":"DataState",
							"type":"String",
							"value":"",
							"width":80,
							"optional":true
						},
						{
							"id":"itemkind",
							"name":"ItemKind",
							"type":"Choice",
							"value":"Information",
							"items" : [
					           {
					        	   "id":"information",
					        	   "title":"Information",
					        	   "value":"Information"
					           },
					           {
					        	   "id":"physical",
					        	   "title":"Physical",
					        	   "value":"Physical"
					           }
							           
							],
							"width":80,
							"optional":true
						},
						{
							"id":"structure",
							"name":"Structure",
							"type":"String",
							"value":"",
							"width":100,
							"optional":true
						},
						{
							"id":"iscollection",
							"name":"isCollection",
							"type":"Boolean",
							"value":false,
							"width":50,
							"optional":true
						}
					]
				}
			]
		},**/
		{
			"name" : "iospecification",
			"properties" : [
				{
					"id":"datainputset",
					"type":"Datainput",
					"title":"DataInputSet",
					"value":"",
					"description":"An InputSet is a collection of DataInput elements that together define a valid set of data inputs.",
					"readonly":false,
					"optional":true,
					/** "complexItems": [
						{
							"id":"name",
							"name":"Name",
							"type":"String",
							"value":"",
							"width":100,
							"optional":false 
						},
						{
							"id":"optional",
							"name":"Optional",
							"type":"Boolean",
							"value":false,
							"width":50,
							"optional":true
						},
						{
							"id":"whileexecuting",
							"name":"WhileExecuting",
							"type":"Boolean",
							"value":false,
							"width":80,
							"optional":true
						}
					] **/
				},            
				{
					"id":"dataoutputset",
					"type":"Dataoutput",
					"title":"DataOutputSet",
					"value":"",
					"description":"An OutputSet is a collection of DataOutputs elements that together may be produced as output from an Activity or Event.",
					"readonly":false,
					"optional":true,
					/** "complexItems": [
						{
							"id":"name",
							"name":"Name",
							"type":"String",
							"value":"",
							"width":100,
							"optional":false 
						},
						{
							"id":"optional",
							"name":"Optional",
							"type":"Boolean",
							"value":false,
							"width":50,
							"optional":true
						},
						{
							"id":"whileexecuting",
							"name":"WhileExecuting",
							"type":"Boolean",
							"value":false,
							"width":80,
							"optional":true
						}
					] **/
				}
			]
		},
		{
			"name" : "activity",
			"properties": [
				/**{
					"id":"startquantity",
					"type":"Integer",
					"title":"StartQuantity",
					"value":1,
					"description":"",
					"readonly":false,
					"optional":false,
					"refToView":"",
					"min":"1"
				},**/
				/**{
					"id":"completionquantity",
					"type":"Integer",
					"title":"CompletionQuantity",
					"value":1,
					"description":"Defines the number of tokens that must be generated from the activity",
					"readonly":false,
					"optional":false,
					"refToView":"",
					"min":"1"
				},**/
				{
					"id":"isforcompensation",
					"type":"Boolean",
					"title":"Is for Compensation",
					"value":false,
					"description":"A flag that identifies whether this activity is intended for the purposes of compensation.",
					"readonly":false,
					"optional":true,
					"refToView":"compensation"
				},
				{
					"id":"assignments",
					"type":"Dataassignment",
					"title":"Assignments",
					"value":"",
					"description":"",
					"readonly":false,
					"optional":true,
					/** "complexItems": [
						{
							"id":"to",
							"name":"To",
							"type":"String",
							"value":"",
							"width":100,
							"optional":false 
						},
						{
							"id":"from",
							"name":"From",
							"type":"String",
							"value":"",
							"width":100,
							"optional":false
						},
						{
							"id":"assigntime",
							"name":"AssignTime",
							"type":"Choice",
							"value":"Start",
							"width":100,
							"optional":true,
							"items": [
								{
									"id":"c1",
									"title":"Start",
									"value":"Start",
									"refToView":""
								},
								{
									"id":"c2",
									"title":"End",
									"value":"End",
									"refToView":""
								}
							]
						}
					] **/
				}/**,
				{
					"id":"callacitivity",
					"type":"Boolean",
					"title":"is a Call Activity",
					"value":false,
					"description":"a Call Activity is a wrapper for a globally defined Sub-Process that is reused in the current process.",
					"readonly":false,
					"optional":"true",
					"refToView":"callActivity"
				}**/
			]
		},
		// start custom activity properties
		{
			"name" : "customactivity",
			"properties": [
				{
					"id":"isforcompensation",
					"type":"Boolean",
					"title":"Is for Compensation",
					"value":false,
					"description":"A flag that identifies whether this activity is intended for the purposes of compensation.",
					"readonly":true,
					"optional":true,
					"refToView":"compensation"
				}/**,
				{
					"id":"callacitivity",
					"type":"Boolean",
					"title":"is a Call Activity",
					"value":false,
					"description":"a Call Activity is a wrapper for a globally defined Sub-Process that is reused in the current process.",
					"readonly":true,
					"optional":"true",
					"refToView":"callActivity"
				}**/
			]
		},
		// end custom activity properties
		{
			"name":"operation",
			"properties": [
				{
					"id":"operationname",
					"type":"String",
					"title":"OperationName",
					"value":"",
					"description":"The descriptive name for the operation element.",
					"readonly":false,
					"optional":"true"
				},
				{
					"id":"inmessagename",
					"type":"String",
					"title":"InMessageName",
					"value":"",
					"description":"The descriptive name for the InMessage element",
					"readonly":false,
					"optional":"true"
				},
				{
					"id":"inmsgitemkind",
					"type":"Choice",
					"title":"InMessageItemKind",
					"value":"Information",
					"description":"This defines the nature of the Item. Possible values are Physical or Information. The default value is Information.",
					"readonly":false,
					"optional":true,
					"items": [
						{
							"id":"c1",
							"title":"Physical",
							"value":"Physical"
						},
						{
							"id":"c2",
							"title":"Information",
							"value":"Information"
						}
					]
				},
				{
					"id":"inmsgstructure",
					"type":"String",
					"title":"InMessageStructure",
					"value":"",
					"description":"This defines the nature of the Item. Possible values are Physical or Information. The default value is Information.",
					"readonly":false,
					"optional":true
				},
				{
					"id":"inmsgimport",
					"type":"Complex",
					"title":"InMessageImport",
					"value":"",
					"description":"Identifies the location of the data structure and its format. If the importType attribute is left unspecified, the typeLanguage specified in the Definitions is assumed.",
					"readonly":false,
					"optional":true,
					"complexItems": [
						{
				        	"id":"c1",
				        	"type":"String",
				        	"width":200,
				        	"value":"",
				        	"name":"ImportType",
				        },
						{
				        	"id":"c2",
				        	"type":"String",
				        	"width":100,
				        	"value":"",
				        	"name":"Location"
				        },
						{
				        	"id":"c3",
				        	"type":"String",
				        	"width":200,
				        	"value":"",
				        	"name":"Namespace",
				        }
					]
				},
				{
					"id":"inmsgiscollection",
					"type":"Boolean",
					"title":"InMessageIsCollection",
					"value":false,
					"description":"Setting this flag to true indicates that the actual data type is a collection.",
					"readonly":false,
					"optional":true
				},
				{
					"id":"outmessagename",
					"type":"String",
					"title":"OutMessageName",
					"value":"",
					"description":"The descriptive name for the OutMessage element",
					"readonly":false,
					"optional":"true"
				},
				{
					"id":"outmsgitemkind",
					"type":"Choice",
					"title":"OutMessageItemKind",
					"value":"Information",
					"description":"This defines the nature of the Item. Possible values are Physical or Information. The default value is Information.",
					"readonly":false,
					"optional":true,
					"items": [
						{
							"id":"c1",
							"title":"Physical",
							"value":"Physical"
						},
						{
							"id":"c2",
							"title":"Information",
							"value":"Information"
						}
					]
				},
				{
					"id":"outmsgstructure",
					"type":"String",
					"title":"OutMessageStructure",
					"value":"",
					"description":"This defines the nature of the Item. Possible values are Physical or Information. The default value is Information.",
					"readonly":false,
					"optional":true
				},
				{
					"id":"outmsgimport",
					"type":"Complex",
					"title":"OutMessageImport",
					"value":"",
					"description":"Identifies the location of the data structure and its format. If the importType attribute is left unspecified, the typeLanguage specified in the Definitions is assumed.",
					"readonly":false,
					"optional":true,
					"complexItems": [
						{
				        	"id":"c1",
				        	"type":"String",
				        	"width":200,
				        	"value":"",
				        	"name":"ImportType",
				        },
						{
				        	"id":"c2",
				        	"type":"String",
				        	"width":100,
				        	"value":"",
				        	"name":"Location"
				        },
						{
				        	"id":"c3",
				        	"type":"String",
				        	"width":200,
				        	"value":"",
				        	"name":"Namespace",
				        }
					]
				},
				{
					"id":"outmsgiscollection",
					"type":"Boolean",
					"title":"OutMessageIsCollection",
					"value":false,
					"description":"Setting this flag to true indicates that the actual data type is a collection.",
					"readonly":false,
					"optional":true
				}
			]
		},
		{
			"name" : "loopcharacteristics",
			"properties" : [
				{
					"id":"looptype",
					"type":"Choice",
					"title":"LoopType",
					"value":"None",
					"description":"",
					"readonly":false,
					"optional":false,
					"refToView":"",
					"items": [
						{
							"id":"c1",
							"title":"None",
							"value":"None",
							"refToView":"none"
						},
						{
							"id":"c2",
							"title":"Standard",
							"value":"Standard",
							"icon" : "activity/list/looptype.standard.png",
							"refToView":"loop"
						},
						{
							"id":"c3",
							"title":"MI Parallel",
							"value":"Parallel",
							"icon" : "activity/list/mi.parallel.png",
							"refToView":"parallel"
						},
						{
							"id":"c4",
							"title":"MI Sequential",
							"value":"Sequential",
							"icon" : "activity/list/mi.sequential.png",
							"refToView":"sequential"
						}	
					]
				},
				{
					"id":"testbefore",
					"type":"Boolean",
					"title":"TestBefore",
					"value":false,
					"description":"Flag that controls whether the loop condition is evaluated at the beginning (testBefore = true) or at the end (testBefore = false)of the loop iteration.",
				},
				{
					"id":"loopcondition",
					"type":"String",
					"title":"LoopCondition",
					"value":"",
					"description":"",
					"readonly":false,
					"optional":false
				},
				{
					"id":"loopmaximum",
					"type":"Integer",
					"title":"LoopMaximum",
					"description":"",
					"readonly":false,
					"optional":true,
					"refToView":"",
					"min":"0"
				},
				{
					"id":"loopcardinality",
					"type":"String",
					"title":"LoopCardinality",
					"value":"",
					"description":"A numeric Expression that controls the number of Activity instances that will be created. This Expression MUST evaluate to an integer.",
					"readonly":false,
					"optional":true
				},
				{
					"id":"loopdatainput",
					"type":"String",
					"title":"LoopDataInput",
					"value":"",
					"description":"A reference to a DataInput which is part of the Activity InputOutputSpecification. This DataInput is used to determine the number of Activity instances, one Activity instance per item in the collection of data stored in that DataInput element.",
					"readonly":false,
					"optional":true
				},
				{
					"id":"loopdataoutput",
					"type":"String",
					"title":"LoopDataInput",
					"value":"",
					"description":"A reference to a DataOutput which is part of the Activity InputOutputSpecification.",
					"readonly":false,
					"optional":true
				},
				{
					"id":"inputdataitem",
					"type":"String",
					"title":"InputDataItem",
					"value":"",
					"description":"A Property, representing for every Activity instance the single item of the collection stored in the loopDataInput.",
					"readonly":false,
					"optional":true
				},
				{
					"id":"outputdataitem",
					"type":"String",
					"title":"OutputDataItem",
					"value":"",
					"description":"A Property, representing for every Activity instance the single item of the collection stored in the loopDataOutput.",
					"readonly":false,
					"optional":true
				},
				/**{
					"id":"behavior",
					"type":"Choice",
					"title":"Behavior",
					"description":"The attribute behavior acts as a shortcut for specifying when events shall be thrown from an Activity instance that is about to complete. It can assume values of none, one, all, and complex.",
					"value":"all",
					"items": [
				        {
				        	"id":"cnone",
				        	"value":"None",
				        	"title":"None"
				        },
				        {
				        	"id":"cone",
				        	"value":"One",
				        	"title":"One"
				        },
				        {
				        	"id":"call",
				        	"value":"All",
				        	"title":"All"
				        },
				        {
				        	"id":"ccomplex",
				        	"value":"Complex",
				        	"title":"Complex"
				        }
					]
				},**/
				{
					"id":"complexbehaviordefinition",
					"type":"Complex",
					"title":"ComplexBehaviorDefinition:",
					"description":"Controls when and which Events are thrown in case behavior is set to complex.",
					"value":"",
					"optional":true,
					"readonly":false,
					"complexItems": [
				        {
				        	"id":"cexpression",
				        	"type":"String",
				        	"width":200,
				        	"value":"",
				        	"name":"Condition",
				        },
				        {
				        	"id":"ceventdefinition",
				        	"type":"Choice",
				        	"value":"signal",
				        	"width":100,
				        	"name":"EventDefinition",
				        	"items":[
			        	        {
			        	        	"id":"cnone",
			        	        	"value":"None",
			        	        	"title":"None"
			        	        },
			        	        {
			        	        	"id":"cmessage",
			        	        	"value":"Message",
			        	        	"title":"Message"
			        	        },
			        	        {
			        	        	"id":"cescalation",
			        	        	"value":"Escalation",
			        	        	"title":"Escalation"
			        	        },
			        	        {
			        	        	"id":"cerror",
			        	        	"value":"Error",
			        	        	"title":"Error"
			        	        },
			        	        {
			        	        	"id":"ccancel",
			        	        	"value":"Cancel",
			        	        	"title":"Cancel"
			        	        },
			        	        {
			        	        	"id":"ccompensation",
			        	        	"value":"Compensation",
			        	        	"title":"Compensation"
			        	        },
			        	        {
			        	        	"id":"csignal",
			        	        	"value":"Signal",
			        	        	"title":"Signal"
			        	        },
			        	        {
			        	        	"id":"cterminate",
			        	        	"value":"Terminate",
			        	        	"title":"Terminate"
			        	        }
				        	]
				        }
					]
				},
				/**{
					"id":"completioncondition",
					"type":"String",
					"title":"CompletionCondition:",
					"description":"This attribute defines a Boolean Expression that when evaluated to true, cancels the remaining Activity instances and produces a token.",
					"value":""
				},**/
				{
		        	"id":"onebehavioreventref",
		        	"type":"Choice",
		        	"value":"signal",
		        	"title":"OneBehaviorEventRef",
		        	"description":"The EventDefinition which is thrown when behavior is set to one and the first internal Activity instance has completed.",
		        	"items":[
	        	        {
	        	        	"id":"cnone",
	        	        	"value":"None",
	        	        	"title":"None"
	        	        },
	        	        {
	        	        	"id":"cmessage",
	        	        	"value":"Message",
	        	        	"title":"Message"
	        	        },
	        	        {
	        	        	"id":"cescalation",
	        	        	"value":"Escalation",
	        	        	"title":"Escalation"
	        	        },
	        	        {
	        	        	"id":"cerror",
	        	        	"value":"Error",
	        	        	"title":"Error"
	        	        },
	        	        {
	        	        	"id":"ccancel",
	        	        	"value":"Cancel",
	        	        	"title":"Cancel"
	        	        },
	        	        {
	        	        	"id":"ccompensation",
	        	        	"value":"Compensation",
	        	        	"title":"Compensation"
	        	        },
	        	        {
	        	        	"id":"csignal",
	        	        	"value":"Signal",
	        	        	"title":"Signal"
	        	        },
	        	        {
	        	        	"id":"cterminate",
	        	        	"value":"Terminate",
	        	        	"title":"Terminate"
	        	        }
		        	]
		        },
		        {
		        	"id":"nonebehavioreventref",
		        	"type":"Choice",
		        	"value":"signal",
		        	"title":"NoneBehaviorEventRef",
		        	"items":[
	        	        {
	        	        	"id":"cnone",
	        	        	"value":"None",
	        	        	"title":"None"
	        	        },
	        	        {
	        	        	"id":"cmessage",
	        	        	"value":"Message",
	        	        	"title":"Message"
	        	        },
	        	        {
	        	        	"id":"cescalation",
	        	        	"value":"Escalation",
	        	        	"title":"Escalation"
	        	        },
	        	        {
	        	        	"id":"cerror",
	        	        	"value":"Error",
	        	        	"title":"Error"
	        	        },
	        	        {
	        	        	"id":"ccancel",
	        	        	"value":"Cancel",
	        	        	"title":"Cancel"
	        	        },
	        	        {
	        	        	"id":"ccompensation",
	        	        	"value":"Compensation",
	        	        	"title":"Compensation"
	        	        },
	        	        {
	        	        	"id":"csignal",
	        	        	"value":"Signal",
	        	        	"title":"Signal"
	        	        },
	        	        {
	        	        	"id":"cterminate",
	        	        	"value":"Terminate",
	        	        	"title":"Terminate"
	        	        }
		        	]
		        }
			]
		},
		// start custom loop characteristics
		{
			"name" : "customloopcharacteristics",
			"properties" : [
				{
					"id":"looptype",
					"type":"Choice",
					"title":"LoopType",
					"value":"None",
					"description":"",
					"readonly":true,
					"optional":false,
					"refToView":"",
					"items": [
						{
							"id":"c1",
							"title":"None",
							"value":"None",
							"refToView":"none"
						},
						{
							"id":"c2",
							"title":"Standard",
							"value":"Standard",
							"icon" : "activity/list/looptype.standard.png",
							"refToView":"loop"
						},
						{
							"id":"c3",
							"title":"MI Parallel",
							"value":"Parallel",
							"icon" : "activity/list/mi.parallel.png",
							"refToView":"parallel"
						},
						{
							"id":"c4",
							"title":"MI Sequential",
							"value":"Sequential",
							"icon" : "activity/list/mi.sequential.png",
							"refToView":"sequential"
						}	
					]
				},
				{
					"id":"completioncondition",
					"type":"String",
					"title":"CompletionCondition:",
					"description":"This attribute defines a Boolean Expression that when evaluated to true, cancels the remaining Activity instances and produces a token.",
					"value":""
				}
			]
		},
		// end custom loop characteristics
		{
			"name" : "task",
			"properties" : [
				{
					"id":"tasktype",
					"type":"Choice",
					"title":"TaskType",
					"value":"None",
					"description":"",
					"readonly":false,
					"optional":false,
					"refToView":"",
					"items":[
						{
							"id":"c1",
							"title":"None",
							"value":"None",
							"refToView":"none"
						},
						{
							"id":"c2",
							"title":"Send",
							"value":"Send",
							"icon" : "activity/list/type.send.png",
							"refToView":"sendTask"
						},
						{
							"id":"c3",
							"title":"Receive",
							"value":"Receive",
							"icon" : "activity/list/type.receive.png",
							"refToView":"receiveTask"
						},
						{
							"id":"c4",
							"title":"User",
							"value":"User",
							"icon" : "activity/list/type.user.png",
							"refToView":"userTask"
						},
						{
							"id":"c5",
							"title":"Manual",
							"value":"Manual",
							"icon" : "activity/list/type.manual.png",
							"refToView":"manualTask"	
						},
						{
							"id":"c6",
							"title":"Service",
							"value":"Service",
							"icon" : "activity/list/type.service.png",
							"refToView":"serviceTask"
						},
						{
							"id":"c7",
							"title":"Business Rule",
							"value":"Business Rule",
							"icon" : "activity/list/type.business.rule.png",
							"refToView":"businessRuleTask"
						},
						{
							"id":"c8",
							"title":"Script",
							"value":"Script",
							"icon" : "activity/list/type.script.png",
							"refToView":"scriptTask"
						}
					]
				},
				/**{
					"id":"implementation",
					"type":"Choice",
					"title":"Implementation",
					"value":"webService",
					"description":"",
					"readonly":false,
					"optional":false,
					"refToView":"",
					"items": [
						{
							"id":"c1",
							"title":"HumanTaskWebService",
							"value":"humanTaskWebService",
							"refToView":""
						},
						{
							"id":"c2",
							"title":"BuisnessRuleWebService",
							"value":"BuisnessRuleWebService",
							"refToView":""
						},
						{
							"id":"c1",
							"title":"WebService",
							"value":"webService",
							"refToView":""
						},
						{
							"id":"c2",
							"title":"Other",
							"value":"other",
							"refToView":""
						},
						{
							"id":"c2",
							"title":"Unspecified",
							"value":"unspecified",
							"refToView":""
						}
					]
				},**/
				/**{
					"id":"resources",
					"type":"Complex",
					"title":"Resources",
					"value":"",
					"description":"",
					"readonly":false,
					"optional":true,
					"complexItems": [
						{
							"id":"resource_type",
							"name":"Type",
							"type":"Choice",
							"value":"",
							"width":100,
							"optional":false,
							"items": [
								{
									"id":"c1",
									"title":"Performer",
									"value":"Performer",
									"refToView":""
								},
								{
									"id":"c2",
									"title":"HumanPerformer",
									"value":"HumanPerformer",
									"refToView":""
								},
								{
									"id":"c3",
									"title":"PotentialOwner",
									"value":"PotentialOwner",
									"refToView":""
								}
							]
						},
						{
							"id":"resource",
							"name":"Resource",
							"type":"String",
							"value":"",
							"width":200,
							"optional":true
						},
						{
							"id":"resourceassignmentexpr",
							"name":"ResourceAssignmentExpression",
							"type":"String",
							"value":"",
							"width":200,
							"optional":true
						},
						{
							"id":"language",
							"name":"Language",
							"type":"String",
							"value":"",
							"width":100,
							"optional":true
						},
						{
							"id":"evaluatestotype",
							"name":"EvaluatesToType",
							"type":"String",
							"value":"",
							"width":200,
							"optional":true
						}
					]
				},**/
				{
					"id":"messageref",
					"type":"String",
					"title":"MessageRef",
					"value":"",
					"description":"",
					"readonly":false,
					"optional":false,
					"refToView":"",
					"length":"50"
				},
				{
					"id":"operationref",
					"type":"String",
					"title":"OperationRef",
					"value":"",
					"description":"ID-Reference to an operation definition.",
					"readonly":false,
					"optional":true
				},
				{
					"id":"instantiate",
					"type":"Boolean",
					"title":"Instantiate",
					"value":false,
					"description":"",
					"readonly":false,
					"optional":false,
					"refToView":""
				},
				{
					"id":"script",
					"type":"Text",
					"title":"Script",
					"value":"",
					"description":"Script that can be run when the Task is performed. Related to the Script TaskType, if a script is not included, then the Task will act equivalent to a TaskType of None.",
					"readonly":false,
					"optional":true
				},
				{
					"id":"script_language",
					"type":"Choice",
					"title":"ScriptLanguage",
					"value":"java",
					"description":"Defines the script language. The script language MUST be provided if a script is provided.",
					"readonly":false,
					"optional":true,
					"items": [
						{
							"id": "c1",
							"title":"java",
							"value":"java"
						},
						{
							"id": "c2",
							"title": "mvel",
							"value": "mvel"
						}
					]                                               
				},
				{
					"id":"inmessagetype",
					"type":"String",
					"title":"In Message",
					"value":"",
					"description":"Type of input message",
					"readonly":false,
					"optional":true
				},
				{
					"id":"outmessagetype",
					"type":"String",
					"title":"Out Message",
					"value":"",
					"description":"Type of output message",
					"readonly":false,
					"optional":true
				},
				/**{
					"id":"servicename",
					"type":"String",
					"title":"servicename",
					"value":"",
					"description":"name of service",
					"readonly":false,
					"optional":true
				},**/
				{
					"id":"namespace",
					"type":"String",
					"title":"Namespace",
					"value":"",
					"description":"Defines the XML namespace of the elements inside the document.",
					"readonly":false,
					"optional":true,
					"length":"50"
				},
				{
					"id":"operation",
					"type":"String",
					"title":"operation",
					"value":"",
					"description":"operation",
					"readonly":false,
					"optional":true
				},
				/**{
					"id":"porttype",
					"type":"String",
					"title":"porttype",
					"value":"",
					"description":"porttype",
					"readonly":false,
					"optional":true
				},**/
				/**{
					"id":"wsdlUrl",
					"type":"String",
					"title":"wsdlUrl",
					"value":"",
					"description":"wsdlUrl",
					"readonly":false,
					"optional":true
				},**/
				{
					"id":"bgcolor",
					"type":"Color",
					"title":"BackgroundColor",
					"value":"#b1c2d6",
					"gradient":true,
					"description":"",
					"readonly":false,
					"optional":false,
					"refToView":"fill_el",
					"fill":true,
					"stroke":false
				}		
			]
		},
		// start custom task properties
		{
			"name" : "customtask",
			"properties" : [
				/**{
					"id":"implementation",
					"type":"Choice",
					"title":"Implementation",
					"value":"other",
					"description":"",
					"readonly":true,
					"optional":false,
					"refToView":"",
					"items": [
						{
							"id":"c1",
							"title":"HumanTaskWebService",
							"value":"humanTaskWebService",
							"refToView":""
						},
						{
							"id":"c2",
							"title":"BuisnessRuleWebService",
							"value":"BuisnessRuleWebService",
							"refToView":""
						},
						{
							"id":"c1",
							"title":"WebService",
							"value":"webService",
							"refToView":""
						},
						{
							"id":"c2",
							"title":"Other",
							"value":"other",
							"refToView":""
						},
						{
							"id":"c2",
							"title":"Unspecified",
							"value":"unspecified",
							"refToView":""
						}
					]
				},**/
				{
					"id":"bgcolor",
					"type":"Color",
					"title":"BackgroundColor",
					"value":"#b1c2d6",
					"gradient":true,
					"description":"",
					"readonly":false,
					"optional":false,
					"refToView":"fill_el",
					"fill":true,
					"stroke":false
				}		
			]
		},		
		// end custom task properties
		{
			"name" : "subprocess",
			"properties" : [
				/**{
					"id": "subprocesstype",
					"type": "Choice",
					"title": "subProcessType",
					"value": "Embedded",
					"description": "SubProcessType is an attribute that defines whether the Sub-Process details are embedded within the higher level Process or refers to another, re-usable Process. The default is Embedded.",
					"optional": false,
					"refToView": "",
					"items": [
						{
							"id": "choice1",
							"title":"Embedded",
							"value":"Embedded"
						},
						{
							"id": "choice2",
							"title": "Independent",
							"value": "Independent"
						},
						{
							"id": "choice3",
							"title": "Reusable",
							"value": "Reusable"
						}
					]
				},**/
				/**{
					"id":"isatransaction",
					"type":"Boolean",
					"title":"is a Transaction",
					"value":false,
					"description":"A Transaction is a set of activities that logically belongs together; it might follow a specified transaction protocol.",
					"readonly":false,
					"optional":false,
					"refToView":"border"
				},**/
				/**{
					"id":"transaction",
					"type":"String",
					"title":"TransactionRef",
					"value":"",
					"description":"",
					"readonly":false,
					"optional":true,
					"refToView":"",
					"length":"50"
				},**/
				/**{
					"id":"transactionmethod",
					"type":"Choice",
					"title":"TransactionMethod",
					"value":"compensate",
					"description":"The technique that will be used to undo a transaction that has been cancelled.",
					"readonly":false,
					"optional":true,
					"items": [
						{
							"id":"c1",
							"title":"Compensate",
							"value":"compensate"
						},
						{
							"id":"c2",
							"title":"Store",
							"value":"store"
						},
						{
							"id":"c3",
							"title":"Image",
							"value":"image"
						}
					]
				},**/
				{
					"id":"isadhoc",
					"type":"Boolean",
					"title":"isAdHoc",
					"value":false,
					"description":"",
					"readonly":false,
					"optional":false,
					"refToView":"adhoc"
				},
				{
					"id":"adhocordering",
					"type":"Choice",
					"title":"",
					"value":"Sequential",
					"description":"",
					"readonly":false,
					"optional":false,
					"refToView":"",
					"items": [
						{
							"id":"c1",
							"title":"Sequential",
							"value":"Sequential",
							"icon" : "activity/list/mi.sequential.png",
							"refToView":"sequential"
						},
						{
							"id":"c2",
							"title":"Parallel",
							"value":"Parallel",
							"icon" : "activity/list/mi.parallel.png",
							"refToView":"parallel"
						}
					]
				},
				{
					"id":"adhoccompletioncondition",
					"type":"String",
					"title":"AdHocCompletionCondition",
					"value":"",
					"description":"",
					"readonly":false,
					"optional":true,
					"refToView":""
				},
				{
					"id":"adhoccancelremaininginstances",
					"type":"Boolean",
					"title":"AdhocCancelRemainingInstances",
					"value":true,
					"description":"This attribute is used only if ordering is parallel. It determines whether running instances are cancelled when the completionCondition becomes true.",
					"readonly":false,
					"optional":true
				}
				/**,
				{
					"id":"entry",
					"type":"DiagramLink",
					"title":"SubProcessRef",
					"value":"",
					"description":"",
					"readonly":false,
					"optional":false,
					"refToView":"u"
				}**/
				/**,
				{
					"id":"diagramref",
					"type":"String",
					"title":"DiagramRef",
					"value":"",
					"description":"",
					"readonly":false,
					"optional":false,
					"refToView":""
				},
				{
					"id":"processref",
					"type":"String",
					"title":"ProcessRef",
					"value":"",
					"description":"",
					"readonly":false,
					"optional":false,
					"refToView":""
				} **/
				/**,**/
				/**{
					"id":"inputmaps",
					"type":"String",
					"title":"InputMaps",
					"value":"",
					"description":"",
					"readonly":false,
					"optional":false,
					"refToView":""
				},**/
				/**{
					"id":"outputmaps",
					"type":"String",
					"title":"OutputMaps",
					"value":"",
					"description":"",
					"readonly":false,
					"optional":false,
					"refToView":""
				}**/
			]
		},
		{
			"name" : "adhocsubprocess",
			"properties" : [
				/** {
					"id": "subprocesstype",
					"type": "Choice",
					"title": "subProcessType",
					"value": "AdHoc",
					"description": "SubProcessType is an attribute that defines whether the Sub-Process details are embedded within the higher level Process or refers to another, re-usable Process. The default is Embedded.",
					"optional": false,
					"refToView": "",
					"items": [
						{
							"id": "choice1",
							"title":"Embedded",
							"value":"Embedded"
						},
						{
							"id": "choice2",
							"title": "Independent",
							"value": "Independent"
						},
						{
							"id": "choice3",
							"title": "Reusable",
							"value": "Reusable"
						}
					]
				},**/
				/**{
					"id":"isatransaction",
					"type":"Boolean",
					"title":"is a Transaction",
					"value":false,
					"description":"A Transaction is a set of activities that logically belongs together; it might follow a specified transaction protocol.",
					"readonly":false,
					"optional":false,
					"refToView":"border"
				},**/
				/**{
					"id":"transaction",
					"type":"String",
					"title":"TransactionRef",
					"value":"",
					"description":"",
					"readonly":false,
					"optional":true,
					"refToView":"",
					"length":"50"
				},**/
				/**{
					"id":"transactionmethod",
					"type":"Choice",
					"title":"TransactionMethod",
					"value":"compensate",
					"description":"The technique that will be used to undo a transaction that has been cancelled.",
					"readonly":false,
					"optional":true,
					"items": [
						{
							"id":"c1",
							"title":"Compensate",
							"value":"compensate"
						},
						{
							"id":"c2",
							"title":"Store",
							"value":"store"
						},
						{
							"id":"c3",
							"title":"Image",
							"value":"image"
						}
					]
				},**/
				{
					"id":"isadhoc",
					"type":"Boolean",
					"title":"isAdHoc",
					"value":true,
					"description":"",
					"readonly":false,
					"optional":false,
					"refToView":"adhoc"
				},
				{
					"id":"adhocordering",
					"type":"Choice",
					"title":"AdHocOrdering",
					"value":"Sequential",
					"description":"",
					"readonly":false,
					"optional":false,
					"refToView":"none",
					"items": [
						{
							"id":"c1",
							"title":"Sequential",
							"value":"Sequential",
							"icon" : "activity/list/mi.sequential.png",
							"refToView":"misequential"
						},
						{
							"id":"c2",
							"title":"Parallel",
							"value":"Parallel",
							"icon" : "activity/list/mi.parallel.png",
							"refToView":"miparallel"
						}
					]
				},
				{
					"id":"adhoccompletioncondition",
					"type":"String",
					"title":"AdHocCompletionCondition",
					"value":"",
					"description":"",
					"readonly":false,
					"optional":true,
					"refToView":""
				},
				{
					"id":"adhoccancelremaininginstances",
					"type":"Boolean",
					"title":"AdhocCancelRemainingInstances",
					"value":true,
					"description":"This attribute is used only if ordering is parallel. It determines whether running instances are cancelled when the completionCondition becomes true.",
					"readonly":false,
					"optional":true
				},
				/**{
					"id":"entry",
					"type":"DiagramLink",
					"title":"SubProcessRef",
					"value":"",
					"description":"",
					"readonly":false,
					"optional":false,
					"refToView":"u"
				},**/
				/**{
					"id":"diagramref",
					"type":"String",
					"title":"DiagramRef",
					"value":"",
					"description":"",
					"readonly":false,
					"optional":false,
					"refToView":""
				},**/
				/**{
					"id":"processref",
					"type":"String",
					"title":"ProcessRef",
					"value":"",
					"description":"",
					"readonly":false,
					"optional":false,
					"refToView":""
				}
				/**,**/
				/**{
					"id":"inputmaps",
					"type":"String",
					"title":"InputMaps",
					"value":"",
					"description":"",
					"readonly":false,
					"optional":false,
					"refToView":""
				},**/
				/**{
					"id":"outputmaps",
					"type":"String",
					"title":"OutputMaps",
					"value":"",
					"description":"",
					"readonly":false,
					"optional":false,
					"refToView":""
				}**/
			]
		},
		{
			"name" : "gateway",
			"properties" : [
				/**{
					"id":"assignments",
					"type":"Dataassignment",
					"title":"Assignments",
					"value":"",
					"description":"",
					"readonly":false,
					"optional":true,
					"complexItems": [
						{
							"id":"to",
							"name":"To",
							"type":"String",
							"value":"",
							"width":100,
							"optional":false 
						},
						{
							"id":"from",
							"name":"From",
							"type":"String",
							"value":"",
							"width":100,
							"optional":false
						},
						{
							"id":"assigntime",
							"name":"AssignTime",
							"type":"Choice",
							"value":"Start",
							"width":100,
							"optional":true,
							"items": [
								{
									"id":"c1",
									"title":"Start",
									"value":"Start",
									"refToView":""
								},
								{
									"id":"c2",
									"title":"End",
									"value":"End",
									"refToView":""
								}
							]
						}
					]
				}**/
				/**,
				{
					"id":"gates",
					"type":"String",
					"title":"Gates",
					"value":"",
					"description":"",
					"readonly":false,
					"optional":true,
					"refToView":"",
					"length":"50",
					"wrapLines":true
				}**/
				/**,
				{
					"id":"gates_outgoingsequenceflow",
					"type":"String",
					"title":"[Gates] OutgoingSequenceFlow",
					"value":"",
					"description":"",
					"readonly":false,
					"optional":true,
					"refToView":"",
					"length":"50",
					"wrapLines":true
				},
				{
					"id":"gates_assignments",
					"type":"String",
					"title":"[Gates] Assignments",
					"value":"",
					"description":"",
					"readonly":false,
					"optional":true,
					"refToView":"",
					"length":"50",
					"wrapLines":true
				}**/
			]
		},
		{
			"name" : "artifact",
			"properties" : [
			]
		},
		{
			"name":"process",
			"properties":[
				{
					"id":"processtype",
					"type":"Choice",
					"title":"ProcessType",
					"value":"None",
					"description":"The processType attribute Provides additional information about the level of abstraction modeled by this Process.",
					"readonly":false,
					"optional":false,
					"popular" : true,
					"items": [
						{
							"id":"c1",
							"title":"None",
							"value":"None"
						},
						{
							"id":"c2",
							"title":"Executable",
							"value":"Executable"
						},
						{
							"id":"c3",
							"title":"Non-Executable",
							"value":"Non-Executable"
						},
						{
							"id":"c4",
							"title":"Public",
							"value":"Public"
						}
					]
				},
				{
					"id":"isclosed",
					"type":"Boolean",
					"title":"isClosed",
					"value":false,
					"description":"A Boolean value specifying whether interactions, such as sending and receiving Messages and Events, not modeled in the Process can occur when the Process is executed or performed. If the value is true, they MAY NOT occur. If the value is false, they MAY occur.",
					"readonly":false,
					"optional":false
				}
			]
		},
		{
			"name" : "pool",
			"properties" : [
				{
					"id" : "multiinstance",
					"type" : "Boolean",
					"title" : "is Multi Instance Participant",
					"value" : false,
					"description" : "",
					"readonly" : false,
					"optional" : true,
					"refToView" : "multiInstance"
				},
				{
					"id":"boundaryvisible",
					"type":"Boolean",
					"title":"BoundaryVisible",
					"value":true,
					"description":"Defines if the rectangular boundary for the Pool is visible.",
					"readonly":false,
					"optional":false,
					"refToView": ["border", "c", "caption", "captionDisableAntialiasing"],
					"visible":false
				},
				{
					"id":"processname",
					"type":"String",
					"title":"ProcessName",
					"value":"",
					"description":"",
					"readonly":false,
					"optional":false,
					"refToView":"",
					"length":"30"
				},
				{
					"id":"status",
					"type":"Choice",
					"title":"Status",
					"value":"None",
					"description":"",
					"readonly":false,
					"optional":false,
					"popular" : true,
					"items": [
						{
							"id":"c1",
							"title":"None",
							"value":"None"
						},
						{
							"id":"c2",
							"title":"Ready",
							"value":"Ready"
						},
						{
							"id":"c3",
							"title":"Active",
							"value":"Active"
						},
						{
							"id":"c4",
							"title":"Cancelled",
							"value":"Cancelled"
						},
						{
							"id":"c5",
							"title":"Aborting",
							"value":"Aborting"
						},
						{
							"id":"c6",
							"title":"Aborted",
							"value":"Aborted"
						},
						{
							"id":"c7",
							"title":"Completing",
							"value":"Completing"
						},
						{
							"id":"c8",
							"title":"Completed",
							"value":"Completed"
						}
					]
				},
				{
					"id":"adhoc",
					"type":"Boolean",
					"title":"AdHoc",
					"value":false,
					"description":"",
					"readonly":false,
					"optional":false
				},
				{
					"id":"adhocordering",
					"type":"Choice",
					"title":"AdHocOrdering",
					"value":"Parallel",
					"description":"",
					"readonly":false,
					"optional":false,
					"refToView":"none",
					"items": [
						{
							"id":"c1",
							"title":"Sequential",
							"value":"Sequential",
							"icon" : "activity/list/mi.sequential.png",
							"refToView":"misequential"
						},
						{
							"id":"c2",
							"title":"Parallel",
							"value":"Parallel",
							"icon" : "activity/list/mi.parallel.png",
							"refToView":"miparallel"
						}
					]
				},
				{
					"id":"adhoccompletioncondition",
					"type":"String",
					"title":"AdHocCompletionCondition",
					"value":"",
					"description":"",
					"readonly":false,
					"optional":true,
					"refToView":"",
					"length":"50"
				},
				{
					"id":"suppressjoinfailure",
					"type":"Boolean",
					"title":"SuppressJoinFailure",
					"value":false,
					"description":"",
					"readonly":false,
					"optional":false
				},
				{
					"id":"enableinstancecompensation",
					"type":"Boolean",
					"title":"EnableBooleanCompensation",
					"value":false,
					"description":"",
					"readonly":false,
					"optional":false
				},
				{
					"id":"processcategories",
					"type":"String",
					"title":"ProcessCategories",
					"value":"",
					"description":"",
					"readonly":false,
					"optional":true,
					"refToView":"",
					"length":"50",
					"wrapLines":true
				},
				{
					"id":"processdocumentation",
					"type":"String",
					"title":"Process Documentation",
					"value":"",
					"description":"",
					"readonly":false,
					"optional":true,
					"refToView":"",
					"length":"",
					"wrapLines":true
				}
			]
		},
		{
			"name" : "dataAssociation",
			"properties" : [
			    {
					"id":"assignments",
					"type":"Dataassignment",
					"title":"Assignments",
					"value":"",
					"description":"",
					"readonly":false,
					"optional":true,
					"popular":true,
					"complexItems": [
						{
							"id":"to",
							"name":"To",
							"type":"String",
							"value":"",
							"width":100,
							"optional":false 
						},
						{
							"id":"from",
							"name":"From",
							"type":"String",
							"value":"",
							"width":100,
							"optional":false
						}
						/**,**/
						/**{
							"id":"language",
							"name":"Language",
							"type":"String",
							"value":"",
							"width":100,
							"optional":true
						}**/
					]
			    },
			    {
					"id":"transformation",
					"title":"Transformation",
					"type":"String",
					"value":"",
					"optional":true,
					"popular":true
				}
			]
		}
	],
	"stencils" : [
 		{
			"type":				"node",
			"id":				"BPMNDiagram",
			"title":			"BPMN-Diagram",
			"groups":			["Diagram"],
			"description":		"A BPMN 2.0 Diagram.",
			"view":				"diagram.svg",
			"icon":				"diagram.png",
			"mayBeRoot":		true,
			"hide":				true,
			"propertyPackages" : ["diagram"],
			"roles":			["canContainArtifacts"],
			"properties": [
				{
					"id":"name",
					"type":"String",
					"title":"Name",
					"value":"MyIssue",
					"description":"The descriptive name of the BPMN element.",
					"readonly":false,
					"optional":true,
					"length":"",
					"wrapLines" : true,
					"refToView":"text_name",
					"popular" : true	
				},
				{
					"id":"documentation",
					"type":"Text",
					"title":"Documentation",
					"value":"",
					"description":"This attribute is used to annotate the BPMN element, such as descriptions and other documentation.",
					"readonly":false,
					"optional":true,
					"length":"",
					"wrapLines":true,
					"popular" : true
				}
			]
		},
		
		// Acitvities
		{
			"type" : 			"node",
			"id": 				"Task",
			"title" : 			"Task",
			"groups" : 			["Activities"],
			"description" : 	"A task is a unit of work - the job to be performed.",
			"view" : 			"activity/task.svg",
			"icon" : 			"activity/task.png",
			"propertyPackages" :[
				"baseAttributes",
				"flowElement",
				"activity",
				"task",
				/** "loopcharacteristics", **/
				"properties",
				"iospecification"
			],
			"roles" : 			[
				"all",
				"sequence_start",
				"sequence_end",
				"from_task_event",
				"to_task_event",
				"FromEventbasedGateway",
				"messageflow_start",
				"messageflow_end",
				"fromtoall",
				"ActivitiesMorph"
			],
			"properties": [
				{
					"id":"ruleFlowGroup",
					"type":"String",
					"title":"Ruleflow Group",
					"value":"",
					"description":"ruleFlowGroup",
					"readonly":false,
					"optional":true
				},
				{
					"id":"onEntryActions",
					"type":"Action",
					"title":"On Entry Actions",
					"value":"",
					"description":"on entry actions",
					"readonly":false,
					"optional":true
				},
				{
					"id":"onExitActions",
					"type":"Action",
					"title":"On Exit Actions",
					"value":"",
					"description":"on exit actions",
					"readonly":false,
					"optional":true
				},
				{
					"id":"taskName",
					"type":"String",
					"title":"Task Name",
					"value":"",
					"description":"Task Name",
					"readonly":false,
					"optional":true
				},
				{
					"id":"interface",
					"type":"String",
					"title":"Interface",
					"value":"",
					"description":"Interface",
					"readonly":false,
					"optional":true
				},
				{
					"id":"operation",
					"type":"String",
					"title":"Operation",
					"value":"",
					"description":"Operation",
					"readonly":false,
					"optional":true
				},
				{
					"id":"actors",
					"type":"String",
					"title":"Actors",
					"value":"",
					"description":"Comma-separated list of actors",
					"readonly":false,
					"optional":true
				},
				{
					"id":"groupid",
					"type":"String",
					"title":"GroupID",
					"value":"",
					"description":"Group id value.",
					"readonly":false,
					"optional":true
				}
				
			]
		},
		// start custom workitems

				{
					"type" : 			"node",
					"id": 				"Log",
					"title" : 			"Log",
					"groups" : 			["Service Tasks"],
					"description" : 	"",
					"view" : 			"activity/workitems/Log.svg",
						"icon" : 			"http://localhost:8080/drools-guvnor/rest/packages/examples/assets/defaultlogicon/binary",
					"propertyPackages" :[
						"customtask",
						"customactivity"
					],
					"roles" : 			[
						"all",
						"sequence_start",
						"sequence_end",
						"from_task_event",
						"to_task_event",
						"FromEventbasedGateway",
						"messageflow_start",
						"messageflow_end",
						"fromtoall",
						"ActivitiesMorph"
					],
					"properties": [
					 {
							"id":"tasktype",
							"type":"Choice",
							"title":"TaskType",
							"value":"Log",
							"description":"",
							"readonly":true,
							"optional":false,
							"refToView":"",
							"items":[
								{
									"id":"c1",
									"title":"None",
									"value":"None",
									"refToView":"none"
								},
								{
									"id":"c2",
									"title":"Send",
									"value":"Send",
									"icon" : "activity/list/type.send.png",
									"refToView":"sendTask"
								},
								{
									"id":"c3",
									"title":"Receive",
									"value":"Receive",
									"icon" : "activity/list/type.receive.png",
									"refToView":"receiveTask"
								},
								{
									"id":"c4",
									"title":"User",
									"value":"User",
									"icon" : "activity/list/type.user.png",
									"refToView":"userTask"
								},
								{
									"id":"c5",
									"title":"Manual",
									"value":"Manual",
									"icon" : "activity/list/type.manual.png",
									"refToView":"manualTask"	
								},
								{
									"id":"c6",
									"title":"Service",
									"value":"Service",
									"icon" : "activity/list/type.service.png",
									"refToView":"serviceTask"
								},
								{
									"id":"c7",
									"title":"Business Rule",
									"value":"Business Rule",
									"icon" : "activity/list/type.business.rule.png",
									"refToView":"businessRuleTask"
								},
								{
									"id":"c8",
									"title":"Script",
									"value":"Script",
									"icon" : "activity/list/type.script.png",
									"refToView":"scriptTask"
								}
							]
						},
						{
							"id":"name",
							"type":"String",
							"title":"Name",
							"value":"Log",
							"description":"The descriptive name of the BPMN element.",
							"readonly":false,
							"optional":true,
							"length":"",
							"wrapLines" : true,
							"refToView":"text_name"	
						},
						{
							"id":"documentation",
							"type":"Text",
							"title":"Documentation",
							"value":"", 
							"description":"This attribute is used to annotate the BPMN element, such as descriptions and other documentation.",
							"readonly":true,
							"optional":true,
							"length":"",
							"wrapLines":true,
							"popular" : true
						},
						{
							"id":"taskName",
							"type":"String",
							"title":"Task Name",
							"value":"Log",
							"description":"Task Name",
							"readonly":true,
							"optional":true
						},
						{
							"id":"datainputset",
							"type":"Datainput",
							"title":"DataInputSet",
							"value":"Message:String",
							"description":"An InputSet is a collection of DataInput elements that together define a valid set of data inputs.",
							"readonly":false,
							"optional":true,
						},  
						{
							"id":"dataoutputset",
							"type":"Dataoutput",
							"title":"DataOutputSet",
							"value":"",
							"description":"An OutputSet is a collection of DataOutputs elements that together may be produced as output from an Activity or Event.",
							"readonly":false,
							"optional":true,
						},
						{
							"id":"assignments",
							"type":"Dataassignment",
							"title":"Assignments",
							"value":"Message=",
							"description":"",
							"readonly":false,
							"optional":true,
						},
						{
							"id":"onEntryActions",
							"type":"Action",
							"title":"On Entry Actions",
							"value":"",
							"description":"on entry actions",
							"readonly":false,
							"optional":true
						},
						{
							"id":"onExitActions",
							"type":"Action",
							"title":"On Exit Actions",
							"value":"",
							"description":"on exit actions",
							"readonly":false,
							"optional":true
						},
						{
							"id":"script_language",
							"type":"Choice",
							"title":"ScriptLanguage",
							"value":"java",
							"description":"Defines the script language.",
							"readonly":false,
							"optional":true,
							"items": [
								{
									"id": "c1",
									"title":"java",
									"value":"java"
								},
								{
									"id": "c2",
									"title": "mvel",
									"value": "mvel"
								}
							]                                        
						}
					]
				},
				
				{
					"type" : 			"node",
					"id": 				"Email",
					"title" : 			"Email",
					"groups" : 			["Service Tasks"],
					"description" : 	"",
					"view" : 			"activity/workitems/Email.svg",
						"icon" : 			"http://localhost:8080/drools-guvnor/rest/packages/examples/assets/defaultemailicon/binary",
					"propertyPackages" :[
						"customtask",
						"customactivity"
					],
					"roles" : 			[
						"all",
						"sequence_start",
						"sequence_end",
						"from_task_event",
						"to_task_event",
						"FromEventbasedGateway",
						"messageflow_start",
						"messageflow_end",
						"fromtoall",
						"ActivitiesMorph"
					],
					"properties": [
					 {
							"id":"tasktype",
							"type":"Choice",
							"title":"TaskType",
							"value":"Email",
							"description":"",
							"readonly":true,
							"optional":false,
							"refToView":"",
							"items":[
								{
									"id":"c1",
									"title":"None",
									"value":"None",
									"refToView":"none"
								},
								{
									"id":"c2",
									"title":"Send",
									"value":"Send",
									"icon" : "activity/list/type.send.png",
									"refToView":"sendTask"
								},
								{
									"id":"c3",
									"title":"Receive",
									"value":"Receive",
									"icon" : "activity/list/type.receive.png",
									"refToView":"receiveTask"
								},
								{
									"id":"c4",
									"title":"User",
									"value":"User",
									"icon" : "activity/list/type.user.png",
									"refToView":"userTask"
								},
								{
									"id":"c5",
									"title":"Manual",
									"value":"Manual",
									"icon" : "activity/list/type.manual.png",
									"refToView":"manualTask"	
								},
								{
									"id":"c6",
									"title":"Service",
									"value":"Service",
									"icon" : "activity/list/type.service.png",
									"refToView":"serviceTask"
								},
								{
									"id":"c7",
									"title":"Business Rule",
									"value":"Business Rule",
									"icon" : "activity/list/type.business.rule.png",
									"refToView":"businessRuleTask"
								},
								{
									"id":"c8",
									"title":"Script",
									"value":"Script",
									"icon" : "activity/list/type.script.png",
									"refToView":"scriptTask"
								}
							]
						},
						{
							"id":"name",
							"type":"String",
							"title":"Name",
							"value":"Email",
							"description":"The descriptive name of the BPMN element.",
							"readonly":false,
							"optional":true,
							"length":"",
							"wrapLines" : true,
							"refToView":"text_name"	
						},
						{
							"id":"documentation",
							"type":"Text",
							"title":"Documentation",
							"value":"", 
							"description":"This attribute is used to annotate the BPMN element, such as descriptions and other documentation.",
							"readonly":true,
							"optional":true,
							"length":"",
							"wrapLines":true,
							"popular" : true
						},
						{
							"id":"taskName",
							"type":"String",
							"title":"Task Name",
							"value":"Email",
							"description":"Task Name",
							"readonly":true,
							"optional":true
						},
						{
							"id":"datainputset",
							"type":"Datainput",
							"title":"DataInputSet",
							"value":"To:String,Subject:String,Body:String,From:String",
							"description":"An InputSet is a collection of DataInput elements that together define a valid set of data inputs.",
							"readonly":false,
							"optional":true,
						},  
						{
							"id":"dataoutputset",
							"type":"Dataoutput",
							"title":"DataOutputSet",
							"value":"",
							"description":"An OutputSet is a collection of DataOutputs elements that together may be produced as output from an Activity or Event.",
							"readonly":false,
							"optional":true,
						},
						{
							"id":"assignments",
							"type":"Dataassignment",
							"title":"Assignments",
							"value":"To=,Subject=,Body=,From=",
							"description":"",
							"readonly":false,
							"optional":true,
						},
						{
							"id":"onEntryActions",
							"type":"Action",
							"title":"On Entry Actions",
							"value":"",
							"description":"on entry actions",
							"readonly":false,
							"optional":true
						},
						{
							"id":"onExitActions",
							"type":"Action",
							"title":"On Exit Actions",
							"value":"",
							"description":"on exit actions",
							"readonly":false,
							"optional":true
						},
						{
							"id":"script_language",
							"type":"Choice",
							"title":"ScriptLanguage",
							"value":"java",
							"description":"Defines the script language.",
							"readonly":false,
							"optional":true,
							"items": [
								{
									"id": "c1",
									"title":"java",
									"value":"java"
								},
								{
									"id": "c2",
									"title": "mvel",
									"value": "mvel"
								}
							]                                        
						}
					]
				},
				
		// end custom workitems 
		{
			"type" : 			"node",
			"id" :				"ReusableSubprocess",
			"title" : 			"Reusable Subprocess",
			"groups" :			["Activities"],
			"description" :		"A reusable subprocess. It can be used to invoke another process.",
			"view" :			"activity/subprocess.collapsed.svg",
			"icon" :			"activity/subprocess.png",
			"propertyPackages" :[
				"baseAttributes",
				"flowElement",
				"activity",
				/** "subprocess", **/
				/** "loopcharacteristics", **/
				"bgColor",
				"properties",
				"iospecification"
			],
			"properties" :		[
				{
					"id":"activitytype",
					"type":"String",
					"title":"ActivityType",
					"value":"Sub-Process",
					"description":"The Type of Activity.",
					"readonly":true,
					"optional":false,
					"length":""
				},
				{
					"id":"bgcolor",
					"type":"Color",
					"title":"BackgroundColor",
					"value":"#b1c2d6",
					"gradient":true,
					"description":"",
					"readonly":false,
					"optional":false,
					"refToView":"fill_el",
					"fill":true,
					"stroke":false
				},
				{
					"id":"calledelement",
					"type":"CalledElement",
					"title":"Called Element",
					"value":"",
					"description":"",
					"readonly":false,
					"optional":false,
					"refToView":"pimg",
					"length":""
				},	
				{
					"id":"onEntryActions",
					"type":"Action",
					"title":"On Entry Actions",
					"value":"",
					"description":"on entry actions",
					"readonly":false,
					"optional":true
				},
				{
					"id":"onExitActions",
					"type":"Action",
					"title":"On Exit Actions",
					"value":"",
					"description":"on exit actions",
					"readonly":false,
					"optional":true
				},
				{
					"id":"independent",
					"type":"Choice",
					"title":"Independent",
					"value":"true",
					"description":"If set to true the child process is started as an independent process.",
					"readonly":false,
					"optional":true,
					"items": [
						{
							"id": "c1",
							"title":"true",
							"value":"true"
						},
						{
							"id": "c2",
							"title": "false",
							"value": "false"
						}
					]
				},
				{
 					"id":"waitforcompletion",
					"type":"Choice",
					"title":"Wait for completion",
					"value":"true",
					"description":"If true this sub-process node will only continue if the child process that was started has terminated its execution (completed or aborted)",
					"readonly":false,
					"optional":true,
					"items": [
						{
							"id": "c1",
							"title":"true",
							"value":"true"
						},
						{
							"id": "c2",
							"title": "false",
							"value": "false"
						}
					]
 				},
 				{
					"id":"script_language",
					"type":"Choice",
					"title":"ScriptLanguage",
					"value":"java",
					"description":"Defines the script language.",
					"readonly":false,
					"optional":true,
					"items": [
						{
							"id": "c1",
							"title":"java",
							"value":"java"
						},
						{
							"id": "c2",
							"title": "mvel",
							"value": "mvel"
						}
					]                                        
				}
			],
			"roles": 			[
				"all",
				"sequence_start",
				"sequence_end",
				"messageflow_start",
				"messageflow_end",
				"to_task_event",
				"from_task_event",
				"fromtoall",
				"ActivitiesMorph"
			]
		}, 
		{
			"type" : 			"node",
			"id" :				"MultipleInstanceSubprocess",
			"title" : 			"Multiple instances",
			"groups" :			["Activities"],
			"description" :		"A multiple instances subprocess. Allows to execute the contained process segment multiple times.",
			"view" :			"activity/subprocess.multiple.svg",
			"icon" :			"activity/subprocess.png",
			"propertyPackages" :[
				"baseAttributes",
				"flowElement",
				/** "activity", **/
				/** "subprocess", **/
				/** "loopcharacteristics", **/
				"bgColor",
				"properties" /**,**/
				/** "iospecification" **/
			],
			"properties" :		[
				{
					"id":"activitytype",
					"type":"String",
					"title":"ActivityType",
					"value":"Sub-Process",
					"description":"The Type of Activity.",
					"readonly":true,
					"optional":false,
					"length":""
				},
				{
					"id":"bgcolor",
					"type":"Color",
					"title":"BackgroundColor",
					"value":"#ffffff",
					"gradient":true,
					"description":"",
					"readonly":false,
					"optional":false,
					"refToView":"fill_el",
					"fill":true,
					"stroke":false
				},
 				{
					"id":"collectionexpression",
					"type":"String",
					"title":"CollectionExpression",
					"value":"",
					"description":"Name of a variable that represents the collection of elements that should be iterated over.",
					"readonly":false,
					"optional":false
				},
				{
					"id":"variablename",
					"type":"String",
					"title":"Variable Name",
					"value":"",
					"description":"Name of the variable to contain the current element from the collection.",
					"readonly":false,
					"optional":false
				},
				{
					"id":"onEntryActions",
					"type":"Action",
					"title":"On Entry Actions",
					"value":"",
					"description":"on entry actions",
					"readonly":false,
					"optional":true
				},
				{
					"id":"onExitActions",
					"type":"Action",
					"title":"On Exit Actions",
					"value":"",
					"description":"on exit actions",
					"readonly":false,
					"optional":true
				},
				{
					"id":"script_language",
					"type":"Choice",
					"title":"ScriptLanguage",
					"value":"java",
					"description":"Defines the script language.",
					"readonly":false,
					"optional":true,
					"items": [
						{
							"id": "c1",
							"title":"java",
							"value":"java"
						},
						{
							"id": "c2",
							"title": "mvel",
							"value": "mvel"
						}
					]                                        
				},
				{
					"id":"vardefs",
					"type":"Vardef",
					"title":"Variable Definitions",
					"value":"",
					"description":"Comma-separated variable definitions",
					"readonly":false,
					"optional":true
				}
			],
			"roles": [
				"all",
				"sequence_start",
				"sequence_end",
				"messageflow_start",
				"messageflow_end",
				"to_task_event",
				"from_task_event",
				"fromtoall",
				"ActivitiesMorph"
			]
		},
		{
			"type" : 			"node",
			"id" :				"Subprocess",
			"title" :			"Embedded Subprocess",
			"groups" :			["Activities"],
			"description" :		"A subprocess is a decomposable activity. An expanded subprocess contains a valid BPMN diagram.",
			"view" :			"activity/subprocess.embedded.svg",
			"icon" :			"activity/expanded.subprocess.png",
 			"layout" : 			[
 									{"type" : "layout.bpmn2_0.subprocess"},
 									{"type" : "layout.container.dockers"},
 									{
 										"type" : "layout.container.minBounds",
 										"options" : {
 											"fixedX" : true,
 											"ignoreChildsWithId" : [
 												"http://b3mn.org/stencilset/bpmn2.0#Lane",
 												"http://b3mn.org/stencilset/bpmn2.0#StartNoneEvent"
 											]
 										}
 									}
 								],
			"propertyPackages" :[
				"baseAttributes",
				"flowElement",
				"activity",
				/** "subprocess", **/
				/** "loopcharacteristics", **/
				"properties",
				"iospecification"
			],
			"properties" :		[
				{
					"id":"activitytype",
					"type":"String",
					"title":"ActivityType",
					"value":"Sub-Process",
					"description":"The Type of Activity.",
					"readonly":true,
					"optional":false,
					"length":""
				},
				{
					"id":"bgcolor",
					"type":"Color",
					"title":"BackgroundColor",
					"value":"#ffffff",
					"description":"",
					"readonly":false,
					"optional":false,
					"refToView":"fill_el",
					"fill":true,
					"stroke":false
				},	
				{
					"id":"onEntryActions",
					"type":"Action",
					"title":"On Entry Actions",
					"value":"",
					"description":"on entry actions",
					"readonly":false,
					"optional":true
				},
				{
					"id":"onExitActions",
					"type":"Action",
					"title":"On Exit Actions",
					"value":"",
					"description":"on exit actions",
					"readonly":false,
					"optional":true
				},
				{
					"id":"script_language",
					"type":"Choice",
					"title":"ScriptLanguage",
					"value":"java",
					"description":"Defines the script language.",
					"readonly":false,
					"optional":true,
					"items": [
						{
							"id": "c1",
							"title":"java",
							"value":"java"
						},
						{
							"id": "c2",
							"title": "mvel",
							"value": "mvel"
						}
					]                                        
				},
				{
					"id":"vardefs",
					"type":"Vardef",
					"title":"Variable Definitions",
					"value":"",
					"description":"Comma-separated variable definitions",
					"readonly":false,
					"optional":true
				}
			],
			"roles"	:			[
				"all",
				"sequence_start",
				"sequence_end",
				"messageflow_start",
				"messageflow_end",
				"to_task_event",
				"from_task_event",
				"fromtoall",
				"canContainArtifacts",
				"ActivitiesMorph"
			]
		},
		{
			"type" : 			"node",
			"id" :				"AdHocSubprocess",
			"title" :			"AdHoc Subprocess",
			"groups" :			["Activities"],
			"description" :		"A subprocess is a decomposable activity. An expanded subprocess contains a valid BPMN diagram.",
			"view" :			"activity/subprocess.adhoc.svg",
			"icon" :			"activity/expanded.subprocess.png",
 			"layout" : 			[
 									{"type" : "layout.bpmn2_0.subprocess"},
 									{"type" : "layout.container.dockers"},
 									{
 										"type" : "layout.container.minBounds",
 										"options" : {
 											"fixedX" : true,
 											"ignoreChildsWithId" : [
 												"http://b3mn.org/stencilset/bpmn2.0#Lane",
 												"http://b3mn.org/stencilset/bpmn2.0#StartNoneEvent"
 											]
 										}
 									}
 								],
			"propertyPackages" :[
				"baseAttributes",
				"flowElement",
				"activity",
				"adhocsubprocess",
				/** "loopcharacteristics", **/
				"properties",
				"iospecification"
			],
			"properties" :		[
				{
					"id":"activitytype",
					"type":"String",
					"title":"ActivityType",
					"value":"Sub-Process",
					"description":"The Type of Activity.",
					"readonly":true,
					"optional":false,
					"length":""
				},
				{
					"id":"bgcolor",
					"type":"Color",
					"title":"BackgroundColor",
					"value":"#ffffff",
					"description":"",
					"readonly":false,
					"optional":false,
					"refToView":"fill_el",
					"fill":true,
					"stroke":false
				},	
				{
					"id":"onEntryActions",
					"type":"Action",
					"title":"On Entry Actions",
					"value":"",
					"description":"on entry actions",
					"readonly":false,
					"optional":true
				},
				{
					"id":"onExitActions",
					"type":"Action",
					"title":"On Exit Actions",
					"value":"",
					"description":"on exit actions",
					"readonly":false,
					"optional":true
				},
				{
					"id":"script_language",
					"type":"Choice",
					"title":"ScriptLanguage",
					"value":"java",
					"description":"Defines the script language.",
					"readonly":false,
					"optional":true,
					"items": [
						{
							"id": "c1",
							"title":"java",
							"value":"java"
						},
						{
							"id": "c2",
							"title": "mvel",
							"value": "mvel"
						}
					]                                        
				},
				{
					"id":"vardefs",
					"type":"Vardef",
					"title":"Variable Definitions",
					"value":"",
					"description":"Comma-separated variable definitions",
					"readonly":false,
					"optional":true
				}
			],
			"roles"	:			[
				"all",
				"sequence_start",
				"sequence_end",
				"messageflow_start",
				"messageflow_end",
				"to_task_event",
				"from_task_event",
				"fromtoall",
				"canContainArtifacts",
				"ActivitiesMorph"
			]
		},
		/** {
			"type" : 			"node",
			"id" :				"CollapsedEventSubprocess",
			"title" : 			"Collapsed Event-Subprocess",
			"groups" :			["Activities"],
			"description" :		"An Event-Subprocess is placed within another subprocess. It becomes active when its start event gets triggered and can interrupt the Subprocess context or run in parallel (non-interrupting). It can be linked to another diagram.",
			"view" :			"activity/event.subprocess.collapsed.svg",
			"icon" :			"activity/event.subprocess.collapsed.png",
			"propertyPackages" :[
				"baseAttributes",
				"flowElement",
				"activity",
				"subprocess",
				"interrupting",
				"loopcharacteristics",
				"properties",
				"iospecification"
			],
			"properties" :		[
				{
					"id":"activitytype",
					"type":"String",
					"title":"ActivityType",
					"value":"Event-Sub-Process",
					"description":"The Type of Activity.",
					"readonly":true,
					"optional":false,
					"length":""
				},
				{
					"id":"startevent",
					"type":"Choice",
					"title":"Start-Event",
					"value":"Message",
					"description":"",
					"readonly":false,
					"optional":false,
					"items":[
						{
							"id":"c1",
							"title":"Message",
							"value":"Message",
							"icon" : "activity/list/event.message.png",
							"refToView":"message"
						},
						{
							"id":"c2",
							"title":"Timer",
							"value":"Timer",
							"icon" : "activity/list/event.timer.png",
							"refToView":"timer"
						},
						{
							"id":"c3",
							"title":"Escalation",
							"value":"Escalation",
							"icon" : "activity/list/event.escalation.png",
							"refToView":"escalation"
						},
						{
							"id":"c4",
							"title":"Conditional",
							"value":"Conditional",
							"icon" : "activity/list/event.conditional.png",
							"refToView":"conditional"
						},
						{
							"id":"c5",
							"title":"Error",
							"value":"Error",
							"icon" : "activity/list/event.error.png",
							"refToView":"error"	
						},
						{
							"id":"c6",
							"title":"Compensation",
							"value": "Compensation",
							"icon" : "activity/list/event.compensation.png",
							"refToView":"compensationStart"
						},
						{
							"id":"c7",
							"title":"Signal",
							"value":"Signal",
							"icon" : "activity/list/event.signal.png",
							"refToView":"signal"
						},
						{
							"id":"c8",
							"title":"Multiple",
							"value":"Multiple",
							"icon" : "activity/list/event.multiple.png",
							"refToView":"multiple"
						},
						{
							"id":"c9",
							"title":"Multiple (Parallel)",
							"value":"MultipleParallel",
							"icon" : "activity/list/event.multiple.parallel.png",
							"refToView":"multipleParallel"
						}
					]
				},
				{
					"id":"bgcolor",
					"type":"Color",
					"title":"BackgroundColor",
					"value":"#ffffff",
					"description":"",
					"readonly":false,
					"optional":false,
					"refToView":"fill_el",
					"fill":true,
					"stroke":false
				}	
			],
			"roles": 			[
				"all",
				"fromtoall",
				"canContainArtifacts",
				"EventActivitiesMorph"
			]
		}, 
		/** {
			"type" : 			"node",
			"id" :				"EventSubprocess",
			"title" :			"Event-Subprocess",
			"groups" :			["Activities"],
			"description" :		"An Event-Subprocess is placed within another Subprocess. It becomes active when its start event gets triggered and can interrupt the Subprocess context or run in parallel (non-interrupting).",
			"view" :			"activity/event.subprocess.svg",
			"icon" :			"activity/event.subprocess.png",
 			"layout" : 			[{"type" : "layout.bpmn2_0.subprocess"}],
			"propertyPackages" :[
				"baseAttributes",
				"flowElement",
				"activity",
				"subprocess",
				"loopcharacteristics",
				"properties",
				"iospecification"
			],
			"properties" :		[
				{
					"id":"activitytype",
					"type":"String",
					"title":"ActivityType",
					"value":"Event-Sub-Process",
					"description":"The Type of Activity.",
					"readonly":true,
					"optional":false,
					"length":""
				},
				{
					"id":"bgcolor",
					"type":"Color",
					"title":"BackgroundColor",
					"value":"#ffffff",
					"description":"",
					"readonly":false,
					"optional":false,
					"refToView":"fill_el",
					"fill":true,
					"stroke":false
				},	
				{
					"id":"isatransaction",
					"type":"Boolean",
					"title":"is a Transaction",
					"value":false,
					"description":"A Transaction is a set of activities that logically belongs together; it might follow a specified transaction protocol.",
					"readonly":true,
					"optional":false
				},
				{
					"id":"callacitivity",
					"type":"Boolean",
					"title":"is a Call Activity",
					"value":false,
					"description":"a Call Activity is a wrapper for a globally defined Sub-Process that is reused in the current process.",
					"readonly":true,
					"optional":"true"
				}
			],
			"roles"	:			[
				"all",
				"fromtoall",
				"canContainArtifacts",
				"EventActivitiesMorph"
			]
		}, **/
		
		// Gateways
		
		{
			"type" : 			"node",
			"id" :				"Exclusive_Databased_Gateway",
			"title" :			"Data-based Exclusive (XOR) Gateway",
			"description" :		"When splitting, it routes the sequence flow to exactly one of the outgoing branches based on conditions. When merging, it awaits one incoming branch to complete before triggering the outgoing flow.",
			"groups" : 			["Gateways"],
			"view" : 			"gateway/exclusive.databased.svg",
			"icon" : 			"gateway/exclusive.databased.png",
			"propertyPackages" :[
				"baseAttributes",
				"flowElement",
				"gateway",
				"bgColor"
			],
			"properties" :		[
				{
					"id":"gatewaytype",
					"type":"String",
					"title":"Gateway type",
					"title":"Gateway-Typ",
					"value":"XOR",
					"description":"",
					"readonly":true,
					"optional":false,
					"length":""
				},
				{
					"id":"xortype",
					"type":"String",
					"title":"XOR type",
					"value":"Data",
					"description":"",
					"readonly":true,
					"optional":false,
					"length":""
				},
				{
					"id":"markervisible",
					"type":"Boolean",
					"title":"X-Marker visible",
					"value":"true",
					"description":"",
					"readonly":false,
					"optional":false,
					"refToView":"cross"
				},		
				{
					"id":"defaultgate",
					"type":"String",
					"title":"Default gate",
					"value":"",
					"description":"",
					"readonly":false,
					"optional":true,
					"refToView":"",
					"length":"50",
					"wrapLines":true
				}
				//,
				/**{
					"id":"gate_outgoingsequenceflow",
					"type":"String",
					"title":"[Gate] OutgoingSequenceFlow",
					"value":"",
					"description":"",
					"readonly":false,
					"optional":true,
					"refToView":"",
					"length":"50"
				},**/
				/**{
					"id":"gate_assignments",
					"type":"String",
					"title":"[Gate] Assignments",
					"value":"",
					"description":"",
					"readonly":false,
					"optional":true,
					"refToView":"",
					"length":"50",
					"wrapLines":true
				}**/	
			],
			"roles": 			[
				"all",
				"sequence_start",
				"sequence_end",
				"choreography_sequence_start",
				"choreography_sequence_end",
				"fromtoall",
				"GatewaysMorph"
			]
		},
		{
			"type" : 			"node",
			"id" : 				"EventbasedGateway",
			"title" :			"Event-based Gateway",
			"groups" :			["Gateways"],
			"description" :		"Is always followed by catching events or receive tasks. Sequence flow is routed to the subsequent event/task which happens first.",
			"view" :			"gateway/eventbased.svg",
			"icon" :			"gateway/eventbased.png",
			"propertyPackages" :[
				"baseAttributes",
				"flowElement",
				"gateway",
				"bgColor"
			],
			"properties" :		[
				{
					"id":"eventtype",
					"type":"Choice",
					"title":"Type",
					"value":"exclusive",
					"description":"",
					"readonly":false,
					"optional":true,
					"refToView":"",
					"items":[
						{
							"id":"c1",
							"title":"Exclusive (standard)",
							"value":"exclusive",
							"icon" : "gateway/list/eventbased.exclusive.png",
							"refToView":"default"
						},
						{
							"id":"c2",
							"title":"Exclusive Instantiation",
							"value":"instantiate_exclusive",
							"icon" : "gateway/list/eventbased.exclusive.png",
							"refToView":["default","instantiate"]
						},
						{
							"id":"c3",
							"title":"Parallel Instantiation",
							"value":"instantiate_parallel",
							"icon" : "gateway/list/eventbased.parallel.png",
							"refToView":["parallel","instantiate"]
						}
					]
				}
			],
			"roles":			[
				"all",
				"sequence_end",
				"choreography_sequence_start",
				"choreography_sequence_end",
				"fromtoall",
				"GatewaysMorph",
				"EventbasedGateway"
			]
		},
		{
			"type" : 			"node",
			"id" :				"ParallelGateway",
			"title" :			"Parallel Gateway",
			"groups" :			["Gateways"],
			"description" :		"When used to split the sequence flow, all outgoing branches are activated simultaneously. When merging parallel branches it waits for all incoming branches to complete before triggering the outgoing flow.",
			"view" :			"gateway/parallel.svg",
			"icon" :			"gateway/parallel.png",
			"propertyPackages" :[
				"baseAttributes",
				"flowElement",
				"gateway",
				"bgColor"
			],
			"properties" : [
				{
					"id":"gatewaytype",
					"type":"String",
					"title":"GatewayType",
					"value":"AND",
					"description":"",
					"readonly":true,
					"optional":false,
					"length":""
				}
			],
			"roles": 			[
				"all",
				"sequence_start",
				"sequence_end",
				"choreography_sequence_start",
				"choreography_sequence_end",
				"fromtoall",
				"GatewaysMorph"
			]
		},
		{
			"type" : 			"node",
			"id" :				"InclusiveGateway",
			"title" :			"Inclusive Gateway",
			"groups" :			["Gateways"],
			"description" :		"When splitting, one or more branches are activated based on branching conditions. When merging, it awaits all active incoming branches to complete.",
			"view" :			"gateway/inclusive.svg",
			"icon" :			"gateway/inclusive.png",
			"propertyPackages" :[
				"baseAttributes",
				"flowElement",
				"gateway",
				"bgColor"
			],
			"properties" :		[
				{
					"id":"gatewaytype",
					"type":"String",
					"title":"GatewayType",
					"value":"OR",
					"description":"",
					"readonly":true,
					"optional":false,
					"length":""
				},
				{
					"id":"defaultgate",
					"type":"String",
					"title":"DefaultGate",
					"value":"",
					"description":"",
					"readonly":false,
					"optional":true,
					"refToView":"",
					"length":"50",
					"wrapLines":true
				}
				/**,
				{
					"id":"gate_outgoingsequenceflow",
					"type":"String",
					"title":"[Gate] OutgoingSequenceFlow",
					"value":"",
					"description":"",
					"readonly":false,
					"optional":true,
					"refToView":"",
					"length":"50"
				},
				{
					"id":"gate_assignments",
					"type":"String",
					"title":"[Gate] Assignments",
					"value":"",
					"description":"",
					"readonly":false,
					"optional":true,
					"refToView":"",
					"length":"50",
					"wrapLines":true
				}**/
			],
			"roles": 			[
				"all",
				"sequence_start",
				"sequence_end",
				"choreography_sequence_start",
				"choreography_sequence_end",
				"fromtoall",
				"GatewaysMorph"
			]
		},
		{
			"type": "node",
			"id":"ComplexGateway",
			"title":"Complex Gateway",
			"groups":["Gateways"],
			"description":"It triggers one or more branches based on complex conditions or verbal descriptions. Use it sparingly as the semantics might not be clear.",
			"view":"gateway/complex.svg",
			"icon":"gateway/complex.png",
			"propertyPackages" : [
				"baseAttributes",
				"flowElement",
				"gateway",
				"bgColor"
			],
			"properties" : [
				{
					"id":"gatewaytype",
					"type":"String",
					"title":"GatewayType",
					"value":"Complex",
					"description":"",
					"readonly":true,
					"optional":false,
					"length":""
				},
				{
					"id":"activationcondition",
					"type":"String",
					"title":"ActivationCondition",
					"value":"",
					"popular":true,
					"description":"Determines which combination of incoming tokens will be synchronized for activation of the Gateway.",
					"readonly":false,
					"optional":true
				},
				{
					"id":"incomingcondition",
					"type":"String",
					"title":"IncomingCondition",
					"value":"",
					"description":"",
					"readonly":false,
					"optional":true,
					"refToView":"",
					"length":"50"
				},
				{
					"id":"outgoingcondition",
					"type":"String",
					"title":"OutgoingCondition",
					"value":"",
					"description":"",
					"readonly":false,
					"optional":true,
					"refToView":"",
					"length":"50"
				}
			],
			"roles": [
				"all",
				"sequence_start",
				"sequence_end",
				"choreography_sequence_start",
				"choreography_sequence_end",
				"fromtoall",
				"GatewaysMorph"
			]
		},
		
		// Swimlanes
		/** {
			"type" : 			"node",
			"id" :				"Pool",
			"title" :			"Pool",
			"groups" :			["Swimlanes"],
			"description" :		"Pools and Lanes represent responsibilities for activities in a process. A pool or a lane can be an organization, a role, or a system.",
			"view" :			"swimlane/pool.svg",
			"icon" :			"swimlane/pool.png",
			"propertyPackages": [
				"baseAttributes",
				"pool",
				"process",
				"bgColor"
			],
			"roles" : 			[
				"all",
				"messageflow_start",
				"messageflow_end",
				"fromtoall",
				"canContainArtifacts"				
			],
			"layout" : [{"type" : "layout.bpmn2_0.pool"}]
		},**/
		/**{
			"type" : 			"node",
			"id" :				"CollapsedPool",
			"title" :			"Collapsed Pool",
			"groups" :			["Swimlanes"],
			"description" :		"Collapsed Pools hide all internals of the contained processes.",
			"view" :			"swimlane/collapsed.pool.svg",
			"icon" :			"swimlane/lane.png",
			"propertyPackages": [
				"baseAttributes",
				"pool",
				"process",
				"bgColor"
			],
			"properties" : 		[
				{
					"id":"bgcolor",
					"type":"Color",
					"title":"BackgroundColor",
					"value":"#ffffff",
					"description":"",
					"readonly":false,
					"optional":false,
					"refToView":"fill_el",
					"fill":true,
					"stroke":false
				}
			],
			"roles" :		 	[
				"all",
				"messageflow_start",
				"messageflow_end",
				"fromtoall"				
			]
		},**/
		{
			"type" : 			"node",
			"id" :				"Lane",
			"title" :			"Lane",
			"groups" :			["Swimlanes"],
			"description" :		"Pools and Lanes represent responsibilities for activities in a process. A pool or a lane can be an organization, a role, or a system. Lanes sub-divide pools or other lanes hierarchically.",
			"view" :			"swimlane/lane.svg",
			"icon" :			"swimlane/lane.png",
			"propertyPackages": [
				"baseAttributes"
			],
			"properties" : 		[
				{
					"id":"showcaption",
					"type":"Boolean",
					"title":"ShowCaption",
					"value":"true",
					"description":"",
					"readonly":true,
					"optional":false,
					"refToView": ["caption", "captionDisableAntialiasing"],
					"fill":true,
					"visible":false,
					"stroke":false,
					"hidden":true
				}
			],
			"roles": [
			    "all", 
				"PoolChild",
				"fromtoall",
				"canContainArtifacts"				
			],
			"layout" : [
						{"type" : "layout.bpmn11.lane"},
						{
							"type" : "layout.container.minBounds",
							"options" : {
								"ignoreChildsWithId" : [
									"http://b3mn.org/stencilset/bpmn2.0#Lane"
								]
							}
						}
			]
		},
        /**{
            "type" :            "node",
            "id" :              "processparticipant",
            "title" :           "Additional Participant",
            "groups" :          ["Swimlanes"],
            "description" :     "he additional participant can be connected to a task or sub process. It is used to visualize additional associations of roles or individuals to the respective activity (e.g. responsibility, informed persons, etc.).",
            "view" :            "swimlane/process.participant.svg",
            "icon" :            "swimlane/process.participant.png",
            "defaultAlign" :    "northeast",
            "propertyPackages": [
                "baseAttributes",
                "flowElement",
                "artifact",
                "bgColor"
            ],
            "roles": [
                "all",
                "from_participant",
                "to_participant",
                "fromtoall",
                "eventSubprocessElement"
            ]
        },**/
		
		// Artifacts
		
		{
			"type" : 			"node",
			"id" : 				"Group",
			"title" :			"Group",
			"groups" :			["Artifacts"],
			"description" :		"An arbitrary set of objects can be defined as a Group to show that they logically belong together.",
			"view" :			"artifact/group.svg",
			"icon":				"artifact/group.png",
			"propertyPackages" : [
				"baseAttributes",
				"flowElement",
				"artifact"
			],
			"properties" : [
				{
					"id":"artifacttype",
					"type":"String",
					"title":"ArtifactType",
					"value":"Group",
					"description":"",
					"readonly":true,
					"optional":false,
					"length":""
				}
			],
			"roles": [
				"all",
				"fromtoall",
				"canContainArtifacts"
			]
		},
		{
			"type" : 			"node",
			"id" : 				"TextAnnotation",
			"title" :			"Text Annotation",
			"groups" :			["Artifacts"],
			"description" :		"Any object can be associated with a Text Annotation to provide additional documentation.",
			"view" :			"artifact/text.annotation.svg",
			"icon" :			"artifact/text.annotation.png",
			"defaultAlign" :	"northeast",
			"propertyPackages": [
				"baseAttributes",
				"flowElement",
				"artifact"
			],
			"properties" : 		[
				{
					"id":"text",
					"type":"String",
					"title":"Text",
					"value":"",
					"description":"",
					"readonly":false,
					"optional":true,
					"refToView":"text",
					"length":"",
					"wrapLines":true
				},
				{
					"id":"artifacttype",
					"type":"String",
					"title":"ArtifactType",
					"value":"Annotation",
					"description":"",
					"readonly":true,
					"optional":false,
					"length":""
				}
			],
			"roles": [
				"all",
				"from_artifact",
				"to_artifact",
				"TextAnnotationMorph"
			]
		},
		
		// Data Objects
		{
			"type" : 			"node",
			"id" :				"DataObject",
			"title" :			"Data Object",
			"description" :		"A Data Object represents information flowing through the process, such as business documents, e-mails or letters.",
			"groups" :			["Data Objects"],
			"view" :			"dataobject/data.object.svg",
			"icon" :			"dataobject/data.object.png",
			"defaultAlign" :	"southeast",
			"propertyPackages":	[
				"baseAttributes",
				"flowElement",
				"properties",
				"bgColor"
			],
			"properties" :		[
				/**{
					"id":"state",
					"type":"String",
					"title":"State",
					"value":"",
					"description":"",
					"refToView":"text_state",
					"readonly":false,
					"optional":true,
					"directlyEditable":false
				},**/
				{
					"id":"input_output",
					"type":"Choice",
					"title":"Input/Output",
					"value":"None",
					"description":"",
					"readonly":false,
					"optional":true,
					"refToView":"",
					"items":[
						{
							"id":"c1",
							"title":"None",
							"value":"None",						
							"refToView":"none"
						},
						{
							"id":"c2",
							"title":"Input",
							"value":"Input",
							"icon" : "dataobject/list/input.png",
							"refToView":"input"
						},
						{
							"id":"c3",
							"title":"Output",
							"value":"Output",
							"icon" : "dataobject/list/output.png",
							"refToView":"output"
						}
					]
				},
				{
					"id":"type",
					"type":"Choice",
					"title":"Type",
					"value":"None",
					"description":"",
					"readonly":false,
					"optional":true,
					"items":[
						{
							"id":"c1",
							"title":"Object",
							"value":"Object"
						},
						{
							"id":"c2",
							"title":"Boolean",
							"value":"Boolean"
						},
						{
							"id":"c3",
							"title":"Float",
							"value":"Float"
						},
						{
							"id":"c3",
							"title":"Integer",
							"value":"Integer"
						},
						{
							"id":"c3",
							"title":"List",
							"value":"List"
						},
						{
							"id":"c3",
							"title":"String",
							"value":"String"
						}
					]
				}
				/**,		
				{
					"id" : "iscollection",
					"type" : "Boolean",
					"title" : "is Collection",
					"value" : false,
					"description" : "A Collection Data Object represents a collection of information, e.g. a list of order items.",
					"readonly" : false,
					"optional" : true,
					"refToView" : "collection"
				}**/
			],
			"roles" : 			[
				"all",
				"from_task_event",
				"to_task_event",
				"fromtoall",
				"DataObjectMorph"
			]
		},
//		{
//			"type" : 			"node",
//			"id" :				"ITSystem",
//			"title" :			"IT System",
//			"groups" :			["Artifacts"],
//			"description" : 	"An IT System can be associated with an activity. It is a system or application used while fulfilling the activity.",
//			"view" :			"dataobject/it.system.svg",
//			"icon" : 			"dataobject/it.system.png",
//			"propertyPackages" : [
//				"baseAttributes",
//				"flowElement"				
//			],
//			"properties" : [
//				{
//					"id":"bgcolor",
//					"type":"Color",
//					"title":"BackgroundColor",
//					"value":"#e1e1e1",
//					"description":"",
//					"readonly":false,
//					"optional":false,
//					"refToView":"fill_el",
//					"fill":true,
//					"stroke":false
//				}
//			],
//			"roles" :			[
//			    "all",
//			    "from_task_event",
//			    "to_task_event",
//			    "fromtoall",
//			    "DataObjectMorph"
//			]
//		},
		/**{
			"type" : 			"node",
			"id" :				"DataStore",
			"title" :			"Data Store",
			"groups" :			["Data Objects"],
			"description" :		"A Data Store is a place where the process can read or wirte date, e.g. a database or a filling cabinet. It persists beyond the lifetime of the process instance.",
			"view" :			"dataobject/data.store.svg",
			"icon" :			"dataobject/data.store.png",
			"propertyPackages": [
				"baseAttributes",
				"flowElement",
				"itemAwareElement",
				"bgColor"
			],
			"properties" :		[
				{
					"id" : "capacity",
					"type" : "Integer",
					"title" : "Capacity",
					"description" : "",
					"readonly" : false,
					"optional" : true,
					"length" : ""
				},
				{
					"id" : "isUnlimited",
					"type" : "Boolean",
					"title" : "is Unlimited",
					"value" : false,
					"description" : "",
					"readonly" : false,
					"optional" : true
				},
				{
					"id" : "dataStoreRef",
					"type" : "String",
					"title" : "DataStoreRef",
					"description" : "",
					"readonly" : false,
					"optional" : true,
					"length": 50,
					"wrapLines" : true
				},
				{
					"id":"bgcolor",
					"type":"Color",
					"title":"BackgroundColor",
					"value":"#ffffff",
					"description":"",
					"readonly":false,
					"optional":false,
					"refToView":"fill_el",
					"fill":true,
					"stroke":false
				}
			],
			"roles" :			[
				"all",
				"fromtoall",
				"to_task_event",
				"from_task_event",
				"DataObjectMorph"
			]
		},**/
		/** {
			"type" :			"node",
			"id" :				"Message",
			"title" :			"Message",
			"groups" :			["Data Objects"],
			"description" :		"A Message is used to depict the contents of a communication between two Participants.",
			"view" :			"dataobject/message.svg",
			"icon" :			"dataobject/message.png",
			"propertyPackages":	[
				"baseAttributes",
				"flowElement",
				"itemAwareElement"
			],
			"properties" :		[
				{
					"id" : "structureref",
					"type" : "String",
					"title" : "StructureRef",
					"description" : "",
					"readonly" : false,
					"optional" : true,
					"length" : 50,
					"wrapLines" : true
				},
				{
					"id" : "initiating",
					"type" : "Boolean",
					"title" : "is initiating",
					"description" : "",
					"value" : true,
					"inverseBoolean":true,
					"refToView" : ["nonInitiating", "nonInitiating2"],
					"readonly" : false,
					"optional" : true
				},
				{
					"id":"bgcolor",
					"type":"Color",
					"title":"BackgroundColor",
					"value":"#ffffff",
					"description":"",
					"readonly":true,
					"optional":false,
					"refToView":["bg_frame","bg_frame2"],
					"fill":true,
					"stroke":false,
					"hidden":true
				}
			],
			"roles" :			[
				"all",
				"fromtoall",
				"DataObjectMorph"
			]
		}, **/
		
		// Start Events
		
		{
			"type" : 			"node",
			"id": 				"StartNoneEvent",
			"title": 			"Start Event",
			"groups" : 			["Start Events"],
			"description" : 	"Untyped start event.",
			"view" : 			"startevent/none.svg",
			"icon" : 			"startevent/none.png",
			"propertyPackages":	[
				"baseAttributes",
				"catchEventAttributes",
				"bgColor"
			],
			"roles" : [
				"all",
				"Startevents_all",
				"sequence_start",
				"choreography_sequence_start",
				"to_task_event",
				"from_task_event",
				"fromtoall",
				"StartEventsMorph"
			],
			"properties": [
				/**{
					"id":"trigger",
					"type":"String",
					"title":"Trigger",
					"value":"None",
					"description":"",
					"readonly":true,
					"optional":false
				}**/
			]
		},
		{
			"type" :		 	"node",
			"id" :				"StartMessageEvent",
			"title" : 			"Start Message Event",
			"groups" :			["Start Events"],
			"description" :		"A process instance is started on receive of a message.",
			"view" :			"startevent/message.svg",
			"icon" :			"startevent/message.png",
			"propertyPackages":[
				"baseAttributes",
				"catchEventAttributes",
				"interrupting",
				"bgColor"
			],
			"roles": [
				"all",
				"messageflow_end",
				"to_task_event",
				"from_task_event",
				"fromtoall",
				"sequence_start",
				"Startevents_all",
				"StartEventsMorph"
			],
			"properties": [
				/**{
					"id":"trigger",
					"type":"String",
					"title":"Trigger",
					"value":"Message",
					"description":"",
					"readonly":true,
					"optional":false
				},**/
				{
					"id":"messageref",
					"type":"String",
					"title":"MessageRef",
					"value":"",
					"description":"Message Ref",
					"readonly":false,
					"optional":true
				}
			]
		},
		{
			"type" :			"node",
			"id" :				"StartTimerEvent",
			"title" :			"Start Timer Event",
			"groups" :			["Start Events"],
			"description" :		"A process instance is started on cyclic timer events, points in time, after time spans or timeouts.",
			"view" :			"startevent/timer.svg",
			"icon" :			"startevent/timer.png",
			"propertyPackages":[
				"baseAttributes",
				"catchEventAttributes",
				"interrupting",
				"bgColor"
			],
			"roles" : 			[
				"all",
				"sequence_start",
				"to_task_event",
				"from_task_event",
				"fromtoall",
				"Startevents_all",
				"choreography_sequence_start",
				"StartEventsMorph"
			],
			"properties": [
				/**{
					"id":"trigger",
					"type":"String",
					"title":"Trigger",
					"value":"Timer",
					"description":"",
					"readonly":true,
					"optional":false
				},**/
				{
					"id":"timedate",
					"type":"String",
					"title":"Time Date",
					"value":"",
					"description":"",
					"readonly":false,
					"optional":true,
					"refToView":"",
					"length":""
				},
				{
					"id":"timeduration",
					"type":"Text",
					"title":"Time Duration",
					"value":"",
					"description":"",
					"readonly":false,
					"optional":true,
					"refToView":"",
					"length":""
				},
				{
					"id":"timecycle",
					"type":"Text",
					"title":"Time Cycle",
					"value":"",
					"description":"",
					"readonly":false,
					"optional":true,
					"refToView":"",
					"length":""
				},
				{
					"id":"timecyclelanguage",
					"type":"Choice",
					"title":"Time Cycle Language",
					"value":"",
					"description":"",
					"readonly":false,
					"optional":true,
					"items": [
						{
							"id":"nolang",
							"title":"None",
							"value":"none"
						},
						{
							"id":"cron",
							"title":"Cron",
							"value":"cron"
						}
					]
				}
			]
		},
		{
			"type": "node",
			"id":"StartEscalationEvent",
			"title":"Start Escalation Event",
			"groups":["Start Events"],
			"description":"Reacts on an escalation to another role in the organization. This event is only used inside of a event subprocess.",
			"view":"startevent/escalation.svg",
			"icon":"startevent/escalation.png",
			"propertyPackages":[
				"baseAttributes",
				"catchEventAttributes",
				"interrupting",
				"bgColor"
			],
			"roles" : [
			    "all",
				"eventSubprocessElement",
				"sequence_start",
				"to_task_event",
				"from_task_event",
				"fromtoall",
				"Startevents_all",
				"StartEventsMorph"
			],
			"properties": [
				/**{
					"id":"trigger",
					"type":"String",
					"title":"Trigger",
					"value":"Escalation",
					"description":"",
					"readonly":true,
					"optional":false
				},**/
				{
					"id":"escalationcode",
					"type":"String",
					"title":"EscalationCode",
					"value":"",
					"description":"Escalation code",
					"readonly":false,
					"optional":true
				}
			]
		},
		{
			"type" : 			"node",
			"id" :				"StartConditionalEvent",
			"title" :			"Start Conditional Event",
			"groups" :			["Start Events"],
			"description" :		"A process instance is started based on changed business conditions or matching business rules.",
			"view" :			"startevent/conditional.svg",
			"icon" 	:			"startevent/conditional.png",
			"propertyPackages": [
				"baseAttributes",
				"catchEventAttributes",
				"interrupting",
				"condition",
				"bgColor"
			],
			"roles" : 			[
				"all",
				"sequence_start",
				"to_task_event",
				"from_task_event",
				"fromtoall",
				"Startevents_all",
				"choreography_sequence_start",
				"StartEventsMorph"
			],
			"properties": [
				/**{
					"id":"trigger",
					"type":"String",
					"title":"Trigger",
					"value":"Conditional",
					"description":"",
					"readonly":true,
					"optional":false
				},**/
				{
					"id":"conditionlanguage",
					"type":"Choice",
					"title":"Language",
					"value":"drools",
					"description":"Defines the condition language.",
					"readonly":false,
					"optional":true,
					"items": [
						{
							"id": "c1",
							"title":"drools",
							"value":"drools"
						},
						{
							"id": "c2",
							"title": "mvel",
							"value": "mvel"
						}
					]                                               
				},
				{
					"id":"conditionexpression",
					"type":"Text",
					"title":"Expression",
					"value":"",
					"description":"",
					"readonly":false,
					"optional":true                                        
				}
			]
		},
		{
			"type": "node",
			"id":"StartErrorEvent",
			"title":"Start Error Event",
			"groups":["Start Events"],
			"description":"Catches named errors. This event is only used inside of a event subprocess.",
			"view":"startevent/error.svg",
			"icon":"startevent/error.png",
			"propertyPackages":[
				"baseAttributes",
				"catchEventAttributes",
				"bgColor"
			],
			"roles": [
				"all",
				"sequence_start",
				"to_task_event",
				"from_task_event",
				"fromtoall",
				"Startevents_all",
				"StartEventsMorph"
			],
			"properties": [
				/**{
					"id":"trigger",
					"type":"String",
					"title":"Trigger",
					"value":"Error",
					"description":"",
					"readonly":true,
					"optional":false
				},**/
				{
					"id":"errorref",
					"type":"Text",
					"title":"ErrorRef",
					"value":"",
					"description":"",
					"readonly":false,
					"optional":true,
					"refToView":"",
					"length":""
				}
			]
		},
		{
			"type": "node",
			"id":"StartCompensationEvent",
			"title":"Start Compensation Event",
			"groups":["Start Events"],
			"description":"Compensation handling. This event is only used inside of a event subprocess.",
			"view":"startevent/compensation.svg",
			"icon":"startevent/compensation.png",
			"propertyPackages":[
				"baseAttributes",
				"catchEventAttributes",
				"bgColor",
				"compensation"
			],
			"roles": [
				"all",
				"sequence_start",
				"to_task_event",
				"from_task_event",
				"fromtoall",
				"Startevents_all",
				"StartEventsMorph"
			],
			"properties": [
				/**{
					"id":"trigger",
					"type":"String",
					"title":"Trigger",
					"value":"Compensation",
					"description":"",
					"readonly":true,
					"optional":false
				}**/
			]
		},
		{
			"type" : 			"node",
			"id" :				"StartSignalEvent",
			"title" :			"Start Signal Event",
			"groups" :			["Start Events"],
			"description" :		"A process instance is started based on signalling across different processes. (One signal thrown can be caught multiple times)",
			"view" :			"startevent/signal.svg",
			"icon" :			"startevent/signal.png",
			"propertyPackages": [
				"baseAttributes",
				"catchEventAttributes",
				"interrupting",
				"bgColor"
			],
			"roles" : 			[
				"all",
				"sequence_start",
				"Startevents_all",
				"to_task_event",
				"from_task_event",
				"fromtoall",
				"choreography_sequence_start",
				"StartEventsMorph"
			],
			"properties": [
				/**{
					"id":"trigger",
					"type":"String",
					"title":"Trigger",
					"value":"Signal",
					"description":"",
					"readonly":true,
					"optional":false
				},**/
				{
					"id":"signalref",
					"type":"Text",
					"title":"SignalRef",
					"value":"",
					"description":"",
					"readonly":false,
					"optional":true,
					"refToView":"",
					"length":""
				}
			]
		},
		/**{
			"type" :		 	"node",
			"id" :				"StartMultipleEvent",
			"title" :			"Start Multiple Event",
			"groups" :			["Start Events"],
			"description" :		"A process instance is started upon occurence of one out of a set of possible events.",
			"view" :			"startevent/multiple.svg",
			"icon" :			"startevent/multiple.png",
			"propertyPackages":[
				"baseAttributes",
				"catchEventAttributes",
				"interrupting",
				"bgColor"
			],
			"roles" : 			[
				"all",
				"messageflow_end",
				"sequence_start",
				"to_task_event",
				"from_task_event",
				"fromtoall",
				"Startevents_all",
				"choreography_sequence_start",
				"StartEventsMorph"
			],
			"properties": [
				{
					"id":"trigger",
					"type":"String",
					"title":"Trigger",
					"value":"Multiple",
					"description":"",
					"readonly":true,
					"optional":false
				}
			]
		},**/
		/**{
			"type": "node",
			"id":"StartParallelMultipleEvent",
			"title":"Start Parallel Multiple Event",
			"groups":["Start Events"],
			"description":"A process instance is started upon occurence of all possible events.",
			"view":"startevent/multiple.parallel.svg",
			"icon":"startevent/multiple.parallel.png",
			"propertyPackages":[
				"baseAttributes",
				"catchEventAttributes",
				"interrupting",
				"bgColor"
			],
			"roles" :			[
				"all",
				"messageflow_end",
				"sequence_start",
				"to_task_event",
				"from_task_event",
				"fromtoall",
				"Startevents_all",
				"choreography_sequence_start",
				"StartEventsMorph"
			],
			"properties": [
				{
					"id":"trigger",
					"type":"String",
					"title":"Trigger",
					"value":"Parallel Multiple",
					"description":"",
					"readonly":true,
					"optional":false
				}
			]
		},**/
		
		// Intermediate Events Catching
		{
			"type": "node",
			"id":"IntermediateMessageEventCatching",
			"title":"Message Intermediate Event",
			"groups":["Catching Intermediate Events"],
			"description":"This event reacts on the arrival of a message.",
			"view":"intermediateevent/message.catching.svg",
			"icon":"catching/message.png",
			"propertyPackages":[
				"baseAttributes",
				"interrupting",
				"boundaryevent",
				"bgColor"
			],
			"roles":[
				"all",
				"messageflow_end",
				"sequence_start",
				"sequence_end",
				"to_task_event",
				"from_task_event",
				"fromtoall",
				"FromEventbasedGateway",
				"IntermediateEventOnSubprocessBoundary",
				"IntermediateEventOnActivityBoundary",
				"EventOnChoreographyActivityBoundary",
				"IntermediateEventsMorph"
			],
			"properties": [
				/**{
					"id":"trigger",
					"type":"String",
					"title":"Trigger",
					"value":"Message",
					"description":"",
					"readonly":true,
					"optional":false,
					"refToView":"",
					"length":""
				},**/
				{
					"id":"messageref",
					"type":"String",
					"title":"MessageRef",
					"value":"",
					"description":"Message Ref",
					"readonly":false,
					"optional":true
				}
			]
		},
		{
			"type": "node",
			"id":"IntermediateTimerEvent",
			"title":"Timer Intermediate Event",
			"groups":["Catching Intermediate Events"],
			"description":"Process execution is delayed until a certain point in time is reached or a particular duration is over.",
			"view":"intermediateevent/timer.svg",
			"icon":"catching/timer.png",
			"propertyPackages":[
				"baseAttributes",
				"interrupting",
				"boundaryevent",
				"bgColor"
			],
			"roles":[
				"all",
				"sequence_start",
				"sequence_end",
				"to_task_event",
				"from_task_event",
				"fromtoall",
				"choreography_sequence_start",
				"choreography_sequence_end",
				"FromEventbasedGateway",
				"IntermediateEventOnSubprocessBoundary",
				"IntermediateEventOnActivityBoundary",
				"EventOnChoreographyActivityBoundary",
				"IntermediateEventsMorph"
			],
			"properties": [
				/**{
					"id":"trigger",
					"type":"String",
					"title":"Trigger",
					"value":"Timer",
					"description":"",
					"readonly":true,
					"optional":false,
					"refToView":"",
					"length":""
				},**/
				{
					"id":"timedate",
					"type":"String",
					"title":"Time Date",
					"value":"",
					"description":"",
					"readonly":false,
					"optional":true,
					"refToView":"",
					"length":""
				},
				{
					"id":"timeduration",
					"type":"Text",
					"title":"Time Duration",
					"value":"",
					"description":"",
					"readonly":false,
					"optional":true,
					"refToView":"",
					"length":""
				},
				{
					"id":"timecycle",
					"type":"Text",
					"title":"Time Cycle",
					"value":"",
					"description":"",
					"readonly":false,
					"optional":true,
					"refToView":"",
					"length":""
				},
				{
					"id":"timecyclelanguage",
					"type":"Choice",
					"title":"Time Cycle Language",
					"value":"",
					"description":"",
					"readonly":false,
					"optional":true,
					"items": [
						{
							"id":"nolang",
							"title":"None",
							"value":"none"
						},
						{
							"id":"cron",
							"title":"Cron",
							"value":"cron"
						}
					]
				}
			]
		},
		{
			"type": "node",
			"id":"IntermediateEscalationEvent",
			"title":"Escalation Intermediate Event",
			"groups":["Catching Intermediate Events"],
			"description":"This event reacts on the escalation of a case. It needs to be attached to the boundary of an activity.",
			"view":"intermediateevent/escalation.catching.svg",
			"icon":"catching/escalation.png",
			"propertyPackages":[
				"baseAttributes",
				"catchEventAttributes",
				"interrupting",
				"boundaryevent",
				"bgColor"
			],
			"roles":[
			    "all",
				"eventSubprocesElement",
				"sequence_start",
				"to_task_event",
				"from_task_event",
				"fromtoall",
				"IntermediateEventOnSubprocessBoundary",
				"IntermediateEventOnActivityBoundary",
				"IntermediateEventsMorph"
			],
			"properties": [
				/**{
					"id":"trigger",
					"type":"String",
					"title":"Trigger",
					"value":"Escalation",
					"description":"",
					"readonly":true,
					"optional":false,
					"refToView":"",
					"length":""
				},**/
				{
					"id":"escalationcode",
					"type":"String",
					"title":"EscalationCode",
					"value":"",
					"description":"Escalation code",
					"readonly":false,
					"optional":true
				}
			]
		},
		{
			"type": "node",
			"id":"IntermediateConditionalEvent",
			"title":"Conditional Intermediate Event",
			"groups":["Catching Intermediate Events"],
			"description":"Process execution is delayed until a changed business condition or business rule matches.",
			"view":"intermediateevent/conditional.svg",
			"icon":"catching/conditional.png",
			"propertyPackages":[
				"baseAttributes",
				"catchEventAttributes",
				"interrupting",
				"boundaryevent",
				"condition",
				"bgColor"
			],
			"roles":[
				"all",
				"sequence_start",
				"sequence_end",
				"choreography_sequence_start",
				"choreography_sequence_end",
				"to_task_event",
				"from_task_event",
				"fromtoall",
				"FromEventbasedGateway",
				"IntermediateEventOnSubprocessBoundary",
				"IntermediateEventOnActivityBoundary",
				"EventOnChoreographyActivityBoundary",
				"IntermediateEventsMorph"
			],
			"properties": [
				/**{
					"id":"trigger",
					"type":"String",
					"title":"Trigger",
					"value":"Rule",
					"description":"",
					"readonly":true,
					"optional":false,
					"refToView":"",
					"length":""
				},**/
				{
					"id":"conditionlanguage",
					"type":"Choice",
					"title":"Language",
					"value":"drools",
					"description":"Defines the condition language.",
					"readonly":false,
					"optional":true,
					"items": [
						{
							"id": "c1",
							"title":"drools",
							"value":"drools"
						},
						{
							"id": "c2",
							"title": "mvel",
							"value": "mvel"
						}
					]                                               
				},
				{
					"id":"conditionexpression",
					"type":"Text",
					"title":"Expression",
					"value":"",
					"description":"",
					"readonly":false,
					"optional":true
				}
			]
		},
		/**{
			"type": "node",
			"id":"IntermediateLinkEventCatching",
			"title":"Link Intermediate Event",
			"groups":["Catching Intermediate Events"],
			"description":"Off-page connectors. Two corresponding link events correspond to a sequence flow.",
			"view":"intermediateevent/link.catching.svg",
			"icon":"catching/link.png",
			"propertyPackages":[
				"baseAttributes",
				"catchEventAttributes",
				"bgColor"
			],
			"roles":[
				"all",
				"sequence_start",
				"to_task_event",
				"from_task_event",
				"fromtoall",
				"choreography_sequence_start",
				"IntermediateEventsMorph"
			],
			"properties": [
				{
                    "id":"entry",
                    "type":"DiagramLink",
                    "title":"Diagram Link",
                    "value":"",
                    "description":"",
                    "readonly":false,
					"refToView" : "diagramLink",
                    "optional":false
                },
				{
					"id":"trigger",
					"type":"String",
					"title":"Trigger",
					"value":"Link",
					"description":"",
					"readonly":true,
					"optional":false,
					"refToView":"",
					"length":""
				}
			]
		},**/
		{
			"type": "node",
			"id":"IntermediateErrorEvent",
			"title":"Error Intermediate Event",
			"groups":["Catching Intermediate Events"],
			"description":"Catches a named error, which was thrown be an inner scope (e.g. subprocess). This event needs to be attached to the boundary of an activity.",
			"view":"intermediateevent/error.svg",
			"icon":"catching/error.png",
			"propertyPackages":[
				"baseAttributes",
				"catchEventAttributes",
				"boundaryevent",
				"bgColor"
			],
			"roles":[
				"all",
				"sequence_start",
				"to_task_event",
				"from_task_event",
				"fromtoall",
				"IntermediateEventOnSubprocessBoundary",
				"IntermediateEventOnActivityBoundary",
				"IntermediateEventsMorph"
			],
			"properties": [
				/**{
					"id":"trigger",
					"type":"String",
					"title":"Trigger",
					"value":"Error",
					"description":"",
					"readonly":true,
					"optional":false,
					"refToView":"",
					"length":""
				},**/
				{
					"id":"errorref",
					"type":"Text",
					"title":"ErrorRef",
					"value":"",
					"description":"",
					"readonly":false,
					"optional":true,
					"refToView":"",
					"length":""
				}
			]
		},
		/**{
			"type": "node",
			"id":"IntermediateCancelEvent",
			"title":"Cancel Intermediate Event",
			"groups":["Catching Intermediate Events"],
			"description":"Reacts on a transaction, which was cancelled inside an inner scope (e.g. subprocess). This event needs to be attached to the boundary of an activity.",
			"view":"intermediateevent/cancel.svg",
			"icon":"catching/cancel.png",
			"propertyPackages":[
				"baseAttributes",
				"catchEventAttributes",
				"boundaryevent",
				"bgColor"
			],
			"roles":[
				"all",
				"sequence_start",
				"to_task_event",
				"from_task_event",
				"fromtoall",
				"IntermediateEventOnSubprocessBoundary",
				"EventOnChoreographyActivityBoundary",
				"IntermediateEventsMorph"
			],
			"properties": [
				{
					"id":"trigger",
					"type":"String",
					"title":"Trigger",
					"value":"Cancel",
					"description":"",
					"readonly":true,
					"optional":false,
					"refToView":"",
					"length":""
				}
			]
		},**/
		{
			"type": "node",
			"id":"IntermediateCompensationEventCatching",
			"title":"Compensation Intermediate Event",
			"groups":["Catching Intermediate Events"],
			"description":"Compensation handling in case of partially failed operations. This event needs to be attached to the boundary of an activity.",
			"view":"intermediateevent/compensation.catching.svg",
			"icon":"catching/compensation.png",
			"propertyPackages":[
				"baseAttributes",
				"catchEventAttributes",
				"boundaryevent",
				"compensation",
				"bgColor"
			],
			"roles":[
				"all",
				"from_task_event",
				"fromtoall",
				"EventOnChoreographyActivityBoundary",
				"IntermediateEventOnSubprocessBoundary",
				"IntermediateEventOnActivityBoundary",
				"IntermediateEventsMorph"
			],
			"properties": [
				/**{
					"id":"trigger",
					"type":"String",
					"title":"Trigger",
					"value":"Compensation",
					"description":"",
					"readonly":true,
					"optional":false,
					"refToView":"",
					"length":""
				}**/
			]
		},
		{
			"type": "node",
			"id":"IntermediateSignalEventCatching",
			"title":"Signal Intermediate Event",
			"groups":["Catching Intermediate Events"],
			"description":"Process execution is delayed until a particular signal is catched. Signalling can happen across different processes.",
			"view":"intermediateevent/signal.catching.svg",
			"icon":"catching/signal.png",
			"propertyPackages":[
				"baseAttributes",
				"catchEventAttributes",
				"interrupting",
				"boundaryevent",
				"bgColor"
			],
			"roles":[
				"all",
				"sequence_start",
				"sequence_end",
				"to_task_event",
				"from_task_event",
				"fromtoall",
				"choreography_sequence_start",
				"choreography_sequence_end",
				"FromEventbasedGateway",
				"IntermediateEventOnSubprocessBoundary",
				"IntermediateEventOnActivityBoundary",
				"IntermediateEventsMorph"
			],
			"properties": [
				/**{
					"id":"trigger",
					"type":"String",
					"title":"Trigger",
					"value":"Signal",
					"description":"",
					"readonly":true,
					"optional":false,
					"refToView":"",
					"length":""
				},**/
				{
					"id":"signalref",
					"type":"Text",
					"title":"SignalRef",
					"value":"",
					"description":"",
					"readonly":false,
					"optional":true,
					"refToView":"",
					"length":""
				}
			]
		},
		/**{
			"type": "node",
			"id":"IntermediateMultipleEventCatching",
			"title":"Multiple Intermediate Event",
			"groups":["Catching Intermediate Events"],
			"description":"Process execution is delayed until one out of a set of possible events is triggered.",
			"view":"intermediateevent/multiple.catching.svg",
			"icon":"catching/multiple.png",
			"propertyPackages":[
				"baseAttributes",
				"catchEventAttributes",
				"interrupting",
				"boundaryevent",
				"bgColor"
			],
			"roles":[
				"all",
				"sequence_start",
				"sequence_end",
				"to_task_event",
				"from_task_event",
				"fromtoall",
				"messageflow_end",
				"choreography_sequence_start",
				"choreography_sequence_end",
				"FromEventbasedGateway",
				"IntermediateEventOnSubprocessBoundary",
				"IntermediateEventOnActivityBoundary",
				"IntermediateEventsMorph"
			],
			"properties": [
				{
					"id":"trigger",
					"type":"String",
					"title":"Trigger",
					"value":"Multiple",
					"description":"",
					"readonly":true,
					"optional":false,
					"refToView":"",
					"length":""
				}
			]
		},**/
		/**{
			"type": "node",
			"id":"IntermediateParallelMultipleEventCatching",
			"title":"Parallel Multiple Intermediate Event",
			"groups":["Catching Intermediate Events"],
			"description":"Process execution is delayed until all possible events have been triggered.",
			"view":"intermediateevent/multiple.parallel.svg",
			"icon":"catching/multiple.parallel.png",
			"propertyPackages":[
				"baseAttributes",
				"catchEventAttributes",
				"interrupting",
				"boundaryevent",
				"bgColor"
			],
			"roles":[
				"all",
				"messageflow_end",
				"sequence_start",
				"sequence_end",
				"to_task_event",
				"from_task_event",
				"fromtoall",
				"choreography_sequence_start",
				"choreography_sequence_end",
				"IntermediateEventOnSubprocessBoundary",
				"IntermediateEventOnActivityBoundary",
				"IntermediateEventsMorph"
			],
			"properties": [
				{
					"id":"trigger",
					"type":"String",
					"title":"Trigger",
					"value":"Multiple",
					"description":"",
					"readonly":true,
					"optional":false,
					"refToView":"",
					"length":""
				}
			]
		},**/
		
		// Intermediate Events Throwing
		{
			"type": "node",
			"id":"IntermediateEvent",
			"title":"Intermediate Event",
			"groups":["Throwing Intermediate Events"],
			"description":"This event marks the occurrence of a particular business event. Process execution is not delayed.",
			"view":"intermediateevent/none.svg",
			"icon":"throwing/none.png",
			"propertyPackages":[
				"baseAttributes",
				"throwEventAttributes",
				"bgColor"
			],
			"roles":[
				"all",
				"sequence_start",
				"sequence_end",
				"to_task_event",
				"from_task_event",
				"fromtoall",
				"choreography_sequence_end",
				"choreography_sequence_start",
				"IntermediateEventsMorph"
			],
			"properties": [
				/**{
					"id":"trigger",
					"type":"String",
					"title":"Trigger",
					"value":"None",
					"description":"",
					"readonly":true,
					"optional":false,
					"refToView":"",
					"length":""
				}**/
			]
		},
		{
			"type": "node",
			"id":"IntermediateMessageEventThrowing",
			"title":"Message Intermediate Event",
			"groups":["Throwing Intermediate Events"],
			"description":"The throwing message event sends a message to a communication partner and afterwards continues process execution.",
			"view":"intermediateevent/message.throwing.svg",
			"icon":"throwing/message.png",
			"propertyPackages":[
				"baseAttributes",
				"throwEventAttributes",
				"bgColor"
			],
			"roles":[
				"all",
				"messageflow_start",
				"sequence_start",
				"sequence_end",
				"to_task_event",
				"from_task_event",
				"fromtoall",
				"IntermediateEventsMorph"
			],
			"properties": [
				/**{
					"id":"trigger",
					"type":"String",
					"title":"Trigger",
					"value":"Message",
					"description":"",
					"readonly":true,
					"optional":false
				},**/
				{
					"id":"messageref",
					"type":"String",
					"title":"MessageRef",
					"value":"",
					"description":"Message Ref",
					"readonly":false,
					"optional":true
				}
			]
		},
		{
			"type": "node",
			"id":"IntermediateEscalationEventThrowing",
			"title":"Escalation Intermediate Event",
			"groups":["Throwing Intermediate Events"],
			"description":"This event triggers the escalation of the case to another role in the organisation. After this, process execution is resumed.",
			"view":"intermediateevent/escalation.throwing.svg",
			"icon":"throwing/escalation.png",
			"propertyPackages":[
				"baseAttributes",
				"throwEventAttributes",
				"bgColor"
			],
			"roles":[
			    "all",
				"eventSubprocessElement",
				"sequence_start",
				"sequence_end",
				"to_task_event",
				"from_task_event",
				"fromtoall",
				"IntermediateEventsMorph"
			],
			"properties": [
				/**{
					"id":"trigger",
					"type":"String",
					"title":"Trigger",
					"value":"Escalation",
					"description":"",
					"readonly":true,
					"optional":false
				},**/
				{
					"id":"escalationcode",
					"type":"String",
					"title":"EscalationCode",
					"value":"",
					"description":"Escalation code",
					"readonly":false,
					"optional":true
				}
			]
		},
		/** {
			"type": "node",
			"id":"IntermediateLinkEventThrowing",
			"title":"Link Intermediate Event",
			"groups":["Throwing Intermediate Events"],
			"description":"Off-page connectors. Two corresponding link events correspond to a sequence flow.",
			"view":"intermediateevent/link.throwing.svg",
			"icon":"throwing/link.png",
			"propertyPackages":[
				"baseAttributes",
				"throwEventAttributes",
				"bgColor"
			],
			"roles":[
				"all",
				"sequence_end",
				"to_task_event",
				"from_task_event",
				"fromtoall",
				"choreography_sequence_end",
				"IntermediateEventsMorph"
			],
			"properties": [
			     {
                    "id":"entry",
                    "type":"DiagramLink",
                    "title":"Diagram Link",
                    "value":"",
                    "description":"",
					"refToView": "diagramLink",
                    "readonly":false,
                    "optional":false
                },
				{
					"id":"trigger",
					"type":"String",
					"title":"Trigger",
					"value":"Link",
					"description":"",
					"readonly":true,
					"optional":false
				}
			]
		},**/
		{
			"type": "node",
			"id":"IntermediateCompensationEventThrowing",
			"title":"Compensation Intermediate Event",
			"groups":["Throwing Intermediate Events"],
			"description":"Triggers a compensation.",
			"view":"intermediateevent/compensation.throwing.svg",
			"icon":"throwing/compensation.png",
			"propertyPackages":[
				"baseAttributes",
				"throwEventAttributes",
				"bgColor",
				"compensationThrowing",
				"compensation"
			],
			"roles":[
				"all",
				"sequence_start",
				"sequence_end",
				"to_task_event",
				"from_task_event",
				"fromtoall",
				"IntermediateEventsMorph"
			],
			"properties": [
				/**{
					"id":"trigger",
					"type":"String",
					"title":"Trigger",
					"value":"Compensation",
					"description":"",
					"readonly":true,
					"optional":false
				}**/
			]
		},
		{
			"type": "node",
			"id":"IntermediateSignalEventThrowing",
			"title":"Signal Intermediate Event",
			"groups":["Throwing Intermediate Events"],
			"description":"The throwing signal event fires up a signal. Afterwards it continues process execution. One signal thrown can be caught multiple times by different catching signal events.",
			"view":"intermediateevent/signal.throwing.svg",
			"icon":"throwing/signal.png",
			"propertyPackages":[
				"baseAttributes",
				"throwEventAttributes",
				"bgColor"
			],
			"roles":[
				"all",
				"sequence_start",
				"sequence_end",
				"to_task_event",
				"from_task_event",
				"fromtoall",
				"IntermediateEventsMorph"
			],
			"properties": [
				/**{
					"id":"trigger",
					"type":"String",
					"title":"Trigger",
					"value":"Signal",
					"description":"",
					"readonly":true,
					"optional":false
				},**/
				{
					"id":"signalref",
					"type":"Text",
					"title":"SignalRef",
					"value":"",
					"description":"",
					"readonly":false,
					"optional":true,
					"refToView":"",
					"length":""
				}
			]
		},
		/**{
			"type": "node",
			"id":"IntermediateMultipleEventThrowing",
			"title":"Multiple Intermediate Event",
			"groups":["Throwing Intermediate Events"],
			"description":"The throwing multiple event throws one out of a set of possible events. Afterwards it continues process execution.",
			"view":"intermediateevent/multiple.throwing.svg",
			"icon":"throwing/multiple.png",
			"propertyPackages":[
				"baseAttributes",
				"throwEventAttributes",
				"bgColor"
			],
			"roles":[
				"all",
				"messageflow_start",
				"sequence_start",
				"sequence_end",
				"to_task_event",
				"from_task_event",
				"fromtoall",
				"IntermediateEventsMorph"
			],
			"properties": [
				{
					"id":"trigger",
					"type":"String",
					"title":"Trigger",
					"value":"Multiple",
					"description":"",
					"readonly":true,
					"optional":false
				}
			]
		},**/
		
		// End Events
		
		{
			"type" : "node",
			"id": "EndNoneEvent",
			"title": "End Event",
			"groups" : ["End Events"],
			"description" : "The untyped end event typically marks the standard end of a process.",
			"view" : "endevent/none.svg",
			"icon" : "endevent/none.png",
			"propertyPackages":[
				"baseAttributes",
				"throwEventAttributes",
				"bgColor"
			],
			"roles" : [
				"all",
				"sequence_end",
				"to_task_event",
				"from_task_event",
				"fromtoall",
				"choreography_sequence_end",
				"Endevents_all",
				"EndEventsMorph"
			],
			"properties": [
				/**{
					"id":"trigger",
					"type":"String",
					"title":"Trigger",
					"value":"None",
					"description":"",
					"readonly":true,
					"optional":false
				}**/
			]
		},
		{
			"type": "node",
			"id":"EndMessageEvent",
			"title":"Message End Event",
			"groups":["End Events"],
			"description":"At the end of the process, a message is sent.",
			"view":"endevent/message.svg",
			"icon":"endevent/message.png",
			"propertyPackages":[
				"baseAttributes",
				"throwEventAttributes",
				"bgColor"
			],
			"roles": [
				"all",
				"messageflow_start",
				"sequence_end",
				"to_task_event",
				"from_task_event",
				"fromtoall",
				"Endevents_all",
				"EndEventsMorph"
			],
			"properties": [
				/**{
					"id":"trigger",
					"type":"String",
					"title":"Trigger",
					"value":"Message",
					"description":"",
					"readonly":true,
					"optional":false
				},**/
				{
					"id":"messageref",
					"type":"String",
					"title":"MessageRef",
					"value":"",
					"description":"Message Ref",
					"readonly":false,
					"optional":true
				}
			]
		},
		{
			"type": "node",
			"id":"EndEscalationEvent",
			"title":"Escalation End Event",
			"groups":["End Events"],
			"description":"The case is escalated with the end of the process.",
			"view":"endevent/escalation.svg",
			"icon":"endevent/escalation.png",
			"propertyPackages":[
				"baseAttributes",
				"throwEventAttributes",
				"bgColor"
			],
			"roles": [
			    "all",
				"eventSubprocessElement",
				"EndEventsMorph",
				"Endevents_all",
				"sequence_end"
			],
			"properties": [
				/**{
					"id":"trigger",
					"type":"String",
					"title":"Trigger",
					"value":"Escalation",
					"description":"",
					"readonly":true,
					"optional":false
				},**/
				{
					"id":"escalationcode",
					"type":"String",
					"title":"EscalationCode",
					"value":"",
					"description":"Escalation code",
					"readonly":false,
					"optional":true
				}
			]
		},
		{
			"type": "node",
			"id":"EndErrorEvent",
			"title":"Error End Event",
			"groups":["End Events"],
			"description":"The process ends in an error state. As result a named error is thrown.",
			"view":"endevent/error.svg",
			"icon":"endevent/error.png",
			"propertyPackages":[
				"baseAttributes",
				"throwEventAttributes",
				"bgColor"
			],
			"roles": [
				"all",
				"sequence_end",
				"to_task_event",
				"from_task_event",
				"fromtoall",
				"Endevents_all",
				"EndEventsMorph"
			],
			"properties": [
				/**{
					"id":"trigger",
					"type":"String",
					"title":"Trigger",
					"value":"Error",
					"description":"",
					"readonly":true,
					"optional":false
				},**/
				{
					"id":"errorref",
					"type":"Text",
					"title":"ErrorRef",
					"value":"",
					"description":"",
					"readonly":false,
					"optional":true,
					"refToView":"",
					"length":""
				}
			]
		},
		{
			"type": "node",
			"id":"EndCancelEvent",
			"title":"Cancel End Event",
			"groups":["End Events"],
			"description":"Triggering cancellation of a transaction.",
			"view":"endevent/cancel.svg",
			"icon":"endevent/cancel.png",
			"propertyPackages":[
				"baseAttributes",
				"throwEventAttributes",
				"bgColor"
			],
			"roles":[
				"all",
				"sequence_end",
				"to_task_event",
				"from_task_event",
				"fromtoall",
				"Endevents_all",
				"EndEventsMorph"
			],
			"properties": [
				/**{
					"id":"trigger",
					"type":"String",
					"title":"Trigger",
					"value":"Cancel",
					"description":"",
					"readonly":true,
					"optional":false
				}**/
			]
		},
		{
			"type": "node",
			"id":"EndCompensationEvent",
			"title":"Compensation End Event",
			"groups":["End Events"],
			"description":"Triggering compensation as final process step.",
			"view":"endevent/compensation.svg",
			"icon":"endevent/compensation.png",
			"propertyPackages":[
				"baseAttributes",
				"throwEventAttributes",
				"bgColor",
				"compensationThrowing",
				"compensation"
			],
			"roles": [
				"all",
				"sequence_end",
				"to_task_event",
				"from_task_event",
				"fromtoall",
				"Endevents_all",
				"EndEventsMorph"
			],
			"properties": [
				/**{
					"id":"trigger",
					"type":"String",
					"title":"Trigger",
					"value":"Compensation",
					"description":"",
					"readonly":true,
					"optional":false
				}**/
			]
		},
		{
			"type": "node",
			"id":"EndSignalEvent",
			"title":"Signal End Event",
			"groups":["End Events"],
			"description":"At the end of the process, a signal is thrown. (One signal thrown can be caught multiple times)",
			"view":"endevent/signal.svg",
			"icon":"endevent/signal.png",
			"propertyPackages":[
				"baseAttributes",
				"throwEventAttributes",
				"bgColor"
			],
			"roles": [
				"all",
				"sequence_end",
				"to_task_event",
				"from_task_event",
				"fromtoall",
				"Endevents_all",
				"EndEventsMorph"
			],
			"properties": [
				/**{
					"id":"trigger",
					"type":"String",
					"title":"Trigger",
					"value":"Signal",
					"description":"",
					"readonly":true,
					"optional":false
				},**/
				{
					"id":"signalref",
					"type":"Text",
					"title":"SignalRef",
					"value":"",
					"description":"",
					"readonly":false,
					"optional":true,
					"refToView":"",
					"length":""
				}
			]
		},
		/**{
			"type": "node",
			"id":"EndMultipleEvent",
			"title":"Multiple End Event",
			"groups":["End Events"],
			"description":"At the end of the process, one out of a set of possible events is triggered.",
			"view":"endevent/multiple.svg",
			"icon":"endevent/multiple.png",
			"propertyPackages":[
				"baseAttributes",
				"throwEventAttributes",
				"bgColor"
			],
			"roles": [
				"all",
				"messageflow_start",
				"sequence_end",
				"to_task_event",
				"from_task_event",
				"fromtoall",
				"Endevents_all",
				"EndEventsMorph"
			],
			"properties": [
				{
					"id":"trigger",
					"type":"String",
					"title":"Trigger",
					"value":"Multiple",
					"description":"",
					"readonly":true,
					"optional":false
				}
			]
		},**/
		{
			"type": "node",
			"id":"EndTerminateEvent",
			"title":"Terminate End Event",
			"groups":["End Events"],
			"description":"Triggering the immediate termination of a process instance. All steps still in execution in parallel branches are terminated.",
			"view":"endevent/terminate.svg",
			"icon":"endevent/terminate.png",
			"propertyPackages":[
				"baseAttributes",
				"throwEventAttributes",
				"bgColor"
			],
			"roles": [
				"all",
				"sequence_end",
				"to_task_event",
				"from_task_event",
				"fromtoall",
				"choreography_sequence_end",
				"EndEventsMorph"
			],
			"properties": [
				/**{
					"id":"trigger",
					"type":"String",
					"title":"Trigger",
					"value":"Terminate",
					"description":"",
					"readonly":true,
					"optional":false
				}**/
			]
		},
		
		// Edges
		
		{
			"type": "edge",
			"id":"SequenceFlow",
			"title":"Sequence Flow",
			"description":"Sequence Flow defines the execution order of activities.",
			"groups":["Connecting Objects"],
			"view":"connector/sequenceflow.svg",
			"icon":"connector/sequenceflow.png",
			"propertyPackages":[
				"baseAttributes"
			],
			"roles": [
				"all",
				"ConnectingObjectsMorph"
			],
			"properties":[
				{
					"id":"ConditionType",
					"type":"Choice",
					"title":"ConditionType",
					"value":"None",
					"description":"Determine the typ of the flow object.",
					"readonly":false,
					"optional":false,
					"items": [
						{
							"id":"none",
							"title":"Standard",
							"value":"None"
						},
						{
							"id":"expression",
							"title":"Conditional Flow",
							"value":"Expression",
							"icon" : "connector/list/type.expression.png",
							"refToView":""
						},
						{
							"id":"default",
							"title":"Default Flow",
							"value":"Default",
							"icon" : "connector/list/type.default.png",
							"refToView":"default"
						}
					]
				},
				{
					"id":"conditionexpression",
					"type":"Text",
					"title":"Condition Expression",
					"value":"",
					"description":"",
					"readonly":false,
					"optional":true,
					"length":"",
					"wrapLines":true
				},
				{
					"id":"conditionexpressionlanguage",
					"type":"Choice",
					"title":"Condition Expression Language",
					"value":"java",
					"description":"",
					"readonly":false,
					"optional":true,
					"length":"",
					"wrapLines":true,
					"items": [
						{
							"id": "c1",
							"title": "java",
							"value": "java"
						},
						{
							"id": "c2",
							"title": "drools",
							"value": "drools"
						}    
					]  
				},
				{
					"id":"priority",
					"type":"Integer",
					"title":"Priority",
					"value":"",
					"description":"priority",
					"readonly":false,
					"optional":true,
					"min":"1"
				},
				{
					"id":"isimmediate",
					"type":"Boolean",
					"title":"isImmediate",
					"value":"",
					"description":"An optional Boolean value specifying whether Activities or Choreography Activities not in the model containing the Sequence Flow can occur between the elements connected by the Sequence Flow. If the value is true, they MAY NOT occur. If the value is false, they MAY occur. Also see the isClosed attribute on Process, Choreography, and Collaboration.",
					"readonly":false,
					"optional":false
				},
				{
					"id":"showdiamondmarker",
					"type":"Boolean",
					"title":"is conditional flow",
					"value":false,
					"description":"System intern variable to set the Diamond invisible, if sourceShape is a gateway and ConditionType is set to Expression",
					"readonly":true,
					"optional":false,
					"visible":false,
					"refToView":"conditional"
				}
			]
		},
		{
			"type": "edge",
			"id":"Association_Undirected",
			"title":"Association (undirected)",
			"description":"Attaching a data object with an Undirected Association to a sequence flow indicates hand-over of information between the activities involved.",
			"groups":["Connecting Objects"],
			"view":"connector/association.undirected.svg",
			"icon":"connector/association.undirected.png",
			"roles": [
				"all",
				"ConnectingObjectsMorph"
			],			
			"propertyPackages" : [
			    "dataAssociation"
			],
			"properties" : [
				{
					"id":"type",
					"type":"Choice",
					"title":"Responsibilities",
					"value":"none",
					"description":"Describes the type of the responsibility according to RACI.",
					"readonly":false,
					"optional":true,
					"refToView":"name",
					"items": [
						{
							"id":"c1",
							"title":"",
							"value":"none"
						},
						{
							"id":"c2",
							"title":"responsible",
							"value":"performs"
						},
						{
							"id":"c3",
							"title":"accountable",
							"value":"approves"
						},
						{
							"id":"c4",
							"title":"consulted",
							"value":"consulted"
						},
						{
							"id":"c5",
							"title":"informed",
							"value":"isNotified"
						}
					]
				}
           ]
		},
		{
			"type": "edge",
			"id":"Association_Unidirectional",
			"title":"Association (unidirectional)",
			"description":"A Directed Association indicates information flow. A data object can be read at the start of an activity or written upon completion.",
			"groups":["Connecting Objects"],
			"view":"connector/association.unidirectional.svg",
			"icon":"connector/association.unidirectional.png",
			"roles": [
				"all",
				"ConnectingObjectsMorph",
				"Directed_Association"
			],
			"propertyPackages" : [
			    "dataAssociation"
			],
			"properties" : [
                {
                    "id":"text",
                    "type":"String",
                    "title":"Name",
                    "value":"",
                    "description":"",
                    "readonly":false,
                    "optional":true,
                    "length":"",
                    "refToView":"name",
                    "wrapLines":true,
					"popular":true
                }
           ]
		},
		/**{
			"type": "edge",
			"id":"Association_Bidirectional",
			"title":"Association (bidirectional)",
			"description":"A Bidirected Association indicates that the data object is modified, i.e. read and written during the execution of an actvity.",
			"groups":["Connecting Objects"],
			"view":"connector/association.bidirectional.svg",
			"icon":"connector/association.bidirectional.png",
			"roles": [
				"all",
				"ConnectingObjectsMorph",
				"Directed_Association"
			],			
			"propertyPackages" : [
			    "dataAssociation"
			],
			"properties" : [
                {
                    "id":"text",
                    "type":"String",
                    "title":"Name",
                    "value":"",
                    "description":"",
                    "readonly":false,
                    "optional":true,
                    "length":"",
                    "refToView":"name",
                    "wrapLines":true,
					"popular":true
                }
           ]
		},**/
		/**{
			"type": "edge",
			"id":"MessageFlow",
			"title":"Message Flow",
			"description":"Message Flow symbolizes information flow across organizational boundaries. Message flow can be attached to pools, activities, or message events. The order of message exchanges can be specified by combining message flow and sequence flow.",
			"groups":["Connecting Objects"],
			"view":"connector/messageflow.svg",
			"icon":"connector/messageflow.png",
			"propertyPackages":[
				"baseAttributes"
			],
			"roles": [
				"ConnectingObjectsMorph",
				"MessageContainer"
			]
		}**/
	],
	
	"rules" : {
		"cardinalityRules": [
			{
				"role":"Startevents_all",
				"incomingEdges": [
					{
						"role":"SequenceFlow",
						"maximum":0
						
					}
				]
			},
			{
				"role":"Endevents_all",
				"outgoingEdges": [
					{
						"role":"SequenceFlow",
						"maximum":0
						
					}
				]
			}
		],
		"connectionRules": [
			{
				"role":"SequenceFlow",
				"connects": [
					{
						"from":"sequence_start",
						"to":["sequence_end"]
					},
					{
						"from":"choreography_sequence_start",
						"to":["choreography_sequence_end"]
					},
					{
						"from":"Exclusive_Eventbased_Gateway",
						"to":["FromEventbasedGateway"]
					},{
						"from" : "EventbasedGateway",
						"to" : ["FromEventbasedGateway"]
					}
				]
			},
			{
				"role":"MessageFlow",
				"connects": [
					{
						"from":"messageflow_start",
						"to":["messageflow_end"]
					}
				]
			},
			{
				"role":"ChoreographyMessageFlowStart",
				"connects": [
					{
						"from":"messageflow_start",
						"to":["choreography_messageflow_end"]
					}
				]
			},
			{
				"role":"ChoreographyMessageFlowEnd",
				"connects": [
					{
						"from":"choreography_messageflow_start",
						"to":["messageflow_end"]
					}
				]
			},
			{
				"role":"IntermediateEventOnActivityBoundary",
				"connects": [
					{
						"from":"Task",
						"to":["IntermediateEventOnActivityBoundary"]
					}
				]
			},
			{
				"role":"IntermediateEventOnSubprocessBoundary",
				"connects": [
					{
						"from":"CollapsedSubprocess",
						"to":["IntermediateEventOnSubprocessBoundary"]
					},
					{
						"from":"Subprocess",
						"to":["IntermediateEventOnSubprocessBoundary"]
					}
				]
			},
			{
				"role":"EventOnChoreographyActivityBoundary",
				"connects": [
					{
						"from":"ChoreographyMorph",
						"to":["EventOnChoreographyActivityBoundary"]
					}
				]
			},
			{
				"role" : "Directed_Association",
				"connects" : [
					{
						"from" : "from_task_event",
						"to" : ["DataObject"]
					},
					{
						"from" : "from_task_event",
						"to" : ["DataStore"]
					},
					{
						"from" : "from_task_event",
						"to" : ["ITSystem"]
					},
					{
						"from" : "DataObject",
						"to" : ["to_task_event"]
					},
					{
						"from" : "DataStore",
						"to" : ["to_task_event"]
					},
					{
						"from" : "ITSystem",
						"to" : ["to_task_event"]
					},
					{
						"from" : "IntermediateCompensationEventCatching",
						"to" : ["to_task_event"]
					}
				]
			},
			{
				"role" : "Association_Undirected",
				"connects" : [
					{
						"from" : "SequenceFlow",
						"to" : ["DataObject"]
					},
					{
						"from" : "DataObject",
						"to" : ["SequenceFlow"]
					},
					{
						"from" : "DataObject",
						"to" : ["MessageFlow"]
					},
					{
						"from" : "MessageFlow",
						"to" : ["DataObject"]
					},
					{
						"from" : "ITSystem",
						"to" : ["to_task_event"]
					},
					{
						"from" : "from_task_event",
						"to" : ["ITSystem"]
					},
					{
						"from" : "DataStore",
						"to" : ["to_task_event"]
					},
					{
						"from" : "from_task_event",
						"to" : ["DataStore"]
					},
					{
						"from" : "fromtoall",
						"to" : ["TextAnnotation"]
					},
					{
						"from" : "TextAnnotation",
						"to" : "fromtoall"
					},
					{
						"from" : "Message",
						"to" : ["MessageFlow"]
					},
					{
						"from" : "MessageFlow",
						"to" : ["Message"]
					},
					{
						"from" : "Message",
						"to" : ["ChoreographyElement"]
					},
					{
						"from" : "ChoreographyElement",
						"to" : ["Message"]
					},
					{
						"from" : "ChoreographyElement",
						"to" : ["TextAnnotation"]
					},
					{
						"from" : "TextAnnotation",
						"to" : "ChoreographyElement"
					},
					{
					   "from" : "ActivitiesMorph",
					   "to" : ["to_participant"]
					},
					{
					   "from" : "to_participant",
					   "to" : ["ActivitiesMorph"]
					}
				]
			}
		],
		"containmentRules" : [
			{
				"role" : "BPMNDiagram",
				"contains" : ["all"]
			},
			{
				"role" : "EventSubprocess",
				"contains" : [
					"eventSubprocessElement",
					"sequence_start",
					"sequence_end"
				]
			},
			{
				"role" : "Pool",
				"contains" : [
					"Lane"
				]
			},
			{
				"role" : "Lane",
				"contains" : ["all"]
			},
			{
				"role" : "Subprocess",
				"contains" : [
					"sequence_start",
					"sequence_end",
					"from_task_event",
					"to_task_event",
					"EventSubprocess",
					"CollapsedEventSubprocess",
					"TextAnnotation",
					"from_participant"
				]
			},
			{
				"role" : "AdHocSubprocess",
				"contains" : [
					"sequence_start",
					"sequence_end",
					"from_task_event",
					"to_task_event",
					"EventSubprocess",
					"CollapsedEventSubprocess",
					"TextAnnotation",
					"from_participant"
				]
			},
			{
				"role" : "MultipleInstanceSubprocess",
				"contains" : [
					"sequence_start",
					"sequence_end",
					"from_task_event",
					"to_task_event",
					"EventSubprocess",
					"CollapsedEventSubprocess",
					"TextAnnotation",
					"from_participant"
				]
			},
			{
				"role" : "MessageContainer",
				"contains" : ["Message"]
			},
			{
				"role" : "ChoreographyElement",
				"contains" : ["ChoreographyParticipant"]
			},
			{
				"role" : "ChoreographySubprocessExpanded",
				"contains":	[
								"ChoreographyElement",
								"choreography_sequence_start",
								"choreography_sequence_end",
								"Message",
								"TextAnnotation"
																
							]
			}
		],
		"morphingRules": [
			{
				"role": "ActivitiesMorph",
				"baseMorphs": ["Task"],
				"preserveBounds" : true
			},
			{
				"role": "EventActivitiesMorph",
				"baseMorphs": ["CollapsedEventSubprocess"]
			},
			{
				"role": "GatewaysMorph",
				"baseMorphs": ["Exclusive_Databased_Gateway"]
			},
			{
				"role": "StartEventsMorph",
				"baseMorphs": ["StartNoneEvent"],
				"showInShapeMenu":false
			},
			{
				"role": "IntermediateEventsMorph",
				"baseMorphs": ["IntermediateEvent"]
			},
			{
				"role": "EndEventsMorph",
				"baseMorphs": ["EndNoneEvent"]
			},
			{
				"role": "TextAnnotationMorph",
				"baseMorphs": ["TextAnnotation"]
			},
			{
				"role": "DataObjectMorph",
				"baseMorphs": ["DataObject"]
			},
			{
				"role": "ConnectingObjectsMorph",
				"baseMorphs": ["SequenceFlow"]
			},
			{
				"role": "ChoreographyMorph",
				"baseMorphs": ["ChoreographyTask"]
			},
			{
				"role": "AssociationMorph",
				"baseMorphs": [""]
			}
		],
		"layoutRules" : [
			{
				"role": "ActivitiesMorph",
				"outs":[{"edgeRole":"MessageFlow","t":2, "r":1, "b":2, "l":1},
						{"t":1,"r":2,"b":1,"l":2}],
				"ins": [{"edgeRole":"MessageFlow","t":2, "r":1, "b":2, "l":1},
						{"t":1, "r":2, "b":1, "l":2}]
			},
			{
				"role": "EventActivitiesMorph",
				"outs":[{"edgeRole":"MessageFlow","t":2, "r":1, "b":2, "l":1},
						{"t":1,"r":2,"b":1,"l":2}],
				"ins": [{"edgeRole":"MessageFlow","t":2, "r":1, "b":2, "l":1},
						{"t":1, "r":2, "b":1, "l":2}]
			},
			{
				"role": "ChoreographyMorph",
				"outs":[{"edgeRole":"MessageFlow","t":2, "r":1, "b":2, "l":1},
						{"t":1,"r":2,"b":1,"l":2}],
				"ins": [{"edgeRole":"MessageFlow","t":2, "r":1, "b":2, "l":1},
						{"t":1, "r":2, "b":1, "l":2}]
			},
			{
				"role": "GatewaysMorph",
				"outs": [{"t":2, "r":1, "b":2, "l":1}]
			},
			{
				"role": "StartEventsMorph",
				"outs":[{"edgeRole":"MessageFlow","t":2, "r":1, "b":2, "l":1},
						{"t":1,"r":2,"b":1,"l":2}],
				"ins": [{"edgeRole":"MessageFlow","t":2, "r":1, "b":2, "l":1},
						{"t":1, "r":2, "b":1, "l":2}]
			},
			{
				"role": "IntermediateEventsMorph",
				"outs":[{"edgeRole":"MessageFlow","t":2, "r":1, "b":2, "l":1},
						{"t":1,"r":2,"b":1,"l":2}],
				"ins": [{"edgeRole":"MessageFlow","t":2, "r":1, "b":2, "l":1},
						{"t":1, "r":2, "b":1, "l":2}]
			},
			{
				"role": "EndEventsMorph",
				"outs":[{"edgeRole":"MessageFlow","t":2, "r":1, "b":2, "l":1},
						{"t":1,"r":2,"b":1,"l":2}],
				"ins": [{"edgeRole":"MessageFlow","t":2, "r":1, "b":2, "l":1},
						{"t":1, "r":2, "b":1, "l":2}]
			}
		]
	}
}
-------------- next part --------------
A non-text attachment was scrubbed...
Name: Log.svg
Type: image/svg+xml
Size: 2243 bytes
Desc: not available
Url : http://lists.jboss.org/pipermail/rules-users/attachments/20120313/6d4d89a2/attachment-0002.bin 
-------------- next part --------------
A non-text attachment was scrubbed...
Name: Email.svg
Type: image/svg+xml
Size: 2247 bytes
Desc: not available
Url : http://lists.jboss.org/pipermail/rules-users/attachments/20120313/6d4d89a2/attachment-0003.bin 
-------------- next part --------------
A non-text attachment was scrubbed...
Name: Screen shot 2012-03-13 at 00.55.02.png
Type: image/png
Size: 268832 bytes
Desc: not available
Url : http://lists.jboss.org/pipermail/rules-users/attachments/20120313/6d4d89a2/attachment-0001.png 


More information about the rules-users mailing list