/**
 * A minimal example for the Lunifera Entity DSL:
 * 
 * The package is the topmost element that contains the other elements such as entities, 
 * beans and enums. Inside a package, import statements an datatype declarations can be placed.
 * 
 * Here, the datatype String is declared since it is needed for the UUID property of entity Foo
 * (Entities are supposed to have an ID property; the preferable implementation is UUID).
 * 
 */
 
package org.eclipse.osbp.entitydsl.samples.sample01 {

	entity Foo {
		uuid String id ;
	}

	bean Bar { 
		
	}

	enum MyEnum {
		FOO, BAR
	}
}
