unifiying analytic_semi_mapping