<abstract-schema-name> is simply a tag in the entity beans's deployment descriptor. The name that it specifies is what you must use to refer to the bean in EJB-QL. Usually you just set it to the same value as the EJB name. Can you think what advantage you could gain by setting it to something other than the EJB name? In other words, can you figure out why the specifiers felt it necessary to have an <abstract-schema-name> tag at all, instead of just using the EJB name? If so, you're smarter than I am.