Scoring

:Score(Weight)

Cette commande est facultative.

Chaque expression d'une variable de règle peut contenir un coefficient de scoring facultatif. Ce coefficient du calcul du score est défini en ajoutant ::Score(Weight), où le coefficient est un nombre entier entre 0 et 100, à la fin de l'expression. La commande de scoring peut précéder un opérateur OU (|) ou le caractère de fin de variable (;). Si une expression n'a pas de commande de notation explicite, un coefficient de 100 sera présumé. Dans ce cas, le score de parsing sera soit 0, soit 100. Si une variable contient d'autres variables de règles, la valeur de son score est groupée avec les règles subordonnées pour en faire la moyenne. Par exemple, avec la variable de règle :

<root> = <a> <b> <c>;
<a> = 'a':Score (100);
<b> = 'b':Score (50);
<c> = 'c':Score (100);

la notation de <root> est calculée comme 83 [(100+50+100)/3]. Lorsqu'une moyenne est établie, son score est arrondi au nombre entier le plus proche.

Le score moyen total s'affiche dans le champ ParserScore. La valeur du ParserScore sera comprise entre 0 et 100, tel que définit dans la grammaire de parsing. 0 signifie qu'aucun résultat n'a été trouvé.

Le coefficient de notation des expressions parentes peuvent affecter le coefficient de notation des expressions enfants. Par exemple, la règle <C> peut être dépendre des règles <A> et <B> comme suit :

<A> = <C>;
<B> = <C>:Score(50);
<C> = @Table("something"):Score(50);

Si <A> est mis en correspondance, celui-ci a un score de 100 % (le score par défaut) de la valeur de <C>, qui aura donc un coefficient de notation de 50. Toutefois, si <B> est mis en correspondance, il aura 50 % de la valeur de <C>, qui aura donc un coefficient de notation de 25.

Pour utiliser cette commande :

  1. Placez le curseur là où vous voulez insérer la commande.
  2. Double-cliquez sur :Score dans la liste Commandes.
  3. Tapez une valeur entre 0 et 100 dans la zone de texte.
  4. Cliquez sur OK.