Duckling/Time/ES/Corpus.hs (550 lines of code) (raw):
-- 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.
{-# LANGUAGE OverloadedStrings #-}
module Duckling.Time.ES.Corpus
( corpus
, latentCorpus
) where
import Data.String
import Prelude
import Duckling.Locale
import Duckling.Resolve
import Duckling.Time.Corpus
import Duckling.TimeGrain.Types hiding (add)
import Duckling.Testing.Types hiding (examples)
context :: Context
context = testContext {locale = makeLocale ES Nothing}
latentCorpus :: Corpus
latentCorpus = (context, testOptions {withLatent = True}, xs)
where
xs = concat
[ examples (datetime (2013, 2, 12, 13, 0, 0) Hour)
[ "una hora"
]
]
corpus :: Corpus
corpus = (context, testOptions, allExamples)
allExamples :: [Example]
allExamples = concat
[ examples (datetime (2013, 2, 12, 4, 30, 0) Second)
[ "ahora"
, "ya"
, "ahorita"
, "cuanto antes"
]
, examples (datetime (2013, 2, 12, 0, 0, 0) Day)
[ "hoy"
, "en este momento"
]
, examples (datetime (2013, 2, 11, 0, 0, 0) Day)
[ "ayer"
]
, examples (datetime (2013, 2, 10, 0, 0, 0) Day)
[ "anteayer"
, "antier"
]
{--
This is intentional
The purpose is to steer the classifier towards "tomorrow" rule
instead of "morning" rule.
--}
, examples (datetime (2013, 2, 13, 0, 0, 0) Day)
[ "mañana"
, "manana"
, "mañana"
, "manana"
, "mañana"
, "manana"
, "manana"
, "mañana"
, "manana"
, "mañana"
, "manana"
, "manana"
, "mañana"
, "manana"
, "mañana"
, "manana"
, "manana"
, "mañana"
, "manana"
, "mañana"
, "manana"
, "manana"
, "mañana"
, "manana"
, "mañana"
, "manana"
, "manana"
, "mañana"
, "manana"
, "mañana"
, "manana"
, "manana"
, "mañana"
, "manana"
, "mañana"
, "manana"
, "manana"
, "mañana"
, "manana"
, "mañana"
, "manana"
, "manana"
, "mañana"
, "manana"
, "mañana"
, "manana"
, "manana"
, "mañana"
, "manana"
, "mañana"
, "manana"
]
, examples (datetime (2013, 2, 14, 0, 0, 0) Day)
[ "pasado mañana"
]
, examples (datetime (2013, 2, 18, 0, 0, 0) Day)
[ "lunes"
, "lu"
, "lun."
, "este lunes"
]
, examples (datetime (2013, 2, 22, 0, 0, 0) Day)
[ "el próximo viernes"
, "proximo viernes"
]
, examples (datetime (2013, 2, 18, 0, 0, 0) Day)
[ "lunes, 18 de febrero"
]
, examples (datetime (2013, 2, 19, 0, 0, 0) Day)
[ "martes"
, "ma"
, "ma."
]
, examples (datetime (2013, 2, 13, 0, 0, 0) Day)
[ "miercoles"
, "miércoles"
, "mx"
, "mié."
]
, examples (datetime (2013, 2, 14, 0, 0, 0) Day)
[ "jueves"
]
, examples (datetime (2013, 2, 15, 0, 0, 0) Day)
[ "viernes"
]
, examples (datetime (2013, 2, 16, 0, 0, 0) Day)
[ "sabado"
]
, examples (datetime (2013, 2, 17, 0, 0, 0) Day)
[ "domingo"
]
, examples (datetime (2013, 5, 5, 0, 0, 0) Day)
[ "el 5 de mayo"
, "el cinco de mayo"
]
, examples (datetime (2013, 5, 5, 0, 0, 0) Day)
[ "el cinco de mayo de 2013"
, "mayo 5 del 2013"
, "5-5-2013"
]
, examples (datetime (2013, 7, 4, 0, 0, 0) Day)
[ "el 4 de julio"
, "el 4/7"
]
, examples (datetime (2013, 3, 3, 0, 0, 0) Day)
[ "el 3 de marzo"
, "3 de marzo"
, "3 marzo"
, "marzo 3"
, "el 3-3"
]
, examples (datetime (2013, 4, 5, 0, 0, 0) Day)
[ "el 5 de abril"
, "5 de abril"
, "5 abril"
, "abril 5"
]
, examples (datetime (2013, 3, 1, 0, 0, 0) Day)
[ "el 1 de marzo"
, "1 de marzo"
, "el primero de marzo"
, "el uno de marzo"
, "primero de marzo"
, "uno de marzo"
]
, 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)
[ "el 16"
, "16 de febrero"
]
, examples (datetime (2013, 2, 17, 0, 0, 0) Day)
[ "el 17"
, "17 de febrero"
, "17-2"
, "el 17/2"
]
, examples (datetime (2013, 2, 20, 0, 0, 0) Day)
[ "el 20"
, "20 de febrero"
, "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)
[ "el martes que viene"
]
, examples (datetime (2013, 2, 20, 0, 0, 0) Day)
[ "miércoles que viene"
, "el miércoles de la semana que viene"
, "miercoles de la próxima semana"
]
, examples (datetime (2013, 2, 11, 0, 0, 0) Day)
[ "el lunes de esta semana"
]
, examples (datetime (2013, 2, 12, 0, 0, 0) Day)
[ "martes de esta semana"
]
, examples (datetime (2013, 2, 13, 0, 0, 0) Day)
[ "el miércoles de esta semana"
]
, examples (datetime (2013, 2, 11, 0, 0, 0) Week)
[ "esta semana"
]
, examples (datetime (2013, 2, 4, 0, 0, 0) Week)
[ "la semana pasada"
]
, examples (datetime (2013, 2, 18, 0, 0, 0) Week)
[ "la semana que viene"
, "la proxima semana"
, "semana que viene"
, "proxima semana"
, "proximas semana"
, "próxima semana"
, "siguiente semana"
]
, examples (datetime (2013, 1, 1, 0, 0, 0) Month)
[ "el pasado mes"
]
, examples (datetime (2013, 3, 0, 0, 0, 0) Month)
[ "el mes que viene"
, "el proximo mes"
]
, examples (datetime (2012, 0, 0, 0, 0, 0) Year)
[ "el año pasado"
]
, examples (datetime (2013, 0, 0, 0, 0, 0) Year)
[ "este ano"
]
, examples (datetime (2014, 0, 0, 0, 0, 0) Year)
[ "el año que viene"
, "el proximo ano"
]
, examples (datetime (2013, 2, 10, 0, 0, 0) Day)
[ "el domingo pasado"
, "el domingo de la semana pasada"
]
, examples (datetime (2013, 2, 5, 0, 0, 0) Day)
[ "el martes pasado"
]
, examples (datetime (2013, 2, 12, 15, 0, 0) Hour)
[ "a las tres de la tarde"
, "a las tres"
, "a las 3 pm"
, "a las 15 horas"
]
, examples (datetime (2013, 2, 12, 20, 0, 0) Hour)
[ "a las ocho de la tarde"
]
, examples (datetime (2013, 2, 12, 15, 0, 0) Minute)
[ "15:00"
, "15.00"
]
, examples (datetime (2013, 2, 13, 0, 0, 0) Hour)
[ "medianoche"
]
, examples (datetime (2013, 2, 12, 12, 0, 0) Hour)
[ "mediodía"
, "las doce"
, "medio dia"
, "medio día"
]
, examples (datetime (2013, 2, 12, 12, 15, 0) Minute)
[ "las doce y cuarto"
]
, examples (datetime (2013, 2, 12, 11, 55, 0) Minute)
[ "las doce menos cinco"
]
, examples (datetime (2013, 2, 12, 12, 30, 0) Minute)
[ "las doce y media"
]
, examples (datetime (2013, 2, 13, 3, 0, 0) Hour)
[ "las tres de la manana"
, "las tres en la manana"
]
, examples (datetime (2013, 2, 12, 15, 15, 0) Minute)
[ "a las tres y quince"
, "a las 3 y cuarto"
, "a las tres y cuarto de la tarde"
, "a las tres y cuarto en la tarde"
, "15:15"
, "15.15"
]
, examples (datetime (2013, 2, 12, 15, 30, 0) Minute)
[ "a las tres y media"
, "a las 3 y treinta"
, "a las tres y media de la tarde"
, "a las 3 y treinta del mediodía"
, "15:30"
, "15.30"
]
, examples (datetime (2013, 2, 12, 11, 45, 0) Minute)
[ "las doce menos cuarto"
, "11:45"
, "las once y cuarenta y cinco"
, "hoy a las doce menos cuarto"
, "hoy a las once y cuarenta y cinco"
]
, examples (datetime (2013, 2, 12, 5, 15, 0) Minute)
[ "5 y cuarto"
]
, examples (datetime (2013, 2, 12, 6, 0, 0) Hour)
[ "6 de la mañana"
]
, examples (datetime (2013, 2, 13, 11, 0, 0) Hour)
[ "miércoles a las once de la mañana"
]
, examples (datetime (2013, 2, 13, 11, 0, 0) Hour)
[ "mañana a las once"
, "mañana a 11"
]
, examples (datetime (2014, 9, 12, 0, 0, 0) Day)
[ "viernes, el 12 de septiembre de 2014"
]
, examples (datetime (2013, 2, 12, 4, 30, 1) Second)
[ "en un segundo"
]
, examples (datetime (2013, 2, 12, 4, 31, 0) Second)
[ "en un minuto"
, "en 1 min"
]
, examples (datetime (2013, 2, 12, 4, 32, 0) Second)
[ "en 2 minutos"
, "en dos minutos"
]
, examples (datetime (2013, 2, 12, 5, 30, 0) Second)
[ "en 60 minutos"
]
, examples (datetime (2013, 2, 12, 5, 30, 0) Minute)
[ "en una hora"
]
, examples (datetime (2013, 2, 12, 2, 30, 0) Minute)
[ "hace dos horas"
]
, examples (datetime (2013, 2, 13, 4, 30, 0) Minute)
[ "en 24 horas"
, "en veinticuatro horas"
]
, examples (datetime (2013, 2, 13, 4, 0, 0) Hour)
[ "en un dia"
]
, examples (datetime (2013, 2, 19, 4, 0, 0) Hour)
[ "en 7 dias"
]
, examples (datetime (2013, 2, 19, 0, 0, 0) Day)
[ "en una semana"
]
, examples (datetime (2013, 1, 22, 0, 0, 0) Day)
[ "hace tres semanas"
]
, examples (datetime (2013, 4, 12, 0, 0, 0) Day)
[ "en dos meses"
]
, examples (datetime (2012, 11, 12, 0, 0, 0) Day)
[ "hace tres meses"
]
, examples (datetime (2014, 2, 0, 0, 0, 0) Month)
[ "en un ano"
, "en 1 año"
]
, examples (datetime (2011, 2, 0, 0, 0, 0) Month)
[ "hace dos años"
]
, examples (datetimeInterval ((2013, 6, 21, 0, 0, 0), (2013, 9, 24, 0, 0, 0)) Day)
[ "este verano"
]
, examples (datetimeInterval ((2012, 12, 21, 0, 0, 0), (2013, 3, 21, 0, 0, 0)) Day)
[ "este invierno"
]
, examples (datetime (2013, 12, 25, 0, 0, 0) Day)
[ "Navidad"
, "la Navidad"
]
, examples (datetime (2013, 12, 31, 0, 0, 0) Day)
[ "Nochevieja"
]
, examples (datetime (2014, 1, 1, 0, 0, 0) Day)
[ "ano nuevo"
, "año nuevo"
]
, examples (datetime (2013, 2, 12, 21, 0, 0) Hour)
[ "nueve de la noche"
]
, examples (datetimeInterval ((2013, 2, 12, 18, 0, 0), (2013, 2, 13, 0, 0, 0)) Hour)
[ "esta noche"
]
, examples (datetimeInterval ((2013, 2, 13, 18, 0, 0), (2013, 2, 14, 0, 0, 0)) Hour)
[ "mañana por la noche"
]
, examples (datetimeInterval ((2013, 2, 11, 18, 0, 0), (2013, 2, 12, 0, 0, 0)) Hour)
[ "ayer por la noche"
]
, examples (datetimeInterval ((2013, 2, 15, 18, 0, 0), (2013, 2, 18, 0, 0, 0)) Hour)
[ "este weekend"
, "este fin de semana"
]
, examples (datetimeInterval ((2013, 2, 18, 4, 0, 0), (2013, 2, 18, 12, 0, 0)) Hour)
[ "lunes por la mañana"
]
, examples (datetimeInterval ((2013, 2, 15, 4, 0, 0), (2013, 2, 15, 12, 0, 0)) Hour)
[ "el 15 de febrero por la mañana"
]
, examples (datetime (2013, 2, 12, 20, 0, 0) Hour)
[ "a las 8 de la tarde"
]
, examples (datetimeInterval ((2013, 2, 12, 4, 29, 58), (2013, 2, 12, 4, 30, 0)) Second)
[ "pasados 2 segundos"
]
, 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)
[ "pasados 2 minutos"
]
, 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)
[ "pasados 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)
[ "pasadas dos semanas"
]
, examples (datetimeInterval ((2013, 2, 18, 0, 0, 0), (2013, 3, 11, 0, 0, 0)) Week)
[ "3 proximas semanas"
, "3 semanas que vienen"
]
, examples (datetimeInterval ((2012, 12, 0, 0, 0, 0), (2013, 2, 0, 0, 0, 0)) Month)
[ "pasados 2 meses"
, "dos pasados 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 vienen"
]
, examples (datetimeInterval ((2011, 0, 0, 0, 0, 0), (2013, 0, 0, 0, 0, 0)) Year)
[ "pasados 2 anos"
, "dos pasados años"
]
, examples (datetimeInterval ((2014, 0, 0, 0, 0, 0), (2017, 0, 0, 0, 0, 0)) Year)
[ "3 próximos años"
, "proximo tres años"
, "3 años que vienen"
]
, examples (datetimeInterval ((2013, 7, 13, 0, 0, 0), (2013, 7, 16, 0, 0, 0)) Day)
[ "13 a 15 de julio"
, "13 - 15 de julio 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 Dic. a 6 de Ene"
]
, 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)
[ "a las cuatro de la tarde"
]
, examples (datetime (2013, 2, 12, 13, 0, 0) Minute)
[ "a las cuatro CET"
]
, examples (datetime (2013, 8, 15, 0, 0, 0) Day)
[ "jue 15"
]
, examples (datetimeHoliday (2013, 12, 18, 0, 0, 0) Day "Día Mundial de la Lengua Árabe")
[ "dia mundial de la lengua arabe"
, "día mundial de la lengua árabe"
]
, examples (datetimeHoliday (2013, 3, 1, 0, 0, 0) Day "Día de la Cero Discriminación")
[ "dia de la cero discriminacion"
, "día de la cero discriminación"
]
, examples (datetimeHoliday (2019, 7, 6, 0, 0, 0) Day "Día Internacional de las Cooperativas")
[ "día internacional de las cooperativas del 2019"
]
, examples (datetimeHoliday (2013, 11, 17, 0, 0, 0) Day "Día de la Prematuridad Mundial")
[ "día de la prematuridad mundial"
, "día mundial del prematuro"
, "día mundial del niño prematuro"
]
, examples (datetimeHoliday (2013, 4, 1, 0, 0, 0) Day "Día de los Inocentes de Abril")
[ "día de los inocentes"
, "día de los inocentes de abril"
, "día de las bromas de abril"
, "día de las bromas"
]
, examples (datetime (2013, 3, 9, 0, 0, 0) Day)
[ "día nueve"
]
, examples (datetime (2013, 2, 15, 0, 0, 0) Day)
[ "día quince"
]
, examples (datetime (2013, 3, 11, 0, 0, 0) Day)
[ "día once"
]
, examples (datetime (2013, 2, 12, 18, 2, 0) Minute)
[
"las seis cero dos pm"
, "las seis zero dos pm"
, "para las seis cero dos pm"
, "para las seis zero dos pm"
, "a las seis cero dos pm"
, "a las seis zero dos pm"
, "al las seis cero dos pm"
, "al las seis zero dos pm"
, "para las 6 0 2 pm"
, "a las 6 0 2 pm"
, "al las 6 0 2 pm"
, "seis cero dos pm"
]
, examples (datetime (2013, 2, 12, 18, 2, 0) Minute)
[ "seis dos de la tarde"
]
, examples (datetime (1990, 0, 0, 0, 0, 0) Year)
[
"mil novecientos noventa"
]
, examples (datetime (1990, 5, 4, 0, 0, 0) Day)
[
"cuatro de mayo de mil novecientos noventa"
]
]