@openfisca/france-json
Version:
JSON & YAML data extracted from OpenFisca-France source code (parameters, variables, etc)
1,460 lines (1,459 loc) • 46.3 kB
JSON
{
"calculate_output": "calculate_output_divide",
"default_value": 0,
"definition_period": "year",
"dtype": "float32",
"entity": "individu",
"file_path": "openfisca_france/model/prelevements_obligatoires/prelevements_sociaux/cotisations_sociales/exonerations.py",
"formulas": {
"0001-01-01": {
"ast": {
"args": {
"args": [
{
"arg": "individu",
"ast_class": "arg",
"col_offset": 12,
"end_col_offset": 20,
"end_lineno": 1,
"lineno": 1
},
{
"arg": "period",
"ast_class": "arg",
"col_offset": 22,
"end_col_offset": 28,
"end_lineno": 1,
"lineno": 1
},
{
"arg": "parameters",
"ast_class": "arg",
"col_offset": 30,
"end_col_offset": 40,
"end_lineno": 1,
"lineno": 1
}
],
"ast_class": "arguments",
"defaults": [],
"kw_defaults": [],
"kwonlyargs": [],
"posonlyargs": []
},
"ast_class": "FunctionDef",
"body": [
{
"ast_class": "Assign",
"col_offset": 4,
"end_col_offset": 53,
"end_lineno": 2,
"lineno": 2,
"targets": [
{
"ast_class": "Name",
"col_offset": 4,
"ctx": {
"ast_class": "Store"
},
"end_col_offset": 12,
"end_lineno": 2,
"id": "decembre",
"lineno": 2
}
],
"value": {
"args": [
{
"ast_class": "Constant",
"col_offset": 41,
"end_col_offset": 43,
"end_lineno": 2,
"lineno": 2,
"value": 11
},
{
"ast_class": "Constant",
"col_offset": 45,
"end_col_offset": 52,
"end_lineno": 2,
"lineno": 2,
"value": "month"
}
],
"ast_class": "Call",
"col_offset": 15,
"end_col_offset": 53,
"end_lineno": 2,
"func": {
"ast_class": "Attribute",
"attr": "offset",
"col_offset": 15,
"ctx": {
"ast_class": "Load"
},
"end_col_offset": 40,
"end_lineno": 2,
"lineno": 2,
"value": {
"ast_class": "Attribute",
"attr": "first_month",
"col_offset": 15,
"ctx": {
"ast_class": "Load"
},
"end_col_offset": 33,
"end_lineno": 2,
"lineno": 2,
"value": {
"ast_class": "Name",
"col_offset": 15,
"ctx": {
"ast_class": "Load"
},
"end_col_offset": 21,
"end_lineno": 2,
"id": "period",
"lineno": 2
}
}
},
"keywords": [],
"lineno": 2
}
},
{
"ast_class": "Assign",
"col_offset": 4,
"end_col_offset": 67,
"end_lineno": 3,
"lineno": 3,
"targets": [
{
"ast_class": "Name",
"col_offset": 4,
"ctx": {
"ast_class": "Store"
},
"end_col_offset": 23,
"end_lineno": 3,
"id": "effectif_entreprise",
"lineno": 3
}
],
"value": {
"args": [
{
"ast_class": "Constant",
"col_offset": 35,
"end_col_offset": 56,
"end_lineno": 3,
"lineno": 3,
"value": "effectif_entreprise"
},
{
"ast_class": "Name",
"col_offset": 58,
"ctx": {
"ast_class": "Load"
},
"end_col_offset": 66,
"end_lineno": 3,
"id": "decembre",
"lineno": 3
}
],
"ast_class": "Call",
"col_offset": 26,
"end_col_offset": 67,
"end_lineno": 3,
"func": {
"ast_class": "Name",
"col_offset": 26,
"ctx": {
"ast_class": "Load"
},
"end_col_offset": 34,
"end_lineno": 3,
"id": "individu",
"lineno": 3
},
"keywords": [],
"lineno": 3
}
},
{
"ast_class": "Assign",
"col_offset": 4,
"end_col_offset": 82,
"end_lineno": 4,
"lineno": 4,
"targets": [
{
"ast_class": "Name",
"col_offset": 4,
"ctx": {
"ast_class": "Store"
},
"end_col_offset": 23,
"end_lineno": 4,
"id": "entreprise_benefice",
"lineno": 4
}
],
"value": {
"args": [
{
"ast_class": "Constant",
"col_offset": 35,
"end_col_offset": 56,
"end_lineno": 4,
"lineno": 4,
"value": "entreprise_benefice"
},
{
"ast_class": "Name",
"col_offset": 58,
"ctx": {
"ast_class": "Load"
},
"end_col_offset": 64,
"end_lineno": 4,
"id": "period",
"lineno": 4
}
],
"ast_class": "Call",
"col_offset": 26,
"end_col_offset": 82,
"end_lineno": 4,
"func": {
"ast_class": "Name",
"col_offset": 26,
"ctx": {
"ast_class": "Load"
},
"end_col_offset": 34,
"end_lineno": 4,
"id": "individu",
"lineno": 4
},
"keywords": [
{
"arg": "options",
"ast_class": "keyword",
"col_offset": 66,
"end_col_offset": 81,
"end_lineno": 4,
"lineno": 4,
"value": {
"ast_class": "List",
"col_offset": 76,
"ctx": {
"ast_class": "Load"
},
"elts": [
{
"ast_class": "Name",
"col_offset": 77,
"ctx": {
"ast_class": "Load"
},
"end_col_offset": 80,
"end_lineno": 4,
"id": "ADD",
"lineno": 4
}
],
"end_col_offset": 81,
"end_lineno": 4,
"lineno": 4
}
}
],
"lineno": 4
}
},
{
"ast_class": "Assign",
"col_offset": 4,
"end_col_offset": 75,
"end_lineno": 6,
"lineno": 6,
"targets": [
{
"ast_class": "Name",
"col_offset": 4,
"ctx": {
"ast_class": "Store"
},
"end_col_offset": 27,
"end_lineno": 6,
"id": "contrat_de_travail_type",
"lineno": 6
}
],
"value": {
"args": [
{
"ast_class": "Constant",
"col_offset": 39,
"end_col_offset": 64,
"end_lineno": 6,
"lineno": 6,
"value": "contrat_de_travail_type"
},
{
"ast_class": "Name",
"col_offset": 66,
"ctx": {
"ast_class": "Load"
},
"end_col_offset": 74,
"end_lineno": 6,
"id": "decembre",
"lineno": 6
}
],
"ast_class": "Call",
"col_offset": 30,
"end_col_offset": 75,
"end_lineno": 6,
"func": {
"ast_class": "Name",
"col_offset": 30,
"ctx": {
"ast_class": "Load"
},
"end_col_offset": 38,
"end_lineno": 6,
"id": "individu",
"lineno": 6
},
"keywords": [],
"lineno": 6
}
},
{
"ast_class": "Assign",
"col_offset": 4,
"end_col_offset": 58,
"end_lineno": 8,
"lineno": 8,
"targets": [
{
"ast_class": "Name",
"col_offset": 4,
"ctx": {
"ast_class": "Store"
},
"end_col_offset": 16,
"end_lineno": 8,
"id": "TypesContrat",
"lineno": 8
}
],
"value": {
"ast_class": "Attribute",
"attr": "possible_values",
"col_offset": 19,
"ctx": {
"ast_class": "Load"
},
"end_col_offset": 58,
"end_lineno": 8,
"lineno": 8,
"value": {
"ast_class": "Name",
"col_offset": 19,
"ctx": {
"ast_class": "Load"
},
"end_col_offset": 42,
"end_lineno": 8,
"id": "contrat_de_travail_type",
"lineno": 8
}
}
},
{
"ast_class": "Assign",
"col_offset": 4,
"end_col_offset": 77,
"end_lineno": 10,
"lineno": 10,
"targets": [
{
"ast_class": "Name",
"col_offset": 4,
"ctx": {
"ast_class": "Store"
},
"end_col_offset": 28,
"end_lineno": 10,
"id": "contrat_de_travail_debut",
"lineno": 10
}
],
"value": {
"args": [
{
"ast_class": "Constant",
"col_offset": 40,
"end_col_offset": 66,
"end_lineno": 10,
"lineno": 10,
"value": "contrat_de_travail_debut"
},
{
"ast_class": "Name",
"col_offset": 68,
"ctx": {
"ast_class": "Load"
},
"end_col_offset": 76,
"end_lineno": 10,
"id": "decembre",
"lineno": 10
}
],
"ast_class": "Call",
"col_offset": 31,
"end_col_offset": 77,
"end_lineno": 10,
"func": {
"ast_class": "Name",
"col_offset": 31,
"ctx": {
"ast_class": "Load"
},
"end_col_offset": 39,
"end_lineno": 10,
"id": "individu",
"lineno": 10
},
"keywords": [],
"lineno": 10
}
},
{
"ast_class": "Assign",
"col_offset": 4,
"end_col_offset": 73,
"end_lineno": 11,
"lineno": 11,
"targets": [
{
"ast_class": "Name",
"col_offset": 4,
"ctx": {
"ast_class": "Store"
},
"end_col_offset": 26,
"end_lineno": 11,
"id": "contrat_de_travail_fin",
"lineno": 11
}
],
"value": {
"args": [
{
"ast_class": "Constant",
"col_offset": 38,
"end_col_offset": 62,
"end_lineno": 11,
"lineno": 11,
"value": "contrat_de_travail_fin"
},
{
"ast_class": "Name",
"col_offset": 64,
"ctx": {
"ast_class": "Load"
},
"end_col_offset": 72,
"end_lineno": 11,
"id": "decembre",
"lineno": 11
}
],
"ast_class": "Call",
"col_offset": 29,
"end_col_offset": 73,
"end_lineno": 11,
"func": {
"ast_class": "Name",
"col_offset": 29,
"ctx": {
"ast_class": "Load"
},
"end_col_offset": 37,
"end_lineno": 11,
"id": "individu",
"lineno": 11
},
"keywords": [],
"lineno": 11
}
},
{
"ast_class": "Assign",
"col_offset": 4,
"end_col_offset": 94,
"end_lineno": 12,
"lineno": 12,
"targets": [
{
"ast_class": "Name",
"col_offset": 4,
"ctx": {
"ast_class": "Store"
},
"end_col_offset": 18,
"end_lineno": 12,
"id": "duree_eligible",
"lineno": 12
}
],
"value": {
"ast_class": "Compare",
"col_offset": 21,
"comparators": [
{
"ast_class": "BinOp",
"col_offset": 46,
"end_col_offset": 94,
"end_lineno": 12,
"left": {
"ast_class": "Name",
"col_offset": 46,
"ctx": {
"ast_class": "Load"
},
"end_col_offset": 70,
"end_lineno": 12,
"id": "contrat_de_travail_debut",
"lineno": 12
},
"lineno": 12,
"op": {
"ast_class": "Add"
},
"right": {
"args": [
{
"ast_class": "Constant",
"col_offset": 85,
"end_col_offset": 88,
"end_lineno": 12,
"lineno": 12,
"value": 365
},
{
"ast_class": "Constant",
"col_offset": 90,
"end_col_offset": 93,
"end_lineno": 12,
"lineno": 12,
"value": "D"
}
],
"ast_class": "Call",
"col_offset": 73,
"end_col_offset": 94,
"end_lineno": 12,
"func": {
"ast_class": "Name",
"col_offset": 73,
"ctx": {
"ast_class": "Load"
},
"end_col_offset": 84,
"end_lineno": 12,
"id": "timedelta64",
"lineno": 12
},
"keywords": [],
"lineno": 12
}
}
],
"end_col_offset": 94,
"end_lineno": 12,
"left": {
"ast_class": "Name",
"col_offset": 21,
"ctx": {
"ast_class": "Load"
},
"end_col_offset": 43,
"end_lineno": 12,
"id": "contrat_de_travail_fin",
"lineno": 12
},
"lineno": 12,
"ops": [
{
"ast_class": "Gt"
}
]
}
},
{
"ast_class": "Assign",
"col_offset": 4,
"end_col_offset": 148,
"end_lineno": 14,
"lineno": 14,
"targets": [
{
"ast_class": "Name",
"col_offset": 4,
"ctx": {
"ast_class": "Store"
},
"end_col_offset": 31,
"end_lineno": 14,
"id": "contrat_de_travail_eligible",
"lineno": 14
}
],
"value": {
"ast_class": "BinOp",
"col_offset": 34,
"end_col_offset": 148,
"end_lineno": 14,
"left": {
"ast_class": "Compare",
"col_offset": 35,
"comparators": [
{
"ast_class": "Attribute",
"attr": "cdi",
"col_offset": 62,
"ctx": {
"ast_class": "Load"
},
"end_col_offset": 78,
"end_lineno": 14,
"lineno": 14,
"value": {
"ast_class": "Name",
"col_offset": 62,
"ctx": {
"ast_class": "Load"
},
"end_col_offset": 74,
"end_lineno": 14,
"id": "TypesContrat",
"lineno": 14
}
}
],
"end_col_offset": 78,
"end_lineno": 14,
"left": {
"ast_class": "Name",
"col_offset": 35,
"ctx": {
"ast_class": "Load"
},
"end_col_offset": 58,
"end_lineno": 14,
"id": "contrat_de_travail_type",
"lineno": 14
},
"lineno": 14,
"ops": [
{
"ast_class": "Eq"
}
]
},
"lineno": 14,
"op": {
"ast_class": "Add"
},
"right": {
"ast_class": "BinOp",
"col_offset": 83,
"end_col_offset": 147,
"end_lineno": 14,
"left": {
"ast_class": "Compare",
"col_offset": 84,
"comparators": [
{
"ast_class": "Attribute",
"attr": "cdd",
"col_offset": 111,
"ctx": {
"ast_class": "Load"
},
"end_col_offset": 127,
"end_lineno": 14,
"lineno": 14,
"value": {
"ast_class": "Name",
"col_offset": 111,
"ctx": {
"ast_class": "Load"
},
"end_col_offset": 123,
"end_lineno": 14,
"id": "TypesContrat",
"lineno": 14
}
}
],
"end_col_offset": 127,
"end_lineno": 14,
"left": {
"ast_class": "Name",
"col_offset": 84,
"ctx": {
"ast_class": "Load"
},
"end_col_offset": 107,
"end_lineno": 14,
"id": "contrat_de_travail_type",
"lineno": 14
},
"lineno": 14,
"ops": [
{
"ast_class": "Eq"
}
]
},
"lineno": 14,
"op": {
"ast_class": "Mult"
},
"right": {
"ast_class": "Name",
"col_offset": 132,
"ctx": {
"ast_class": "Load"
},
"end_col_offset": 146,
"end_lineno": 14,
"id": "duree_eligible",
"lineno": 14
}
}
}
},
{
"ast_class": "Assign",
"col_offset": 4,
"end_col_offset": 81,
"end_lineno": 15,
"lineno": 15,
"targets": [
{
"ast_class": "Name",
"col_offset": 4,
"ctx": {
"ast_class": "Store"
},
"end_col_offset": 30,
"end_lineno": 15,
"id": "zone_revitalisation_rurale",
"lineno": 15
}
],
"value": {
"args": [
{
"ast_class": "Constant",
"col_offset": 42,
"end_col_offset": 70,
"end_lineno": 15,
"lineno": 15,
"value": "zone_revitalisation_rurale"
},
{
"ast_class": "Name",
"col_offset": 72,
"ctx": {
"ast_class": "Load"
},
"end_col_offset": 80,
"end_lineno": 15,
"id": "decembre",
"lineno": 15
}
],
"ast_class": "Call",
"col_offset": 33,
"end_col_offset": 81,
"end_lineno": 15,
"func": {
"ast_class": "Name",
"col_offset": 33,
"ctx": {
"ast_class": "Load"
},
"end_col_offset": 41,
"end_lineno": 15,
"id": "individu",
"lineno": 15
},
"keywords": [],
"lineno": 15
}
},
{
"ast_class": "Assign",
"col_offset": 4,
"end_col_offset": 9,
"end_lineno": 21,
"lineno": 17,
"targets": [
{
"ast_class": "Name",
"col_offset": 4,
"ctx": {
"ast_class": "Store"
},
"end_col_offset": 12,
"end_lineno": 17,
"id": "eligible",
"lineno": 17
}
],
"value": {
"ast_class": "BinOp",
"col_offset": 8,
"end_col_offset": 36,
"end_lineno": 20,
"left": {
"ast_class": "BinOp",
"col_offset": 8,
"end_col_offset": 37,
"end_lineno": 19,
"left": {
"ast_class": "Name",
"col_offset": 8,
"ctx": {
"ast_class": "Load"
},
"end_col_offset": 35,
"end_lineno": 18,
"id": "contrat_de_travail_eligible",
"lineno": 18
},
"lineno": 18,
"op": {
"ast_class": "Mult"
},
"right": {
"ast_class": "Compare",
"col_offset": 11,
"comparators": [
{
"ast_class": "Constant",
"col_offset": 34,
"end_col_offset": 36,
"end_lineno": 19,
"lineno": 19,
"value": 50
}
],
"end_col_offset": 36,
"end_lineno": 19,
"left": {
"ast_class": "Name",
"col_offset": 11,
"ctx": {
"ast_class": "Load"
},
"end_col_offset": 30,
"end_lineno": 19,
"id": "effectif_entreprise",
"lineno": 19
},
"lineno": 19,
"ops": [
{
"ast_class": "LtE"
}
]
}
},
"lineno": 18,
"op": {
"ast_class": "Mult"
},
"right": {
"ast_class": "Name",
"col_offset": 10,
"ctx": {
"ast_class": "Load"
},
"end_col_offset": 36,
"end_lineno": 20,
"id": "zone_revitalisation_rurale",
"lineno": 20
}
}
},
{
"ast_class": "Assign",
"col_offset": 4,
"end_col_offset": 98,
"end_lineno": 23,
"lineno": 23,
"targets": [
{
"ast_class": "Name",
"col_offset": 4,
"ctx": {
"ast_class": "Store"
},
"end_col_offset": 36,
"end_lineno": 23,
"id": "exoneration_relative_year_passed",
"lineno": 23
}
],
"value": {
"args": [
{
"ast_class": "Name",
"col_offset": 65,
"ctx": {
"ast_class": "Load"
},
"end_col_offset": 71,
"end_lineno": 23,
"id": "period",
"lineno": 23
},
{
"ast_class": "Name",
"col_offset": 73,
"ctx": {
"ast_class": "Load"
},
"end_col_offset": 97,
"end_lineno": 23,
"id": "contrat_de_travail_debut",
"lineno": 23
}
],
"ast_class": "Call",
"col_offset": 39,
"end_col_offset": 98,
"end_lineno": 23,
"func": {
"ast_class": "Name",
"col_offset": 39,
"ctx": {
"ast_class": "Load"
},
"end_col_offset": 64,
"end_lineno": 23,
"id": "exoneration_relative_year",
"lineno": 23
},
"keywords": [],
"lineno": 23
}
},
{
"ast_class": "Assign",
"col_offset": 4,
"end_col_offset": 9,
"end_lineno": 34,
"lineno": 25,
"targets": [
{
"ast_class": "Name",
"col_offset": 4,
"ctx": {
"ast_class": "Store"
},
"end_col_offset": 23,
"end_lineno": 25,
"id": "rate_by_year_passed",
"lineno": 25
}
],
"value": {
"ast_class": "Dict",
"col_offset": 26,
"end_col_offset": 9,
"end_lineno": 34,
"keys": [
{
"ast_class": "Constant",
"col_offset": 8,
"end_col_offset": 9,
"end_lineno": 26,
"lineno": 26,
"value": 0
},
{
"ast_class": "Constant",
"col_offset": 8,
"end_col_offset": 9,
"end_lineno": 27,
"lineno": 27,
"value": 1
},
{
"ast_class": "Constant",
"col_offset": 8,
"end_col_offset": 9,
"end_lineno": 28,
"lineno": 28,
"value": 2
},
{
"ast_class": "Constant",
"col_offset": 8,
"end_col_offset": 9,
"end_lineno": 29,
"lineno": 29,
"value": 3
},
{
"ast_class": "Constant",
"col_offset": 8,
"end_col_offset": 9,
"end_lineno": 30,
"lineno": 30,
"value": 4
},
{
"ast_class": "Constant",
"col_offset": 8,
"end_col_offset": 9,
"end_lineno": 31,
"lineno": 31,
"value": 5
},
{
"ast_class": "Constant",
"col_offset": 8,
"end_col_offset": 9,
"end_lineno": 32,
"lineno": 32,
"value": 6
},
{
"ast_class": "Constant",
"col_offset": 8,
"end_col_offset": 9,
"end_lineno": 33,
"lineno": 33,
"value": 7
}
],
"lineno": 25,
"values": [
{
"ast_class": "Constant",
"col_offset": 11,
"end_col_offset": 12,
"end_lineno": 26,
"lineno": 26,
"value": 1
},
{
"ast_class": "Constant",
"col_offset": 11,
"end_col_offset": 12,
"end_lineno": 27,
"lineno": 27,
"value": 1
},
{
"ast_class": "Constant",
"col_offset": 11,
"end_col_offset": 12,
"end_lineno": 28,
"lineno": 28,
"value": 1
},
{
"ast_class": "Constant",
"col_offset": 11,
"end_col_offset": 12,
"end_lineno": 29,
"lineno": 29,
"value": 1
},
{
"ast_class": "Constant",
"col_offset": 11,
"end_col_offset": 12,
"end_lineno": 30,
"lineno": 30,
"value": 1
},
{
"ast_class": "Constant",
"col_offset": 11,
"end_col_offset": 14,
"end_lineno": 31,
"lineno": 31,
"value": 0.75
},
{
"ast_class": "Constant",
"col_offset": 11,
"end_col_offset": 14,
"end_lineno": 32,
"lineno": 32,
"value": 0.5
},
{
"ast_class": "Constant",
"col_offset": 11,
"end_col_offset": 14,
"end_lineno": 33,
"lineno": 33,
"value": 0.25
}
]
}
},
{
"ast_class": "Assign",
"col_offset": 4,
"end_col_offset": 36,
"end_lineno": 35,
"lineno": 35,
"targets": [
{
"ast_class": "Name",
"col_offset": 4,
"ctx": {
"ast_class": "Store"
},
"end_col_offset": 19,
"end_lineno": 35,
"id": "taux_exoneraion",
"lineno": 35
}
],
"value": {
"ast_class": "BinOp",
"col_offset": 22,
"end_col_offset": 36,
"end_lineno": 35,
"left": {
"ast_class": "Name",
"col_offset": 22,
"ctx": {
"ast_class": "Load"
},
"end_col_offset": 30,
"end_lineno": 35,
"id": "eligible",
"lineno": 35
},
"lineno": 35,
"op": {
"ast_class": "Mult"
},
"right": {
"ast_class": "Constant",
"col_offset": 33,
"end_col_offset": 36,
"end_lineno": 35,
"lineno": 35,
"value": 0
}
}
},
{
"ast_class": "For",
"body": [
{
"ast_class": "Assign",
"col_offset": 8,
"end_col_offset": 100,
"end_lineno": 38,
"lineno": 38,
"targets": [
{
"ast_class": "Name",
"col_offset": 8,
"ctx": {
"ast_class": "Store"
},
"end_col_offset": 32,
"end_lineno": 38,
"id": "condition_on_year_passed",
"lineno": 38
}
],
"value": {
"ast_class": "Compare",
"col_offset": 35,
"comparators": [
{
"args": [
{
"ast_class": "Name",
"col_offset": 83,
"ctx": {
"ast_class": "Load"
},
"end_col_offset": 94,
"end_lineno": 38,
"id": "year_passed",
"lineno": 38
},
{
"ast_class": "Constant",
"col_offset": 96,
"end_col_offset": 99,
"end_lineno": 38,
"lineno": 38,
"value": "Y"
}
],
"ast_class": "Call",
"col_offset": 71,
"end_col_offset": 100,
"end_lineno": 38,
"func": {
"ast_class": "Name",
"col_offset": 71,
"ctx": {
"ast_class": "Load"
},
"end_col_offset": 82,
"end_lineno": 38,
"id": "timedelta64",
"lineno": 38
},
"keywords": [],
"lineno": 38
}
],
"end_col_offset": 100,
"end_lineno": 38,
"left": {
"ast_class": "Name",
"col_offset": 35,
"ctx": {
"ast_class": "Load"
},
"end_col_offset": 67,
"end_lineno": 38,
"id": "exoneration_relative_year_passed",
"lineno": 38
},
"lineno": 38,
"ops": [
{
"ast_class": "Eq"
}
]
}
},
{
"ast_class": "Assign",
"col_offset": 8,
"end_col_offset": 56,
"end_lineno": 39,
"lineno": 39,
"targets": [
{
"ast_class": "Subscript",
"col_offset": 8,
"ctx": {
"ast_class": "Store"
},
"end_col_offset": 49,
"end_lineno": 39,
"lineno": 39,
"slice": {
"ast_class": "Name",
"col_offset": 24,
"ctx": {
"ast_class": "Load"
},
"end_col_offset": 48,
"end_lineno": 39,
"id": "condition_on_year_passed",
"lineno": 39
},
"value": {
"ast_class": "Name",
"col_offset": 8,
"ctx": {
"ast_class": "Load"
},
"end_col_offset": 23,
"end_lineno": 39,
"id": "taux_exoneraion",
"lineno": 39
}
}
],
"value": {
"ast_class": "Name",
"col_offset": 52,
"ctx": {
"ast_class": "Load"
},
"end_col_offset": 56,
"end_lineno": 39,
"id": "rate",
"lineno": 39
}
}
],
"col_offset": 4,
"end_col_offset": 56,
"end_lineno": 39,
"iter": {
"args": [],
"ast_class": "Call",
"col_offset": 29,
"end_col_offset": 56,
"end_lineno": 37,
"func": {
"ast_class": "Attribute",
"attr": "items",
"col_offset": 29,
"ctx": {
"ast_class": "Load"
},
"end_col_offset": 54,
"end_lineno": 37,
"lineno": 37,
"value": {
"ast_class": "Name",
"col_offset": 29,
"ctx": {
"ast_class": "Load"
},
"end_col_offset": 48,
"end_lineno": 37,
"id": "rate_by_year_passed",
"lineno": 37
}
},
"keywords": [],
"lineno": 37
},
"lineno": 37,
"orelse": [],
"target": {
"ast_class": "Tuple",
"col_offset": 8,
"ctx": {
"ast_class": "Store"
},
"elts": [
{
"ast_class": "Name",
"col_offset": 8,
"ctx": {
"ast_class": "Store"
},
"end_col_offset": 19,
"end_lineno": 37,
"id": "year_passed",
"lineno": 37
},
{
"ast_class": "Name",
"col_offset": 21,
"ctx": {
"ast_class": "Store"
},
"end_col_offset": 25,
"end_lineno": 37,
"id": "rate",
"lineno": 37
}
],
"end_col_offset": 25,
"end_lineno": 37,
"lineno": 37
}
},
{
"ast_class": "Return",
"col_offset": 4,
"end_col_offset": 48,
"end_lineno": 41,
"lineno": 41,
"value": {
"ast_class": "BinOp",
"col_offset": 11,
"end_col_offset": 48,
"end_lineno": 41,
"left": {
"ast_class": "Name",
"col_offset": 11,
"ctx": {
"ast_class": "Load"
},
"end_col_offset": 26,
"end_lineno": 41,
"id": "taux_exoneraion",
"lineno": 41
},
"lineno": 41,
"op": {
"ast_class": "Mult"
},
"right": {
"ast_class": "Name",
"col_offset": 29,
"ctx": {
"ast_class": "Load"
},
"end_col_offset": 48,
"end_lineno": 41,
"id": "entreprise_benefice",
"lineno": 41
}
}
}
],
"col_offset": 0,
"decorator_list": [],
"end_col_offset": 48,
"end_lineno": 41,
"lineno": 1,
"name": "formula"
},
"file_path": "openfisca_france/model/prelevements_obligatoires/prelevements_sociaux/cotisations_sociales/exonerations.py",
"source_code": "def formula(individu, period, parameters):\n decembre = period.first_month.offset(11, 'month')\n effectif_entreprise = individu('effectif_entreprise', decembre)\n entreprise_benefice = individu('entreprise_benefice', period, options = [ADD])\n # TODO: MODIFIER avec création d'entreprise\n contrat_de_travail_type = individu('contrat_de_travail_type', decembre)\n\n TypesContrat = contrat_de_travail_type.possible_values\n\n contrat_de_travail_debut = individu('contrat_de_travail_debut', decembre)\n contrat_de_travail_fin = individu('contrat_de_travail_fin', decembre)\n duree_eligible = contrat_de_travail_fin > contrat_de_travail_debut + timedelta64(365, 'D')\n # TODO: move to parameters file\n contrat_de_travail_eligible = (contrat_de_travail_type == TypesContrat.cdi) + ((contrat_de_travail_type == TypesContrat.cdd) * (duree_eligible))\n zone_revitalisation_rurale = individu('zone_revitalisation_rurale', decembre)\n\n eligible = (\n contrat_de_travail_eligible\n * (effectif_entreprise <= 50)\n * zone_revitalisation_rurale\n )\n\n exoneration_relative_year_passed = exoneration_relative_year(period, contrat_de_travail_debut)\n\n rate_by_year_passed = {\n 0: 1,\n 1: 1,\n 2: 1,\n 3: 1,\n 4: 1,\n 5: .75,\n 6: .50,\n 7: .25,\n } # TODO: move to parameters file\n taux_exoneraion = eligible * 0.0\n\n for year_passed, rate in rate_by_year_passed.items():\n condition_on_year_passed = exoneration_relative_year_passed == timedelta64(year_passed, 'Y')\n taux_exoneraion[condition_on_year_passed] = rate\n\n return taux_exoneraion * entreprise_benefice\n # TODO: mettre sur toutes les années\n",
"start_line_number": 369,
"stop_line_number": 411,
"variables": [
"contrat_de_travail_debut",
"contrat_de_travail_fin",
"contrat_de_travail_type",
"effectif_entreprise",
"entreprise_benefice",
"zone_revitalisation_rurale"
]
}
},
"json_type": "number",
"label": "Exonérations fiscales pour création d'une entreprise en zone de revitalisation rurale (ZRR)",
"name": "exoneration_is_creation_zrr",
"reference": {
"0001-01-01": [
{
"href": "http://www.apce.com/pid11690/exonerations-d-impots-zrr.html?espace=1&tp=1"
}
]
},
"start_line_number": 361,
"stop_line_number": 411,
"value_type": "float"
}