Entités intégrées

Nous fournissons des entités qui identifient des informations d'objectif à partir de la saisie utilisateur, telles que l'heure, la date et les adresses.

Ces entités intégrées extraient des valeurs primitives comme des chaînes et des nombres entiers, mais peuvent également extraire des valeurs plus complexes de la saisie utilisateur à l'aide de groupes de propriétés.

Remarque

Lorsque vous définissez une variable en tant qu'entité dans un flux de dialogue basé sur YAML, veillez à respecter exactement le nom de l'entité et la casse. Par exemple, vous obtiendrez une erreur de validation si vous entrez confirm: "YESNO" au lieu de confirm: “YES_NO”.

Entités intégrées et leurs propriétés

Les entités extraient le contenu à l'aide de propriétés qui reconnaissent chacune une valeur spécifique. Vous pouvez voir ces propriétés dans la sortie JSON renvoyée par le moteur NLU. Dans cette sortie, les entités mises en correspondance s'affichent avec la valeur qu'elles ont identifiée à partir de l'entrée utilisateur. Dans la définition de flux de dialogue, vous pouvez utiliser ces propriétés pour isoler un facet spécifique d'une valeur d'entité. Bien que chaque entité possède ses propriétés spécifiques, toutes les entités possèdent les propriétés suivantes :
Propriété Description
beginOffset Décalage de début de cette valeur d'entité à créneaux commençant à 0.
endOffset Décalage de fin de cette valeur d'entité à créneaux commençant à 0.
originalString Chaîne d'origine extraite de la requête pour cet emplacement d'entité ou réponse à l'invite.
Remarque

Les entités DATE, TIME et DURATION sont en phase d'abandon dans la version 22.08. Ces entités ne sont pas disponibles pour les briques créées sur cette version de la plate-forme. Ils utilisent l'entité DATE_TIME à la place. Les briques existantes mises à niveau vers la version 22.08 continueront à prendre en charge ces entités système héritées, bien qu'il puisse y avoir des changements de comportement.
Nom d'entité Contenu extrait Exemples Propriétés (référencées dans les expressions de valeur) Exemple de réponse du moteur NLU
ADRESSE : Ville, numéro de bâtiment et voie

Cette entité est en anglais uniquement.

500 Smith Road (Smithville)
  • city

  • houseNumber

  • road

{
"road": "smith road",
"city": "smithville",
"entityName": "ADDRESS",
"houseNumber": "500",
"originalString": "500 Smith Road, Smithville"
}
CURRENCY Représentation monétaire. Vous pouvez lever l'ambiguïté des devises $ et ¥ en fonction des environnements linguistiques détectés de l'utilisateur.
  • $67

  • 75 dollars

  • amount

  • currency

  • totalCurrency

"CURRENCY": [ { "amount": 550, "currency": "usd", "totalCurrency": "550.0 usd", "entityName": "CURRENCY" } ]
DATE Date absolue ou relative.

Cette entité est en phase d'abandon dans la version 22.08 et n'est pas disponible pour les briques créées sur cette version de la plate-forme. Pour les briques créées à l'aide de versions antérieures, envisagez plutôt d'utiliser l'entité DATE_TIME.

Remarque : lorsque la saisie utilisateur nomme un jour, mais ne fournit aucun autre contexte temporel, le système considère cette date dans le futur. Par exemple, "Wednesday " dans les entrées suivantes renvoie au prochain mercredi et non au mercredi en cours ou au mercredi passé.
  • Réservez-moi un billet pour mercredi.

  • Je veux déposer une note de frais pour mercredi.

Vous pouvez remplacer ce comportement en appliquant une règle de résolution d'ambiguïté. Alors que l'entité DATE est résolue en format de plusieurs paramètres régionaux pris en charge, vous pouvez choisir d'ignorer le format des paramètres régionaux détectés et d'imposer un format par défaut et un temps (futur, passé, le plus proche, etc.) en appliquant une règle de résolution d'ambiguïté.
  • 9 novembre 2016

  • aujourd'hui

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 Extrait diverses informations temporelles à l'aide des sous-types suivants : une date, une heure, une date et heure, un événement récurrent, un intervalle ou une durée.
  • Date : 1er janvier 2023
  • Heure : 10h
  • Date et heure : 1er janvier 2023 à 10 heures
  • Intervalle : 1er janvier 2023 à partir de 10 heures pour 2 heures
  • Durée : 2 heures
  Pour "Planifier une réunion pour chaque mardi de 10h00 à 1h à partir du 23 janvier 2022 et se terminant le 23 février" :
   "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"
            }
          ]
        }
      ]
    }
  • Interprétation du 23 février selon les règles de résolution des temps. Comme le cas d'emploi concerne la planification d'une réunion, la date sera toujours interprétée comme étant prospective.
    "movableDateValue": "--02-23",
                  "relativeRepresentation": "--02-23"
  • "value": "P1W" : représentation standard d'échange ISO 8601 hebdomadaire/une fois par semaine, où P est le désigreur de durée et W est le repère de semaine.
DURATION Temps écoulé entre les deux extrémités d'un intervalle de temps

Cette entité est en phase d'abandon dans la version 22.08 et n'est pas disponible pour les briques créées sur cette version de la plate-forme. Pour les briques créées à l'aide de versions antérieures, envisagez plutôt d'utiliser l'entité DATE_TIME.

  • 4 ans

  • deux semaines

  • startDate

  • endDate

[ { "originalString": "2 hours", "bagItem": "Meeting:DateTime", "subType": "DURATION", "timeZone": "UTC", "entityName": "DATE_TIME", "value": "PT2H" } ] } ]
EMAIL Adresse électronique. Le système NLU peut reconnaître les adresses électroniques présentant une combinaison des éléments suivants :
  • partie située avant le symbole arobase (@) :
    • lettres majuscules et minuscules de l'alphabet latin (A-Z et a-z)
    • chiffres (0-9)
    • caractères imprimables suivants : !#$%&'*+-/=?^_`{}~
    • point (.)
  • partie située après le symbole arobase (@) :
    • lettres majuscules et minuscules de l'alphabet latin (A-Z et a-z)
    • chiffres (0-9)
    • tiret (-)
ragnar.smith@example.com    
EMPLACEMENT Extrait les villes, les états et les pays de l'entrée utilisateur.
  • 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" } ]
NUMBER Correspond aux nombres ordinaux et cardinaux. Vous pouvez résoudre une entité en tant que format propre à l'environnement local (regroupement de milliers par étapes complètes, virgules, espaces, etc.).
  • 1st

  • prénom

  • 1

  • une

   
PERSON Reconnaît une chaîne comme le nom d'une personne.

L'entité PERSON ne peut pas mettre en correspondance les noms qui sont également des lieux (par exemple, Virginia North).

Pour développer l'entité PERSON afin qu'elle corresponde toujours aux personnes de votre organisation, vous pouvez l'associer à une entité de liste de valeurs.
  • John J. Jones
  • Ashok Kumar
  • Gabriele D'Annunzio
  • Jones, David
  • Cantiflas
  • Zhang San
  • Virginie Jones
name "PERSON": [ { "originalString": "John J. Johnson", "name": "john j. johnson", "entityName": "PERSON" } ]
NUMÉRO DE TÉLÉPHONE Numéro de téléphone : le moteur NLU reconnaît les numéros de téléphone comportant au moins sept chiffres (il ne peut pas reconnaître les numéros comportant moins de chiffres). Tous les indicatifs de pays doivent être précédés d'un signe plus (+), à l'exception de celui des Etats-Unis (où le signe plus est facultatif). Les différentes parties du numéro de téléphone (indicatif régional, préfixe et numéro de ligne) peuvent être séparées par des points (.), des tirets (-) ou des espaces. Si plusieurs numéros de téléphone sont saisis dans la saisie utilisateur, le moteur NLU peut les reconnaître s'ils sont séparés par des virgules. Il ne peut pas reconnaître plusieurs numéros de téléphone s'ils sont séparés par des points, des tirets ou des espaces.
  • (650)-555-5555

  • 16 505 555 555

  • +61,3

  • phoneNumber

  • completeNumber

{ "phone_number":"(650)-555-5555", "complete_number":"(650)-555-5555", "entityName":"PHONE_NUMBER" }
TIME Heure précise.

Cette entité est en phase d'abandon dans la version 22.08 et n'est pas disponible pour les briques créées sur cette version de la plate-forme. Pour les briques créées à l'aide de versions antérieures, envisagez plutôt d'utiliser l'entité DATE_TIME.

Dans certains cas, par exemple, lorsque l'entrée est ambiguë, vous pouvez avoir besoin de l'entité TIME pour résoudre l'entrée de manière cohérente en tant qu'heure passée ou future, ou pour l'approcher de l'heure la plus proche. Pour ce faire, appliquez une règle de résolution d'ambiguïté.

2 h 30
  • 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 : cette entité peut extraire des adresses IPv4, des URL Web, des liens profonds (http://example.com/path/page), des chemins de fichier et des URI mailto. Si la saisie utilisateur indique des informations d'identification de connexion, elle doit également inclure le protocole. Dans le cas contraire, le protocole n'est pas requis. http://example.com
  • protocol

  • domain

  • fullPath

{"protocol":"http","domain":"example.com",}
YES_NO Détecte une occurrence "yes" ou "no".     "YES_NO": [ { "beginOffset": 0, "endOffset": 4, "originalString": "Yeah", "yesno": "YES", "entityName": "YES_NO", "type": "YES_NO" } ]

Entité DATE_TIME

Il existe de nombreuses façons dont votre brique peut avoir besoin d'obtenir des entrées de date et d'heure. Par exemple, vous pouvez avoir besoin d'une date ou heure simple, d'une date et d'une heure, ou d'une période ponctuelle ou récurrente. Vous pouvez utiliser l'entité DATE_TIME pour collecter des informations pour tous ces scénarios.

Avec l'entité DATE_TIME, vous choisissez un sous-type spécifique pour définir les informations à collecter. Le tableau suivant indique le sous-type à utiliser pour chaque scénario possible et fournit des liens vers des informations sur les attributs de chaque sous-type.

scénario DATE_TIME Sous-type Référence
Une date. Date. Attributs de sous-type DATE
Un temps. Durée Attributs de sous-type TIME
Une date et une heure. Date et heure Attributs de sous-type DATETIME
Une période de temps. Par exemple, 1 heure ou 4 jours. Durée Attributs de sous-type DURATION
Occurrence unique d'une période définie par une date de début et une date de fin ou par une date et une heure de début et de fin. Intervalle Attributs de sous-type INTERVAL
Période récurrente régulière définie par, par exemple, le début et la fin de la première période, l'intervalle entre les périodes récurrentes et le moment où les périodes cessent récurrentes. Récurrent Attributs de sous-type RECURRING
Remarque

L'entité DATE_TIME remplace les entités système DATE, TIME, DURATION et SET, qui sont en phase d'abandon et ne sont pas disponibles dans les briques créées dans la version 22.08 et les versions ultérieures. Les briques existantes mises à niveau vers la version 22.08 prendront en charge ces entités système obsolètes, bien qu'il puisse y avoir des changements de comportement.
Vous pouvez utiliser les sous-types Date, Heure et Durée en tant qu'entités autonomes dans le flux de dialogue (où vous déclarez des variables distinctes pour chaque type), mais vous ne pouvez utiliser les sous-types Intervalle et Récurrent qu'en les incorporant dans une entité de conteneur composite.
Remarque

Nous recommandons de gérer tous les sous-types DATE_TIME au sein d'une entité de conteneur composite.

En mode boîte de dialogue visuelle, référencez les sous-types DATE_TIME à l'aide des états Résoudre l'entité et Résoudre l'entité déclarative.

Remarque

Si vous utilisez les sous-types Date, Heure et Durée en tant qu'entités autonomes dans un flux de dialogue basé sur YAML, indiquez le sous-type à l'aide de la notation par points : DATE_TIME.DATE, DATE_TIME.TIME, DATE_TIME.DURATION et pour SET, DATE_TIME.RECURRING. Par exemple :
context:
  variables:
    iResult: "nlpresult"
    Startdate: "DATE_TIME.DATE"
    duration: "DATE_TIME.DURATION" 
Dans le noeud states, vous référencez ces variables à l'aide d'un composant System.ResolveEntities.
Les valeurs DATE_TIME sont représentées au format ISO 8601. Pour une sortie conviviale, utilisez Apache FreeMarker .xs intégré. Par exemple, le sous-type de temps est extrait à l'aide de .value.value?time.xs?string['hh:mm a'] dans la référence de groupe de ressources suivante :
${rb('pizzaDeliveryMessage','time',deliveryTime.value.value?time.xs?string['hh:mm a'])}
Le premier élément value obtient le contenu de la variable en tant qu'objet. Le deuxième élément value est un attribut de l'objet DATE_TIME qui contient la valeur de temps.

Attributs pour chaque sous-type DATE_TIME

Voici les attributs de chaque sous-type DATE_TIME.

Comme toutes les autres entités système, les sous-types incluent également les propriétés beginOffset, endOffset et originalString.

Attributs de sous-type DATE

Le sous-type DATE contient les attributs suivants concernant une DATE spécifique :

Attribut Type Explication
entityName Chaîne DATE_TIME
month Entier

Lorsque DATE est un attribut du sous-type RECURRING et que la chaîne d'origine inclut le nom d'un mois, par exemple "chaque lundi de juillet", cela représente la représentation numérique ("7" dans cet exemple) de la valeur de mois explicitement spécifiée.

movableDateValue Chaîne

Lorsque DATE est un attribut de RECURRING et que la DATE à créneaux ne représente pas une DATE spécifique (c'est-à-dire une DATE mobile telle que le 4 juillet), il s'agit de la valeur de DATE mobile explicitement spécifiée utilisée par l'attribut DATE du sous-type RECURRING pour différencier la DATE mobile résolue de la DATE non mobile résolue. Par exemple, si la date insérée est le 4 juillet, cette valeur est --07-04.

ordinal Entier

Lorsque DATE est un attribut du sous-type RECURRING, et que la chaîne d'origine spécifie une valeur ordinale, telle que la première dans "chaque premier lundi", cela représente la valeur numérique de l'ordinal (dans cet exemple, "1").

ordinalReference Enumération

Lorsque DATE est un attribut du sous-type RECURRING et que la chaîne d'origine inclut un ordinal qualifié par le nom d'un mois, tel que Juillet dans "chaque premier lundi de juillet", cela représente le qualificatif explicitement spécifié ("M" pour le mois).

subType Chaîne DATE
timezone Chaîne Le décalage horaire. Exemple : +07:00.
type Chaîne DATE_TIME
value Chaîne Valeur résolue au format ISO 8601. Par exemple 2022-08-05.
weekday Enumération

Lorsque DATE est un attribut du sous-type RECURRING et que la chaîne d'origine inclut le nom d'un jour, tel que "every Monday", cela représente la valeur de jour de semaine explicitement spécifiée au format iCalendar, tel que MO, TU et WE.

year Entier

Lorsque DATE est un attribut du sous-type RECURRING et que la chaîne d'origine inclut l'année, par exemple "every Monday of 2023", il s'agit de la valeur d'année explicitement spécifiée.

Voici un exemple de réponse NLU pour le sous-type DATE :

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

Attributs de sous-type TIME

Le sous-type TIME contient les attributs suivants concernant une heure spécifique :

Attribut Type Explication
entityName Chaîne DATE_TIME
subType Chaîne TIME
timezone Chaîne Le décalage horaire. Exemple : +07:00.
type Chaîne DATE_TIME
value Chaîne Valeur résolue au format ISO 8601. Par exemple 12:00:00.

Voici un exemple de réponse NLU pour 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
          }

Attributs de sous-type DATETIME

Le sous-type DATETIME contient les attributs suivants concernant une date et une heure spécifiques :

Attribut Type Explication
date DATE Cet objet contient les attributs décrits dans Attributs de sous-type de DATE.
entityName Chaîne DATE_TIME
subType Chaîne DATETIME
time TIME Cet objet contient les attributs décrits dans Attributs de sous-type de temps.

Voici un exemple de réponse NLU pour le sous-type 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
            }
          }

Attributs de sous-type DURATION

Le sous-type DURATION contient les attributs suivants concernant une durée de jour ou d'heure, par exemple 1 semaine :

Attribut Type Explication
entityName Chaîne DATE_TIME
subType Chaîne DURATION
timezone Chaîne Le décalage horaire. Exemple : +07:00.
type Chaîne DATE_TIME
value Chaîne Durée au format ISO 8601. Exemples : PT1H pour 1 heure, P4D pour 4 jours, P1W pour 1 semaine, P2M pour 2 mois.

Voici un exemple de réponse NLU pour le sous-type DURATION :

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

Attributs de sous-type INTERVAL

Le sous-type INTERVAL contient ces attributs sur une période définie par une date et une heure de début et de fin, ou par une date, une heure de début et une longueur, par exemple 2 heures.

Attribut Type Explication
duration ENTITÉ Cet objet contient les attributs décrits dans la section Attributs de sous-type de durée.
endDate DATE Cet objet contient les attributs décrits dans Attributs de sous-type de DATE.

Inclus pour les types d'invite Date et heure et Date seule.

endTime TIME Cet objet contient les attributs décrits dans Attributs de sous-type de temps.

Inclus pour les types d'invite Date et heure uniquement.

entityName Chaîne DATE_TIME
startDate DATE Cet objet contient les attributs décrits dans Attributs de sous-type de DATE.

Inclus pour les types d'invite Date et heure et Date seule.

startTime TIME Cet objet contient les attributs décrits dans Attributs de sous-type de temps.

Inclus pour les types d'invite Date et heure uniquement.

subType Chaîne INTERVAL

Voici un exemple de réponse NLU pour l'entité INTERVAL avec le type d'invite Date et heure :

          "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
            }
          }

Attributs de sous-type RECURRING

Le sous-type RECURRING contient les attributs suivants relatifs à une période récurrente :

Attribut Type Explication
entityName Chaîne DATE_TIME
recurrenceDates Tableau de DATE Inclus lorsque plusieurs dates récurrentes sont indiquées. Cet objet contient un tableau d'objets DATE avec les attributs décrits dans Attributs de sous-type de DATE.
recurrenceFrequency DURATION Cet objet contient les attributs décrits dans la section Attributs de sous-type de durée.
recurrenceTimes Tableau de temps Inclus lorsque plusieurs heures récurrentes sont données. Cet objet contient un tableau d'objets TIME avec les attributs décrits dans Attributs de sous-type de temps.
recurrenceUntil INTERVALLE Spécifie les limites de la répétition. En général, seule la date de fin est indiquée. Cet objet contient les attributs décrits dans Attributs de sous-type INTERVAL.
startDate DATE Cet objet contient les attributs décrits dans Attributs de sous-type de DATE.

Pour les entités RECURRING, l'objet DATE peut inclure les attributs month. movevableDateValue, ordinal, ordinalReference, weekday et year.

Inclus pour le type d'invite Date uniquement.

startDateTime DATETIME Cet objet contient les attributs décrits dans la section DATETIME Subtype Attributes.

Pour les entités RECURRING, le sous-objet DATE de DATETIME peut inclure les attributs month. movevableDateValue, ordinal, ordinalReference, weekday et year.

Inclus pour le type d'invite Date et heure.

startInterval INTERVALLE Cet objet contient les attributs décrits dans Attributs de sous-type INTERVAL.
startTime TIME Cet objet contient les attributs décrits dans Attributs de sous-type de temps.

Inclus pour le type d'invite Heure uniquement.

subType Chaîne RECURRING

Voici un exemple de réponse NLU pour le sous-type RECURRING avec le type d'invite Date et heure :

          "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"
            }
          }

Règles de résolution d'ambiguïté pour les correspondances de date et d'heure

Les utilisateurs peuvent saisir des dates partielles sous-entendues. Par exemple :
  • "Planifier une réunion pour lundi"
  • "Créer une note de frais pour le 11/7"
  • "Créer une note de frais pour le 11ème"
Certaines situations, comme la planification d'une réunion, impliquent une heure future. D'autres, comme la création d'une note de frais, font référence à un certain temps dans le passé. Pour vous assurer que les sous-types Heure et Date de l'entité DATE_TIME peuvent résoudre les entrées ambiguës en tant qu'approximation passée, présente ou la plus proche, vous pouvez appliquer des règles de résolution d'ambiguïté. Pour définir le contexte temporel de la résolution temporelle, par exemple, cliquez sur l'entité DATE_TIME, puis appliquez une règle.
Remarque

Les règles de résolution d'ambiguïté ne valident pas la saisie utilisateur. Vous pouvez valider la saisie utilisateur avec un valideur personnalisé qui utilise Apache FreeMarker (ce qui n'est pas recommandé) ou dans un gestionnaire d'événements d'entité (ce qui est recommandé). Ce valideur renvoie false (échec de la validation) si une date passée est indiquée pour un cas d'utilisation prospectif (par exemple, un planificateur de réunion). Pour un cas d'utilisation rétroactif tel que les notes de frais, le valideur renvoie false si l'utilisateur saisit une date future.


Remarque

Si vous faites référence à la même entité avec au moins deux éléments dans le même conteneur composite, ou si au moins deux sacs composites font référence à la même entité et sont également associée à la même intention, effectuez une mise à niveau vers la version 21.12 pour vous assurer que les règles de résolution d'ambiguïté spécifiques à chaque référence d'entité sont gérées séparément et non remplacées par les règles définies pour une entité précédemment résolue.

Règles de résolution pour les correspondances avec le sous-type de date

La date correspond à la date UTC, et non à la date du serveur ni à la date du navigateur. Par exemple, "aujourd'hui" prononcé à 8 heures le 8 juillet à partir du fuseau horaire Hawaii-Aléoutien (UTC-10:00) est résolu en tant que 9 juillet.
Règle fonctionnement Exemples
Passé Résout l'entrée ambiguë en tant que jour le plus proche de la semaine dans le passé.
  • Si la variation inclut "Lundi" et que le jour en cours est également lundi, "Lundi" est résolu comme aujourd'hui.
  • Si la variation inclut "Lundi" et que le jour en cours est le mercredi, le "Lundi" est résolu comme le lundi précédent.
Futur Résout l'entrée ambiguë en tant que jour le plus proche dans le futur
  • Si la variation inclut "Lundi" et que le jour en cours est également lundi, "Lundi" est résolu comme aujourd'hui.
  • Si la variation inclut "Lundi" et que le jour en cours est mardi, "Lundi" est résolu en tant que lundi suivant.
  • Si la variation inclut "Mardi" et que le jour actuel est lundi, "Mardi" est résolu comme ce mardi.
Au plus proche Résout l'entrée ambiguë en tant que jour le plus proche.
  • Si la variation inclut "Lundi" et que le jour en cours est également lundi, le "Lundi" est résolu comme aujourd'hui. Si la variation inclut "Lundi" et que le jour en cours est mardi, "Lundi" est résolu comme hier.
  • Si la variation inclut "Lundi" et que le jour en cours est Dimanche, le "Lundi" est résolu comme demain.
Valeur par défaut Résout l'entrée ambiguë en tant que date future. Par exemple, si l'entrée inclut le mercredi, le jour est interprété comme le mercredi suivant et non comme le mercredi précédent ou le jour en cours (s'il s'agit d'un mercredi, c'est-à-dire).

Règles de résolution pour les correspondances avec le sous-type de temps

Règle fonctionnement Exemples
Passé Résout l'entrée à l'heure la plus proche dans le passé par rapport à l'heure actuelle dans le fuseau horaire UTC.
  • Si la variation inclut "9 h" et que l'heure actuelle est 10 h 00, l'heure est résolue à 9 h 00 aujourd'hui.
  • Si la variation inclut "9 h" et que l'heure actuelle est 10 h 00, l'heure est résolue comme 9 h 00 hier.
  • Si la variation inclut "9" et que l'heure actuelle est 10:00, l'heure est résolue comme 9:00 aujourd'hui.
Futur Résout l'entrée à l'heure la plus proche dans le futur par rapport à l'heure actuelle dans le fuseau horaire UTC.
  • Si la variation inclut "9 h" et que l'heure actuelle est 10 h 00, l'heure est résolue comme 9 h 00 demain.
  • Si la variation inclut "9 h" et que l'heure actuelle est 10 h 00, l'heure est résolue comme 9 h aujourd'hui.
  • Si la variation inclut "9" et que l'heure actuelle est 10 h 00, l'heure est résolue comme 9 h 00 aujourd'hui.
Au plus proche Résout l'entrée en tant qu'heure la plus proche par rapport à l'heure actuelle dans le fuseau horaire UTC.
  • Si la variation inclut "9 h" et que l'heure actuelle est 10 h 00, l'heure est résolue comme aujourd'hui à 9 h 00.
  • Si la variation inclut "9 h" et que l'heure actuelle est 10 h 00, l'heure est résolue comme 9 h 00 aujourd'hui.
  • Si la variation inclut "9" et que l'heure actuelle est 10:00, l'heure est résolue comme 9:00 aujourd'hui.
  • Si la variation inclut "10:00" et que l'heure actuelle est 1:00, l'heure est résolue comme 10:00 hier.
Valeur par défaut Résout l'entrée en fonction de la méthode utilisée dans les versions antérieures à la version 21.06 d'Oracle Digital Assistant.
  • Si la variation inclut "9 h" et que l'heure actuelle est 10 h, l'heure est résolue comme 9 h aujourd'hui.
  • Si la variation inclut "9 h" et que l'heure actuelle est 10 h, l'heure est résolue comme 9 h aujourd'hui.
  • Si la variation inclut "9" et que l'heure actuelle est 10 heures, l'heure est résolue à 9 heures aujourd'hui.
  • Si la variation inclut "1:00 am" et que l'heure actuelle est 2 h, l'heure est résolue comme 1 h demain.

Résolution d'entité basée sur les paramètres régionaux

Vous pouvez activer les entités CURRENCY, DATE et NUMBER pour la résolution en fonction des paramètres régionaux de l'utilisateur en activant Considérer les paramètres régionaux de l'utilisateur final.

Selon l'entité, cette option a différentes applications :
  • DATE se résout AU format spécifique de l'environnement linguistique : il peut résoudre le 11/7 comme le 7 novembre pour en-US ou le 11 juillet pour en-AU, par exemple. Pour les environnements linguistiques non pris en charge, vous pouvez appliquer un format et un contexte temporel, comme passé ou futur.
  • NUMBER correspond au format numérique propre au pays : virgule, point ou espace utilisé pour séparer les groupes de milliers et le séparateur décimal avec ou sans espace fin qui sépare la partie fractionnaire du nombre. Par exemple, le Royaume-Uni et les États-Unis utilisent tous deux une virgule pour séparer les groupes de milliers.
    Remarque

    Lorsque l'option Considérer les paramètres régionaux de l'utilisateur final est désactivée, l'entité NUMBER est résolue en tant que COMMA_DOT (1 000,00).
  • CURRENCY utilise les paramètres régionaux pour obtenir une devise $ ou ¥ spécifique. Lorsqu'aucun paramètre régional n'est détecté, vous pouvez définir l'entrée à résoudre en tant que devise $ ou ¥ définie par la règle de résolution d'ambiguïté.
Remarque

Si vous faites référence à la même entité avec deux éléments supplémentaires dans le même conteneur composite, ou si plusieurs sacs composites font référence à la même entité et sont également associés avec la même intention, effectuez une mise à niveau vers la version 21.12 pour vous assurer que la personnalisation des paramètres régionaux propre à chaque référence d'entité est gérée séparément et non écrasée par la configuration des paramètres régionaux d'une entité précédemment résolue.

Résolution de date basée sur les paramètres régionaux

Lorsque les paramètres régionaux de l'utilisateur ne peuvent pas être détectés, la date est résolue en tant que format de date par défaut sélectionné.
Pour cette langue... Cette entrée... ... Résout en tant que... Format (séquence date-mois)
Etats-Unis (en_US) 11/7 Novembre 7 MONTH_DAY
Grande-Bretagne (en_GB) 11/7 Juillet 11 DAY_MONTH
Canada - Anglais (en_CA) 11/7 Novembre 7 MONTH_DAY
Canada - Français (fr_CA) 11/7 Novembre 7 MONTH_DAY
Australie (en_AU) 11/7 Juillet 11 DAY_MONTH
Mexique (es_MX) 11/7 Juillet 11 DAY_MONTH
Singapour (zh_SG) 11/7 Juillet 11 DAY_MONTH
Etats-Unis (ar_AE) 11/7 Novembre 7 MONTH_DAY
Arabe (ar_AR) 11/7 Novembre 7 MONTH_DAY
France (fr_FR) 11/7 Juillet 11 DAY_MONTH
Pays-Bas (nl_NL) 11/7 Juillet 11 DAY_MONTH
Allemagne (de_DE) 11/7 Juillet 11 DAY_MONTH
Italie (it_IT) 11/7 Juillet 11 DAY_MONTH
Portugal (pt_PT) 11/7 Juillet 11 DAY_MONTH
Espagne (en_ES) 11/7 Juillet 11 DAY_MONTH
Chine (zh_CN) 11/7 Novembre 7 MONTH_DAY
Japon (ja_JP) 11/7 Novembre 7 MONTH_DAY

Résolution des devises basée sur les paramètres régionaux

Pour cette langue... Cette entrée... ... Résout en tant que (ambiguïté en dollars) Cette entrée... ... Résout comme (ambiguïté de Yen)
Etats-Unis (en_US) 20 dollars 20.0 USD 20 ¥ 20,0 JPY
Grande-Bretagne (en_GB) 20 dollars 20.0 USD 20 ¥ 20,0 JPY
Canada - Anglais (en_CA) 20 dollars 20.0 CAD 20 ¥ 20,0 JPY
Canada - Français (fr_CA) 20 dollars 20.0 CAD 20 ¥ 20,0 JPY
Australie (en_AU) 20 dollars 20,0 AUD 20 ¥ 20,0 JPY
Mexique (es_MX) 20 dollars 20,0 MILLIONS 20 ¥ 20,0 CM
Singapour (zh_SG) 20 dollars 20,0 SGD 20 ¥ 20,0 JPY
Etats-Unis (ar_AE) 20 dollars 20.0 USD 20 ¥ 20,0 JPY
Arabe (ar_AR) 20 dollars 20.0 USD 20 ¥ 20,0 JPY
France (fr_FR) 20 dollars 20.0 USD 20 ¥ 20,0 JPY
Pays-Bas (nl_NL) 20 dollars 20.0 USD 20 ¥ 20,0 JPY
Allemagne (de_DE) 20 dollars 20.0 USD 20 ¥ 20,0 JPY
Italie (it_IT) 20 dollars 20.0 USD 20 ¥ 20,0 JPY
Portugal (pt_PT) 20 dollars 20.0 USD 20 ¥ 20,0 JPY
Espagne (en_ES) 20 dollars 20.0 USD 20 ¥ 20,0 JPY
Chine (zh_CN) 20 dollars 20.0 USD 20 ¥ 20,0 CM
Japon (ja_JP) 20 dollars 20.0 USD 20 ¥ 20,0 JPY

Résolution des nombres basée sur les paramètres régionaux

Lorsque l'option Considérer les paramètres régionaux de l'utilisateur final est désactivée, le format numérique est défini par défaut sur COMMA_DOT (1 000,00).
Lorsque l'environnement linguistique est activé pour... ... Le format reconnu est... Exemple
Etats-Unis (en_US) COMMA_DOT 1 000 000
Grande-Bretagne (en_GB) COMMA_DOT 1 000 000
Canada - Anglais (en_CA) COMMA_DOT 1 000 000
Canada - Français (fr_CA) DOT_COMMA 1
Australie (en_AU) COMMA_DOT 1 000 000
Mexique (es_MX) COMMA_DOT 1 000 000
Singapour (zh_SG) COMMA_DOT 1 000 000
Etats-Unis (ar_AE) DOT_COMMA 1
Arabe (ar_AR) DOT_COMMA 1
France (fr_FR) SPACE_COMMA 1 0 0
Pays-Bas (nl_NL) DOT_COMMA 1
Allemagne (de_DE) DOT_COMMA 1
Italie (it_IT) DOT_COMMA 1
Portugal (pt_PT) COMMA_DOT 1 000 000
Espagne (en_ES) DOT_COMMA 1
Chine (zh_CN) COMMA_DOT 1 000 000
Japon (ja_JP) COMMA_DOT 1 000 000