SPW-DIG / metawal-core-geonetwork

Metawal - Catalogue pour l'information géographique de Wallonie
http://metawal.wallonie.be
GNU General Public License v2.0
3 stars 1 forks source link

Configuration du score de recherche #727

Closed vbombaerts closed 2 years ago

vbombaerts commented 2 years ago

Je voudrais favoriser dans les résultat de recherche les données/services récents. Actuellement, ce facteur est pris en compte avec le datestamp, qui est la date de mise à jour de la fiche. Je voudrai basculer sur des dates en rapport avec le cycle de vie de la donnée. J'ai donc modifié la recherche comme suit

{
  "boost": "5",
  "functions": [
    {
      "filter": {
        "exists": {
          "field": "parentUuid"
        }
      },
      "weight": 0.3
    },
    {
      "filter": {
        "match": {
          "cl_status.key": "obsolete"
        }
      },
      "weight": 0.3
    },
    [{
      "gauss": {
        "creationDateForResource": {
          "scale": "365d",
          "offset": "30d",
          "decay": 0.5
        }
      }
    },
        {
      "gauss": {
        "revisionDateForResource": {
          "scale": "365d",
          "offset": "30d",
          "decay": 0.5
        }
      }
    },
        {
      "gauss": {
        "publicationDateForResource": {
          "scale": "365d",
          "offset": "30d",
          "decay": 0.5
        }
      }
    }]
  ],
  "score_mode": "multiply"
}

Suite à cette modification, j'obtiens le message suivant : image

et l'interface de recherche n'est plus disponible.

vbombaerts commented 2 years ago

L'objectif est que, par exemple, les séries concernant les orthos apparaissent dans les résultats de recherche avec les séries les plus récentes en premier.

fxprunayre commented 2 years ago

C'est juste un pb de formattage, functions est un tableau d'objet donc [{...}, {...}] mais doit pas y avoir de tableau dedans. donc ne pas mettre les gauss dans un sous tableau [{gauss...}, ...] et ça devrait jouer ?

vbombaerts commented 2 years ago

Merci

{
  "boost": "5",
  "functions": [
    {
      "filter": {
        "exists": {
          "field": "parentUuid"
        }
      },
      "weight": 0.3
    },
    {
      "filter": {
        "match": {
          "cl_status.key": "obsolete"
        }
      },
      "weight": 0.3
    },
    {
      "gauss": {
        "creationDateForResource": {
          "scale": "365d",
          "offset": "30d",
          "decay": 0.5
        }
      }
    },
    {
      "gauss": {
        "revisionDateForResource": {
          "scale": "365d",
          "offset": "30d",
          "decay": 0.5
        }
      }
    },
    {
      "gauss": {
        "publicationDateForResource": {
          "scale": "365d",
          "offset": "30d",
          "decay": 0.5
        }
      }
    }
  ],
  "score_mode": "multiply"
}