duckling/Duckling/Time/PT/Corpus.hs
Julien Odent 305358b2f7 Time/PT: don't parse 'ter'
Summary:
`ter` also means `to have`, which is very common.
`ter` is a very rare form for `Tuesday`, only used in calendar-like contexts

Reviewed By: blandinw

Differential Revision: D6066506

fbshipit-source-id: c8cd231
2017-10-16 12:04:25 -07:00

480 lines
16 KiB
Haskell

-- Copyright (c) 2016-present, Facebook, Inc.
-- All rights reserved.
--
-- This source code is licensed under the BSD-style license found in the
-- LICENSE file in the root directory of this source tree. An additional grant
-- of patent rights can be found in the PATENTS file in the same directory.
{-# LANGUAGE OverloadedStrings #-}
module Duckling.Time.PT.Corpus
( corpus
, negativeCorpus
) where
import Data.String
import Prelude
import Duckling.Locale
import Duckling.Resolve
import Duckling.Testing.Types hiding (examples)
import Duckling.Time.Corpus
import Duckling.Time.Types hiding (Month)
import Duckling.TimeGrain.Types hiding (add)
corpus :: Corpus
corpus = (testContext {locale = makeLocale PT Nothing}, allExamples)
negativeCorpus :: NegativeCorpus
negativeCorpus = (testContext {locale = makeLocale PT Nothing}, examples)
where
examples =
[ "no 987"
, "um"
, "um dos"
, "um dos minutos"
, "ter"
]
allExamples :: [Example]
allExamples = concat
[ examples (datetime (2013, 2, 12, 4, 30, 0) Second)
[ "agora"
, ""
, "ja"
, "nesse instante"
, "neste instante"
]
, examples (datetime (2013, 2, 12, 0, 0, 0) Day)
[ "hoje"
, "nesse momento"
, "neste momento"
]
, examples (datetime (2013, 2, 11, 0, 0, 0) Day)
[ "ontem"
]
, examples (datetime (2013, 2, 10, 0, 0, 0) Day)
[ "antes de ontem"
, "anteontem"
]
, examples (datetime (2013, 2, 13, 0, 0, 0) Day)
[ "amanhã"
, "amanha"
]
, examples (datetime (2013, 2, 14, 0, 0, 0) Day)
[ "depois de amanhã"
, "depois de amanha"
]
, examples (datetime (2013, 2, 18, 0, 0, 0) Day)
[ "segunda-feira"
, "segunda feira"
, "segunda"
, "seg."
, "seg"
, "essa segunda-feira"
, "essa segunda feira"
, "essa segunda"
]
, examples (datetime (2013, 2, 18, 0, 0, 0) Day)
[ "segunda, 18 de fevereiro"
]
, examples (datetime (2013, 2, 19, 0, 0, 0) Day)
[ "terça-feira"
, "terça feira"
, "terça"
, "terca-feira"
, "terca feira"
, "terca"
, "ter."
]
, examples (datetime (2013, 2, 13, 0, 0, 0) Day)
[ "quarta-feira"
, "quarta feira"
, "quarta"
, "qua."
, "qua"
]
, examples (datetime (2013, 2, 14, 0, 0, 0) Day)
[ "quinta-feira"
, "quinta feira"
, "quinta"
, "qui."
, "qui"
]
, examples (datetime (2013, 2, 15, 0, 0, 0) Day)
[ "sexta-feira"
, "sexta feira"
, "sexta"
, "sex."
, "sex"
]
, examples (datetime (2013, 2, 16, 0, 0, 0) Day)
[ "sábado"
, "sabado"
, "sáb."
, "sáb"
, "sab."
, "sab"
]
, examples (datetime (2013, 2, 17, 0, 0, 0) Day)
[ "domingo"
, "dom."
, "dom"
]
, examples (datetime (2013, 5, 5, 0, 0, 0) Day)
[ "5 de maio"
, "cinco de maio"
]
, examples (datetime (2013, 5, 5, 0, 0, 0) Day)
[ "cinco de maio de 2013"
, "5 de maio de 2013"
, "5/5"
, "5/5/2013"
]
, examples (datetime (2013, 7, 4, 0, 0, 0) Day)
[ "4 de julho"
, "quatro de julho"
, "4/7"
, "4/7/2013"
]
, examples (datetime (2013, 3, 3, 0, 0, 0) Day)
[ "3 de março"
, "três de março"
, "tres de março"
, "3/3"
, "3/3/2013"
]
, examples (datetime (2013, 4, 5, 0, 0, 0) Day)
[ "5 de abril"
, "cinco de abril"
]
, examples (datetime (2013, 3, 1, 0, 0, 0) Day)
[ "1 de março"
, "primeiro de março"
, "um de março"
, "1o de março"
]
, examples (datetime (2013, 3, 1, 0, 0, 0) Day)
[ "1-3-2013"
, "1.3.2013"
, "1/3/2013"
]
, examples (datetime (2013, 2, 16, 0, 0, 0) Day)
[ "essa dia 16"
, "16 de fevereiro"
]
, examples (datetime (2013, 2, 17, 0, 0, 0) Day)
[ "este dia 17"
, "17 de fevereiro"
, "17/2"
, "no domingo"
, "no dia 17"
]
, examples (datetime (2013, 2, 20, 0, 0, 0) Day)
[ "esse dia 20"
, "20 de fevereiro"
, "20/2"
]
, examples (datetime (1974, 10, 31, 0, 0, 0) Day)
[ "31/10/1974"
, "31/10/74"
]
, examples (datetime (2013, 2, 19, 0, 0, 0) Day)
[ "próxima terça-feira"
, "próxima terça feira"
, "próxima terça"
, "proxima terça-feira"
, "proxima terça feira"
, "proxima terça"
]
, examples (datetime (2013, 2, 20, 0, 0, 0) Day)
[ "quarta que vem"
, "quarta da semana que vem"
, "quarta da próxima semana"
]
, examples (datetime (2013, 2, 12, 0, 0, 0) Day)
[ "terça desta semana"
, "terça dessa semana"
, "terça agora"
]
, examples (datetime (2013, 2, 11, 0, 0, 0) Week)
[ "esta semana"
]
, examples (datetime (2013, 2, 4, 0, 0, 0) Week)
[ "semana passada"
]
, examples (datetime (2013, 2, 18, 0, 0, 0) Week)
[ "semana que vem"
, "proxima semana"
]
, examples (datetime (2013, 1, 0, 0, 0, 0) Month)
[ "mês passado"
]
, examples (datetime (2013, 3, 0, 0, 0, 0) Month)
[ "mes que vem"
, "próximo mês"
]
, examples (datetime (2012, 0, 0, 0, 0, 0) Year)
[ "ano passado"
]
, examples (datetime (2013, 0, 0, 0, 0, 0) Year)
[ "este ano"
]
, examples (datetime (2014, 0, 0, 0, 0, 0) Year)
[ "ano que vem"
, "proximo ano"
]
, examples (datetime (2013, 2, 10, 0, 0, 0) Day)
[ "domingo passado"
, "domingo da semana passada"
]
, examples (datetime (2013, 2, 5, 0, 0, 0) Day)
[ "terça passada"
]
, examples (datetime (2013, 2, 12, 15, 0, 0) Hour)
[ "às tres da tarde"
, "às tres"
, "às 3 pm"
, "às 15 horas"
]
, examples (datetime (2013, 2, 12, 20, 0, 0) Hour)
[ "às oito da noite"
]
, examples (datetime (2013, 2, 12, 15, 0, 0) Minute)
[ "15:00"
, "15.00"
]
, examples (datetime (2013, 2, 13, 0, 0, 0) Hour)
[ "meianoite"
, "meia noite"
]
, examples (datetime (2013, 2, 12, 12, 0, 0) Hour)
[ "meio dia"
, "meiodia"
]
, examples (datetime (2013, 2, 12, 12, 15, 0) Minute)
[ "meio dia e quinze"
]
, examples (datetime (2013, 2, 12, 11, 55, 0) Minute)
[ "5 para meio dia"
]
, examples (datetime (2013, 2, 12, 12, 30, 0) Minute)
[ "meio dia e meia"
]
, examples (datetime (2013, 2, 12, 6, 0, 0) Hour)
[ "as seis da manha"
, "as seis pela manha"
]
, examples (datetime (2013, 2, 12, 15, 15, 0) Minute)
[ "às tres e quinze"
, "às tres e quinze da tarde"
, "às tres e quinze pela tarde"
, "15:15"
, "15.15"
]
, examples (datetime (2013, 2, 12, 15, 30, 0) Minute)
[ "às tres e meia"
, "às 3 e trinta"
, "às tres e meia da tarde"
, "às 3 e trinta da tarde"
, "15:30"
, "15.30"
]
, examples (datetime (2013, 2, 12, 11, 45, 0) Minute)
[ "quinze para meio dia"
, "quinze para o meio dia"
, "11:45"
, "as onze e quarenta e cinco"
, "hoje quinze para o meio dia"
, "hoje às onze e quarenta e cinco"
]
, examples (datetime (2013, 2, 12, 5, 15, 0) Minute)
[ "5 e quinze"
]
, examples (datetime (2013, 2, 12, 6, 0, 0) Hour)
[ "6 da manhã"
]
, examples (datetime (2013, 2, 13, 11, 0, 0) Hour)
[ "quarta às onze da manhã"
]
, examples (datetime (2014, 9, 12, 0, 0, 0) Day)
[ "sexta, 12 de setembro de 2014"
, "sexta feira, 12 de setembro de 2014"
, "12 de setembro de 2014, sexta"
, "12 de setembro de 2014 sexta feira"
, "sexta feira 12 de setembro de 2014"
]
, examples (datetime (2013, 2, 12, 4, 30, 1) Second)
[ "em um segundo"
]
, examples (datetime (2013, 2, 12, 4, 31, 0) Second)
[ "em um minuto"
, "em 1 min"
]
, examples (datetime (2013, 2, 12, 4, 32, 0) Second)
[ "em 2 minutos"
, "em dois minutos"
]
, examples (datetime (2013, 2, 12, 5, 30, 0) Second)
[ "em 60 minutos"
]
, examples (datetime (2013, 2, 12, 5, 30, 0) Minute)
[ "em uma hora"
]
, examples (datetime (2013, 2, 12, 2, 30, 0) Minute)
[ "fazem duas horas"
]
, examples (datetime (2013, 2, 13, 4, 30, 0) Minute)
[ "em 24 horas"
, "em vinte e quatro horas"
]
, examples (datetime (2013, 2, 13, 4, 0, 0) Hour)
[ "em um dia"
]
, examples (datetime (2013, 2, 19, 4, 0, 0) Hour)
[ "em 7 dias"
]
, examples (datetime (2013, 2, 19, 0, 0, 0) Day)
[ "em uma semana"
]
, examples (datetime (2013, 1, 22, 0, 0, 0) Day)
[ "faz tres semanas"
, "faz três semanas"
]
, examples (datetime (2013, 4, 12, 0, 0, 0) Day)
[ "em dois meses"
]
, examples (datetime (2012, 11, 12, 0, 0, 0) Day)
[ "faz tres meses"
]
, examples (datetime (2014, 2, 0, 0, 0, 0) Month)
[ "em um ano"
, "em 1 ano"
]
, examples (datetime (2011, 2, 0, 0, 0, 0) Month)
[ "faz dois anos"
]
, examples (datetimeInterval ((2013, 6, 21, 0, 0, 0), (2013, 9, 24, 0, 0, 0)) Day)
[ "este verão"
, "este verao"
]
, examples (datetimeInterval ((2012, 12, 21, 0, 0, 0), (2013, 3, 21, 0, 0, 0)) Day)
[ "este inverno"
]
, examples (datetime (2013, 12, 25, 0, 0, 0) Day)
[ "Natal"
]
, examples (datetime (2013, 12, 31, 0, 0, 0) Day)
[ "véspera de ano novo"
]
, examples (datetime (2014, 1, 1, 0, 0, 0) Day)
[ "ano novo"
, "reveillon"
, "Reveillon"
]
, examples (datetimeInterval ((2013, 2, 12, 18, 0, 0), (2013, 2, 13, 0, 0, 0)) Hour)
[ "esta noite"
, "essa noite"
]
, examples (datetimeInterval ((2013, 2, 13, 18, 0, 0), (2013, 2, 14, 0, 0, 0)) Hour)
[ "amanhã a noite"
]
, examples (datetimeInterval ((2013, 2, 11, 18, 0, 0), (2013, 2, 12, 0, 0, 0)) Hour)
[ "ontem a noite"
]
, examples (datetimeInterval ((2013, 2, 15, 18, 0, 0), (2013, 2, 18, 0, 0, 0)) Hour)
[ "este final de semana"
, "este fim de semana"
]
, examples (datetimeInterval ((2013, 2, 18, 4, 0, 0), (2013, 2, 18, 12, 0, 0)) Hour)
[ "segunda de manhã"
]
, examples (datetimeInterval ((2013, 2, 15, 4, 0, 0), (2013, 2, 15, 12, 0, 0)) Hour)
[ "dia 15 de fevereiro pela manhã"
, "dia 15 de fevereiro de manhã"
]
, examples (datetime (2013, 2, 12, 20, 0, 0) Hour)
[ "às 8 da noite"
]
, examples (datetimeInterval ((2013, 2, 12, 4, 29, 58), (2013, 2, 12, 4, 30, 0)) Second)
[ "2 segundos atras"
]
, examples (datetimeInterval ((2013, 2, 12, 4, 30, 1), (2013, 2, 12, 4, 30, 4)) Second)
[ "proximos 3 segundos"
]
, examples (datetimeInterval ((2013, 2, 12, 4, 28, 0), (2013, 2, 12, 4, 30, 0)) Minute)
[ "2 minutos atrás"
]
, examples (datetimeInterval ((2013, 2, 12, 4, 31, 0), (2013, 2, 12, 4, 34, 0)) Minute)
[ "proximos 3 minutos"
]
, examples (datetimeInterval ((2013, 2, 12, 5, 0, 0), (2013, 2, 12, 8, 0, 0)) Hour)
[ "proximas 3 horas"
]
, examples (datetimeInterval ((2013, 2, 10, 0, 0, 0), (2013, 2, 12, 0, 0, 0)) Day)
[ "passados 2 dias"
]
, examples (datetimeInterval ((2013, 2, 13, 0, 0, 0), (2013, 2, 16, 0, 0, 0)) Day)
[ "proximos 3 dias"
]
, examples (datetimeInterval ((2013, 1, 28, 0, 0, 0), (2013, 2, 11, 0, 0, 0)) Week)
[ "duas semanas atras"
]
, examples (datetimeInterval ((2013, 2, 18, 0, 0, 0), (2013, 3, 11, 0, 0, 0)) Week)
[ "3 proximas semanas"
, "3 semanas que vem"
]
, examples (datetimeInterval ((2012, 12, 0, 0, 0, 0), (2013, 2, 0, 0, 0, 0)) Month)
[ "passados 2 meses"
]
, examples (datetimeInterval ((2013, 3, 0, 0, 0, 0), (2013, 6, 0, 0, 0, 0)) Month)
[ "3 próximos meses"
, "proximos tres meses"
, "tres meses que vem"
]
, examples (datetimeInterval ((2011, 0, 0, 0, 0, 0), (2013, 0, 0, 0, 0, 0)) Year)
[ "passados 2 anos"
]
, examples (datetimeInterval ((2014, 0, 0, 0, 0, 0), (2017, 0, 0, 0, 0, 0)) Year)
[ "3 próximos anos"
, "proximo tres anos"
, "3 anos que vem"
]
, examples (datetimeInterval ((2013, 7, 13, 0, 0, 0), (2013, 7, 16, 0, 0, 0)) Day)
[ "13 a 15 de julho"
, "13 - 15 de julho de 2013"
]
, examples (datetimeInterval ((2013, 2, 12, 9, 30, 0), (2013, 2, 12, 11, 0, 0)) Minute)
[ "9:30 - 11:00"
]
, examples (datetimeInterval ((2013, 12, 21, 0, 0, 0), (2014, 1, 7, 0, 0, 0)) Day)
[ "21 de Dez. a 6 de Jan"
]
, examples (datetimeInterval ((2013, 2, 12, 4, 30, 0), (2013, 2, 12, 7, 30, 0)) Second)
[ "dentro de tres horas"
]
, examples (datetime (2013, 2, 12, 16, 0, 0) Hour)
[ "as quatro da tarde"
]
, examples (datetime (2013, 2, 12, 13, 0, 0) Minute)
[ "as quatro CET"
]
, examples (datetimeOpenInterval After (2013, 2, 12, 12, 0, 0) Hour)
[ "após ao meio dia"
, "depois do meio dia"
]
, examples (datetimeOpenInterval Before (2013, 2, 12, 12, 0, 0) Hour)
[ "antes do meio dia"
, "não mais que meio dia"
]
, examples (datetimeOpenInterval After (2013, 2, 13, 15, 0, 0) Hour)
[ "amanhã depois das 15hs"
, "amanha após as quinze horas"
]
, examples (datetimeOpenInterval Before (2013, 2, 13, 0, 0, 0) Hour)
[ "antes da meia noite"
, "até a meia noite"
]
]