mon-entreprise/source/engine/known-mecanisms.yaml

133 lines
5.3 KiB
YAML

# Liste et description des différents mécanismes compris par le moteur.
# La description peut être rédigée en markdown :-)
sélection:
type: numeric
description: |
C'est tout simplement une valeur numérique exprimée en pourcentage.
une possibilité:
type: enum
une de ces conditions:
type: boolean
description: |
C'est un `ou` logique.
Contient une liste de conditions.
Renvoie vrai si l'une des conditions est vraie.
toutes ces conditions:
type: boolean
description: |
C'est un `et` logique.
Contient une liste de conditions.
Renvoie vrai si toutes les conditions vraies.
aiguillage numérique:
type: numeric
description: |
Contient une liste de couples condition-conséquence.
Couple par couple, si la condition est vraie, alors on choisit la conséquence.
Cette conséquence peut elle-même être un mécanisme `aiguillage numérique` ou plus simplement un `taux`.
Si aucune condition n'est vraie, alors ce mécanisme renvoie implicitement `non applicable` (ce qui peut se traduire par la valeur `0` si nous sommes dans un contexte numérique).
taux:
type: numeric
description: |
C'est tout simplement une valeur numérique exprimée en pourcentage.
multiplication:
type: numeric
description: |
C'est une multiplication un peu améliorée, très utile pour exprimer les cotisations.
Sa propriété `assiette` est multipliée par un pourcentage, `taux`, ou par un `facteur` quand ce nom est plus approprié.
La multiplication peut être plafonnée : ce plafond sépare l'assiette en deux, et la partie au-dessus du plafond est tout simplement ignorée. Dans ce cas, elle se comporte comme une barème en taux marginaux à deux tranches, la deuxième au taux nul et allant de `plafond` à l'infini.
le maximum de:
type: numeric
description: |
Renvoie l'élément de la liste de propositions fournie qui a la plus grande valeur.
Ces propositions doivent avoir un mécanisme de calcul ou être une valeur numérique.
Il est conseillé de renseigner une description de chaque proposition par exemple quand elles représentent des méthodes de calcul alternatives parmi lesquelles il faut en choisir une.
le minimum de:
type: numeric
description: |
Renvoie l'élément de la liste de propositions fournie qui a la plus petite valeur.
Ces propositions doivent avoir un mécanisme de calcul ou être une valeur numérique.
Il est conseillé de renseigner une description de chaque proposition par exemple quand elles représentent des méthodes de calcul alternatives parmi lesquelles il faut en choisir une.
somme:
type: numeric
description: |
C'est tout simplement la somme de chaque terme de la liste.
##########################################
# Ce qu'on appelle aujourd'hui des RuleProp
# Et qui deviendront des mécanismes classiques normalement par la suite #TODO
formule:
description: |
C'est la formule de calcul d'une variable. Elle renvoie une valeur numérique ou un 'non', exprimant le fait que la variable n'est pas applicable, ce qui vaut implicitement 0.
Cette doit faire appel à fera appel à des mécanismes de calcul : par exemple `multiplication`, le plus commun pour les variables de type `Cotisation`.
applicable si:
description: |
Décide si la règle est applicable pour la situation saisie.
> Une cotisation sociale peut ne concerner que les salariés au statut cadre. Elle ne sera pas à verser pour un non cadre
La formule de calcul peut donc être ignorée, quel que soit son montant.
Peut être accompagnée du mécanisme 'non appicable si'.
non applicable si:
description: |
Décide si la règle n'est applicable pour la situation saisie.
> Un contrat CDD peut entraîner une majoration spécifique. Cette majoration est 'non applicable si' le contrat est un CDI.
La formule de calcul peut donc être ignorée, quel que soit son montant.
Peut être accompagnée du mécanisme 'appicable si'.
barème:
type: numeric
description: |
C'est un barème en taux marginaux, mécanisme de calcul connu son utilisation dans le calcul de l'impôt sur le revenu.
L'assiette est décomposée en plusieurs tranches, qui sont multipliées par un taux spécifique.
Les tranches sont très souvent exprimées sous forme de facteurs (par exemple [1, 2, 4]) d'une variable que l'on appelle multiplicateur, par exemple le plafond de la sécurité sociale.
complément:
type: numeric
description: |
Complète une base pour atteindre un seuil minimal
composantes:
type: numeric
description: |
Beaucoup de cotisations sont composées de deux parties qui partage la méthode de calcul mais diffèrent par des paramètres différents.
Pour ne pas définir deux variables presque redondantes, on utilise le mécanisme de composante. Il se comportera comme une somme dans les calculs, mais son affichage sur les pages /règle sera adapté.
Il est même possible, pour les mécanismes `barème` et `multiplication` de garder en commun un paramètre comme l'assiette, puis de déclarer des composantes pour le taux.
> L'example le plus courant de composantes, c'est la distinction part employeur, part salarié (ex. retraite AGIRC).
> On peut aussi citer la composante de base de la cotisation pénibilité, et la composante additionnelle.