modeltype ECORE uses 'http://www.eclipse.org/emf/2002/Ecore';

transformation transformationWithModuleElements_257055(in inModel: ECORE, out outModel : ECORE) {

	intermediate property EPackage::myProperty : String;
	
	intermediate class MyEPackage extends EPackage {
		myName : String;
	}
		
	main() {
		inModel.rootObjects()[EPackage]->map foo();
	}

	mapping EPackage::foo() : EPackage {
		name := self.bar() + '_foo';
		result.myProperty := 'intermProp';
		nsURI := result.bar2();
	}

	query EPackage::bar() : String {
		return self.name + '_bar';
	}

	helper EPackage::bar2() : String {
		return self.myProperty + '_bar2';
	}
}