by default the name of an object is composed by the name of its parent combined with its simple name. That is, the fully qualified name of Pooyan will be
This is why Pooyan alone cannot be resolved. You will also get no code completion for the employee reference in Block, as you want to reference by an ID (not a qualified name) and there are no employees visible via their simple name only.
Note that you can "browse" the objects referable in Xtext models via the Open-Model-Element-Dialog (Shift-Ctrl-F3). There you will see all objects with their type and their name.
Thank you for your quick and kind answer.
I use Sony.Pooyan but it makes no difference. I've spend 1 complete day to solve this problem but I couldn't solve it! I don't know why. I also check the types in OMED but Employee is just Employee...
my complete grammar is :
grammar org.xtext.example.mydsl1.Test with org.eclipse.xtext.common.Terminals
generate test "link"