UNPKG

@openfisca/france-json

Version:

JSON & YAML data extracted from OpenFisca-France source code (parameters, variables, etc)

1,047 lines (1,046 loc) 33.2 kB
{ "default_value": 0, "definition_period": "year", "dtype": "float32", "entity": "menage", "file_path": "openfisca_france/model/prelevements_obligatoires/taxe_habitation/taxe_habitation.py", "formulas": { "2017-01-01": { "ast": { "args": { "args": [ { "arg": "menage", "ast_class": "arg", "col_offset": 23, "end_col_offset": 29, "end_lineno": 1, "lineno": 1 }, { "arg": "period", "ast_class": "arg", "col_offset": 31, "end_col_offset": 37, "end_lineno": 1, "lineno": 1 }, { "arg": "parameters", "ast_class": "arg", "col_offset": 39, "end_col_offset": 49, "end_lineno": 1, "lineno": 1 } ], "ast_class": "arguments", "defaults": [], "kw_defaults": [], "kwonlyargs": [], "posonlyargs": [] }, "ast_class": "FunctionDef", "body": [ { "ast_class": "Expr", "col_offset": 4, "end_col_offset": 7, "end_lineno": 5, "lineno": 2, "value": { "ast_class": "Constant", "col_offset": 4, "end_col_offset": 7, "end_lineno": 5, "lineno": 2, "value": "\n Pour le nombre de personnes à charge, on ne prend pas en compte les gardes en résidence alternée qui font\n qu'une personne à charge ne compte que pour 0.5 au lieu de 1.\n " } }, { "ast_class": "Assign", "col_offset": 4, "end_col_offset": 54, "end_lineno": 6, "lineno": 6, "targets": [ { "ast_class": "Name", "col_offset": 4, "ctx": { "ast_class": "Store" }, "end_col_offset": 12, "end_lineno": 6, "id": "enfant_i", "lineno": 6 } ], "value": { "args": [ { "ast_class": "Attribute", "attr": "ENFANT", "col_offset": 39, "ctx": { "ast_class": "Load" }, "end_col_offset": 53, "end_lineno": 6, "lineno": 6, "value": { "ast_class": "Name", "col_offset": 39, "ctx": { "ast_class": "Load" }, "end_col_offset": 46, "end_lineno": 6, "id": "Famille", "lineno": 6 } } ], "ast_class": "Call", "col_offset": 15, "end_col_offset": 54, "end_lineno": 6, "func": { "ast_class": "Attribute", "attr": "has_role", "col_offset": 15, "ctx": { "ast_class": "Load" }, "end_col_offset": 38, "end_lineno": 6, "lineno": 6, "value": { "ast_class": "Attribute", "attr": "members", "col_offset": 15, "ctx": { "ast_class": "Load" }, "end_col_offset": 29, "end_lineno": 6, "lineno": 6, "value": { "ast_class": "Name", "col_offset": 15, "ctx": { "ast_class": "Load" }, "end_col_offset": 21, "end_lineno": 6, "id": "menage", "lineno": 6 } } }, "keywords": [], "lineno": 6 } }, { "ast_class": "Assign", "col_offset": 4, "end_col_offset": 37, "end_lineno": 7, "lineno": 7, "targets": [ { "ast_class": "Name", "col_offset": 4, "ctx": { "ast_class": "Store" }, "end_col_offset": 14, "end_lineno": 7, "id": "nb_enfants", "lineno": 7 } ], "value": { "args": [ { "ast_class": "Name", "col_offset": 28, "ctx": { "ast_class": "Load" }, "end_col_offset": 36, "end_lineno": 7, "id": "enfant_i", "lineno": 7 } ], "ast_class": "Call", "col_offset": 17, "end_col_offset": 37, "end_lineno": 7, "func": { "ast_class": "Attribute", "attr": "sum", "col_offset": 17, "ctx": { "ast_class": "Load" }, "end_col_offset": 27, "end_lineno": 7, "lineno": 7, "value": { "ast_class": "Name", "col_offset": 17, "ctx": { "ast_class": "Load" }, "end_col_offset": 23, "end_lineno": 7, "id": "menage", "lineno": 7 } }, "keywords": [], "lineno": 7 } }, { "ast_class": "Assign", "col_offset": 4, "end_col_offset": 89, "end_lineno": 8, "lineno": 8, "targets": [ { "ast_class": "Name", "col_offset": 4, "ctx": { "ast_class": "Store" }, "end_col_offset": 36, "end_lineno": 8, "id": "valeur_locative_cadastrale_brute", "lineno": 8 } ], "value": { "args": [ { "ast_class": "Constant", "col_offset": 46, "end_col_offset": 80, "end_lineno": 8, "lineno": 8, "value": "valeur_locative_cadastrale_brute" }, { "ast_class": "Name", "col_offset": 82, "ctx": { "ast_class": "Load" }, "end_col_offset": 88, "end_lineno": 8, "id": "period", "lineno": 8 } ], "ast_class": "Call", "col_offset": 39, "end_col_offset": 89, "end_lineno": 8, "func": { "ast_class": "Name", "col_offset": 39, "ctx": { "ast_class": "Load" }, "end_col_offset": 45, "end_lineno": 8, "id": "menage", "lineno": 8 }, "keywords": [], "lineno": 8 } }, { "ast_class": "Assign", "col_offset": 4, "end_col_offset": 61, "end_lineno": 9, "lineno": 9, "targets": [ { "ast_class": "Name", "col_offset": 4, "ctx": { "ast_class": "Store" }, "end_col_offset": 5, "end_lineno": 9, "id": "P", "lineno": 9 } ], "value": { "ast_class": "Attribute", "attr": "taxe_habitation", "col_offset": 8, "ctx": { "ast_class": "Load" }, "end_col_offset": 61, "end_lineno": 9, "lineno": 9, "value": { "ast_class": "Attribute", "attr": "taxation_indirecte", "col_offset": 8, "ctx": { "ast_class": "Load" }, "end_col_offset": 45, "end_lineno": 9, "lineno": 9, "value": { "args": [ { "ast_class": "Name", "col_offset": 19, "ctx": { "ast_class": "Load" }, "end_col_offset": 25, "end_lineno": 9, "id": "period", "lineno": 9 } ], "ast_class": "Call", "col_offset": 8, "end_col_offset": 26, "end_lineno": 9, "func": { "ast_class": "Name", "col_offset": 8, "ctx": { "ast_class": "Load" }, "end_col_offset": 18, "end_lineno": 9, "id": "parameters", "lineno": 9 }, "keywords": [], "lineno": 9 } } } }, { "ast_class": "Assign", "col_offset": 4, "end_col_offset": 89, "end_lineno": 10, "lineno": 10, "targets": [ { "ast_class": "Name", "col_offset": 4, "ctx": { "ast_class": "Store" }, "end_col_offset": 36, "end_lineno": 10, "id": "abt_condition_modeste_th_commune", "lineno": 10 } ], "value": { "args": [ { "ast_class": "Constant", "col_offset": 46, "end_col_offset": 80, "end_lineno": 10, "lineno": 10, "value": "abt_condition_modeste_th_commune" }, { "ast_class": "Name", "col_offset": 82, "ctx": { "ast_class": "Load" }, "end_col_offset": 88, "end_lineno": 10, "id": "period", "lineno": 10 } ], "ast_class": "Call", "col_offset": 39, "end_col_offset": 89, "end_lineno": 10, "func": { "ast_class": "Name", "col_offset": 39, "ctx": { "ast_class": "Load" }, "end_col_offset": 45, "end_lineno": 10, "id": "menage", "lineno": 10 }, "keywords": [], "lineno": 10 } }, { "ast_class": "Assign", "col_offset": 4, "end_col_offset": 93, "end_lineno": 11, "lineno": 11, "targets": [ { "ast_class": "Name", "col_offset": 4, "ctx": { "ast_class": "Store" }, "end_col_offset": 38, "end_lineno": 11, "id": "valeur_locative_moyenne_th_commune", "lineno": 11 } ], "value": { "args": [ { "ast_class": "Constant", "col_offset": 48, "end_col_offset": 84, "end_lineno": 11, "lineno": 11, "value": "valeur_locative_moyenne_th_commune" }, { "ast_class": "Name", "col_offset": 86, "ctx": { "ast_class": "Load" }, "end_col_offset": 92, "end_lineno": 11, "id": "period", "lineno": 11 } ], "ast_class": "Call", "col_offset": 41, "end_col_offset": 93, "end_lineno": 11, "func": { "ast_class": "Name", "col_offset": 41, "ctx": { "ast_class": "Load" }, "end_col_offset": 47, "end_lineno": 11, "id": "menage", "lineno": 11 }, "keywords": [], "lineno": 11 } }, { "ast_class": "Assign", "col_offset": 4, "end_col_offset": 79, "end_lineno": 12, "lineno": 12, "targets": [ { "ast_class": "Name", "col_offset": 4, "ctx": { "ast_class": "Store" }, "end_col_offset": 24, "end_lineno": 12, "id": "taux_plafond_general", "lineno": 12 } ], "value": { "ast_class": "Attribute", "attr": "seuil_valeur_locative_abattement_condition_modeste", "col_offset": 27, "ctx": { "ast_class": "Load" }, "end_col_offset": 79, "end_lineno": 12, "lineno": 12, "value": { "ast_class": "Name", "col_offset": 27, "ctx": { "ast_class": "Load" }, "end_col_offset": 28, "end_lineno": 12, "id": "P", "lineno": 12 } } }, { "ast_class": "Assign", "col_offset": 4, "end_col_offset": 87, "end_lineno": 13, "lineno": 13, "targets": [ { "ast_class": "Name", "col_offset": 4, "ctx": { "ast_class": "Store" }, "end_col_offset": 28, "end_lineno": 13, "id": "maj_taux_plafond_par_pac", "lineno": 13 } ], "value": { "ast_class": "Attribute", "attr": "maj_seuil_valeur_locative_abattement_condition_modeste", "col_offset": 31, "ctx": { "ast_class": "Load" }, "end_col_offset": 87, "end_lineno": 13, "lineno": 13, "value": { "ast_class": "Name", "col_offset": 31, "ctx": { "ast_class": "Load" }, "end_col_offset": 32, "end_lineno": 13, "id": "P", "lineno": 13 } } }, { "ast_class": "Assign", "col_offset": 4, "end_col_offset": 125, "end_lineno": 14, "lineno": 14, "targets": [ { "ast_class": "Name", "col_offset": 4, "ctx": { "ast_class": "Store" }, "end_col_offset": 23, "end_lineno": 14, "id": "valeur_locative_max", "lineno": 14 } ], "value": { "ast_class": "BinOp", "col_offset": 26, "end_col_offset": 125, "end_lineno": 14, "left": { "ast_class": "BinOp", "col_offset": 27, "end_col_offset": 87, "end_lineno": 14, "left": { "ast_class": "Name", "col_offset": 27, "ctx": { "ast_class": "Load" }, "end_col_offset": 47, "end_lineno": 14, "id": "taux_plafond_general", "lineno": 14 }, "lineno": 14, "op": { "ast_class": "Add" }, "right": { "ast_class": "BinOp", "col_offset": 50, "end_col_offset": 87, "end_lineno": 14, "left": { "ast_class": "Name", "col_offset": 50, "ctx": { "ast_class": "Load" }, "end_col_offset": 74, "end_lineno": 14, "id": "maj_taux_plafond_par_pac", "lineno": 14 }, "lineno": 14, "op": { "ast_class": "Mult" }, "right": { "ast_class": "Name", "col_offset": 77, "ctx": { "ast_class": "Load" }, "end_col_offset": 87, "end_lineno": 14, "id": "nb_enfants", "lineno": 14 } } }, "lineno": 14, "op": { "ast_class": "Mult" }, "right": { "ast_class": "Name", "col_offset": 91, "ctx": { "ast_class": "Load" }, "end_col_offset": 125, "end_lineno": 14, "id": "valeur_locative_moyenne_th_commune", "lineno": 14 } } }, { "ast_class": "Assign", "col_offset": 4, "end_col_offset": 104, "end_lineno": 15, "lineno": 15, "targets": [ { "ast_class": "Name", "col_offset": 4, "ctx": { "ast_class": "Store" }, "end_col_offset": 34, "end_lineno": 15, "id": "condition_rfr_exoneration_th_i", "lineno": 15 } ], "value": { "args": [ { "ast_class": "Constant", "col_offset": 65, "end_col_offset": 95, "end_lineno": 15, "lineno": 15, "value": "condition_rfr_exoneration_th" }, { "ast_class": "Name", "col_offset": 97, "ctx": { "ast_class": "Load" }, "end_col_offset": 103, "end_lineno": 15, "id": "period", "lineno": 15 } ], "ast_class": "Call", "col_offset": 37, "end_col_offset": 104, "end_lineno": 15, "func": { "ast_class": "Attribute", "attr": "foyer_fiscal", "col_offset": 37, "ctx": { "ast_class": "Load" }, "end_col_offset": 64, "end_lineno": 15, "lineno": 15, "value": { "ast_class": "Attribute", "attr": "members", "col_offset": 37, "ctx": { "ast_class": "Load" }, "end_col_offset": 51, "end_lineno": 15, "lineno": 15, "value": { "ast_class": "Name", "col_offset": 37, "ctx": { "ast_class": "Load" }, "end_col_offset": 43, "end_lineno": 15, "id": "menage", "lineno": 15 } } }, "keywords": [], "lineno": 15 } }, { "ast_class": "Assign", "col_offset": 4, "end_col_offset": 77, "end_lineno": 16, "lineno": 16, "targets": [ { "ast_class": "Name", "col_offset": 4, "ctx": { "ast_class": "Store" }, "end_col_offset": 32, "end_lineno": 16, "id": "condition_rfr_exoneration_th", "lineno": 16 } ], "value": { "args": [ { "ast_class": "Name", "col_offset": 46, "ctx": { "ast_class": "Load" }, "end_col_offset": 76, "end_lineno": 16, "id": "condition_rfr_exoneration_th_i", "lineno": 16 } ], "ast_class": "Call", "col_offset": 35, "end_col_offset": 77, "end_lineno": 16, "func": { "ast_class": "Attribute", "attr": "all", "col_offset": 35, "ctx": { "ast_class": "Load" }, "end_col_offset": 45, "end_lineno": 16, "lineno": 16, "value": { "ast_class": "Name", "col_offset": 35, "ctx": { "ast_class": "Load" }, "end_col_offset": 41, "end_lineno": 16, "id": "menage", "lineno": 16 } }, "keywords": [], "lineno": 16 } }, { "ast_class": "Assign", "col_offset": 4, "end_col_offset": 71, "end_lineno": 17, "lineno": 17, "targets": [ { "ast_class": "Name", "col_offset": 4, "ctx": { "ast_class": "Store" }, "end_col_offset": 27, "end_lineno": 17, "id": "exonere_taxe_habitation", "lineno": 17 } ], "value": { "args": [ { "ast_class": "Constant", "col_offset": 37, "end_col_offset": 62, "end_lineno": 17, "lineno": 17, "value": "exonere_taxe_habitation" }, { "ast_class": "Name", "col_offset": 64, "ctx": { "ast_class": "Load" }, "end_col_offset": 70, "end_lineno": 17, "id": "period", "lineno": 17 } ], "ast_class": "Call", "col_offset": 30, "end_col_offset": 71, "end_lineno": 17, "func": { "ast_class": "Name", "col_offset": 30, "ctx": { "ast_class": "Load" }, "end_col_offset": 36, "end_lineno": 17, "id": "menage", "lineno": 17 }, "keywords": [], "lineno": 17 } }, { "ast_class": "Assign", "col_offset": 4, "end_col_offset": 131, "end_lineno": 18, "lineno": 18, "targets": [ { "ast_class": "Name", "col_offset": 4, "ctx": { "ast_class": "Store" }, "end_col_offset": 8, "end_lineno": 18, "id": "elig", "lineno": 18 } ], "value": { "ast_class": "BinOp", "col_offset": 11, "end_col_offset": 131, "end_lineno": 18, "left": { "ast_class": "BinOp", "col_offset": 11, "end_col_offset": 71, "end_lineno": 18, "left": { "ast_class": "Name", "col_offset": 11, "ctx": { "ast_class": "Load" }, "end_col_offset": 39, "end_lineno": 18, "id": "condition_rfr_exoneration_th", "lineno": 18 }, "lineno": 18, "op": { "ast_class": "Mult" }, "right": { "args": [ { "ast_class": "Name", "col_offset": 47, "ctx": { "ast_class": "Load" }, "end_col_offset": 70, "end_lineno": 18, "id": "exonere_taxe_habitation", "lineno": 18 } ], "ast_class": "Call", "col_offset": 42, "end_col_offset": 71, "end_lineno": 18, "func": { "ast_class": "Name", "col_offset": 42, "ctx": { "ast_class": "Load" }, "end_col_offset": 46, "end_lineno": 18, "id": "not_", "lineno": 18 }, "keywords": [], "lineno": 18 } }, "lineno": 18, "op": { "ast_class": "Mult" }, "right": { "ast_class": "Compare", "col_offset": 75, "comparators": [ { "ast_class": "Name", "col_offset": 111, "ctx": { "ast_class": "Load" }, "end_col_offset": 130, "end_lineno": 18, "id": "valeur_locative_max", "lineno": 18 } ], "end_col_offset": 130, "end_lineno": 18, "left": { "ast_class": "Name", "col_offset": 75, "ctx": { "ast_class": "Load" }, "end_col_offset": 107, "end_lineno": 18, "id": "valeur_locative_cadastrale_brute", "lineno": 18 }, "lineno": 18, "ops": [ { "ast_class": "LtE" } ] } } }, { "ast_class": "Return", "col_offset": 4, "end_col_offset": 50, "end_lineno": 20, "lineno": 20, "value": { "ast_class": "BinOp", "col_offset": 11, "end_col_offset": 50, "end_lineno": 20, "left": { "ast_class": "Name", "col_offset": 11, "ctx": { "ast_class": "Load" }, "end_col_offset": 15, "end_lineno": 20, "id": "elig", "lineno": 20 }, "lineno": 20, "op": { "ast_class": "Mult" }, "right": { "ast_class": "Name", "col_offset": 18, "ctx": { "ast_class": "Load" }, "end_col_offset": 50, "end_lineno": 20, "id": "abt_condition_modeste_th_commune", "lineno": 20 } } } ], "col_offset": 0, "decorator_list": [], "end_col_offset": 50, "end_lineno": 20, "lineno": 1, "name": "formula_2017_01_01" }, "documentation": "\nPour le nombre de personnes à charge, on ne prend pas en compte les gardes en résidence alternée qui font\nqu'une personne à charge ne compte que pour 0.5 au lieu de 1.\n", "file_path": "openfisca_france/model/prelevements_obligatoires/taxe_habitation/taxe_habitation.py", "parameters": [ "taxation_indirecte.taxe_habitation.maj_seuil_valeur_locative_abattement_condition_modeste", "taxation_indirecte.taxe_habitation.seuil_valeur_locative_abattement_condition_modeste" ], "source_code": "def formula_2017_01_01(menage, period, parameters):\n '''\n Pour le nombre de personnes à charge, on ne prend pas en compte les gardes en résidence alternée qui font\n qu'une personne à charge ne compte que pour 0.5 au lieu de 1.\n '''\n enfant_i = menage.members.has_role(Famille.ENFANT)\n nb_enfants = menage.sum(enfant_i)\n valeur_locative_cadastrale_brute = menage('valeur_locative_cadastrale_brute', period)\n P = parameters(period).taxation_indirecte.taxe_habitation\n abt_condition_modeste_th_commune = menage('abt_condition_modeste_th_commune', period)\n valeur_locative_moyenne_th_commune = menage('valeur_locative_moyenne_th_commune', period)\n taux_plafond_general = P.seuil_valeur_locative_abattement_condition_modeste\n maj_taux_plafond_par_pac = P.maj_seuil_valeur_locative_abattement_condition_modeste\n valeur_locative_max = (taux_plafond_general + maj_taux_plafond_par_pac * nb_enfants) * valeur_locative_moyenne_th_commune\n condition_rfr_exoneration_th_i = menage.members.foyer_fiscal('condition_rfr_exoneration_th', period)\n condition_rfr_exoneration_th = menage.all(condition_rfr_exoneration_th_i)\n exonere_taxe_habitation = menage('exonere_taxe_habitation', period)\n elig = condition_rfr_exoneration_th * not_(exonere_taxe_habitation) * (valeur_locative_cadastrale_brute <= valeur_locative_max)\n\n return elig * abt_condition_modeste_th_commune\n", "start_line_number": 137, "stop_line_number": 157, "variables": [ "abt_condition_modeste_th_commune", "condition_rfr_exoneration_th", "exonere_taxe_habitation", "valeur_locative_cadastrale_brute", "valeur_locative_moyenne_th_commune" ] } }, "json_type": "number", "label": "Abattement pour personnes de condition modeste - TH de la commune", "last_review": "2017-01-01", "name": "abattement_personnes_condition_modeste_th_commune", "reference": { "0001-01-01": [ { "href": "https://www.legifrance.gouv.fr/affichCodeArticle.do?cidTexte=LEGITEXT000006069577&idArticle=LEGIARTI000033220348&dateTexte=&categorieLien=id" } ] }, "referring_variables": [ "base_nette_th_commune" ], "start_line_number": 130, "stop_line_number": 157, "value_type": "float" }