It is a stupid classification --- not based on much of anything. Not even a language group because some long time non-immigrant Americans who speak only English but have some Spanish ancestry are called "hispanic", so is a Mayan Indian from Guatemala or Chiapas who speaks only a Mayan dialect and little or no Spanish is called a "hispanic". Those who speak a weird street Spanish-English mix who cannot be understood by English nor Spanish speakers are still hispanic. It's not a race, it's not a really even a language group.
I think it was created on one hand to separate many hispanics from white people and also to create a new victim class to keep jobs for the future.
Excellent point -- what is a "hispanic"? I assume that anyone from a predominately Spanish-speaking nation in Latin America, and perhaps Spain, as well, is considered hispanic. This would include a non-Spanish-speaking Mayan Indian from Mexico, a black from Puerto Rico, a Peruvian of Japanese descent and an Argentinian whose surname is "Schwartz."