transformation Ecore_To_Uml(in dummy : ECORE, out ECORE);

modeltype ECORE uses "http://www.eclipse.org/emf/2002/Ecore";
	
mapping main(in model : EPackage) : EPackage {
	init {
		var d := Sequence {
    		    object EClass { name := 'a'},
    		    object EDataType { name := 'qq'},
        		object EClass { name := 'b'},
        		object EClass { name := null}
        		};
		var d1 := Sequence {
    		    object EClass { name := 'a'},
    		    object EDataType { name := 'qq'},
        		object EClass { name := 'b'},
        		object EClass { name := null}
        		};
        var c := d->at(1);		  
        var c1 := d1->at(1);		  
        var e1 := d->xselect(name = 'b');   		
        var e1a := d1->xselect(i | i.name = 'b');   	 	
--         var e1b := d->xselect(i; t = null| i.name = 'b');    		 
        var e2 := null->xselect(true);    
        var e2a := null->xselect(i | true);       
        var e3 := c->xselect(name = 'a');  
        var e3a := c1->xselect(i | i.name = 'a');  
        var e4 : Sequence(EDataType) := d->xselect(EDataType); 
        var e4a : Sequence(EDataType) := d1->xselect(i | EDataType); 
    }  
    	eSubpackages += object EPackage {
    		name := 'dc_pack';
    		eClassifiers += d;
    	};
    	eSubpackages += object EPackage {
    		name := 'e2_pack';
    		eClassifiers += e2;
    	};
    	eSubpackages += object EPackage {
    		name := 'e3_pack';
    		eClassifiers += e3;
    	};
    	eSubpackages += object EPackage {
    		name := 'e4_pack';
    		eClassifiers += e4;
    	};
    	eClassifiers += e1;
    	
    	eSubpackages += object EPackage {
    		name := 'dc_pack1';
    		eClassifiers += d1;
    	};
    	eSubpackages += object EPackage {
    		name := 'e2a_pack';
    		eClassifiers += e2a;
    	};
    	eSubpackages += object EPackage {
    		name := 'e3a_pack';
    		eClassifiers += e3a;
    	};
    	eSubpackages += object EPackage {
    		name := 'e4a_pack';
    		eClassifiers += e4a;
    	};
    	eClassifiers += e1a;
}