Bug 286678 UI model and propagation of context values: containers with variables
bundles/org.eclipse.e4.ui.model.workbench/src/org/eclipse/e4/ui/model/internal/application/ApplicationPackageImpl.java
public void initializePackageContents() {
		if (isInitialized) return;
		isInitialized = true;
		
		setName(eNAME);
		setNsPrefix(eNS_PREFIX);
		setNsURI(eNS_URI);
		
		ETypeParameter mApplicationEClass_W = addETypeParameter(mApplicationEClass, "W"); 
		ETypeParameter mPartEClass_P = addETypeParameter(mPartEClass, "P"); 
		ETypeParameter mSashFormEClass_P = addETypeParameter(mSashFormEClass, "P"); 
		ETypeParameter mContributedPartEClass_P = addETypeParameter(mContributedPartEClass, "P"); 
		ETypeParameter mItemContainerEClass_I = addETypeParameter(mItemContainerEClass, "I"); 
		ETypeParameter mTrimmedPartEClass_P = addETypeParameter(mTrimmedPartEClass, "P"); 
		ETypeParameter mItemPartEClass_P = addETypeParameter(mItemPartEClass, "P"); 
		ETypeParameter mWindowEClass_P = addETypeParameter(mWindowEClass, "P"); 
		
		EGenericType g1 = createEGenericType(this.getMWindow());
		EGenericType g2 = createEGenericType();
		g1.getETypeArguments().add(g2);
		mApplicationEClass_W.getEBounds().add(g1);
		g1 = createEGenericType(this.getMPart());
		g2 = createEGenericType();
		g1.getETypeArguments().add(g2);
		mPartEClass_P.getEBounds().add(g1);
		g1 = createEGenericType(this.getMPart());
		g2 = createEGenericType();
		g1.getETypeArguments().add(g2);
		mSashFormEClass_P.getEBounds().add(g1);
		g1 = createEGenericType(this.getMPart());