Se suelen clasificar en dos clases, aunque su clasificación es muy compleja y no está bien definida: