UTILIZZO DEI WEBSERVICES

La classificazione delle professioni utilizza Elasticsearch. I livelli della classificazione sono disponibili attraverso dei servizi REST.

Indice CP

--:::::::::: CREAZIONE DELL'INDICE ::::::::::::--
PUT /professioni
{
"settings": {
    "analysis": {
      "filter": {
        "italian_stop": {
          "type":       "stop",
          "stopwords":  "_italian_"
        },
        "italian_stemmer": {
          "type":       "stemmer",
          "language":   "italian" 
        }
        },
    "analyzer": {
        "italian": {
          "tokenizer":  "standard",
          "filter": [
            "lowercase",
            "italian_stop",
            "italian_stemmer"
          ]
        },
         "lower": {
          "tokenizer":  "standard",
          "filter": [
            "lowercase"
          ]
        }
      }
    }
  },
  
"mappings": {
    "cp2011": {
      "properties": {
        "nome": {
          "type":     "string",
          "analyzer": "italian" 
        },
         "descrizione": {
          "type":     "string",
          "analyzer": "italian" 
        },
         "nome_not_analyzed": {
          "type":     "string",
          "analyzer": "lower" 
        },
         "pk_livello": {
          "type":     "string",
          "analyzer": "not_analyzed" 
        }
      }
    }
  }
}

RICERCA ATTRAVERSO QUERY JSON

Rilascio dell'intera classificazione

http://cp2011.istat.it/webservice.php?idFamiglia=1&idIndice=1&flag=2
{
    "from" : 0, 
    "size" : 8300,
    "query": {
      "match_all": {}
   }
}            

Ricerca di un sottolivello

http://cp2011.istat.it/webservice.php?idFamiglia=1&idIndice=1&flag=4&codice=2.1.1.1

Ricerca di una stringa eatta

http://cp2011.istat.it/webservice.php?idFamiglia=1&idIndice=1&flag=1&string=elettrauto
{
  "from" : 0, 
  "size" : 200,
  "query": {
      "match_phrase": {
          "notAnalyzed" : {
            "query" : "elettrauto"
        }
     }
   },
    "highlight": {
        "fields" : {
            "notAnalized" : {}
        }
    }
}

/* Ricerca un intero livello (e.g. 1)

http://cp2011.istat.it/webservice.php?idFamiglia=1&idIndice=1&flag=3&from=1&to=1
{    
    "from" : 0, 
    "size" : 8300,
    "query": {
        "filtered": {
            "filter": {
                "regexp": {
                    "pkLivello": {
                        "value": ".{1,1}"
                    }
                }
            }
        }
    }
}

Ricerca parola sostitutiva

http://cp2011.istat.it/webservice.php?idFamiglia=1&idIndice=1&flag=7&string=stringa
{
  "nome" : {
    "text" : "pasticcioo",
    "term" : {
       "field" : "nome"
    }
  }
}            
        

RICERCA DI UN CODICE

http://cp2011.istat.it/webservice.php?idFamiglia=1&idIndice=1&flag=5&codice=3.2.2
{
    "from" : 0, 
    "size" : 8300,
    "query": {
      "match_phrase": {
          "pkLivello" : {
            "query" : "3.1.1.1"
        }
     }
   },
    "highlight": {
        "fields" : {
            "nome" : {}
        }
    }
}
        

MOTORE DI RICERCA

FULLTEXT

http://cp2011.istat.it/webservice.php?idFamiglia=1&idIndice=1&flag=8&string=elettrauto&fulltext=1

RICERCA ESATTA

http://cp2011.istat.it/webservice.php?idFamiglia=1&idIndice=1&flag=8&string=elettrauto&fulltext=1

INCLUDI IL MOTORE DI RICERCA NEL TUO SITO

Il motore di ricerca può essere incluso all'interno di altre applicazioni, copiano lo script seguente.