Entità incorporate

Forniamo entità che identificano le informazioni oggettive dall'input dell'utente, come ora, data e indirizzi.

Queste entità incorporate estraggono valori primitivi come stringhe e numeri interi, ma possono anche estrarre valori più complicati dall'input utente utilizzando gruppi di proprietà.

Nota

Ogni volta che si definisce una variabile come entità in un flusso di finestre di dialogo basato su YAML, assicurarsi che corrisponda esattamente al nome dell'entità e alla lettera maiuscola. Ad esempio, si verificherà un errore di convalida se si immette confirm: "YESNO" anziché confirm: “YES_NO”.

Entità integrate e relative proprietà

Le entità estraggono il contenuto utilizzando le proprietà, ognuna delle quali riconosce un valore specifico. È possibile visualizzare queste proprietà nell'output JSON restituito dal motore NLU. In questo output, le entità corrispondenti vengono visualizzate insieme al valore identificato dall'input dell'utente. Nella definizione del flusso della finestra di dialogo è possibile utilizzare queste proprietà per isolare un aspetto specifico di un valore di entità. Mentre ogni entità ha le sue proprietà specifiche, tutte le entità hanno le seguenti proprietà:
Proprietà descrizione;
beginOffset L'offset iniziale di questo valore di entità con slot a partire da 0.
endOffset L'offset finale di questo valore di entità con slot a partire da 0.
originalString La stringa originale estratta dalla query per questo slot entità o la risposta al prompt.
Nota

Le entità DATE, TIME e DURATION non sono più valide nella Release 22.08. Queste entità non sono disponibili per gli skill creati in questa versione della piattaforma. Utilizzano invece l'entità DATE_TIME. Le competenze esistenti aggiornate alla versione 22.08 continueranno a supportare queste entità di sistema legacy, anche se potrebbero esserci alcune modifiche al comportamento.
Nome dell'entità Contenuto estratto Esempi Proprietà (con riferimento nelle espressioni valore) Esempio di risposta motore NLU
INDIRIZZO Città, numero civico e strada

Questa entità è solo inglese.

Indirizzo: 500 Smith Road, Smithville
  • city

  • houseNumber

  • road

{
"road": "smith road",
"city": "smithville",
"entityName": "ADDRESS",
"houseNumber": "500",
"originalString": "500 Smith Road, Smithville"
}
VALUTA Rappresentazioni di denaro. È possibile disambiguare le valute in dollari e ¥ in base alle impostazioni nazionali rilevate dell'utente.
  • $67

  • 75 dollari

  • amount

  • currency

  • totalCurrency

"CURRENCY": [ { "amount": 550, "currency": "usd", "totalCurrency": "550.0 usd", "entityName": "CURRENCY" } ]
DATE Data assoluta o relativa.

Questa entità non è più valida nella versione 22.08 e non è disponibile per gli skill creati in questa versione della piattaforma. Per gli skill creati utilizzando versioni precedenti, è consigliabile utilizzare l'entità DATE_TIME.

Nota: quando l'input utente assegna un nome al giorno, ma non fornisce altri contesti temporali, il sistema considera questa data una data futura. Ad esempio, il mercoledì viene considerato nel seguente input come mercoledì successivo, non come mercoledì corrente o mercoledì precedente.
  • Prenotami un biglietto per mercoledì.

  • Desidero presentare una nota spese per mercoledì.

È possibile ignorare questo comportamento applicando una regola di risoluzione delle ambiguità. Mentre l'entità DATE viene risolta in base al formato di diverse impostazioni nazionali supportate, è possibile scegliere di ignorare il formato delle impostazioni nazionali rilevate e di imporre un formato predefinito e un tempo (futuro, passato, più vicino e così via) applicando una regola di risoluzione delle ambiguità.
  • Novembre 9, 2016

  • Oggi

date
  {
          "entityName": "Meeting",
          "DATE_TIME": [
            {
              "originalString": "Monday, October 16th",
              "bagItem": "Meeting:DateTime",
              "subType": "DATE",
              "timeZone": "UTC",
              "movableDateValue": "--10-16",
              "relativeRepresentation": "--10-16",
              "entityName": "DATE_TIME",
              "value": "2022-10-16"
            }
          ]
        }
      ]
DATE_TIME Estrae le varie informazioni relative al tempo nei seguenti sottotipi: data, ora, data e ora, evento ricorrente, intervallo o durata.
  • Data: 1 gennaio 2023
  • Tempo: 10am
  • Data e ora: 1 gennaio 2023 a 10am
  • Intervallo: 1 gennaio 2023 dalle ore 10 per 2 ore
  • Durata: 2 ore
  Per "Pianifica un incontro per ogni martedì dalle 10:00 alle 1 del pomeriggio a partire dal 23 gennaio 2022 e fino al 23 febbraio":
   "entityMatches": {
      "Meeting": [
        {
          "entityName": "Meeting",
          "DATE_TIME": [
            {
              "originalString": "February 23",
              "bagItem": "Meeting:DateTime",
              "subType": "DATE",
              "timeZone": "UTC",
              "role": "end",
              "movableDateValue": "--02-23",
              "relativeRepresentation": "--02-23",
              "entityName": "DATE_TIME",
              "value": "2023-02-23"
            },
            {
              "originalString": "January 23, 2022",
              "bagItem": "Meeting:DateTime",
              "subType": "INTERVAL",
              "startDate": {
                "originalString": "January 23, 2022",
                "subType": "DATE",
                "timeZone": "UTC",
                "entityName": "DATE_TIME",
                "value": "2022-01-23"
              },
              "entityName": "DATE_TIME"
            },
            {
              "originalString": "every Tuesday from 10:00 am to 1 pm",
              "bagItem": "Meeting:DateTime",
              "subType": "RECURRING",
              "timeZone": "UTC",
              "recurrenceFrequency": {
                "originalString": "every Tuesday from 10:00 am to 1 pm",
                "subType": "DURATION",
                "timeZone": "UTC",
                "entityName": "DATE_TIME",
                "value": "P1W"
              },
              "startInterval": {
                "originalString": "Tuesday from 10:00 am to 1 pm",
                "subType": "INTERVAL",
                "timeZone": "UTC",
                "startDate": {
                  "originalString": "Tuesday",
                  "subType": "DATE",
                  "timeZone": "UTC",
                  "weekday": "TU",
                  "relativeReference": "weekday",
                  "entityName": "DATE_TIME",
                  "value": "2022-10-18"
                },
                "startTime": {
                  "originalString": "10:00 am",
                  "subType": "TIME",
                  "timeZone": "UTC",
                  "entityName": "DATE_TIME",
                  "value": "10:00:00"
                },
                "endTime": {
                  "originalString": "1 pm",
                  "subType": "TIME",
                  "timeZone": "UTC",
                  "entityName": "DATE_TIME",
                  "value": "13:00:00"
                },
                "entityName": "DATE_TIME"
              },
              "entityName": "DATE_TIME"
            }
          ]
        }
      ]
    }
  • Interpretazione del 23 febbraio in base alle regole di risoluzione temporale. Poiché il caso d'uso riguarda la pianificazione di una riunione, la data verrà sempre interpretata come previsionale.
    "movableDateValue": "--02-23",
                  "relativeRepresentation": "--02-23"
  • "value": "P1W": rappresentazione standard di interscambio ISO 8601 settimanale/una volta alla settimana, dove P è il desigator di durata e W è l'indicatore della settimana.
DURATA Il periodo di tempo tra i due endpoint di un intervallo di tempo

Questa entità non è più valida nella versione 22.08 e non è disponibile per gli skill creati in questa versione della piattaforma. Per gli skill creati utilizzando versioni precedenti, è consigliabile utilizzare l'entità DATE_TIME.

  • 4 anni

  • due settimane

  • startDate

  • endDate

[ { "originalString": "2 hours", "bagItem": "Meeting:DateTime", "subType": "DURATION", "timeZone": "UTC", "entityName": "DATE_TIME", "value": "PT2H" } ] } ]
E-mail Indirizzo e-mail. Il sistema NLU può riconoscere gli indirizzi e-mail che hanno una combinazione dei seguenti elementi:
  • parte prima del simbolo at (@):
    • lettere maiuscole e minuscole nell'alfabeto latino (A-Z e a-z)
    • digits (0-9)
    • i seguenti caratteri stampabili: !#$%&'*+-/=?^_`{}~
    • punto (.)
  • parte dopo il simbolo at (@):
    • lettere maiuscole e minuscole nell'alfabeto latino (A-Z e a-z)
    • digits (0-9)
    • trattino (-)
ragnar.smith@example.com    
POSIZIONE Estrae città, stati e paesi dall'input dell'utente.
  • Redwood City
  • CA
  • USA
  • city
  • state
  • country
"LOCATION": [ { "originalString": "Redwood City, CA, USA", "name": "redwood city, ca, usa", "country": "usa", "state": "ca", "city": "redwood city", "entityName": "LOCATION" } ]
NUMERO Corrisponde ai numeri ordinali e cardinali. È possibile risolvere un'entità come formato specifico per le impostazioni internazionali (raggruppamento di migliaia per soste complete, virgole, spazi e così via).
  • 1st

  • primo

  • 1

  • one

   
PERSONA Riconosce una stringa come il nome di una persona.

L'entità PERSON non può corrispondere a nomi che sono anche ubicazioni (ad esempio, Virginia North).

Per espandere l'entità PERSON in modo che corrisponda sempre alle persone dell'organizzazione, è possibile associarla a un'entità elenco di valori.
  • John J. Jones
  • Ashok Kumar
  • Gabriele D'Annunzio
  • Jones, David
  • Cantiflas
  • Zhang San
  • Virginia Jones
name "PERSON": [ { "originalString": "John J. Johnson", "name": "john j. johnson", "entityName": "PERSON" } ]
NUMERO DI TELEFONO Un numero di telefono: il motore NLU riconosce i numeri di telefono con sette o più cifre (non è in grado di riconoscere alcun numero di telefono con meno cifre). Tutti i codici paese devono essere preceduti da un segno più (+), ad eccezione degli Stati Uniti d'America (dove il segno più è facoltativo). Le varie parti del numero di telefono (indicativo di località, prefisso e numero di riga) possono essere separate da punti (.), lineette (-) o spazi. Se sono stati immessi più numeri di telefono nell'input utente, il motore NLU può riconoscerli quando sono separati da virgole. Non è possibile riconoscere numeri di telefono diversi se sono separati da punti, trattini o spazi.
  • (650)-555-5555

  • 16.505.555.555

  • +61,3

  • phoneNumber

  • completeNumber

{ "phone_number":"(650)-555-5555", "complete_number":"(650)-555-5555", "entityName":"PHONE_NUMBER" }
ORA Un momento specifico.

Questa entità non è più valida nella versione 22.08 e non è disponibile per gli skill creati in questa versione della piattaforma. Per gli skill creati utilizzando versioni precedenti, è consigliabile utilizzare l'entità DATE_TIME.

In alcuni casi, ad esempio, quando l'input è ambiguo, potrebbe essere necessario che l'entità TIME risolva l'input in modo coerente come un'ora passata o futura oppure lo approssimasse in base all'ora più vicina. A tale scopo, applicare una regola di risoluzione delle ambiguità.

2:30 pm
  • hrs

  • mins

  • secs

  • "hourFormat":"PM"

"startTime": { "date": 1613653200000, "zoneOffset": "0", "endOffset": 4, "mins": 0, "zone": "UTC", "entityName": "TIME", "secs": 0, "hrs": 1, "originalString": "1 pm", "type": "TIME", "hourFormat": "PM", "beginOffset": 0 }
URL URL: questa entità può estrarre gli indirizzi IPv4, gli URL Web, i collegamenti in profondità (http://example.com/path/page), i percorsi dei file e gli URI mailto. Se l'input utente specifica le credenziali di login, deve includere anche il protocollo. In caso contrario, il protocollo non è richiesto. http://example.com
  • protocol

  • domain

  • fullPath

{"protocol":"http","domain":"example.com",}
YES_NO Rileva un "sì" o un "no".     "YES_NO": [ { "beginOffset": 0, "endOffset": 4, "originalString": "Yeah", "yesno": "YES", "entityName": "YES_NO", "type": "YES_NO" } ]

L'entità DATE_TIME

Ci sono molti modi in cui la tua abilità potrebbe aver bisogno di ottenere l'input di data e ora. Ad esempio, potrebbe essere necessario specificare una data o un'ora semplice, una data e un'ora oppure un periodo occasionale o ricorrente. È possibile utilizzare l'entità DATE_TIME per raccogliere informazioni per tutti questi scenari.

L'entità DATE_TIME consente di scegliere un sottotipo specifico per definire le informazioni da raccogliere. La tabella seguente mostra il sottotipo da utilizzare per ogni possibile scenario e collega le informazioni sugli attributi per ogni sottotipo.

Scenario Sottotipo DATE_TIME Di riferimento
Data. Data. Attributi sottotipo DATE
Un tempo. Tempo Attributi tipo secondario ora
Una data e un'ora. DateTime Attributi sottotipo DATETIME
Un arco di tempo. Ad esempio, 1 ora o 4 giorni. Durata Attributi sottotipo DURATION
Una singola occorrenza di un periodo definito da una data di inizio e fine o da una data e ora di inizio e fine. Intervallo Attributi sottotipo INTERVAL
Periodo ricorrente regolare definito ad esempio dall'inizio e dalla fine del primo periodo, dall'intervallo tra i periodi ricorrenti e dal momento in cui i periodi interrompono la ricorrenza. Ricorrenti Attributi sottotipo ricorrente
Nota

l'entità DATE_TIME sostituisce le entità di sistema DATE, TIME, DURATION e SET, che non sono più valide e non sono disponibili nelle competenze create nella Release 22.08 e successive. Le competenze esistenti aggiornate alla versione 22.08 supporteranno queste entità di sistema obsolete, anche se potrebbero esserci alcune modifiche al comportamento.
È possibile utilizzare i sottotipi Data, Ora e Durata come entità autonome nel flusso della finestra di dialogo (in cui si dichiarano variabili separate per ciascuna), ma è possibile utilizzare solo i sottotipi Intervallo e Ricorrente incorporandoli in un'entità sacchetto composito.
Nota

Si consiglia di gestire tutti i sottotipi DATE_TIME all'interno di un'entità sacchetto composto.

In modalità finestra di dialogo visiva, fare riferimento ai sottotipi DATE_TIME utilizzando gli stati Risolvi entità e Risolvi entità dichiarativa.

Nota

Se si utilizzano i sottotipi Data, Ora e Durata come entità standalone in un flusso di finestre di dialogo basato su YAML, specificare il sottotipo utilizzando la notazione a punti: DATE_TIME.DATE, DATE_TIME.TIME, DATE_TIME.DURATION e per SET, DATE_TIME.RECURRING. Ad esempio:
context:
  variables:
    iResult: "nlpresult"
    Startdate: "DATE_TIME.DATE"
    duration: "DATE_TIME.DURATION" 
Nel nodo states fare riferimento a queste variabili utilizzando un componente System.ResolveEntities.
I valori DATE_TIME sono rappresentati come ISO 8601. Per un output intuitivo, utilizzare Apache FreeMarker .xs integrato. Ad esempio, il sottotipo Tempo viene estratto utilizzando .value.value?time.xs?string['hh:mm a'] nel seguente riferimento al bundle di risorse:
${rb('pizzaDeliveryMessage','time',deliveryTime.value.value?time.xs?string['hh:mm a'])}
Il primo value ottiene il contenuto della variabile come oggetto. Il secondo value è un attributo dell'oggetto DATE_TIME che contiene il valore temporale.

Attributi per ogni sottotipo DATE_TIME

Di seguito sono riportati gli attributi per ogni sottotipo DATE_TIME.

Come ogni altra entità di sistema, anche i sottotipi includono le proprietà beginOffset, endOffset e originalString.

Attributi sottotipo DATE

Il sottotipo DATE contiene i seguenti attributi relativi a una data specifica:

Attributo Digita Spiegazione
entityName Stringa DATE_TIME
month Valore intero

Quando DATE è un attributo del sottotipo RECURRING e la stringa originale include il nome di un mese, ad esempio "ogni lunedì di luglio", rappresenta la rappresentazione numerica ("7" in questo esempio) del valore mese specificato in modo esplicito.

movableDateValue Stringa

Se DATE è un attributo di RECURRING e la data inserita nell'intervallo non rappresenta una data specifica (ovvero una data mobile, ad esempio il 4 luglio), rappresenta il valore della data mobile specificato in modo esplicito utilizzato dall'attributo DATE del sottotipo RECURRING per distinguere tra la data mobile risolta e la data non mobile risolta. Ad esempio, se la data inserita nell'intervallo è il 4 luglio, il valore è --07-04.

ordinal Valore intero

Quando DATE è un attributo del sottotipo RECURRING e la stringa originale specifica un valore ordinale, ad esempio il primo in "ogni primo lunedì", rappresenta il valore numerico dell'ordinale (in questo esempio, "1").

ordinalReference Enumerazione

Quando DATE è un attributo del sottotipo RECURRING e la stringa originale include un ordinale qualificato con il nome di un mese, ad esempio luglio in "ogni primo lunedì di luglio", questo rappresenta il qualificatore specificato esplicitamente ('M' per mese).

subType Stringa DATE
timezone Stringa Differenza di fuso orario. Ad esempio: +07:00.
type Stringa DATE_TIME
value Stringa Valore risolto in formato ISO 8601. Ad esempio 2022-08-05.
weekday Enumerazione

Quando DATE è un attributo del sottotipo RECURRING e la stringa originale include il nome di un giorno, ad esempio "ogni lunedì", rappresenta il valore del giorno feriale specificato in modo esplicito utilizzando il formato iCalendar, ad esempio MO, TU e WE.

year Valore intero

Quando DATE è un attributo del sottotipo RECURRING e la stringa originale include l'anno, ad esempio "ogni lunedì del 2023", rappresenta il valore dell'anno specificato in modo esplicito.

Ecco un esempio della risposta NLU per il sottotipo DATE:

          "aDate": {
            "endOffset": 8,
            "entityName": "DATE_TIME",
            "timeZone": "-10:00",
            "originalString": "tomorrow",
            "subType": "DATE",
            "type": "DATE_TIME",
            "value": "2022-09-07",
            "beginOffset": 0
          }

Attributi tipo secondario ora

Il sottotipo TIME contiene i seguenti attributi relativi a un'ora specifica:

Attributo Digita Spiegazione
entityName Stringa DATE_TIME
subType Stringa TIME
timezone Stringa Differenza di fuso orario. Ad esempio: +07:00.
type Stringa DATE_TIME
value Stringa Valore risolto in formato ISO 8601. ad esempio 12:00:00.

Di seguito è riportato un esempio di risposta lookup numerico per l'entità TIME.

          "aTime": {
            "endOffset": 4,
            "entityName": "DATE_TIME",
            "timeZone": "-10:00",
            "originalString": "2 pm",
            "subType": "TIME",
            "type": "DATE_TIME",
            "value": "14:00:00",
            "beginOffset": 0
          }

Attributi sottotipo DATETIME

Il sottotipo DATETIME contiene i seguenti attributi relativi a una data e un'ora specifiche:

Attributo Digita Spiegazione
date DATE Questo oggetto contiene gli attributi descritti in Attributi sottotipo data.
entityName Stringa DATE_TIME
subType Stringa DATETIME
time ORA Questo oggetto contiene gli attributi descritti in Attributi tipo secondario TEMPO.

Ecco un esempio della risposta NLU per il sottotipo DATETIME:


          "aDateAndTime": {
            "date": {
              "endOffset": 5,
              "entityName": "DATE_TIME",
              "timeZone": "-10:00",
              "originalString": "today",
              "subType": "DATE",
              "type": "DATE_TIME",
              "value": "2022-09-06",
              "beginOffset": 0
            },
            "entityName": "DATE_TIME",
            "subType": "DATETIME",
            "time": {
              "endOffset": 13,
              "entityName": "DATE_TIME",
              "timeZone": "-10:00",
              "originalString": "noon",
              "subType": "TIME",
              "type": "DATE_TIME",
              "value": "12:00:00",
              "beginOffset": 9
            }
          }

Attributi sottotipo DURATION

Il sottotipo DURATA contiene i seguenti attributi relativi alla durata di un giorno o di un'ora, ad esempio 1 settimana:

Attributo Digita Spiegazione
entityName Stringa DATE_TIME
subType Stringa DURATION
timezone Stringa Differenza di fuso orario. Ad esempio: +07:00.
type Stringa DATE_TIME
value Stringa Durata in formato ISO 8601. Esempi: PT1H per 1 ora, P4D per 4 giorni, P1W per 1 settimana, P2M per 2 mesi.

Ecco un esempio della risposta NLU per il sottotipo DURATION:

          "aDuration": {
            "endOffset": 7,
            "entityName": "DATE_TIME",
            "timeZone": "-10:00",
            "originalString": "3 hours",
            "subType": "DURATION",
            "type": "DATE_TIME",
            "value": "PT3H",
            "beginOffset": 0
          }

Attributi sottotipo INTERVAL

Il sottotipo INTERVAL contiene questi attributi relativi a un periodo definito da una data e un'ora di inizio e di fine oppure è definito da una data, un'ora di inizio e una lunghezza, ad esempio 2 ore.

Attributo Digita Spiegazione
duration ENTITÀ Questo oggetto contiene gli attributi descritti in Attributi sottotipo DURATION.
endDate DATE Questo oggetto contiene gli attributi descritti in Attributi sottotipo data.

Incluso per i tipi di prompt Data e ora e Solo data.

endTime ORA Questo oggetto contiene gli attributi descritti in Attributi tipo secondario TEMPO.

Incluso per i tipi di prompt Data e ora e Solo ora.

entityName Stringa DATE_TIME
startDate DATE Questo oggetto contiene gli attributi descritti in Attributi sottotipo data.

Incluso per i tipi di prompt Data e ora e Solo data.

startTime ORA Questo oggetto contiene gli attributi descritti in Attributi tipo secondario TEMPO.

Incluso per i tipi di prompt Data e ora e Solo ora.

subType Stringa INTERVAL

Di seguito è riportato un esempio di risposta lookup numerico per l'entità INTERVAL con tipo di prompt Data e ora.

          "anInterval": {
            "duration": {
              "entityName": "DATE_TIME",
              "subType": "DURATION",
              "value": "P1D"
            },
            "endDate": {
              "endOffset": 8,
              "entityName": "DATE_TIME",
              "timeZone": "-10:00",
              "originalString": "tomorrow",
              "subType": "DATE",
              "type": "DATE_TIME",
              "value": "2022-09-07",
              "beginOffset": 0
            },
            "entityName": "DATE_TIME",
            "subType": "INTERVAL",
            "startTime": {
              "endOffset": 4,
              "entityName": "DATE_TIME",
              "timeZone": "-10:00",
              "originalString": "noon",
              "subType": "TIME",
              "type": "DATE_TIME",
              "value": "12:00:00",
              "beginOffset": 0
            },
            "endTime": {
              "endOffset": 4,
              "entityName": "DATE_TIME",
              "timeZone": "-10:00",
              "originalString": "noon",
              "subType": "TIME",
              "type": "DATE_TIME",
              "value": "12:00:00",
              "beginOffset": 0
            },
            "startDate": {
              "endOffset": 5,
              "entityName": "DATE_TIME",
              "timeZone": "-10:00",
              "originalString": "today",
              "subType": "DATE",
              "type": "DATE_TIME",
              "value": "2022-09-06",
              "beginOffset": 0
            }
          }

Attributi sottotipo ricorrente

Il sottotipo RECURRING contiene i seguenti attributi relativi a un periodo ricorrente regolarmente:

Attributo Digita Spiegazione
entityName Stringa DATE_TIME
recurrenceDates Array di DATE Incluso quando vengono date più date ricorrenti. Questo oggetto contiene un array di oggetti DATE con gli attributi descritti in Attributi sottotipo data.
recurrenceFrequency DURATA Questo oggetto contiene gli attributi descritti in Attributi sottotipo DURATION.
recurrenceTimes Array di tempo Incluso quando vengono assegnati più orari ricorrenti. Questo oggetto contiene un array di oggetti TIME con gli attributi descritti in Attributi tipo secondario TEMPO.
recurrenceUntil INTERVALLO Specifica i limiti della ripetizione. In genere, viene specificata solo la data di fine. Questo oggetto contiene gli attributi descritti in Attributi sottotipo INTERVAL.
startDate DATE Questo oggetto contiene gli attributi descritti in Attributi sottotipo data.

Per le entità RECURRING, l'oggetto DATE può includere gli attributi month. movevableDateValue, ordinal, ordinalReference, weekday e year.

Incluso per il tipo di prompt Solo data.

startDateTime DATA/ORA Questo oggetto contiene gli attributi descritti in Attributi sottotipo DATETIME.

Per le entità RECURRING, l'oggetto secondario DATE di DATETIME può includere gli attributi month. movevableDateValue, ordinal, ordinalReference, weekday e year.

Incluso per il tipo di prompt Data e ora.

startInterval INTERVALLO Questo oggetto contiene gli attributi descritti in Attributi sottotipo INTERVAL.
startTime ORA Questo oggetto contiene gli attributi descritti in Attributi tipo secondario TEMPO.

Incluso per il tipo di prompt Solo ora.

subType Stringa RECURRING

Di seguito è riportato un esempio di risposta lookup numerico per il sottotipo RECURRING con tipo di prompt Data e ora.

          "aRecurringPeriod": {
            "startInterval": {
              "duration": {
                "entityName": "DATE_TIME",
                "subType": "DURATION",
                "value": "PT1H"
              },
              "endDate": {
                "entityName": "DATE_TIME",
                "timeZone": "-10:00",
                "subType": "DATE",
                "value": "2022-07-28"
              },
              "entityName": "DATE_TIME",
              "subType": "INTERVAL",
              "startTime": {
                "endOffset": 7,
                "entityName": "DATE_TIME",
                "timeZone": "-10:00",
                "originalString": "12 noon",
                "subType": "TIME",
                "bagItem": "Meeting:DateTime",
                "type": "DATE_TIME",
                "value": "12:00:00",
                "beginOffset": 0
              },
              "endTime": {
                "entityName": "DATE_TIME",
                "timeZone": "-10:00",
                "subType": "TIME",
                "value": "13:00:00"
              },
              "startDate": {
                "endOffset": 8,
                "entityName": "DATE_TIME",
                "timeZone": "-10:00",
                "originalString": "tomorrow",
                "subType": "DATE",
                "bagItem": "Meeting:DateTime",
                "type": "DATE_TIME",
                "value": "2022-07-28",
                "beginOffset": 0
              }
            },
            "recurrenceFrequency": {
              "endOffset": 10,
              "entityName": "DATE_TIME",
              "timeZone": "-10:00",
              "originalString": "every week",
              "subType": "DURATION",
              "type": "DATE_TIME",
              "bagItem": "Meeting:DateTime",
              "value": "P1W",
              "beginOffset": 0
            },
            "entityName": "DATE_TIME",
            "subType": "RECURRING",
            "recurrenceUntil": {
              "endDate": {
                "endOffset": 6,
                "entityName": "DATE_TIME",
                "timeZone": "-10:00",
                "originalString": "Sept 1",
                "subType": "DATE",
                "bagItem": "Meeting:DateTime",
                "type": "DATE_TIME",
                "value": "2022-09-01",
                "beginOffset": 0
              },
              "entityName": "DATE_TIME",
              "subType": "INTERVAL"
            }
          }

Regole di risoluzione ambiguità per corrispondenze di data e ora

Gli utenti possono immettere date parziali in cui l'ora è implicita. Ad esempio:
  • "Pianifica una riunione per lunedì"
  • "Crea una nota spese per 7/11"
  • "Crea una nota spese per l'11"
Alcune situazioni, come la pianificazione di una riunione, implicano un tempo futuro. Altri, come la creazione di una nota spese, fanno riferimento a un periodo di tempo passato. Per garantire che i sottotipi di data e ora dell'entità DATE_TIME possano risolvere l'input ambiguo come passato, presente o come approssimazione più vicina, è possibile applicare le regole di risoluzione ambiguità. Per impostare il contesto temporale per la risoluzione temporale, ad esempio, fare clic sull'entità DATE_TIME, quindi applicare una regola.
Nota

Le regole di risoluzione delle ambiguità non convalidano l'input utente. È possibile convalidare l'input utente con un programma di convalida personalizzato che utilizza Apache FreeMarker (sconsigliato) o in un handler di eventi entità (consigliato). Questo programma di convalida restituisce false (convalida non riuscita) se viene specificata una data trascorsa per un caso d'uso in previsione (ad esempio, uno scheduler riunioni). Per un caso d'uso con aspetto arretrato, ad esempio le note spese, il programma di convalida restituisce false se l'utente inserisce una data futura.


Nota

Se si fa riferimento alla stessa entità con due o più articoli nello stesso sacchetto composito o se due o più sacchetti compositi fanno riferimento alla stessa entità e sono anche associato allo stesso intento, eseguire l'aggiornamento alla Release 21.12 per garantire che le regole di risoluzione delle ambiguità specifiche di ogni riferimento entità vengano gestite separatamente e non sovrascritte dalle regole impostate per un'entità risolta in precedenza.

Regole di risoluzione per gli abbinamenti al sottotipo di data

La data viene risolta alla data UTC, non alla data del server né alla data del browser. Ad esempio, il termine "oggi" pronunciato alle 8 del mattino dell'8 luglio dal fuso orario Hawaii-Aleutine (UTC-10:00) viene risolto il 9 luglio.
Regola Funzionamento Esempi
Passate Risolve l'input ambiguo come giorno della settimana più vicino nel passato.
  • Se l'espressione include "lunedì" e il giorno corrente è anche lunedì, allora "lunedì" viene risolto come oggi.
  • Se l'espressione include "Lunedì" e il giorno corrente è mercoledì, il "Lunedì" viene risolto come il lunedì precedente.
Futuro Risolve l'input ambiguo come giorno più vicino in futuro
  • Se l'espressione include "lunedì" e il giorno corrente è anche lunedì, allora "lunedì" viene risolto come oggi.
  • Se l'espressione include "Lunedì", e il giorno corrente è Martedì, allora "Lunedì" viene risolto come il lunedì successivo.
  • Se l'espressione include "martedì" e il giorno corrente è lunedì, allora "martedì" viene risolto come questo martedì.
Più prossimo Risolve l'input ambiguo come giorno più vicino.
  • Se l'espressione include "lunedì" e il giorno corrente è anche lunedì, il "lunedì" viene risolto come oggi. Se l'espressione include "lunedì" e il giorno corrente è martedì, allora "lunedì" si risolve come ieri.
  • Se l'espressione include "lunedì", e il giorno corrente è domenica, il "lunedì" si risolve come domani.
Valore predefinito Risolve l'input ambiguo come data futura. Ad esempio, se l'input include il mercoledì, il giorno viene interpretato come mercoledì successivo, non come mercoledì precedente o come giorno corrente (ovvero se si tratta di un mercoledì).

Regole di risoluzione per le corrispondenze al sottotipo temporale

Regola Funzionamento Esempi
Passate Risolve l'input all'ora più vicina nel passato rispetto all'ora corrente nel fuso orario UTC.
  • Se l'espressione include "9 am" e l'ora corrente è 10:00 am, allora il tempo è risolto come 9:00 am oggi.
  • Se l'espressione include "9 pm" e l'ora corrente è 10:00 am, allora il tempo è risolto come 9:00 pm ieri.
  • Se l'espressione include "9" e l'ora corrente è 10:00 am, allora il tempo è risolto come 9:00 am oggi.
Futuro Risolve l'input all'ora successiva più vicina in relazione all'ora corrente nel fuso orario UTC.
  • Se l'espressione include "9 am" e l'ora corrente in questo momento è 10:00 am, allora il tempo è risolto come 9:00 am domani.
  • Se l'espressione include "9 pm" e l'ora corrente è 10:00 am, il tempo è risolto come 9 pm oggi.
  • Se l'espressione include "9" e l'ora corrente è 10:00 am, allora il tempo è risolto come 9:00 pm oggi.
Più prossimo Risolve l'input come ora più vicina rispetto all'ora corrente nel fuso orario UTC.
  • Se l'espressione include "9 am" e l'ora corrente è 10:00 am, allora il tempo è risolto come oggi 9:00 am.
  • Se l'espressione include "9 pm" e l'ora corrente è 10:00 am, allora il tempo è risolto come 9:00 pm oggi.
  • Se l'espressione include "9" e l'ora corrente è 10:00 am, allora il tempo è risolto come 9:00 am oggi.
  • Se l'espressione include "10:00" e l'ora corrente è 1:00 am, allora l'ora viene risolta come 10:00 pm ieri.
Valore predefinito Risolve l'input in base al metodo utilizzato nelle release precedenti alla 21.06 di Oracle Digital Assistant.
  • Se l'espressione include è "9 am" e l'ora corrente è 10 am, allora il tempo è risolto come 9 am oggi.
  • Se l'espressione include "9 pm" e l'ora corrente è 10 am, allora il tempo è risolto come 9 pm oggi.
  • Se l'espressione include "9" e l'ora corrente è 10 am, allora il tempo è risolto come 9 am oggi.
  • Se l'espressione include "1:00 am" e l'ora corrente è 2 pm, allora il tempo viene risolto come 1 am domani.

Risoluzione entità basata su impostazioni nazionali

È possibile abilitare le entità CURRENCY, DATE e NUMBER per la risoluzione alle impostazioni nazionali utente selezionando Considera impostazioni nazionali utente finale.

A seconda dell'entità, questa opzione ha diverse applicazioni:
  • DATE si risolve nel formato specifico della versione locale: può risolvere 11/7 come 7 novembre per en-US o 11 luglio per en-AU, ad esempio. Per le impostazioni nazionali non supportate, è possibile applicare un formato e un contesto temporale, ad esempio passato o futuro.
  • NUMBER viene risolto nel formato numerico specifico del paese, ovvero la virgola, il punto o lo spazio utilizzato per separare i gruppi di migliaia e il separatore decimale con o senza uno spazio sottile che separa la parte frazionaria del numero. Ad esempio, il Regno Unito e gli Stati Uniti utilizzano entrambe una virgola per separare gruppi di migliaia.
    Nota

    Quando l'opzione Considera impostazioni nazionali utente finale è disattivata, l'entità NUMBER viene risolta come COMMA_DOT (1.000,00).
  • CURRENCY utilizza le impostazioni nazionali per risolvere una valuta specifica di $ o ¥. Quando non vengono rilevate impostazioni nazionali, è possibile impostare l'input da risolvere come valuta $ o ¥ impostata dalla regola di risoluzione ambiguità.
Nota

Se si fa riferimento alla stessa entità con altri due articoli nello stesso sacchetto composito o se due o più sacchetti compositi fanno riferimento alla stessa entità e sono anche associati con lo stesso intento, eseguire l'aggiornamento alla Release 21.12 per garantire che la personalizzazione delle impostazioni nazionali specifica per ogni riferimento entità venga gestita separatamente e non sovrascritta dalla configurazione delle impostazioni nazionali di un'entità risolta in precedenza.

Risoluzione data basata su impostazioni nazionali

Quando non è possibile rilevare le impostazioni nazionali dell'utente, la data viene risolta come formato di data predefinito selezionato.
Per questa lingua... Questo input... ... Risolve come... Formato (sequenza data-mese)
Stati Uniti (en_US) 11/7 7 novembre MONTH_DAY
Gran Bretagna (en_GB) 11/7 11 luglio DAY_MONTH
Canada - inglese (en_CA) 11/7 7 novembre MONTH_DAY
Canada - francese (fr_CA) 11/7 7 novembre MONTH_DAY
Australia (en_AU) 11/7 11 luglio DAY_MONTH
Messico (es_MX) 11/7 11 luglio DAY_MONTH
Singapore (zh_SG) 11/7 11 luglio DAY_MONTH
Emirati Arabi Uniti (ar_AE) 11/7 7 novembre MONTH_DAY
Arabo (ar_AR) 11/7 7 novembre MONTH_DAY
Francia (fr_FR) 11/7 11 luglio DAY_MONTH
Paesi Bassi (nl_NL) 11/7 11 luglio DAY_MONTH
Germania (de_DE) 11/7 11 luglio DAY_MONTH
Italia (it_IT) 11/7 11 luglio DAY_MONTH
Portogallo (pt_PT) 11/7 11 luglio DAY_MONTH
Spagna (en_ES) 11/7 11 luglio DAY_MONTH
Cina (zh_CN) 11/7 7 novembre MONTH_DAY
Giappone (ja_JP) 11/7 7 novembre MONTH_DAY

Risoluzione valuta basata su impostazioni nazionali

Per questa lingua... Questo input... ... Risolve come (ambiguità del dollaro) Questo input... ... Risolve come (Yen Ambiguity)
Stati Uniti (en_US) 20 dollari 20.0 USD 20 ¥ 20.0 JPY
Gran Bretagna (en_GB) 20 dollari 20.0 USD 20 ¥ 20.0 JPY
Canada - inglese (en_CA) 20 dollari 20.0 CADMIO 20 ¥ 20.0 JPY
Canada - francese (fr_CA) 20 dollari 20.0 CADMIO 20 ¥ 20.0 JPY
Australia (en_AU) 20 dollari 20.0 AUD 20 ¥ 20.0 JPY
Messico (es_MX) 20 dollari 20,0 MXN 20 ¥ 20.0 CNY
Singapore (zh_SG) 20 dollari 20,0 SGD 20 ¥ 20.0 JPY
Emirati Arabi Uniti (ar_AE) 20 dollari 20.0 USD 20 ¥ 20.0 JPY
Arabo (ar_AR) 20 dollari 20.0 USD 20 ¥ 20.0 JPY
Francia (fr_FR) 20 dollari 20.0 USD 20 ¥ 20.0 JPY
Paesi Bassi (nl_NL) 20 dollari 20.0 USD 20 ¥ 20.0 JPY
Germania (de_DE) 20 dollari 20.0 USD 20 ¥ 20.0 JPY
Italia (it_IT) 20 dollari 20.0 USD 20 ¥ 20.0 JPY
Portogallo (pt_PT) 20 dollari 20.0 USD 20 ¥ 20.0 JPY
Spagna (en_ES) 20 dollari 20.0 USD 20 ¥ 20.0 JPY
Cina (zh_CN) 20 dollari 20.0 USD 20 ¥ 20.0 CNY
Giappone (ja_JP) 20 dollari 20.0 USD 20 ¥ 20.0 JPY

Risoluzione dei numeri basata sulle impostazioni nazionali

Quando l'opzione Considera impostazioni nazionali utente finale è disattivata, il formato numerico predefinito è COMMA_DOT (1.000,00).
Quando le impostazioni nazionali sono abilitate per... ... Il formato riconosciuto è... Esempio
Stati Uniti (en_US) COMMA_DOT 1.000.000
Gran Bretagna (en_GB) COMMA_DOT 1.000.000
Canada - inglese (en_CA) COMMA_DOT 1.000.000
Canada - francese (fr_CA) DOT_COMMA 1
Australia (en_AU) COMMA_DOT 1.000.000
Messico (es_MX) COMMA_DOT 1.000.000
Singapore (zh_SG) COMMA_DOT 1.000.000
Emirati Arabi Uniti (ar_AE) DOT_COMMA 1
Arabo (ar_AR) DOT_COMMA 1
Francia (fr_FR) SPACE_COMMA 1 0 0
Paesi Bassi (nl_NL) DOT_COMMA 1
Germania (de_DE) DOT_COMMA 1
Italia (it_IT) DOT_COMMA 1
Portogallo (pt_PT) COMMA_DOT 1.000.000
Spagna (en_ES) DOT_COMMA 1
Cina (zh_CN) COMMA_DOT 1.000.000
Giappone (ja_JP) COMMA_DOT 1.000.000