Resolver entidades para formatos padrão

Uma resolução é um formato padrão de uma entidade. As entidades podem ser expressas em várias formas, e as resoluções fornecem formatos previsíveis padrão para tipos quantificáveis comuns. Por exemplo, "oitenta" e "80" devem ambos ser resolvidos para o inteiro 80.

Você pode usar resoluções NER para implementar ações ou recuperar mais informações. Por exemplo, seu serviço pode extrair entidades datetime para extrair datas e horas que serão fornecidas a um sistema de agendamento de reunião.

Importante

A partir da versão 2023-04-15-preview, o recurso de resolução de entidade é substituído por metadados de entidade

Observação

As respostas de resolução da entidade só têm suporte a partir de api-version=2022-10-01-preview e "modelVersion": "2022-10-01-preview".

Este artigo documenta os objetos de resolução retornados para cada categoria ou subcategoria de entidade.

Idade

Exemplos: "10 anos de idade", "23 meses de idade", "60 anos de idade".

"resolutions": [
                    {
                        "resolutionKind": "AgeResolution",
                        "unit": "Year",
                        "value": 10
                    }
                ]

Valores possíveis para a “unidade”:

  • Ano
  • Mês
  • Semana
  • Dia

Moeda

Exemplos: "30 libras egípcias", "77 USD"

"resolutions": [
                    {
                        "resolutionKind": "CurrencyResolution",
                        "unit": "Egyptian pound",
                        "ISO4217": "EGP",
                        "value": 30
                    }
                ]

Valores possíveis para "unidade" e "ISO4217":

Datetime

Datetime inclui vários subtipos diferentes que retornam objetos de resposta diferentes.

Data

Dias específicos.

Exemplos: "1º de janeiro de 1995", "12 de abril", "7 de outubro de 2022", "amanhã"

"resolutions": [
                    {
                        "resolutionKind": "DateTimeResolution",
                        "dateTimeSubKind": "Date",
                        "timex": "1995-01-01",
                        "value": "1995-01-01"
                    }
                ]

Sempre que uma data ambígua é fornecida, você recebe opções diferentes para a resolução dela. Por exemplo, "12 de abril" pode se referir a qualquer ano. A resolução fornece este ano e o próximo como opções. O valor XXXX de timex indica que nenhum ano foi especificado na consulta.

"resolutions": [
                    {
                        "resolutionKind": "DateTimeResolution",
                        "dateTimeSubKind": "Date",
                        "timex": "XXXX-04-12",
                        "value": "2022-04-12"
                    },
                    {
                        "resolutionKind": "DateTimeResolution",
                        "dateTimeSubKind": "Date",
                        "timex": "XXXX-04-12",
                        "value": "2023-04-12"
                    }
                ]

A ambiguidade pode ocorrer mesmo para um determinado dia da semana. Por exemplo, "segunda-feira" pode se referir à segunda-feira passada ou a esta segunda-feira. Novamente, o valor timex indica que nenhum ano ou mês foi especificado e usa um dia do identificador de semana (W) para indicar o primeiro dia da semana.

"resolutions": [
                    {
                        "resolutionKind": "DateTimeResolution",
                        "dateTimeSubKind": "Date",
                        "timex": "XXXX-WXX-1",
                        "value": "2022-10-03"
                    },
                    {
                        "resolutionKind": "DateTimeResolution",
                        "dateTimeSubKind": "Date",
                        "timex": "XXXX-WXX-1",
                        "value": "2022-10-10"
                    }
                ]

Hora

Horários específicos.

Exemplos: "9:39:33 AM", "sete AM", "20:03"

"resolutions": [
                    {
                        "resolutionKind": "DateTimeResolution",
                        "dateTimeSubKind": "Time",
                        "timex": "T09:39:33",
                        "value": "09:39:33"
                    }
                ]

Datetime

Combinações de data e hora específicas.

Exemplos: "amanhã às 18:00", "3 de janeiro às 20:00", "1º de novembro às 19:30"

"resolutions": [
                    {
                        "resolutionKind": "DateTimeResolution",
                        "dateTimeSubKind": "DateTime",
                        "timex": "2022-10-07T18",
                        "value": "2022-10-07 18:00:00"
                    }
                ]

Assim como as datas, você pode ter entidades de datetime ambíguas. Por exemplo, "3 de maio ao meio-dia" pode se referir a qualquer ano. A resolução fornece este ano e o próximo como opções. O valor timexXXXX indica que nenhum ano foi especificado.

"resolutions": [
                    {
                        "resolutionKind": "DateTimeResolution",
                        "dateTimeSubKind": "DateTime",
                        "timex": "XXXX-05-03T12",
                        "value": "2022-05-03 12:00:00"
                    },
                    {
                        "resolutionKind": "DateTimeResolution",
                        "dateTimeSubKind": "DateTime",
                        "timex": "XXXX-05-03T12",
                        "value": "2023-05-03 12:00:00"
                    }
                ]

Intervalos de datetime

Um intervalo de datetime é um período com uma data, hora ou datetime de início e término.

Exemplos: "de 3 de janeiro às 6:00 a 25 de abril às 20:00 de 2022", "entre a segunda a quinta-feira", "junho", "no fim de semana"

O parâmetro "duration" indica o tempo transcorrido em segundos (S), minutos (M), horas (H) ou dias (D). Esse parâmetro só é retornado quando um datetime de início e término explícito está na consulta. "Semana que vem" retornaria apenas com os parâmetros "begin" e "end" para a semana.

"resolutions": [
                    {
                        "resolutionKind": "TemporalSpanResolution",
                        "duration": "PT2702H",
                        "begin": "2022-01-03 06:00:00",
                        "end": "2022-04-25 20:00:00"
                    }
                ]

Definir

Um conjunto é um período de datetime recorrente. Os conjuntos não resolvem para valores exatos, pois não indicam uma data exata.

Exemplos: "todas as segundas-feiras às 18:00", "todas as quintas-feiras", "todos os fins de semana"

Para "todas as segundas-feiras às 18:00", o valor timex não indica nenhum ano especificado com o XXXX inicial, e em seguida indica todas as segundas-feiras até WXX-1 para determinar o primeiro dia de cada semana e, finalmente, t18 para indicar 18:00.

"resolutions": [
                    {
                        "resolutionKind": "DateTimeResolution",
                        "dateTimeSubKind": "Set",
                        "timex": "XXXX-WXX-1T18",
                        "value": "not resolved"
                    }
                ]

Dimensões

Exemplos: "24 km/h", "44 metros quadrados", "sessenta e seis quilobytes"

"resolutions": [
                    {
                        "resolutionKind": "SpeedResolution",
                        "unit": "KilometersPerHour",
                        "value": 24
                    }
                ]

Valores possíveis para "resolutionKind" e seus respectivos valores de "unidade":

  • AreaResolution:

    • SquareKilometer
    • SquareHectometer
    • SquareDecameter
    • SquareMeter
    • SquareDecimeter
    • SquareCentimeter
    • SquareMillimeter
    • SquareInch
    • SquareFoot
    • SquareMile
    • SquareYard
    • Acre
  • InformationResolution:

    • bit
    • Kilobit
    • Megabit
    • Gigabit
    • Terabit
    • Petabit
    • Byte
    • Quilobyte
    • Megabyte
    • Gigabyte
    • Terabyte
    • Petabyte
  • LengthResolution:

    • Quilômetro
    • Hectômetro
    • Decâmetro
    • Medidor
    • Decímetro
    • Centímetro
    • Milímetro
    • Micrometer
    • Nanômetro
    • Picômetro
    • Milha
    • Jarda
    • Polegada
    • Ano-luz
    • Pt
  • SpeedResolution:

    • MetersPerSecond
    • KilometersPerHour
    • KilometersPerMinute
    • KilometersPerSecond
    • MilesPerHour
    • Knot
    • FootPerSecond
    • FootPerMinute
    • YardsPerMinute
    • YardsPerSecond
    • MetersPerMillisecond
    • CentimetersPerMillisecond
    • KilometersPerMillisecond
  • VolumeResolution:

    • CubicMeter
    • CubicCentimeter
    • CubicMillimiter
    • Hectoliter
    • Decaliter
    • Liter
    • Deciliter
    • Centiliter
    • Milliliter
    • CubicYard
    • CubicInch
    • CubicFoot
    • CubicMile
    • FluidOunce
    • Teaspoon
    • Tablespoon
    • Pint
    • Quart
    • Cup
    • Gill
    • Fixar
    • FluidDram
    • Barrel
    • Minim
    • Cord
    • Peck
    • Bushel
    • Hogshead
  • WeightResolution:

    • Quilograma
    • Grama
    • Miligrama
    • Micrograma
    • Gallon
    • MetricTon
    • Tonelada
    • Libra
    • Onça
    • Grão
    • Peso-centavo
    • LongTonBritish
    • ShortTonUS
    • ShortHundredweightUS
    • Stone
    • Dracma

Número

Exemplos: "27", "cento e três", "38,5", "2/3", "33%"

"resolutions": [
                    {
                        "resolutionKind": "NumberResolution",
                        "numberKind": "Integer",
                        "value": 27
                    }
                ]

Valores possíveis para "numberKind":

  • Integer
  • Decimal
  • Fraction
  • Energia
  • Porcentagem

Ordinal

Exemplos: "3º", "primeiro", "último"

"resolutions": [
                    {
                        "resolutionKind": "OrdinalResolution",
                        "offset": "3",
                        "relativeTo": "Start",
                        "value": "3"
                    }
                ]

Valores possíveis para "relativeTo":

  • Iniciar
  • End

Temperatura

Exemplos: "88 graus fahrenheit", "23 graus celsius"

"resolutions": [
                    {
                        "resolutionKind": "TemperatureResolution",
                        "unit": "Fahrenheit",
                        "value": 88
                    }
                ]

Valores possíveis para a “unidade”:

  • Celsius
  • Fahrenheit
  • Kelvin
  • Rankine