Time: don't parse subsequent numbers

Summary:
- Fixes #89. "<number> <number>" would parse as Time if in the right range.
- Applied same rule for all languages. Note that for Italian and Polish, I updated "<hour> <minute>" tests to be in the form "at <hour> <minute>".
- Replaced `liftM2` with more generic `and|or . sequence [f1, f2, ...]`.

Reviewed By: blandinw

Differential Revision: D5992879

fbshipit-source-id: 5409ffb
This commit is contained in:
Julien Odent 2017-10-06 11:39:11 -07:00 committed by Facebook Github Bot
parent 2b566eeac0
commit b3fb913a23
36 changed files with 2097 additions and 2353 deletions

View File

@ -287,151 +287,142 @@ classifiers
n = 2}}), n = 2}}),
("intersect", ("intersect",
Classifier{okData = Classifier{okData =
ClassData{prior = -0.46117571512217015, ClassData{prior = -0.43117346481837143,
unseen = -5.834810737062605, unseen = -5.820082930352362,
likelihoods = likelihoods =
HashMap.fromList HashMap.fromList
[("<datetime> - <datetime> (interval)on <date>", [("<datetime> - <datetime> (interval)on <date>",
-4.0401230080554615), -4.02535169073515),
("Wednesday<named-month> <day-of-month> (non ordinal)", ("Wednesday<named-month> <day-of-month> (non ordinal)",
-5.1387352967235715), -5.123963979403259),
("<time-of-day> - <time-of-day> (interval)on <date>", ("<time-of-day> - <time-of-day> (interval)on <date>",
-4.0401230080554615), -4.02535169073515),
("hourday", -5.1387352967235715), ("hourday", -5.123963979403259),
("dayhour", -2.8874434981170762), ("dayhour", -2.872672180796764),
("daymonth", -3.3469758274955166), ("daymonth", -3.332204510175204),
("monthyear", -3.0592937550437354), ("monthyear", -3.044522437723423),
("Mondayon <date>", -5.1387352967235715), ("Mondayon <date>", -5.123963979403259),
("intersecthh:mm", -5.1387352967235715), ("intersecthh:mm", -5.123963979403259),
("Wednesdaynext <cycle>", -5.1387352967235715), ("Wednesdaynext <cycle>", -5.123963979403259),
("Marchyear", -4.733270188615407), ("Marchyear", -4.718498871295094),
("intersect by \"of\", \"from\", \"'s\"year", ("intersect by \"of\", \"from\", \"'s\"year",
-4.733270188615407), -4.718498871295094),
("Mondayintersect", -5.1387352967235715), ("Mondayintersect", -5.123963979403259),
("last <day-of-week> of <time>year", -4.733270188615407), ("last <day-of-week> of <time>year", -4.718498871295094),
("todayat <time-of-day>", -4.733270188615407), ("todayat <time-of-day>", -4.718498871295094),
("Thursday<time> timezone", -4.445588116163626), ("Thursday<time> timezone", -4.430816798843313),
("dayday", -3.0592937550437354), ("dayday", -3.044522437723423),
("dd/mmat <time-of-day>", -4.222444564849416), ("dd/mmat <time-of-day>", -4.207673247529104),
("the <day-of-month> (ordinal)February", -4.733270188615407), ("the <day-of-month> (ordinal)February", -4.718498871295094),
("intersect by \",\"hh:mm", -4.222444564849416), ("intersect by \",\"hh:mm", -4.207673247529104),
("Mondaythe <day-of-month> (non ordinal)", -5.1387352967235715), ("Mondaythe <day-of-month> (non ordinal)", -5.123963979403259),
("Thursdaybetween <time-of-day> and <time-of-day> (interval)", ("Thursdaybetween <time-of-day> and <time-of-day> (interval)",
-5.1387352967235715), -5.123963979403259),
("dayyear", -3.26693311982198), ("dayyear", -3.2521618025016674),
("Thursdaybetween <datetime> and <datetime> (interval)", ("Thursdaybetween <datetime> and <datetime> (interval)",
-5.1387352967235715), -5.123963979403259),
("Thursdayat <time-of-day>", -4.733270188615407), ("Thursdayat <time-of-day>", -4.718498871295094),
("tomorrow<time-of-day> sharp", -4.733270188615407), ("tomorrow<time-of-day> sharp", -4.718498871295094),
("<day-of-month>(ordinal) <named-month>year", ("<day-of-month>(ordinal) <named-month>year",
-4.733270188615407), -4.718498871295094),
("absorption of , after named day<named-month> <day-of-month> (non ordinal)", ("absorption of , after named day<named-month> <day-of-month> (non ordinal)",
-4.0401230080554615), -4.02535169073515),
("Thursdayfrom <datetime> - <datetime> (interval)", ("Thursdayfrom <datetime> - <datetime> (interval)",
-4.733270188615407), -4.718498871295094),
("Thursdayfrom <time-of-day> - <time-of-day> (interval)", ("Thursdayfrom <time-of-day> - <time-of-day> (interval)",
-4.733270188615407), -4.718498871295094),
("tomorrowuntil <time-of-day>", -4.733270188615407), ("tomorrowuntil <time-of-day>", -4.718498871295094),
("absorption of , after named day<day-of-month> (non ordinal) <named-month>", ("absorption of , after named day<day-of-month> (non ordinal) <named-month>",
-4.445588116163626), -4.430816798843313),
("the <day-of-month> (ordinal)March", -4.222444564849416), ("the <day-of-month> (ordinal)March", -4.207673247529104),
("after <time-of-day>at <time-of-day>", -4.733270188615407), ("after <time-of-day>at <time-of-day>", -4.718498871295094),
("intersect by \",\"<day-of-month> (non ordinal) <named-month>", ("intersect by \",\"<day-of-month> (non ordinal) <named-month>",
-4.733270188615407), -4.718498871295094),
("Mondaythe <day-of-month> (ordinal)", -5.1387352967235715), ("Mondaythe <day-of-month> (ordinal)", -5.123963979403259),
("tomorrowafter <time-of-day>", -4.733270188615407), ("tomorrowafter <time-of-day>", -4.718498871295094),
("from <time-of-day> - <time-of-day> (interval)on <date>", ("from <time-of-day> - <time-of-day> (interval)on <date>",
-4.222444564849416), -4.207673247529104),
("Sunday<day-of-month> (non ordinal) <named-month>", ("Sunday<day-of-month> (non ordinal) <named-month>",
-5.1387352967235715), -5.123963979403259),
("dayminute", -2.787360039560094), ("dayminute", -2.772588722239781),
("Tuesdaythis <time>", -4.445588116163626), ("Tuesdaythis <time>", -4.430816798843313),
("from <datetime> - <datetime> (interval)on <date>", ("from <datetime> - <datetime> (interval)on <date>",
-4.445588116163626), -4.430816798843313),
("<ordinal> <cycle> of <time>year", -4.733270188615407), ("<ordinal> <cycle> of <time>year", -4.718498871295094),
("minuteday", -2.536045611279188), ("minuteday", -2.521274293958875),
("absorption of , after named dayintersect", ("absorption of , after named dayintersect",
-5.1387352967235715), -5.123963979403259),
("Octoberyear", -3.529297384289471), ("Octoberyear", -3.5145260669691587),
("yearhh:mm", -5.1387352967235715), ("yearhh:mm", -5.123963979403259),
("absorption of , after named dayintersect by \",\"", ("absorption of , after named dayintersect by \",\"",
-4.733270188615407), -4.718498871295094),
("dd/mmyear", -4.733270188615407), ("dd/mmyear", -4.718498871295094),
("Septemberyear", -4.222444564849416), ("Septemberyear", -4.207673247529104),
("at <time-of-day>on <date>", -5.1387352967235715), ("at <time-of-day>on <date>", -5.123963979403259),
("between <time-of-day> and <time-of-day> (interval)on <date>", ("between <time-of-day> and <time-of-day> (interval)on <date>",
-5.1387352967235715), -5.123963979403259),
("between <datetime> and <datetime> (interval)on <date>", ("between <datetime> and <datetime> (interval)on <date>",
-5.1387352967235715), -5.123963979403259),
("dayweek", -4.0401230080554615), ("dayweek", -4.02535169073515),
("weekyear", -4.222444564849416), ("weekyear", -4.207673247529104),
("hh:mmtomorrow", -4.445588116163626), ("hh:mmtomorrow", -4.430816798843313),
("Wednesdaythis <time>", -4.222444564849416), ("Wednesdaythis <time>", -4.207673247529104),
("tomorrowat <time-of-day>", -3.8859723282282035), ("tomorrowat <time-of-day>", -3.871201010907891),
("at <time-of-day>tomorrow", -4.733270188615407), ("at <time-of-day>tomorrow", -4.718498871295094),
("intersectFebruary", -5.1387352967235715), ("intersectFebruary", -5.123963979403259),
("last <cycle> of <time>year", -4.222444564849416), ("last <cycle> of <time>year", -4.207673247529104),
("Mondaythis <time>", -5.1387352967235715), ("Mondaythis <time>", -5.123963979403259),
("<day-of-month> (non ordinal) <named-month>year", ("<day-of-month> (non ordinal) <named-month>year",
-4.733270188615407), -4.718498871295094),
("yearminute", -5.1387352967235715)], ("yearminute", -5.123963979403259)],
n = 128}, n = 128},
koData = koData =
ClassData{prior = -0.9957178655054769, ClassData{prior = -1.049097224140729, unseen = -5.389071729816501,
unseen = -5.4638318050256105,
likelihoods = likelihoods =
HashMap.fromList HashMap.fromList
[("dayhour", -3.380143972464323), [("dayhour", -3.305053521109253),
("daymonth", -2.16374864813983), ("daymonth", -2.0886581967847597),
("monthday", -3.8501476017100584), ("monthday", -3.775057150354989),
("monthyear", -3.8501476017100584), ("monthyear", -3.775057150354989),
("Marchyear", -4.073291153024268), ("Marchyear", -3.9982007016691985),
("intersect by \"of\", \"from\", \"'s\"year", ("intersect by \"of\", \"from\", \"'s\"year",
-3.5136753650888455), -3.438584913733776),
("Sundaythis <time>", -3.8501476017100584), ("Sundaythis <time>", -3.775057150354989),
("absorption of , after named dayJuly", -4.360973225476049), ("absorption of , after named dayJuly", -4.285882774120979),
("dd/mmat <time-of-day>", -3.8501476017100584), ("dd/mmat <time-of-day>", -3.775057150354989),
("hourhour", -3.5136753650888455), ("hourhour", -3.438584913733776),
("Thursdaybetween <time-of-day> and <time-of-day> (interval)", ("Thursdaybetween <time-of-day> and <time-of-day> (interval)",
-4.7664383335842135), -4.6913478822291435),
("dayyear", -3.380143972464323), ("dayyear", -3.305053521109253),
("Thursdaybetween <datetime> and <datetime> (interval)", ("Thursdaybetween <datetime> and <datetime> (interval)",
-4.7664383335842135), -4.6913478822291435),
("Thursdayat <time-of-day>", -3.8501476017100584), ("Thursdayat <time-of-day>", -3.775057150354989),
("year<hour-of-day> <integer> (as relative minutes)", ("Thursdayhh:mm", -4.6913478822291435),
-4.360973225476049), ("WednesdayFebruary", -4.6913478822291435),
("Thursdayhh:mm", -4.7664383335842135),
("WednesdayFebruary", -4.7664383335842135),
("minutemonth", -4.360973225476049),
("Thursdayfrom <datetime> - <datetime> (interval)", ("Thursdayfrom <datetime> - <datetime> (interval)",
-4.360973225476049), -4.285882774120979),
("in|during the <part-of-day>until <time-of-day>", ("in|during the <part-of-day>until <time-of-day>",
-4.360973225476049), -4.285882774120979),
("Thursdayfrom <time-of-day> - <time-of-day> (interval)", ("Thursdayfrom <time-of-day> - <time-of-day> (interval)",
-4.7664383335842135), -4.6913478822291435),
("Aprilyear", -4.7664383335842135), ("Aprilyear", -4.6913478822291435),
("<named-month> <day-of-month> (non ordinal)August", ("<named-month> <day-of-month> (non ordinal)August",
-3.8501476017100584), -3.775057150354989),
("until <time-of-day>on <date>", -4.7664383335842135), ("until <time-of-day>on <date>", -4.6913478822291435),
("August<day-of-month> (non ordinal) <named-month>", ("August<day-of-month> (non ordinal) <named-month>",
-3.8501476017100584), -3.775057150354989),
("dayminute", -3.380143972464323), ("dayminute", -3.305053521109253),
("Tuesdaythis <time>", -3.8501476017100584), ("Tuesdaythis <time>", -3.775057150354989),
("minuteday", -3.2623609368079394), ("minuteday", -3.1872704854528697),
("hh:mmon <date>", -3.380143972464323), ("hh:mmon <date>", -3.305053521109253),
("Wednesdaythis <time>", -3.5136753650888455), ("Wednesdaythis <time>", -3.438584913733776),
("<hour-of-day> <integer> (as relative minutes)July", ("absorption of , after named dayFebruary",
-4.360973225476049), -3.9982007016691985),
("absorption of , after named dayFebruary", -4.073291153024268), ("this <part-of-day>until <time-of-day>", -4.285882774120979),
("this <part-of-day>until <time-of-day>", -4.360973225476049), ("tomorrownoon", -4.6913478822291435),
("<hour-of-day> <integer> (as relative minutes)year", ("this <time>until <time-of-day>", -4.285882774120979),
-4.360973225476049), ("Mondaythis <time>", -4.285882774120979)],
("tomorrownoon", -4.7664383335842135), n = 69}}),
("this <time>until <time-of-day>", -4.360973225476049),
("Mondaythis <time>", -4.360973225476049),
("minuteyear", -4.360973225476049),
("yearminute", -4.360973225476049)],
n = 75}}),
("<ordinal> <cycle> of <time>", ("<ordinal> <cycle> of <time>",
Classifier{okData = Classifier{okData =
ClassData{prior = 0.0, unseen = -2.890371757896165, ClassData{prior = 0.0, unseen = -2.890371757896165,
@ -911,18 +902,18 @@ classifiers
n = 4}}), n = 4}}),
("time-of-day (latent)", ("time-of-day (latent)",
Classifier{okData = Classifier{okData =
ClassData{prior = -0.941608539858445, unseen = -3.7376696182833684, ClassData{prior = -0.8690378470236094,
unseen = -3.7376696182833684,
likelihoods = likelihoods =
HashMap.fromList [("integer (numeric)", -2.469261259037152e-2)], HashMap.fromList [("integer (numeric)", -2.469261259037152e-2)],
n = 39}, n = 39},
koData = koData =
ClassData{prior = -0.4942963218147801, ClassData{prior = -0.5436154465889815, unseen = -4.04305126783455,
unseen = -4.1588830833596715,
likelihoods = likelihoods =
HashMap.fromList HashMap.fromList
[("integer (numeric)", -0.25131442828090605), [("integer (numeric)", -0.2876820724517809),
("integer (0..19)", -1.5040773967762742)], ("integer (0..19)", -1.3862943611198906)],
n = 61}}), n = 54}}),
("year", ("year",
Classifier{okData = Classifier{okData =
ClassData{prior = -0.1431008436406733, unseen = -3.332204510175204, ClassData{prior = -0.1431008436406733, unseen = -3.332204510175204,
@ -1371,37 +1362,32 @@ classifiers
likelihoods = HashMap.fromList [], n = 0}}), likelihoods = HashMap.fromList [], n = 0}}),
("<datetime> - <datetime> (interval)", ("<datetime> - <datetime> (interval)",
Classifier{okData = Classifier{okData =
ClassData{prior = -0.6649763035932491, ClassData{prior = -0.5436154465889815,
unseen = -3.9318256327243257, unseen = -3.8501476017100584,
likelihoods = likelihoods =
HashMap.fromList HashMap.fromList
[("minuteminute", -1.2729656758128873), [("minuteminute", -1.1895840668738362),
("hh:mmhh:mm", -1.2729656758128873), ("hh:mmhh:mm", -1.1895840668738362),
("dayday", -2.120263536200091), ("dayday", -2.03688192726104),
("<day-of-month> (non ordinal) <named-month><day-of-month> (non ordinal) <named-month>", ("<day-of-month> (non ordinal) <named-month><day-of-month> (non ordinal) <named-month>",
-2.120263536200091)], -2.03688192726104)],
n = 18}, n = 18},
koData = koData =
ClassData{prior = -0.7221347174331976, unseen = -3.891820298110627, ClassData{prior = -0.8690378470236094,
unseen = -3.6109179126442243,
likelihoods = likelihoods =
HashMap.fromList HashMap.fromList
[("July<day-of-month> (non ordinal) <named-month>", [("July<day-of-month> (non ordinal) <named-month>",
-3.1780538303479458), -2.890371757896165),
("monthday", -2.0794415416798357), ("monthday", -1.791759469228055),
("minuteminute", -1.9252908618525775), ("minuteminute", -1.6376087894007967),
("hh:mmhh:mm", -3.1780538303479458), ("hh:mmhh:mm", -2.890371757896165),
("dayyear", -2.772588722239781), ("dayyear", -2.4849066497880004),
("year<hour-of-day> <integer> (as relative minutes)", ("hh:mmintersect", -1.791759469228055),
-2.772588722239781),
("hh:mmintersect", -2.0794415416798357),
("August<day-of-month> (non ordinal) <named-month>", ("August<day-of-month> (non ordinal) <named-month>",
-2.2617630984737906), -1.9740810260220096),
("dd/mmyear", -2.772588722239781), ("dd/mmyear", -2.4849066497880004)],
("<hour-of-day> <integer> (as relative minutes)year", n = 13}}),
-2.772588722239781),
("minuteyear", -2.772588722239781),
("yearminute", -2.772588722239781)],
n = 17}}),
("Tuesday", ("Tuesday",
Classifier{okData = Classifier{okData =
ClassData{prior = 0.0, unseen = -2.3978952727983707, ClassData{prior = 0.0, unseen = -2.3978952727983707,
@ -1635,17 +1621,6 @@ classifiers
koData = koData =
ClassData{prior = -infinity, unseen = -1.0986122886681098, ClassData{prior = -infinity, unseen = -1.0986122886681098,
likelihoods = HashMap.fromList [], n = 0}}), likelihoods = HashMap.fromList [], n = 0}}),
("<hour-of-day> <integer> (as relative minutes)",
Classifier{okData =
ClassData{prior = -infinity, unseen = -1.0986122886681098,
likelihoods = HashMap.fromList [], n = 0},
koData =
ClassData{prior = 0.0, unseen = -2.833213344056216,
likelihoods =
HashMap.fromList
[("time-of-day (latent)integer (numeric)", -0.6931471805599453),
("hour", -0.6931471805599453)],
n = 7}}),
("this <time>", ("this <time>",
Classifier{okData = Classifier{okData =
ClassData{prior = -1.3217558399823195, unseen = -3.871201010907891, ClassData{prior = -1.3217558399823195, unseen = -3.871201010907891,

View File

@ -391,290 +391,287 @@ classifiers
n = 1}}), n = 1}}),
("intersect", ("intersect",
Classifier{okData = Classifier{okData =
ClassData{prior = -0.26452876747706405, ClassData{prior = -0.26272534047791335,
unseen = -6.928537818164665, unseen = -6.927557906278317,
likelihoods = likelihoods =
HashMap.fromList HashMap.fromList
[("Samstag<time-of-day> o'clock", -6.234410725718371), [("Samstag<time-of-day> o'clock", -6.23342985266278),
("hourday", -4.981647757223003), ("hourday", -4.9806668841674115),
("<datetime> - <datetime> (interval)year", -4.981647757223003), ("<datetime> - <datetime> (interval)year", -4.9806668841674115),
("dayhour", -2.570849079588725), ("dayhour", -2.5698682065331333),
("daymonth", -3.166357790584754), ("daymonth", -3.1653769175291626),
("<day-of-month>(ordinal) <named-month> year<time-of-day> o'clock", ("<day-of-month>(ordinal) <named-month> year<time-of-day> o'clock",
-6.234410725718371), -6.23342985266278),
("monthyear", -4.529662633479946), ("monthyear", -4.528681760424354),
("yearhour", -6.234410725718371), ("yearhour", -6.23342985266278),
("Juliintersect", -6.234410725718371), ("Juliintersect", -6.23342985266278),
("intersect<time-of-day> o'clock", -4.0943445622221), ("intersect<time-of-day> o'clock", -4.093363689166509),
("christmasyear", -6.234410725718371), ("christmasyear", -6.23342985266278),
("after lunchat <time-of-day>", -6.234410725718371), ("after lunchat <time-of-day>", -6.23342985266278),
("absorption of , after named daymm/dd/yyyy", ("absorption of , after named daymm/dd/yyyy",
-6.234410725718371), -6.23342985266278),
("intersectJuli", -5.541263545158426), ("intersectJuli", -5.540282672102834),
("<day-of-month> (ordinal)Dienstag", -6.234410725718371), ("<day-of-month> (ordinal)Dienstag", -6.23342985266278),
("intersect by 'of', 'from', 'syear", -5.8289456176102075), ("intersect by 'of', 'from', 'syear", -5.827964744554615),
("<time-of-day> am|pmintersect", -5.135798437050262), ("<time-of-day> am|pmintersect", -5.13481756399467),
("<day-of-month> (ordinal)September", -5.8289456176102075), ("<day-of-month> (ordinal)September", -5.827964744554615),
("intersect<time> <part-of-day>", -4.154969184038536), ("intersect<time> <part-of-day>", -4.153988310982943),
("<time-of-day> o'clockafter lunch", -5.541263545158426), ("<time-of-day> o'clockafter lunch", -5.540282672102834),
("<day-of-month> (ordinal)Mittwoch", -6.234410725718371), ("<day-of-month> (ordinal)Mittwoch", -6.23342985266278),
("Montagthis <cycle>", -6.234410725718371), ("Montagthis <cycle>", -6.23342985266278),
("<time> <part-of-day><time-of-day> o'clock", ("<time> <part-of-day><time-of-day> o'clock",
-6.234410725718371), -6.23342985266278),
("Oktoberyear", -5.135798437050262), ("Oktoberyear", -5.13481756399467),
("today<time-of-day> o'clock", -6.234410725718371), ("today<time-of-day> o'clock", -6.23342985266278),
("<time-of-day> o'clockon <date>", -5.8289456176102075), ("<time-of-day> o'clockon <date>", -5.827964744554615),
("<time-of-day> am|pmintersect by ','", -5.541263545158426), ("<time-of-day> am|pmintersect by ','", -5.540282672102834),
("intersect by ','year", -5.135798437050262), ("intersect by ','year", -5.13481756399467),
("on <date><time-of-day> o'clock", -6.234410725718371), ("on <date><time-of-day> o'clock", -6.23342985266278),
("exactly <time-of-day>tomorrow", -5.8289456176102075), ("exactly <time-of-day>tomorrow", -5.827964744554615),
("mm/dd<time-of-day> o'clock", -6.234410725718371), ("mm/dd<time-of-day> o'clock", -6.23342985266278),
("monthhour", -5.8289456176102075), ("monthhour", -5.827964744554615),
("on <date>between <datetime> and <datetime> (interval)", ("on <date>between <datetime> and <datetime> (interval)",
-6.234410725718371), -6.23342985266278),
("last <day-of-week> of <time>year", -6.234410725718371), ("last <day-of-week> of <time>year", -6.23342985266278),
("hourmonth", -5.8289456176102075), ("hourmonth", -5.827964744554615),
("todayat <time-of-day>", -5.541263545158426), ("todayat <time-of-day>", -5.540282672102834),
("mm/ddabout <time-of-day>", -5.8289456176102075), ("mm/ddabout <time-of-day>", -5.827964744554615),
("Donnerstagfrom <datetime> - <datetime> (interval)", ("Donnerstagfrom <datetime> - <datetime> (interval)",
-5.8289456176102075), -5.827964744554615),
("on <date>between <time-of-day> and <time-of-day> (interval)", ("on <date>between <time-of-day> and <time-of-day> (interval)",
-6.234410725718371), -6.23342985266278),
("on <date>at <time-of-day>", -5.8289456176102075), ("on <date>at <time-of-day>", -5.827964744554615),
("dayday", -3.056356895370426), ("dayday", -3.055376022314834),
("<time> <part-of-day>at <time-of-day>", -5.8289456176102075), ("<time> <part-of-day>at <time-of-day>", -5.827964744554615),
("<time-of-day> am|pmabsorption of , after named day", ("<time-of-day> am|pmabsorption of , after named day",
-6.234410725718371), -6.23342985266278),
("about <time-of-day>on <date>", -6.234410725718371), ("about <time-of-day>on <date>", -6.23342985266278),
("<hour-of-day> <integer> (as relative minutes)in|during the <part-of-day>", ("<hour-of-day> <integer> (as relative minutes)in|during the <part-of-day>",
-5.8289456176102075), -5.827964744554615),
("<day-of-month> (ordinal)intersect", -5.135798437050262), ("<day-of-month> (ordinal)intersect", -5.13481756399467),
("hourhour", -3.708682081410116), ("hourhour", -3.707701208354524),
("hh:mmintersect by ','", -4.981647757223003), ("hh:mmintersect by ','", -4.9806668841674115),
("Donnerstagfrom <time-of-day> - <time-of-day> (interval)", ("Donnerstagfrom <time-of-day> - <time-of-day> (interval)",
-5.541263545158426), -5.540282672102834),
("Dienstagthis <cycle>", -6.234410725718371), ("Dienstagthis <cycle>", -6.23342985266278),
("<part-of-day> of <time>Februar", -5.8289456176102075), ("<part-of-day> of <time>Februar", -5.827964744554615),
("dayyear", -3.3166399936340922), ("dayyear", -3.3156591205785),
("Mittwochthis <cycle>", -6.234410725718371), ("Mittwochthis <cycle>", -6.23342985266278),
("<time-of-day> o'clockin|during the <part-of-day>", ("<time-of-day> o'clockin|during the <part-of-day>",
-5.135798437050262), -5.13481756399467),
("tomorrow<time-of-day> o'clock", -6.234410725718371), ("tomorrow<time-of-day> o'clock", -6.23342985266278),
("<time-of-day> o'clocktomorrow", -5.541263545158426), ("<time-of-day> o'clocktomorrow", -5.540282672102834),
("<day-of-month>(ordinal) <named-month>year", ("<day-of-month>(ordinal) <named-month>year",
-5.8289456176102075), -5.827964744554615),
("half <integer> (german style hour-of-day)after lunch", ("half <integer> (german style hour-of-day)after lunch",
-6.234410725718371), -6.23342985266278),
("absorption of , after named day<day-of-month>(ordinal) <named-month>", ("absorption of , after named day<day-of-month>(ordinal) <named-month>",
-4.981647757223003), -4.9806668841674115),
("hourminute", -5.541263545158426), ("hourminute", -5.540282672102834),
("the <day-of-month> (ordinal)Juli", -6.234410725718371), ("the <day-of-month> (ordinal)Juli", -6.23342985266278),
("on <date><day-of-month>(ordinal) <named-month>", ("on <date><day-of-month>(ordinal) <named-month>",
-5.8289456176102075), -5.827964744554615),
("minutemonth", -3.560262076291843), ("minutemonth", -3.559281203236251),
("minutehour", -3.9831189271118763), ("minutehour", -3.9821380540562843),
("at <time-of-day>in|during the <part-of-day>", ("at <time-of-day>in|during the <part-of-day>",
-5.318119993844216), -5.3171391207886245),
("absorption of , after named day<day-of-month>(ordinal) <named-month> year", ("absorption of , after named day<day-of-month>(ordinal) <named-month> year",
-5.8289456176102075), -5.827964744554615),
("absorption of , after named day<named-month> <day-of-month> (non ordinal)", ("absorption of , after named day<named-month> <day-of-month> (non ordinal)",
-5.135798437050262), -5.13481756399467),
("<day-of-month>(ordinal) <named-month> year<time> <part-of-day>", ("<day-of-month>(ordinal) <named-month> year<time> <part-of-day>",
-6.234410725718371), -6.23342985266278),
("<hour-of-day> <integer> (as relative minutes)after lunch", ("<hour-of-day> <integer> (as relative minutes)after lunch",
-6.234410725718371), -6.23342985266278),
("Donnerstag<time> timezone", -6.234410725718371), ("Donnerstag<time> timezone", -6.23342985266278),
("Samstagat <time-of-day>", -5.8289456176102075), ("Samstagat <time-of-day>", -5.827964744554615),
("<time-of-day> am|pmSamstag", -6.234410725718371), ("<time-of-day> am|pmSamstag", -6.23342985266278),
("intersect<day-of-month>(ordinal) <named-month>", ("intersect<day-of-month>(ordinal) <named-month>",
-4.848116364598481), -4.847135491542889),
("this <part-of-day><time-of-day> o'clock", ("this <part-of-day><time-of-day> o'clock", -6.23342985266278),
-6.234410725718371),
("<day-of-month>(ordinal) <named-month>intersect", ("<day-of-month>(ordinal) <named-month>intersect",
-6.234410725718371), -6.23342985266278),
("hh:mmintersect", -3.792063690349167), ("hh:mmintersect", -3.7910828172935753),
("Donnerstaghh:mm", -6.234410725718371), ("Donnerstaghh:mm", -6.23342985266278),
("<day-of-month> (ordinal)Juli", -5.541263545158426), ("<day-of-month> (ordinal)Juli", -5.540282672102834),
("intersect by ','intersect", -4.981647757223003), ("intersect by ','intersect", -4.9806668841674115),
("intersect by 'of', 'from', 'sJuli", -6.234410725718371), ("intersect by 'of', 'from', 'sJuli", -6.23342985266278),
("<day-of-month> (ordinal)Oktober", -6.234410725718371), ("<day-of-month> (ordinal)Oktober", -6.23342985266278),
("half <integer> (german style hour-of-day)in|during the <part-of-day>", ("half <integer> (german style hour-of-day)in|during the <part-of-day>",
-5.8289456176102075), -5.827964744554615),
("from <datetime> - <datetime> (interval)year", ("from <datetime> - <datetime> (interval)year",
-5.541263545158426), -5.540282672102834),
("at <time-of-day>intersect", -4.442651256490317), ("at <time-of-day>intersect", -4.441670383434724),
("on <date>from <time-of-day> - <time-of-day> (interval)", ("on <date>from <time-of-day> - <time-of-day> (interval)",
-5.8289456176102075), -5.827964744554615),
("<time> <part-of-day>from <time-of-day> - <time-of-day> (interval)", ("<time> <part-of-day>from <time-of-day> - <time-of-day> (interval)",
-6.234410725718371), -6.23342985266278),
("absorption of , after named day<day-of-month> (ordinal)", ("absorption of , after named day<day-of-month> (ordinal)",
-4.981647757223003), -4.9806668841674115),
("Donnerstagbetween <time-of-day> and <time-of-day> (interval)", ("Donnerstagbetween <time-of-day> and <time-of-day> (interval)",
-6.234410725718371), -6.23342985266278),
("dayminute", -4.037186148382152), ("dayminute", -4.03620527532656),
("on <date>from <datetime> - <datetime> (interval)", ("on <date>from <datetime> - <datetime> (interval)",
-6.234410725718371), -6.23342985266278),
("Mittwochnext <cycle>", -6.234410725718371), ("Mittwochnext <cycle>", -6.23342985266278),
("Donnerstagbetween <datetime> and <datetime> (interval)", ("Donnerstagbetween <datetime> and <datetime> (interval)",
-6.234410725718371), -6.23342985266278),
("<time> <part-of-day>from <datetime> - <datetime> (interval)", ("<time> <part-of-day>from <datetime> - <datetime> (interval)",
-6.234410725718371), -6.23342985266278),
("intersectyear", -4.442651256490317), ("intersectyear", -4.441670383434724),
("on <date>intersect", -5.8289456176102075), ("on <date>intersect", -5.827964744554615),
("on <date><day-of-month> (ordinal)", -5.8289456176102075), ("on <date><day-of-month> (ordinal)", -5.827964744554615),
("intersectSeptember", -3.4935707017931708), ("intersectSeptember", -3.4925898287375787),
("<ordinal> <cycle> of <time>year", -6.234410725718371), ("<ordinal> <cycle> of <time>year", -6.23342985266278),
("minuteday", -2.2547290718164104), ("minuteday", -2.2537481987608188),
("absorption of , after named dayintersect", ("absorption of , after named dayintersect",
-3.836515452920001), -3.835534579864409),
("intersect by ','September", -4.7303333289420975), ("intersect by ','September", -4.729352455886505),
("year<time-of-day> o'clock", -6.234410725718371), ("year<time-of-day> o'clock", -6.23342985266278),
("Juliyear", -5.8289456176102075), ("Juliyear", -5.827964744554615),
("at <time-of-day>intersect by ','", -5.541263545158426), ("at <time-of-day>intersect by ','", -5.540282672102834),
("hh:mmabsorption of , after named day", -5.8289456176102075), ("hh:mmabsorption of , after named day", -5.827964744554615),
("intersect by ','<time> <part-of-day>", -5.318119993844216), ("intersect by ','<time> <part-of-day>", -5.3171391207886245),
("hh:mmon <date>", -3.792063690349167), ("hh:mmon <date>", -3.7910828172935753),
("at <time-of-day>absorption of , after named day", ("at <time-of-day>absorption of , after named day",
-6.234410725718371), -6.23342985266278),
("until <time-of-day>after lunch", -6.234410725718371), ("until <time-of-day>after lunch", -6.23342985266278),
("mm/ddyear", -5.8289456176102075), ("mm/ddyear", -5.827964744554615),
("intersect by ','<time-of-day> o'clock", -5.318119993844216), ("intersect by ','<time-of-day> o'clock", -5.3171391207886245),
("intersect<day-of-month> (ordinal)", -4.848116364598481), ("intersect<day-of-month> (ordinal)", -4.847135491542889),
("absorption of , after named daymm/dd", -6.234410725718371), ("absorption of , after named daymm/dd", -6.23342985266278),
("on <date>September", -5.318119993844216), ("on <date>September", -5.3171391207886245),
("Septemberyear", -5.8289456176102075), ("Septemberyear", -5.827964744554615),
("<day-of-month> (ordinal)intersect by 'of', 'from', 's", ("<day-of-month> (ordinal)intersect by 'of', 'from', 's",
-5.541263545158426), -5.540282672102834),
("at <time-of-day>on <date>", -4.36260854881678), ("at <time-of-day>on <date>", -4.361627675761188),
("intersectintersect", -4.0943445622221), ("intersectintersect", -4.093363689166509),
("<day-of-month> (ordinal)Februar", -5.135798437050262), ("<day-of-month> (ordinal)Februar", -5.13481756399467),
("dayweek", -5.135798437050262), ("dayweek", -5.13481756399467),
("intersect by ','Juli", -5.541263545158426), ("intersect by ','Juli", -5.540282672102834),
("absorption of , after named daythe <day-of-month> (ordinal)", ("absorption of , after named daythe <day-of-month> (ordinal)",
-6.234410725718371), -6.23342985266278),
("weekyear", -5.8289456176102075), ("weekyear", -5.827964744554615),
("hh:mmin|during the <part-of-day>", -5.318119993844216), ("hh:mmin|during the <part-of-day>", -5.3171391207886245),
("Marzyear", -6.234410725718371), ("Marzyear", -6.23342985266278),
("tomorrowat <time-of-day>", -5.8289456176102075), ("tomorrowat <time-of-day>", -5.827964744554615),
("<hour-of-day> <integer> (as relative minutes)on <date>", ("<hour-of-day> <integer> (as relative minutes)on <date>",
-6.234410725718371), -6.23342985266278),
("Donnerstag<time-of-day> - <time-of-day> (interval)", ("Donnerstag<time-of-day> - <time-of-day> (interval)",
-6.234410725718371), -6.23342985266278),
("Donnerstag<datetime> - <datetime> (interval)", ("Donnerstag<datetime> - <datetime> (interval)",
-6.234410725718371), -6.23342985266278),
("Sonntaglast <cycle>", -6.234410725718371), ("Sonntaglast <cycle>", -6.23342985266278),
("at <time-of-day>tomorrow", -6.234410725718371), ("at <time-of-day>tomorrow", -6.23342985266278),
("about <time-of-day>in|during the <part-of-day>", ("about <time-of-day>in|during the <part-of-day>",
-5.8289456176102075), -5.827964744554615),
("half <integer> (german style hour-of-day)on <date>", ("half <integer> (german style hour-of-day)on <date>",
-6.234410725718371), -6.23342985266278),
("this <part-of-day>at <time-of-day>", -5.8289456176102075), ("this <part-of-day>at <time-of-day>", -5.827964744554615),
("<datetime> - <datetime> (interval)Juli", -5.8289456176102075), ("<datetime> - <datetime> (interval)Juli", -5.827964744554615),
("after lunch<hour-of-day> <integer> (as relative minutes)", ("after lunch<hour-of-day> <integer> (as relative minutes)",
-5.8289456176102075), -5.827964744554615),
("<day-of-month> (ordinal)Marz", -6.234410725718371), ("<day-of-month> (ordinal)Marz", -6.23342985266278),
("last <cycle> of <time>year", -5.8289456176102075), ("last <cycle> of <time>year", -5.827964744554615),
("<named-month> <day-of-month> (non ordinal)year", ("<named-month> <day-of-month> (non ordinal)year",
-6.234410725718371), -6.23342985266278),
("<day-of-month> (non ordinal) <named-month>year", ("<day-of-month> (non ordinal) <named-month>year",
-6.234410725718371)], -6.23342985266278)],
n = 426}, n = 426},
koData = koData =
ClassData{prior = -1.4591557093847622, unseen = -6.056784013228625, ClassData{prior = -1.4651344228276666, unseen = -6.049733455231958,
likelihoods = likelihoods =
HashMap.fromList HashMap.fromList
[("Juli<day-of-month> (non ordinal) <named-month>", [("Juli<day-of-month> (non ordinal) <named-month>",
-5.3612921657094255), -5.354224998486333),
("absorption of , after named daythe <day-of-month> (non ordinal)", ("absorption of , after named daythe <day-of-month> (non ordinal)",
-5.3612921657094255), -5.354224998486333),
("<datetime> - <datetime> (interval)year", -5.3612921657094255), ("<datetime> - <datetime> (interval)year", -5.354224998486333),
("dayhour", -4.66814498514948), ("dayhour", -4.661077817926388),
("<named-month> <day-of-month> (non ordinal)Juli", ("<named-month> <day-of-month> (non ordinal)Juli",
-5.3612921657094255), -5.354224998486333),
("daymonth", -3.4894899888078337), ("daymonth", -3.4824228215847413),
("monthday", -4.955827057601261), ("monthday", -4.948759890378168),
("monthyear", -5.3612921657094255), ("monthyear", -5.354224998486333),
("yearhour", -5.3612921657094255), ("yearhour", -5.354224998486333),
("after lunchat <time-of-day>", -4.955827057601261), ("after lunchat <time-of-day>", -4.948759890378168),
("mm/dduntil <time-of-day>", -4.955827057601261), ("mm/dduntil <time-of-day>", -4.948759890378168),
("until <time-of-day>year", -4.955827057601261), ("until <time-of-day>year", -4.948759890378168),
("<day-of-month> (ordinal)Dienstag", -4.955827057601261), ("<day-of-month> (ordinal)Dienstag", -4.948759890378168),
("absorption of , after named dayFebruar", -4.2626798770413155), ("absorption of , after named dayFebruar", -4.255612709818223),
("on <date>Februar", -5.3612921657094255), ("on <date>Februar", -5.354224998486333),
("intersect by 'of', 'from', 'syear", -4.66814498514948), ("intersect by 'of', 'from', 'syear", -4.661077817926388),
("<time-of-day> am|pmintersect", -3.6565440734709997), ("<time-of-day> am|pmintersect", -3.6494769062479073),
("intersect<time> <part-of-day>", -5.3612921657094255), ("intersect<time> <part-of-day>", -5.354224998486333),
("<time-of-day> o'clockafter lunch", -5.3612921657094255), ("<time-of-day> o'clockafter lunch", -5.354224998486333),
("<day-of-month> (ordinal)Mittwoch", -5.3612921657094255), ("<day-of-month> (ordinal)Mittwoch", -5.354224998486333),
("after lunch<time-of-day> o'clock", -5.3612921657094255), ("after lunch<time-of-day> o'clock", -5.354224998486333),
("absorption of , after named dayhh:mm", -5.3612921657094255), ("absorption of , after named dayhh:mm", -5.354224998486333),
("<time-of-day> am|pmintersect by ','", -4.108529197214057), ("<time-of-day> am|pmintersect by ','", -4.101462029990965),
("<time-of-day> o'clock<time> <part-of-day>", ("<time-of-day> o'clock<time> <part-of-day>",
-4.44500143383527), -4.437934266612178),
("<time-of-day> am|pmFreitag", -4.955827057601261), ("<time-of-day> am|pmFreitag", -4.948759890378168),
("mm/ddhh:mm", -4.44500143383527), ("mm/ddhh:mm", -4.437934266612178),
("monthhour", -5.3612921657094255), ("monthhour", -5.354224998486333),
("on <date>between <datetime> and <datetime> (interval)", ("on <date>between <datetime> and <datetime> (interval)",
-5.3612921657094255), -5.354224998486333),
("todayat <time-of-day>", -5.3612921657094255), ("todayat <time-of-day>", -5.354224998486333),
("Donnerstagfrom <datetime> - <datetime> (interval)", ("Donnerstagfrom <datetime> - <datetime> (interval)",
-4.955827057601261), -4.948759890378168),
("on <date>between <time-of-day> and <time-of-day> (interval)", ("on <date>between <time-of-day> and <time-of-day> (interval)",
-5.3612921657094255), -5.354224998486333),
("dayday", -3.9749978045895347), ("dayday", -3.9679306373664422),
("<time-of-day> am|pmabsorption of , after named day", ("<time-of-day> am|pmabsorption of , after named day",
-4.955827057601261), -4.948759890378168),
("hourhour", -3.857214768933151), ("hourhour", -3.8501476017100584),
("Donnerstagfrom <time-of-day> - <time-of-day> (interval)", ("Donnerstagfrom <time-of-day> - <time-of-day> (interval)",
-4.66814498514948), -4.661077817926388),
("Donnerstagafter <time-of-day>", -5.3612921657094255), ("Donnerstagafter <time-of-day>", -5.354224998486333),
("dayyear", -3.2818506240295893), ("dayyear", -3.274783456806497),
("minutemonth", -3.4153820166541116), ("minutemonth", -3.4824228215847413),
("Aprilyear", -5.3612921657094255), ("Aprilyear", -5.354224998486333),
("Dienstagafter <time-of-day>", -5.3612921657094255), ("Dienstagafter <time-of-day>", -5.354224998486333),
("intersect<day-of-month>(ordinal) <named-month>", ("intersect<day-of-month>(ordinal) <named-month>",
-4.66814498514948), -4.661077817926388),
("Donnerstaghh:mm", -5.3612921657094255), ("Donnerstaghh:mm", -5.354224998486333),
("<day-of-month> (ordinal)Juli", -4.955827057601261), ("<day-of-month> (ordinal)Juli", -4.948759890378168),
("<day-of-month> (ordinal)hh:mm", -4.44500143383527), ("<day-of-month> (ordinal)hh:mm", -4.437934266612178),
("<named-month> <day-of-month> (non ordinal)August", ("<named-month> <day-of-month> (non ordinal)August",
-5.3612921657094255), -5.354224998486333),
("August<day-of-month> (non ordinal) <named-month>", ("August<day-of-month> (non ordinal) <named-month>",
-5.3612921657094255), -5.354224998486333),
("at <time-of-day>intersect", -4.2626798770413155), ("at <time-of-day>intersect", -4.255612709818223),
("on <date>from <time-of-day> - <time-of-day> (interval)", ("on <date>from <time-of-day> - <time-of-day> (interval)",
-4.955827057601261), -4.948759890378168),
("Donnerstagbetween <time-of-day> and <time-of-day> (interval)", ("Donnerstagbetween <time-of-day> and <time-of-day> (interval)",
-5.3612921657094255), -5.354224998486333),
("dayminute", -2.7222348360941666), ("dayminute", -2.715167668871074),
("on <date>from <datetime> - <datetime> (interval)", ("on <date>from <datetime> - <datetime> (interval)",
-5.3612921657094255), -5.354224998486333),
("Donnerstagbetween <datetime> and <datetime> (interval)", ("Donnerstagbetween <datetime> and <datetime> (interval)",
-5.3612921657094255), -5.354224998486333),
("until <time-of-day>Juli", -5.3612921657094255), ("until <time-of-day>Juli", -5.354224998486333),
("intersectSeptember", -3.751854253275325), ("intersectSeptember", -3.744787086052232),
("minuteday", -2.365559892155434), ("minuteday", -2.3584927249323417),
("intersect by ','September", -4.66814498514948), ("intersect by ','September", -4.661077817926388),
("at <time-of-day>intersect by ','", -4.66814498514948), ("at <time-of-day>intersect by ','", -4.661077817926388),
("at <time-of-day>Freitag", -5.3612921657094255), ("at <time-of-day>Freitag", -5.354224998486333),
("at <time-of-day>absorption of , after named day", ("at <time-of-day>absorption of , after named day",
-5.3612921657094255), -5.354224998486333),
("year<time> <part-of-day>", -5.3612921657094255), ("year<time> <part-of-day>", -5.354224998486333),
("mm/ddyear", -3.857214768933151), ("mm/ddyear", -3.8501476017100584),
("intersect<day-of-month> (ordinal)", -4.66814498514948), ("intersect<day-of-month> (ordinal)", -4.661077817926388),
("<day-of-month> (ordinal)intersect by 'of', 'from', 's", ("<day-of-month> (ordinal)intersect by 'of', 'from', 's",
-4.955827057601261), -4.948759890378168),
("intersectintersect", -4.66814498514948), ("intersectintersect", -4.661077817926388),
("Donnerstag<part-of-day> of <time>", -5.3612921657094255), ("Donnerstag<part-of-day> of <time>", -5.354224998486333),
("<day-of-month> (ordinal)April", -5.3612921657094255), ("<day-of-month> (ordinal)April", -5.354224998486333),
("<hour-of-day> <integer> (as relative minutes)Juli",
-5.3612921657094255),
("Donnerstag<time-of-day> - <time-of-day> (interval)", ("Donnerstag<time-of-day> - <time-of-day> (interval)",
-5.3612921657094255), -5.354224998486333),
("after <time-of-day>year", -5.3612921657094255), ("after <time-of-day>year", -5.354224998486333),
("on <date>after <time-of-day>", -5.3612921657094255), ("on <date>after <time-of-day>", -5.354224998486333),
("tomorrownoon", -5.3612921657094255)], ("tomorrownoon", -5.354224998486333)],
n = 129}}), n = 128}}),
("<ordinal> <cycle> of <time>", ("<ordinal> <cycle> of <time>",
Classifier{okData = Classifier{okData =
ClassData{prior = 0.0, unseen = -2.4849066497880004, ClassData{prior = 0.0, unseen = -2.4849066497880004,
@ -1118,7 +1115,7 @@ classifiers
n = 2}}), n = 2}}),
("time-of-day (latent)", ("time-of-day (latent)",
Classifier{okData = Classifier{okData =
ClassData{prior = -0.5679840376059393, ClassData{prior = -0.5455111817538806,
unseen = -3.9889840465642745, unseen = -3.9889840465642745,
likelihoods = likelihoods =
HashMap.fromList HashMap.fromList
@ -1126,13 +1123,12 @@ classifiers
("integer (0..19)", -2.3608540011180215)], ("integer (0..19)", -2.3608540011180215)],
n = 51}, n = 51},
koData = koData =
ClassData{prior = -0.8362480242006186, ClassData{prior = -0.866418901833982, unseen = -3.6888794541139363,
unseen = -3.7376696182833684,
likelihoods = likelihoods =
HashMap.fromList HashMap.fromList
[("integer (numeric)", -0.27958486221916157), [("integer (numeric)", -0.262364264467491),
("integer (0..19)", -1.410986973710262)], ("integer (0..19)", -1.466337068793427)],
n = 39}}), n = 37}}),
("year", ("year",
Classifier{okData = Classifier{okData =
ClassData{prior = -8.338160893905101e-2, ClassData{prior = -8.338160893905101e-2,
@ -2016,22 +2012,17 @@ classifiers
likelihoods = HashMap.fromList [], n = 0}}), likelihoods = HashMap.fromList [], n = 0}}),
("<hour-of-day> <integer> (as relative minutes)", ("<hour-of-day> <integer> (as relative minutes)",
Classifier{okData = Classifier{okData =
ClassData{prior = -0.6931471805599453, unseen = -2.772588722239781, ClassData{prior = 0.0, unseen = -2.639057329615259,
likelihoods = likelihoods =
HashMap.fromList HashMap.fromList
[("hour", -0.916290731874155), [("hour", -0.7731898882334817),
("at <time-of-day>integer (numeric)", -2.0149030205422647), ("at <time-of-day>integer (numeric)", -1.8718021769015913),
("<time-of-day> o'clockinteger (numeric)", ("<time-of-day> o'clockinteger (numeric)",
-1.0986122886681098)], -0.9555114450274363)],
n = 5}, n = 5},
koData = koData =
ClassData{prior = -0.6931471805599453, unseen = -2.772588722239781, ClassData{prior = -infinity, unseen = -1.3862943611198906,
likelihoods = likelihoods = HashMap.fromList [], n = 0}}),
HashMap.fromList
[("time-of-day (latent)integer (0..19)", -2.0149030205422647),
("time-of-day (latent)integer (numeric)", -1.0986122886681098),
("hour", -0.916290731874155)],
n = 5}}),
("this <time>", ("this <time>",
Classifier{okData = Classifier{okData =
ClassData{prior = 0.0, unseen = -2.70805020110221, ClassData{prior = 0.0, unseen = -2.70805020110221,

View File

@ -60,10 +60,10 @@ classifiers
likelihoods = HashMap.fromList [], n = 0}}), likelihoods = HashMap.fromList [], n = 0}}),
("integer (numeric)", ("integer (numeric)",
Classifier{okData = Classifier{okData =
ClassData{prior = -0.7801585575495751, unseen = -5.181783550292085, ClassData{prior = -0.7740538191727457, unseen = -5.19295685089021,
likelihoods = HashMap.fromList [("", 0.0)], n = 176}, likelihoods = HashMap.fromList [("", 0.0)], n = 178},
koData = koData =
ClassData{prior = -0.6131044728864089, ClassData{prior = -0.6182992897635128,
unseen = -5.3471075307174685, unseen = -5.3471075307174685,
likelihoods = HashMap.fromList [("", 0.0)], n = 208}}), likelihoods = HashMap.fromList [("", 0.0)], n = 208}}),
("<duration> hence|ago", ("<duration> hence|ago",
@ -133,8 +133,8 @@ classifiers
likelihoods = HashMap.fromList [], n = 0}}), likelihoods = HashMap.fromList [], n = 0}}),
("integer (20..90)", ("integer (20..90)",
Classifier{okData = Classifier{okData =
ClassData{prior = 0.0, unseen = -1.0986122886681098, ClassData{prior = 0.0, unseen = -1.3862943611198906,
likelihoods = HashMap.fromList [("", 0.0)], n = 1}, likelihoods = HashMap.fromList [("", 0.0)], n = 2},
koData = koData =
ClassData{prior = -infinity, unseen = -0.6931471805599453, ClassData{prior = -infinity, unseen = -0.6931471805599453,
likelihoods = HashMap.fromList [], n = 0}}), likelihoods = HashMap.fromList [], n = 0}}),
@ -248,24 +248,25 @@ classifiers
likelihoods = HashMap.fromList [("", 0.0)], n = 19}}), likelihoods = HashMap.fromList [("", 0.0)], n = 19}}),
("at <time-of-day>", ("at <time-of-day>",
Classifier{okData = Classifier{okData =
ClassData{prior = -0.10919929196499197, ClassData{prior = -0.10536051565782628,
unseen = -4.7535901911063645, unseen = -4.787491742782046,
likelihoods = likelihoods =
HashMap.fromList HashMap.fromList
[("noon|midnight|EOD|end of day", -3.6463198396951406), [("noon|midnight|EOD|end of day", -3.6805112044434196),
("integer after|past <hour-of-day>", -3.6463198396951406), ("integer after|past <hour-of-day>", -3.6805112044434196),
("half after|past <hour-of-day>", -4.051784947803305), ("half after|past <hour-of-day>", -4.085976312551584),
("time-of-day (latent)", -1.8004931491968097), ("time-of-day (latent)", -1.7346010553881064),
("hhmm (latent)", -3.3586377672433594), ("hhmm (latent)", -3.392829131991639),
("<time-of-day> am|pm", -1.749199854809259), ("<time-of-day> am|pm", -1.7833912195575383),
("hh:mm", -3.1354942159291497), ("hh:mm", -3.169685580677429),
("about|exactly <time-of-day>", -3.6463198396951406), ("about|exactly <time-of-day>", -3.6805112044434196),
("hour", -1.16141318990714), ("hour", -1.1415373333851437),
("<time-of-day> sharp|exactly", -4.051784947803305), ("<time-of-day> sharp|exactly", -4.085976312551584),
("minute", -1.8545603704670852)], ("minute", -1.8887517352153647)],
n = 52}, n = 54},
koData = koData =
ClassData{prior = -2.268683541318364, unseen = -3.1780538303479458, ClassData{prior = -2.3025850929940455,
unseen = -3.1780538303479458,
likelihoods = likelihoods =
HashMap.fromList HashMap.fromList
[("time-of-day (latent)", -1.1895840668738362), [("time-of-day (latent)", -1.1895840668738362),
@ -343,11 +344,12 @@ classifiers
n = 4}}), n = 4}}),
("integer (0..19)", ("integer (0..19)",
Classifier{okData = Classifier{okData =
ClassData{prior = -2.469261259037152e-2, ClassData{prior = -2.409755157906053e-2,
unseen = -3.7376696182833684, unseen = -3.7612001156935624,
likelihoods = HashMap.fromList [("", 0.0)], n = 40}, likelihoods = HashMap.fromList [("", 0.0)], n = 41},
koData = koData =
ClassData{prior = -3.713572066704308, unseen = -1.0986122886681098, ClassData{prior = -3.7376696182833684,
unseen = -1.0986122886681098,
likelihoods = HashMap.fromList [("", 0.0)], n = 1}}), likelihoods = HashMap.fromList [("", 0.0)], n = 1}}),
("between <time-of-day> and <time-of-day> (interval)", ("between <time-of-day> and <time-of-day> (interval)",
Classifier{okData = Classifier{okData =
@ -532,13 +534,15 @@ classifiers
n = 3}}), n = 3}}),
("one twenty two", ("one twenty two",
Classifier{okData = Classifier{okData =
ClassData{prior = -infinity, unseen = -0.6931471805599453, ClassData{prior = -infinity, unseen = -1.0986122886681098,
likelihoods = HashMap.fromList [], n = 0}, likelihoods = HashMap.fromList [], n = 0},
koData = koData =
ClassData{prior = 0.0, unseen = -1.6094379124341003, ClassData{prior = 0.0, unseen = -2.0794415416798357,
likelihoods = likelihoods =
HashMap.fromList [("integer (numeric)integer (numeric)", 0.0)], HashMap.fromList
n = 3}}), [("integer (numeric)integer (numeric)", -0.3364722366212129),
("integer (0..19)integer (20..90)", -1.252762968495368)],
n = 5}}),
("intersect", ("intersect",
Classifier{okData = Classifier{okData =
ClassData{prior = -0.4634795031687923, unseen = -6.169610732491456, ClassData{prior = -0.4634795031687923, unseen = -6.169610732491456,
@ -1021,15 +1025,22 @@ classifiers
likelihoods = HashMap.fromList [], n = 0}}), likelihoods = HashMap.fromList [], n = 0}}),
("<hour-of-day> <integer>", ("<hour-of-day> <integer>",
Classifier{okData = Classifier{okData =
ClassData{prior = -infinity, unseen = -1.0986122886681098, ClassData{prior = -0.40546510810816444,
likelihoods = HashMap.fromList [], n = 0}, unseen = -2.1972245773362196,
likelihoods =
HashMap.fromList
[("at <time-of-day>integer (20..90)", -1.3862943611198906),
("hour", -0.9808292530117262),
("at <time-of-day>integer (numeric)", -1.3862943611198906)],
n = 2},
koData = koData =
ClassData{prior = 0.0, unseen = -1.6094379124341003, ClassData{prior = -1.0986122886681098,
unseen = -1.9459101490553135,
likelihoods = likelihoods =
HashMap.fromList HashMap.fromList
[("about|exactly <time-of-day>integer (numeric)", [("about|exactly <time-of-day>integer (numeric)",
-0.6931471805599453), -1.0986122886681098),
("hour", -0.6931471805599453)], ("hour", -1.0986122886681098)],
n = 1}}), n = 1}}),
("nth <time> of <time>", ("nth <time> of <time>",
Classifier{okData = Classifier{okData =
@ -1348,14 +1359,14 @@ classifiers
n = 1}}), n = 1}}),
("time-of-day (latent)", ("time-of-day (latent)",
Classifier{okData = Classifier{okData =
ClassData{prior = -0.5500463369192721, unseen = -4.143134726391533, ClassData{prior = -0.5363047090669756, unseen = -4.174387269895637,
likelihoods = likelihoods =
HashMap.fromList HashMap.fromList
[("integer (numeric)", -0.10178269430994236), [("integer (numeric)", -0.1158318155251217),
("integer (0..19)", -2.3353749158170367)], ("integer (0..19)", -2.2129729343043585)],
n = 60}, n = 62},
koData = koData =
ClassData{prior = -0.8602012652231115, ClassData{prior = -0.8792494601938059,
unseen = -3.8501476017100584, unseen = -3.8501476017100584,
likelihoods = likelihoods =
HashMap.fromList [("integer (numeric)", -2.197890671877523e-2)], HashMap.fromList [("integer (numeric)", -2.197890671877523e-2)],

View File

@ -95,69 +95,64 @@ classifiers
likelihoods = HashMap.fromList [], n = 0}}), likelihoods = HashMap.fromList [], n = 0}}),
("intersect by `de`", ("intersect by `de`",
Classifier{okData = Classifier{okData =
ClassData{prior = -0.16362942378180204, ClassData{prior = -0.10536051565782628,
unseen = -4.890349128221754, unseen = -4.859812404361672,
likelihoods = likelihoods =
HashMap.fromList HashMap.fromList
[("Miercoleseste|en un <cycle>", -4.189654742026425), [("Miercoleseste|en un <cycle>", -4.1588830833596715),
("el <day-of-month> (non ordinal)intersect by `de`", ("el <day-of-month> (non ordinal)intersect by `de`",
-3.784189633918261), -3.7534179752515073),
("daymonth", -1.8382794848629478), ("daymonth", -1.807507826196194),
("monthyear", -3.784189633918261), ("monthyear", -3.7534179752515073),
("el <day-of-month> (non ordinal)Abril", -4.189654742026425), ("el <day-of-month> (non ordinal)Abril", -4.1588830833596715),
("Marteseste|en un <cycle>", -4.189654742026425), ("Marteseste|en un <cycle>", -4.1588830833596715),
("Miercolesel <cycle> (proximo|que viene)", -4.189654742026425), ("Miercolesel <cycle> (proximo|que viene)",
("el <time>Marzo", -3.784189633918261), -4.1588830833596715),
("el <time>Marzo", -3.7534179752515073),
("el <day-of-month> (non ordinal)Septiembre", ("el <day-of-month> (non ordinal)Septiembre",
-4.189654742026425), -4.1588830833596715),
("Miercolesel proximo <cycle> ", -4.189654742026425), ("Miercolesel proximo <cycle> ", -4.1588830833596715),
("Luneseste|en un <cycle>", -4.189654742026425), ("Luneseste|en un <cycle>", -4.1588830833596715),
("dayyear", -2.243744592971112), ("dayyear", -2.2129729343043585),
("dd-dd <month>(interval)year", -4.189654742026425), ("dd-dd <month>(interval)year", -4.1588830833596715),
("el <time>el <cycle> (proximo|que viene)", -4.189654742026425), ("el <time>el <cycle> (proximo|que viene)",
("el <day-of-month> (non ordinal)Julio", -4.189654742026425), -4.1588830833596715),
("el <time>year", -3.784189633918261), ("el <day-of-month> (non ordinal)Julio", -4.1588830833596715),
("Septiembreyear", -4.189654742026425), ("el <time>year", -3.7534179752515073),
("el <time>la <cycle> pasado", -4.189654742026425), ("Septiembreyear", -4.1588830833596715),
("day of month (1st)Marzo", -3.2733640101522705), ("el <time>la <cycle> pasado", -4.1588830833596715),
("el <day-of-month> de <named-month>year", -3.784189633918261), ("day of month (1st)Marzo", -3.242592351485517),
("el <time>este|en un <cycle>", -3.784189633918261), ("el <day-of-month> de <named-month>year", -3.7534179752515073),
("Mayoyear", -4.189654742026425), ("el <time>este|en un <cycle>", -3.7534179752515073),
("<day-of-month> de <named-month>year", -3.784189633918261), ("Mayoyear", -4.1588830833596715),
("two time tokens separated by \",\"year", -3.4965075614664802), ("<day-of-month> de <named-month>year", -3.7534179752515073),
("el <day-of-month> (non ordinal)Febrero", -4.189654742026425), ("two time tokens separated by \",\"year", -3.4657359027997265),
("el <day-of-month> (non ordinal)Febrero", -4.1588830833596715),
("two time tokens separated by \",\"intersect by `de`", ("two time tokens separated by \",\"intersect by `de`",
-4.189654742026425), -4.1588830833596715),
("dayweek", -2.4849066497880004), ("dayweek", -2.4541349911212467),
("intersect by `de`year", -3.4965075614664802), ("intersect by `de`year", -3.4657359027997265),
("el <day-of-month> (non ordinal)Marzo", -3.4965075614664802), ("el <day-of-month> (non ordinal)Marzo", -3.4657359027997265),
("Domingola <cycle> pasado", -4.189654742026425), ("Domingola <cycle> pasado", -4.1588830833596715),
("two time tokens separated by \",\"Septiembre", ("two time tokens separated by \",\"Septiembre",
-4.189654742026425), -4.1588830833596715),
("el <day-of-month> (non ordinal)Mayo", -3.4965075614664802)], ("el <day-of-month> (non ordinal)Mayo", -3.4657359027997265)],
n = 45}, n = 45},
koData = koData =
ClassData{prior = -1.890850371872286, unseen = -4.07753744390572, ClassData{prior = -2.3025850929940455, unseen = -3.891820298110627,
likelihoods = likelihoods =
HashMap.fromList HashMap.fromList
[("monthyear", -3.367295829986474), [("monthyear", -3.1780538303479458),
("Julioyear", -3.367295829986474), ("Julioyear", -3.1780538303479458),
("hourmonth", -2.9618307218783095), ("hourmonth", -2.772588722239781),
("monthmonth", -3.367295829986474), ("monthmonth", -3.1780538303479458),
("a las <time-of-day>Julio", -3.367295829986474), ("a las <time-of-day>Julio", -3.1780538303479458),
("dayyear", -3.367295829986474), ("dayyear", -3.1780538303479458),
("minutemonth", -2.9618307218783095), ("<day-of-month> de <named-month>year", -3.1780538303479458),
("<hour-of-day> <integer> (as relative minutes)Julio", ("a las <time-of-day>Enero", -3.1780538303479458),
-3.367295829986474),
("<day-of-month> de <named-month>year", -3.367295829986474),
("intersect by `de`year", -3.367295829986474),
("a las <time-of-day>Enero", -3.367295829986474),
("<hour-of-day> <integer> (as relative minutes)intersect by `de`",
-3.367295829986474),
("de <datetime> - <datetime> (interval)Enero", ("de <datetime> - <datetime> (interval)Enero",
-3.367295829986474), -3.1780538303479458)],
("minuteyear", -3.367295829986474)], n = 5}}),
n = 8}}),
("n pasados <cycle>", ("n pasados <cycle>",
Classifier{okData = Classifier{okData =
ClassData{prior = 0.0, unseen = -2.1972245773362196, ClassData{prior = 0.0, unseen = -2.1972245773362196,
@ -369,66 +364,62 @@ classifiers
n = 4}}), n = 4}}),
("intersect", ("intersect",
Classifier{okData = Classifier{okData =
ClassData{prior = -0.2578291093020998, ClassData{prior = -0.2113090936672069, unseen = -4.624972813284271,
unseen = -4.6443908991413725,
likelihoods = likelihoods =
HashMap.fromList HashMap.fromList
[("<day-of-month> de <named-month>in the <part-of-day>", [("<day-of-month> de <named-month>in the <part-of-day>",
-3.9415818076696905), -3.9219733362813143),
("dayhour", -1.9956716586143772), ("dayhour", -1.9760631872260008),
("Lunesin the <part-of-day>", -3.9415818076696905), ("Lunesin the <part-of-day>", -3.9219733362813143),
("tomorrowin the <part-of-day>", -3.9415818076696905), ("tomorrowin the <part-of-day>", -3.9219733362813143),
("el <day-of-month> de <named-month>in the <part-of-day>", ("el <day-of-month> de <named-month>in the <part-of-day>",
-3.9415818076696905), -3.9219733362813143),
("hourhour", -3.0252910757955354), ("hourhour", -3.005682604407159),
("now<hour-of-day> minus quarter (as relative minutes)", ("now<hour-of-day> minus quarter (as relative minutes)",
-3.9415818076696905), -3.9219733362813143),
("dayyear", -3.0252910757955354), ("dayyear", -3.005682604407159),
("a las <time-of-day>in the <part-of-day>", ("a las <time-of-day>in the <part-of-day>",
-2.6888188391743224), -2.6692103677859462),
("intersectin the <part-of-day>", -3.9415818076696905), ("intersectin the <part-of-day>", -3.9219733362813143),
("<named-month> <day-of-month>del <year>", -3.9415818076696905), ("<named-month> <day-of-month>del <year>", -3.9219733362813143),
("minutehour", -2.33214389523559), ("minutehour", -2.312535423847214),
("intersect by `de`in the <part-of-day>", -3.9415818076696905), ("intersect by `de`in the <part-of-day>", -3.9219733362813143),
("now<hour-of-day> and <relative minutes>", ("now<hour-of-day> and <relative minutes>",
-3.9415818076696905), -3.9219733362813143),
("<hour-of-day> and halfin the <part-of-day>", ("<hour-of-day> and halfin the <part-of-day>",
-3.536116699561526), -3.5165082281731497),
("tomorrowa las <time-of-day>", -3.536116699561526), ("tomorrowa las <time-of-day>", -3.5165082281731497),
("Miercoles<time-of-day> <part-of-day>", -3.9415818076696905), ("Miercoles<time-of-day> <part-of-day>", -3.9219733362813143),
("Miercoles<dim time> de la manana", -3.9415818076696905), ("Miercoles<dim time> de la manana", -3.9219733362813143),
("dayminute", -3.0252910757955354), ("dayminute", -3.005682604407159),
("<named-month> <day-of-month>el <time>", -3.9415818076696905), ("<named-month> <day-of-month>el <time>", -3.9219733362813143),
("Miercolesa las <time-of-day>", -3.9415818076696905), ("Miercolesa las <time-of-day>", -3.9219733362813143),
("el <time>in the <part-of-day>", -3.9415818076696905), ("el <time>in the <part-of-day>", -3.9219733362813143),
("Miercolesintersect", -3.9415818076696905), ("Miercolesintersect", -3.9219733362813143),
("dd[/-]mmyear", -3.536116699561526), ("dd[/-]mmyear", -3.5165082281731497),
("nowa las <time-of-day>", -3.536116699561526), ("nowa las <time-of-day>", -3.5165082281731497),
("<hour-of-day> and quarterin the <part-of-day>", ("<hour-of-day> and quarterin the <part-of-day>",
-3.0252910757955354), -3.005682604407159),
("yesterdayin the <part-of-day>", -3.9415818076696905)], ("yesterdayin the <part-of-day>", -3.9219733362813143)],
n = 34}, n = 34},
koData = koData =
ClassData{prior = -1.4816045409242156, unseen = -4.02535169073515, ClassData{prior = -1.6582280766035324, unseen = -3.912023005428146,
likelihoods = likelihoods =
HashMap.fromList HashMap.fromList
[("hourday", -3.3141860046725258), [("hourday", -3.1986731175506815),
("dayhour", -2.6210388241125804), ("dayhour", -2.505525936990736),
("<day-of-month> de <named-month>a las <time-of-day>", ("<day-of-month> de <named-month>a las <time-of-day>",
-3.3141860046725258), -3.1986731175506815),
("<time-of-day> am|pm<day-of-month> de <named-month>", ("<time-of-day> am|pm<day-of-month> de <named-month>",
-3.3141860046725258), -3.1986731175506815),
("monthhour", -2.908720896564361), ("monthhour", -2.793208009442517),
("now<hour-of-day> and <relative minutes>", ("now<hour-of-day> and <relative minutes>",
-3.3141860046725258), -3.1986731175506815),
("Diciembrea las <time-of-day>", -3.3141860046725258), ("Diciembrea las <time-of-day>", -3.1986731175506815),
("dayminute", -2.908720896564361), ("dayminute", -2.793208009442517),
("Febreroin the <part-of-day>", -3.3141860046725258), ("Febreroin the <part-of-day>", -3.1986731175506815),
("nowa las <time-of-day>", -2.6210388241125804), ("nowa las <time-of-day>", -2.505525936990736)],
("<hour-of-day> <integer> (as relative minutes)year", n = 8}}),
-2.908720896564361),
("minuteyear", -2.908720896564361)],
n = 10}}),
("Miercoles", ("Miercoles",
Classifier{okData = Classifier{okData =
ClassData{prior = 0.0, unseen = -2.3978952727983707, ClassData{prior = 0.0, unseen = -2.3978952727983707,
@ -583,34 +574,31 @@ classifiers
likelihoods = HashMap.fromList [], n = 0}}), likelihoods = HashMap.fromList [], n = 0}}),
("el <time>", ("el <time>",
Classifier{okData = Classifier{okData =
ClassData{prior = -5.406722127027582e-2, ClassData{prior = -2.7398974188114388e-2,
unseen = -4.499809670330265, unseen = -4.477336814478207,
likelihoods = likelihoods =
HashMap.fromList HashMap.fromList
[("Martes", -3.39002408106403), [("Martes", -3.367295829986474),
("<named-month|named-day> past", -3.39002408106403), ("<named-month|named-day> past", -3.367295829986474),
("dd[/-]mm", -3.1023420086122493), ("dd[/-]mm", -3.079613757534693),
("intersect by `de`", -2.2914117923959205), ("intersect by `de`", -2.268683541318364),
("<day-of-month> de <named-month>", -2.0907410969337694), ("<day-of-month> de <named-month>", -2.068012845856213),
("<time-of-day> <part-of-day>", -3.7954891891721947), ("<time-of-day> <part-of-day>", -3.7727609380946383),
("intersect", -3.7954891891721947), ("intersect", -3.7727609380946383),
("Miercoles", -3.39002408106403), ("Miercoles", -3.367295829986474),
("Domingo", -3.39002408106403), ("Lunes", -3.7954891891721947), ("Domingo", -3.367295829986474), ("Lunes", -3.7727609380946383),
("day", -0.9622758451159785), ("year", -3.7954891891721947), ("day", -0.9395475940384223), ("year", -3.7727609380946383),
("day of month (1st)", -3.39002408106403), ("day of month (1st)", -3.367295829986474),
("<named-month|named-day> next", -3.7954891891721947), ("<named-month|named-day> next", -3.7727609380946383),
("hour", -3.39002408106403)], ("hour", -3.367295829986474)],
n = 36}, n = 36},
koData = koData =
ClassData{prior = -2.9444389791664407, ClassData{prior = -3.6109179126442243,
unseen = -3.1354942159291497, unseen = -2.9444389791664407,
likelihoods = likelihoods =
HashMap.fromList HashMap.fromList
[("noon", -2.3978952727983707), ("hour", -2.3978952727983707), [("noon", -2.1972245773362196), ("hour", -2.1972245773362196)],
("minute", -2.3978952727983707), n = 1}}),
("<hour-of-day> <integer> (as relative minutes)",
-2.3978952727983707)],
n = 2}}),
("Septiembre", ("Septiembre",
Classifier{okData = Classifier{okData =
ClassData{prior = 0.0, unseen = -1.0986122886681098, ClassData{prior = 0.0, unseen = -1.0986122886681098,
@ -741,7 +729,7 @@ classifiers
likelihoods = HashMap.fromList [("", 0.0)], n = 2}}), likelihoods = HashMap.fromList [("", 0.0)], n = 2}}),
("time-of-day (latent)", ("time-of-day (latent)",
Classifier{okData = Classifier{okData =
ClassData{prior = -0.3272129112084162, ClassData{prior = -0.20359895524123955,
unseen = -3.5263605246161616, unseen = -3.5263605246161616,
likelihoods = likelihoods =
HashMap.fromList HashMap.fromList
@ -749,12 +737,13 @@ classifiers
("number (0..15)", -0.3610133455373305)], ("number (0..15)", -0.3610133455373305)],
n = 31}, n = 31},
koData = koData =
ClassData{prior = -1.276293465905562, unseen = -2.70805020110221, ClassData{prior = -1.6916760106710724,
unseen = -2.3025850929940455,
likelihoods = likelihoods =
HashMap.fromList HashMap.fromList
[("integer (numeric)", -0.3364722366212129), [("integer (numeric)", -0.587786664902119),
("number (0..15)", -1.252762968495368)], ("number (0..15)", -0.8109302162163288)],
n = 12}}), n = 7}}),
("<hour-of-day> and <relative minutes>", ("<hour-of-day> and <relative minutes>",
Classifier{okData = Classifier{okData =
ClassData{prior = -0.3364722366212129, unseen = -3.332204510175204, ClassData{prior = -0.3364722366212129, unseen = -3.332204510175204,
@ -1108,29 +1097,26 @@ classifiers
likelihoods = HashMap.fromList [], n = 0}}), likelihoods = HashMap.fromList [], n = 0}}),
("<datetime> - <datetime> (interval)", ("<datetime> - <datetime> (interval)",
Classifier{okData = Classifier{okData =
ClassData{prior = -1.252762968495368, unseen = -2.70805020110221, ClassData{prior = -0.916290731874155, unseen = -2.5649493574615367,
likelihoods = likelihoods =
HashMap.fromList HashMap.fromList
[("minuteminute", -1.9459101490553135), [("minuteminute", -1.791759469228055),
("dayday", -1.9459101490553135), ("dayday", -1.791759469228055),
("hh(:|.|h)mm (time-of-day)hh(:|.|h)mm (time-of-day)", ("hh(:|.|h)mm (time-of-day)hh(:|.|h)mm (time-of-day)",
-1.9459101490553135), -1.791759469228055),
("<day-of-month> de <named-month><day-of-month> de <named-month>", ("<day-of-month> de <named-month><day-of-month> de <named-month>",
-1.9459101490553135)], -1.791759469228055)],
n = 2}, n = 2},
koData = koData =
ClassData{prior = -0.3364722366212129, unseen = -3.044522437723423, ClassData{prior = -0.5108256237659907, unseen = -2.70805020110221,
likelihoods = likelihoods =
HashMap.fromList HashMap.fromList
[("monthday", -2.3025850929940455), [("monthday", -1.9459101490553135),
("dayyear", -1.8971199848858813), ("dayyear", -1.540445040947149),
("Diciembre<day-of-month> de <named-month>", ("Diciembre<day-of-month> de <named-month>",
-2.3025850929940455), -1.9459101490553135),
("dd[/-]mmyear", -1.8971199848858813), ("dd[/-]mmyear", -1.540445040947149)],
("<hour-of-day> <integer> (as relative minutes)year", n = 3}}),
-1.8971199848858813),
("minuteyear", -1.8971199848858813)],
n = 5}}),
("Enero", ("Enero",
Classifier{okData = Classifier{okData =
ClassData{prior = 0.0, unseen = -1.0986122886681098, ClassData{prior = 0.0, unseen = -1.0986122886681098,
@ -1248,17 +1234,6 @@ classifiers
koData = koData =
ClassData{prior = -infinity, unseen = -0.6931471805599453, ClassData{prior = -infinity, unseen = -0.6931471805599453,
likelihoods = HashMap.fromList [], n = 0}}), likelihoods = HashMap.fromList [], n = 0}}),
("<hour-of-day> <integer> (as relative minutes)",
Classifier{okData =
ClassData{prior = -infinity, unseen = -1.0986122886681098,
likelihoods = HashMap.fromList [], n = 0},
koData =
ClassData{prior = 0.0, unseen = -2.5649493574615367,
likelihoods =
HashMap.fromList
[("time-of-day (latent)integer (numeric)", -0.6931471805599453),
("hour", -0.6931471805599453)],
n = 5}}),
("ce <time>", ("ce <time>",
Classifier{okData = Classifier{okData =
ClassData{prior = 0.0, unseen = -2.772588722239781, ClassData{prior = 0.0, unseen = -2.772588722239781,

File diff suppressed because it is too large Load Diff

View File

@ -348,218 +348,214 @@ classifiers
n = 2}}), n = 2}}),
("intersect", ("intersect",
Classifier{okData = Classifier{okData =
ClassData{prior = -0.5133540701193493, unseen = -6.089044875446846, ClassData{prior = -0.5019253742957266,
unseen = -6.0844994130751715,
likelihoods = likelihoods =
HashMap.fromList HashMap.fromList
[("u <named-day><day-of-month>(ordinal) <named-month>", [("u <named-day><day-of-month>(ordinal) <named-month>",
-5.393627546352362), -5.389071729816501),
("hourday", -4.988162438244197), ("hourday", -4.983606621708336),
("dd.mm<time-of-day> o'clock", -5.393627546352362), ("dd.mm<time-of-day> o'clock", -5.389071729816501),
("dayhour", -2.719478896925833), ("dayhour", -2.714923080389972),
("daymonth", -3.6018680771243066), ("daymonth", -3.597312260588446),
("u <named-day><named-month> <day-of-month> (ordinal)", ("u <named-day><named-month> <day-of-month> (ordinal)",
-5.393627546352362), -5.389071729816501),
("monthyear", -3.6888794541139363), ("monthyear", -3.6843236375780757),
("Wednesdayintersect", -5.393627546352362), ("Wednesdayintersect", -5.389071729816501),
("christmasyear", -5.393627546352362), ("christmasyear", -5.389071729816501),
("Wednesdaynext <cycle>", -5.393627546352362), ("Wednesdaynext <cycle>", -5.389071729816501),
("u <named-day><time-of-day> o'clock", -5.393627546352362), ("u <named-day><time-of-day> o'clock", -5.389071729816501),
("<time> <part-of-day>u <named-day>", -4.007333185232471), ("<time> <part-of-day>u <named-day>", -4.00277736869661),
("intersectat <time-of-day>", -5.393627546352362), ("intersectat <time-of-day>", -5.389071729816501),
("Saturday<time> <part-of-day>", -4.988162438244197), ("Saturday<time> <part-of-day>", -4.983606621708336),
("day before yesterdayat <time-of-day>", -4.700480365792417), ("day before yesterdayat <time-of-day>", -4.695924549256556),
("Marchyear", -5.393627546352362), ("Marchyear", -5.389071729816501),
("<named-day> <day-of-month> (ordinal)September", ("<named-day> <day-of-month> (ordinal)September",
-4.988162438244197), -4.983606621708336),
("Saturdayat <time-of-day>", -4.988162438244197), ("Saturdayat <time-of-day>", -4.983606621708336),
("between <time-of-day> and <time-of-day> (interval)u <named-day>", ("between <time-of-day> and <time-of-day> (interval)u <named-day>",
-4.700480365792417), -4.695924549256556),
("between <datetime> and <datetime> (interval)u <named-day>", ("between <datetime> and <datetime> (interval)u <named-day>",
-4.700480365792417), -4.695924549256556),
("last <cycle>u <named-day>", -5.393627546352362), ("last <cycle>u <named-day>", -5.389071729816501),
("<time-of-day> o'clocktonight", -5.393627546352362), ("<time-of-day> o'clocktonight", -5.389071729816501),
("from <datetime> - <datetime> (interval)u <named-day>", ("from <datetime> - <datetime> (interval)u <named-day>",
-5.393627546352362), -5.389071729816501),
("today<time> <part-of-day>", -4.988162438244197), ("today<time> <part-of-day>", -4.983606621708336),
("todayat <time-of-day>", -5.393627546352362), ("todayat <time-of-day>", -5.389071729816501),
("Thursday<time> timezone", -5.393627546352362), ("Thursday<time> timezone", -5.389071729816501),
("from <time-of-day> - <time-of-day> (interval)u <named-day>", ("from <time-of-day> - <time-of-day> (interval)u <named-day>",
-5.393627546352362), -5.389071729816501),
("next <cycle>u <named-day>", -5.393627546352362), ("next <cycle>u <named-day>", -5.389071729816501),
("dayday", -3.142335747745866), ("dayday", -3.1377799312100056),
("hourhour", -5.393627546352362), ("hourhour", -5.389071729816501),
("intersect<named-month> <day-of-month> (non ordinal)", ("intersect<named-month> <day-of-month> (non ordinal)",
-4.988162438244197), -4.983606621708336),
("Thursdaybetween <time-of-day> and <time-of-day> (interval)", ("Thursdaybetween <time-of-day> and <time-of-day> (interval)",
-4.700480365792417), -4.695924549256556),
("dayyear", -3.8895501495760874), ("dayyear", -3.884994333040227),
("Thursdaybetween <datetime> and <datetime> (interval)", ("Thursdaybetween <datetime> and <datetime> (interval)",
-4.700480365792417), -4.695924549256556),
("<time-of-day> o'clocktomorrow", -5.393627546352362), ("<time-of-day> o'clocktomorrow", -5.389071729816501),
("Thursday<time> <part-of-day>", -4.988162438244197), ("Thursday<time> <part-of-day>", -4.983606621708336),
("<time-of-day> - <time-of-day> (interval)u <named-day>", ("<time-of-day> - <time-of-day> (interval)u <named-day>",
-4.477336814478207), -4.472780997942346),
("<day-of-month>(ordinal) <named-month>year", ("<day-of-month>(ordinal) <named-month>year",
-4.988162438244197), -4.983606621708336),
("<datetime> - <datetime> (interval)u <named-day>", ("<datetime> - <datetime> (interval)u <named-day>",
-4.477336814478207), -4.472780997942346),
("absorption of , after named day<day-of-month>(ordinal) <named-month>", ("absorption of , after named day<day-of-month>(ordinal) <named-month>",
-4.007333185232471), -4.00277736869661),
("day after tomorrow<time> <part-of-day>", -5.393627546352362), ("day after tomorrow<time> <part-of-day>", -5.389071729816501),
("Thursdayhh:mm", -5.393627546352362), ("Thursdayhh:mm", -5.389071729816501),
("minutemonth", -4.477336814478207), ("minutemonth", -4.472780997942346),
("day after tomorrowat <time-of-day>", -4.988162438244197), ("day after tomorrowat <time-of-day>", -4.983606621708336),
("absorption of , after named day<named-month> <day-of-month> (ordinal)", ("absorption of , after named day<named-month> <day-of-month> (ordinal)",
-4.477336814478207), -4.472780997942346),
("absorption of , after named day<named-month> <day-of-month> (non ordinal)", ("absorption of , after named day<named-month> <day-of-month> (non ordinal)",
-4.988162438244197), -4.983606621708336),
("<named-day> <day-of-month> (ordinal)February", ("<named-day> <day-of-month> (ordinal)February",
-4.140864577856994), -4.136308761321133),
("this <cycle>u <named-day>", -4.988162438244197), ("this <cycle>u <named-day>", -4.983606621708336),
("last <day-of-week> <time>year", -4.988162438244197), ("last <day-of-week> <time>year", -4.983606621708336),
("dd.mmat <time-of-day>", -4.988162438244197), ("dd.mmat <time-of-day>", -4.983606621708336),
("intersect<day-of-month>(ordinal) <named-month>", ("intersect<day-of-month>(ordinal) <named-month>",
-4.477336814478207), -4.472780997942346),
("intersect<named-month> <day-of-month> (ordinal)", ("intersect<named-month> <day-of-month> (ordinal)",
-4.988162438244197), -4.983606621708336),
("Saturday<time-of-day> o'clock", -5.393627546352362), ("Saturday<time-of-day> o'clock", -5.389071729816501),
("day before yesterday<time-of-day> o'clock", ("day before yesterday<time-of-day> o'clock",
-5.393627546352362), -5.389071729816501),
("<time> <part-of-day><named-day> <day-of-month> (ordinal)", ("<time> <part-of-day><named-day> <day-of-month> (ordinal)",
-4.477336814478207), -4.472780997942346),
("dayminute", -3.3141860046725258), ("dayminute", -3.3096301881366648),
("u <named-day>at <time-of-day>", -4.988162438244197), ("u <named-day>at <time-of-day>", -4.983606621708336),
("<time> <part-of-day>intersect", -3.52182536945077), ("<time> <part-of-day>intersect", -3.5172695529149096),
("u <named-day><time> <part-of-day>", -4.988162438244197), ("u <named-day><time> <part-of-day>", -4.983606621708336),
("Tuesdayu <named-month>", -5.393627546352362), ("Tuesdayu <named-month>", -5.389071729816501),
("intersectyear", -5.393627546352362), ("intersectyear", -5.389071729816501),
("intersectSeptember", -4.477336814478207), ("intersectSeptember", -4.472780997942346),
("<ordinal> <cycle> of <time>year", -5.393627546352362), ("<ordinal> <cycle> of <time>year", -5.389071729816501),
("minuteday", -2.0977906803480324), ("minuteday", -2.093234863812172),
("absorption of , after named dayintersect", ("absorption of , after named dayintersect",
-5.393627546352362), -5.389071729816501),
("<time> <part-of-day>intersect by \",\"", -4.477336814478207), ("<time> <part-of-day>intersect by \",\"", -4.472780997942346),
("Octoberyear", -4.295015257684252), ("Octoberyear", -4.290459441148391),
("intersect by \",\"at <time-of-day>", -4.477336814478207), ("intersect by \",\"at <time-of-day>", -4.472780997942346),
("absorption of , after named dayintersect by \",\"", ("absorption of , after named dayintersect by \",\"",
-4.295015257684252), -4.290459441148391),
("yearat <time-of-day>", -5.393627546352362), ("yearat <time-of-day>", -5.389071729816501),
("Septemberyear", -4.988162438244197), ("Septemberyear", -4.983606621708336),
("<time> <part-of-day>absorption of , after named day", ("<time> <part-of-day>absorption of , after named day",
-4.700480365792417), -4.695924549256556),
("todaytonight", -5.393627546352362), ("todaytonight", -5.389071729816501),
("weekday", -4.477336814478207), ("weekday", -4.472780997942346),
("dayweek", -5.393627546352362), ("dayweek", -5.389071729816501),
("weekyear", -4.988162438244197), ("weekyear", -4.983606621708336),
("Wednesdayu <named-month>", -5.393627546352362), ("Wednesdayu <named-month>", -5.389071729816501),
("u <named-day><named-month> <day-of-month> (non ordinal)", ("u <named-day><named-month> <day-of-month> (non ordinal)",
-5.393627546352362), -5.389071729816501),
("u <named-month>year", -4.988162438244197), ("u <named-month>year", -4.983606621708336),
("last <cycle> of <time>year", -4.988162438244197), ("last <cycle> of <time>year", -4.983606621708336),
("<day-of-month> (non ordinal) <named-month>year", ("<day-of-month> (non ordinal) <named-month>year",
-5.393627546352362), -5.389071729816501),
("yearminute", -5.393627546352362)], ("yearminute", -5.389071729816501)],
n = 158}, n = 158},
koData = koData =
ClassData{prior = -0.9125100090342491, unseen = -5.820082930352362, ClassData{prior = -0.9297914190930576, unseen = -5.796057750765372,
likelihoods = likelihoods =
HashMap.fromList HashMap.fromList
[("since <time-of-day>by <time>", -4.430816798843313), [("since <time-of-day>by <time>", -4.406719247264253),
("year<time-of-day> - <time-of-day> (interval)", ("year<time-of-day> - <time-of-day> (interval)",
-5.123963979403259), -5.099866427824199),
("hourday", -4.207673247529104), ("hourday", -4.183575695950044),
("<named-month> <day-of-month> (non ordinal)July", ("<named-month> <day-of-month> (non ordinal)July",
-5.123963979403259), -5.099866427824199),
("dayhour", -3.2521618025016674), ("dayhour", -3.228064250922607),
("July<day-of-month> (non ordinal) <named-month>", ("July<day-of-month> (non ordinal) <named-month>",
-5.123963979403259), -5.099866427824199),
("daymonth", -2.983897815906988), ("daymonth", -2.9598002643279275),
("monthday", -3.7376696182833684), ("monthday", -3.713572066704308),
("monthyear", -3.5145260669691587), ("monthyear", -3.4904285153900982),
("yearhour", -4.718498871295094), ("yearhour", -4.694401319716034),
("Wednesdayintersect", -5.123963979403259), ("Wednesdayintersect", -5.099866427824199),
("hh:mmu <named-day>", -4.02535169073515), ("hh:mmu <named-day>", -4.001254139156089),
("last <time>today", -4.430816798843313), ("last <time>today", -4.406719247264253),
("intersectat <time-of-day>", -5.123963979403259), ("intersectat <time-of-day>", -5.099866427824199),
("Marchyear", -4.718498871295094), ("Marchyear", -4.694401319716034),
("u <named-day>September", -5.123963979403259), ("u <named-day>September", -5.099866427824199),
("<named-day> <day-of-month> (ordinal)September", ("<named-day> <day-of-month> (ordinal)September",
-5.123963979403259), -5.099866427824199),
("Thursdayafter <time-of-day>", -4.207673247529104), ("Thursdayafter <time-of-day>", -4.183575695950044),
("until <time-of-day>u <named-day>", -5.123963979403259), ("until <time-of-day>u <named-day>", -5.099866427824199),
("since <time-of-day>u <named-day>", -4.718498871295094), ("since <time-of-day>u <named-day>", -4.694401319716034),
("Sundayu <named-month>", -5.123963979403259), ("Sundayu <named-month>", -5.099866427824199),
("absorption of , after named dayJuly", -4.718498871295094), ("absorption of , after named dayJuly", -4.694401319716034),
("JanuaryWednesday", -5.123963979403259), ("JanuaryWednesday", -5.099866427824199),
("Marchintersect", -5.123963979403259), ("Marchintersect", -5.099866427824199),
("dayday", -4.02535169073515), ("dayday", -4.001254139156089),
("<time> <part-of-day>at <time-of-day>", -5.123963979403259), ("<time> <part-of-day>at <time-of-day>", -5.099866427824199),
("monthmonth", -4.207673247529104), ("monthmonth", -4.183575695950044),
("hourhour", -5.123963979403259), ("hourhour", -5.099866427824199),
("<time> <part-of-day>Thursday", -5.123963979403259), ("<time> <part-of-day>Thursday", -5.099866427824199),
("Thursdaybetween <time-of-day> and <time-of-day> (interval)", ("Thursdaybetween <time-of-day> and <time-of-day> (interval)",
-4.718498871295094), -4.694401319716034),
("dayyear", -4.430816798843313), ("dayyear", -4.406719247264253),
("Thursdaybetween <datetime> and <datetime> (interval)", ("Thursdaybetween <datetime> and <datetime> (interval)",
-4.718498871295094), -4.694401319716034),
("Thursday<time> <part-of-day>", -4.718498871295094), ("Thursday<time> <part-of-day>", -4.694401319716034),
("<time-of-day> - <time-of-day> (interval)u <named-day>", ("<time-of-day> - <time-of-day> (interval)u <named-day>",
-5.123963979403259), -5.099866427824199),
("year<hour-of-day> <integer> (as relative minutes)", ("FebruaryWednesday", -5.099866427824199),
-4.718498871295094), ("monthminute", -5.099866427824199),
("FebruaryWednesday", -5.123963979403259),
("monthminute", -4.718498871295094),
("absorption of , after named day<day-of-month>(ordinal) <named-month>", ("absorption of , after named day<day-of-month>(ordinal) <named-month>",
-5.123963979403259), -5.099866427824199),
("minutemonth", -4.718498871295094), ("minutemonth", -4.694401319716034),
("MarchTuesday", -4.718498871295094), ("MarchTuesday", -4.694401319716034),
("absorption of , after named day<named-month> <day-of-month> (ordinal)", ("absorption of , after named day<named-month> <day-of-month> (ordinal)",
-5.123963979403259), -5.099866427824199),
("intersect<time-of-day> - <time-of-day> (interval)", ("intersect<time-of-day> - <time-of-day> (interval)",
-5.123963979403259), -5.099866427824199),
("absorption of , after named day<named-month> <day-of-month> (non ordinal)", ("absorption of , after named day<named-month> <day-of-month> (non ordinal)",
-4.430816798843313), -4.406719247264253),
("intersect by \",\"<time-of-day> - <time-of-day> (interval)", ("intersect by \",\"<time-of-day> - <time-of-day> (interval)",
-4.207673247529104), -4.183575695950044),
("Aprilyear", -5.123963979403259), ("Aprilyear", -5.099866427824199),
("Julynumeral to|till|before <integer> (hour-of-day)", ("Julynumeral to|till|before <integer> (hour-of-day)",
-5.123963979403259), -5.099866427824199),
("Thursdaysince <time-of-day>", -4.207673247529104), ("Thursdaysince <time-of-day>", -4.183575695950044),
("<named-month> <day-of-month> (non ordinal)August", ("<named-month> <day-of-month> (non ordinal)August",
-5.123963979403259), -5.099866427824199),
("August<day-of-month> (non ordinal) <named-month>", ("August<day-of-month> (non ordinal) <named-month>",
-5.123963979403259), -5.099866427824199),
("dayminute", -3.109060958860994), ("dayminute", -3.0849634072819336),
("<time> <part-of-day>intersect", -4.718498871295094), ("<time> <part-of-day>intersect", -4.694401319716034),
("Tuesdayu <named-month>", -5.123963979403259), ("Tuesdayu <named-month>", -5.099866427824199),
("intersectyear", -4.207673247529104), ("intersectyear", -4.183575695950044),
("after <time-of-day>by <time>", -4.430816798843313), ("after <time-of-day>by <time>", -4.406719247264253),
("intersectSeptember", -4.718498871295094), ("intersectSeptember", -4.694401319716034),
("minuteday", -3.109060958860994), ("minuteday", -3.0849634072819336),
("absorption of , after named dayintersect", ("absorption of , after named dayintersect",
-5.123963979403259), -5.099866427824199),
("<time> <part-of-day>intersect by \",\"", -5.123963979403259), ("<time> <part-of-day>intersect by \",\"", -5.099866427824199),
("intersect by \",\"at <time-of-day>", -4.207673247529104), ("intersect by \",\"at <time-of-day>", -4.183575695950044),
("absorption of , after named dayintersect by \",\"", ("absorption of , after named dayintersect by \",\"",
-5.123963979403259), -5.099866427824199),
("yearat <time-of-day>", -5.123963979403259), ("yearat <time-of-day>", -5.099866427824199),
("absorption of , after named daySeptember", ("absorption of , after named daySeptember",
-4.718498871295094), -4.694401319716034),
("MarchMarch", -4.430816798843313), ("MarchMarch", -4.406719247264253),
("July<hour-of-day> <integer> (as relative minutes)", ("after <time-of-day>u <named-day>", -4.694401319716034),
-5.123963979403259), ("Wednesdayu <named-month>", -5.099866427824199),
("after <time-of-day>u <named-day>", -4.718498871295094), ("absorption of , after named dayFebruary", -5.099866427824199),
("Wednesdayu <named-month>", -5.123963979403259), ("hh:mmby <time>", -4.406719247264253),
("absorption of , after named dayFebruary", -5.123963979403259), ("u <named-month>year", -4.001254139156089),
("hh:mmby <time>", -4.430816798843313), ("minutesecond", -3.4904285153900982),
("u <named-month>year", -4.02535169073515), ("Tuesdayintersect", -5.099866427824199),
("minutesecond", -3.5145260669691587), ("JanuaryTuesday", -5.099866427824199),
("Tuesdayintersect", -5.123963979403259), ("Sundayintersect", -5.099866427824199),
("JanuaryTuesday", -5.123963979403259), ("Mondayu <named-month>", -5.099866427824199)],
("Sundayintersect", -5.123963979403259), n = 103}}),
("yearminute", -4.718498871295094),
("Mondayu <named-month>", -5.123963979403259)],
n = 106}}),
("early morning", ("early morning",
Classifier{okData = Classifier{okData =
ClassData{prior = 0.0, unseen = -1.791759469228055, ClassData{prior = 0.0, unseen = -1.791759469228055,
@ -1090,23 +1086,22 @@ classifiers
n = 3}}), n = 3}}),
("time-of-day (latent)", ("time-of-day (latent)",
Classifier{okData = Classifier{okData =
ClassData{prior = -0.9444616088408514, unseen = -3.713572066704308, ClassData{prior = -0.898999234764094, unseen = -3.713572066704308,
likelihoods = likelihoods =
HashMap.fromList HashMap.fromList
[("integer (numeric)", -0.2231435513142097), [("integer (numeric)", -0.2231435513142097),
("integer (0..19)", -2.0794415416798357)], ("integer (0..19)", -2.0794415416798357)],
n = 35}, n = 35},
koData = koData =
ClassData{prior = -0.49247648509779407, ClassData{prior = -0.5225216635291818, unseen = -4.04305126783455,
unseen = -4.110873864173311,
likelihoods = likelihoods =
HashMap.fromList HashMap.fromList
[("integer (numeric)", -0.4307829160924542), [("integer (numeric)", -0.4700036292457356),
("integer (20..90)", -2.995732273553991), ("integer (20..90)", -2.9267394020670396),
("few", -3.4011973816621555), ("few", -3.332204510175204),
("integer (0..19)", -1.455287232606842), ("integer (0..19)", -1.3862943611198906),
("a pair", -3.4011973816621555)], ("a pair", -3.332204510175204)],
n = 55}}), n = 51}}),
("for <duration>", ("for <duration>",
Classifier{okData = Classifier{okData =
ClassData{prior = -0.11441035117774422, ClassData{prior = -0.11441035117774422,
@ -1596,36 +1591,32 @@ classifiers
likelihoods = HashMap.fromList [], n = 0}}), likelihoods = HashMap.fromList [], n = 0}}),
("<datetime> - <datetime> (interval)", ("<datetime> - <datetime> (interval)",
Classifier{okData = Classifier{okData =
ClassData{prior = -0.6931471805599453, ClassData{prior = -0.5596157879354228, unseen = -3.367295829986474,
unseen = -3.4339872044851463,
likelihoods = likelihoods =
HashMap.fromList HashMap.fromList
[("since <time-of-day>hh:mm", -2.70805020110221), [("since <time-of-day>hh:mm", -2.639057329615259),
("minuteminute", -1.455287232606842), ("minuteminute", -1.3862943611198906),
("hh:mmhh:mm", -1.791759469228055), ("hh:mmhh:mm", -1.7227665977411035),
("dayday", -2.3025850929940455), ("dayday", -2.2335922215070942),
("<named-month> <day-of-month> (non ordinal)<named-month> <day-of-month> (non ordinal)", ("<named-month> <day-of-month> (non ordinal)<named-month> <day-of-month> (non ordinal)",
-2.3025850929940455), -2.2335922215070942),
("after <time-of-day>hh:mm", -2.70805020110221)], ("after <time-of-day>hh:mm", -2.639057329615259)],
n = 8}, n = 8},
koData = koData =
ClassData{prior = -0.6931471805599453, ClassData{prior = -0.8472978603872037,
unseen = -3.4339872044851463, unseen = -3.2188758248682006,
likelihoods = likelihoods =
HashMap.fromList HashMap.fromList
[("<named-month> <day-of-month> (non ordinal)July", [("<named-month> <day-of-month> (non ordinal)July",
-2.70805020110221), -2.4849066497880004),
("daymonth", -2.3025850929940455), ("daymonth", -2.0794415416798357),
("minuteminute", -1.791759469228055), ("minuteminute", -1.5686159179138452),
("after <time-of-day>intersect", -2.70805020110221), ("after <time-of-day>intersect", -2.4849066497880004),
("year<hour-of-day> <integer> (as relative minutes)", ("hh:mmintersect", -2.0794415416798357),
-2.3025850929940455),
("hh:mmintersect", -2.3025850929940455),
("<named-month> <day-of-month> (non ordinal)August", ("<named-month> <day-of-month> (non ordinal)August",
-2.70805020110221), -2.4849066497880004),
("since <time-of-day>intersect", -2.70805020110221), ("since <time-of-day>intersect", -2.4849066497880004)],
("yearminute", -2.3025850929940455)], n = 6}}),
n = 8}}),
("Tuesday", ("Tuesday",
Classifier{okData = Classifier{okData =
ClassData{prior = 0.0, unseen = -2.4849066497880004, ClassData{prior = 0.0, unseen = -2.4849066497880004,
@ -1935,17 +1926,6 @@ classifiers
("October", -1.1631508098056809), ("October", -1.1631508098056809),
("month", -0.8266785731844679)], ("month", -0.8266785731844679)],
n = 6}}), n = 6}}),
("<hour-of-day> <integer> (as relative minutes)",
Classifier{okData =
ClassData{prior = -infinity, unseen = -1.0986122886681098,
likelihoods = HashMap.fromList [], n = 0},
koData =
ClassData{prior = 0.0, unseen = -2.3978952727983707,
likelihoods =
HashMap.fromList
[("time-of-day (latent)integer (numeric)", -0.6931471805599453),
("hour", -0.6931471805599453)],
n = 4}}),
("this <time>", ("this <time>",
Classifier{okData = Classifier{okData =
ClassData{prior = -0.1670540846631662, ClassData{prior = -0.1670540846631662,

View File

@ -121,25 +121,23 @@ classifiers
likelihoods = HashMap.fromList [], n = 0}}), likelihoods = HashMap.fromList [], n = 0}}),
("at <time-of-day>", ("at <time-of-day>",
Classifier{okData = Classifier{okData =
ClassData{prior = -0.6325225587435105, ClassData{prior = -0.6234672599219555, unseen = -4.770684624465665,
unseen = -4.7535901911063645,
likelihoods = likelihoods =
HashMap.fromList HashMap.fromList
[("midnight", -4.051784947803305), [("midnight", -4.069026754237811),
("<time> timezone", -4.051784947803305), ("<time> timezone", -4.069026754237811),
("<integer 0 12> del <part of day>", -2.665490586683414), ("<integer 0 12> del <part of day>", -2.68273239311792),
("<integer> (latent time-of-day)", -1.5668782980153044), ("<integer> (latent time-of-day)", -1.5432981099295555),
("hh(:|h)mm (time-of-day)", -2.1058747987479913), ("hh(:|h)mm (time-of-day)", -2.1231166051824975),
("<hour-of-day> and <relative minutes>", -4.051784947803305), ("<hour-of-day> and <relative minutes>", -4.069026754237811),
("noon", -3.6463198396951406), ("noon", -3.6635616461296463),
("hh <relative-minutes> del pomeriggio(time-of-day)", ("hh <relative-minutes> del pomeriggio(time-of-day)",
-3.6463198396951406), -3.6635616461296463),
("<hour-of-day> minus quart", -4.051784947803305), ("<hour-of-day> minus quart", -4.069026754237811),
("hour", -1.2185716037470886), ("minute", -1.8004931491968097)], ("hour", -1.2068258733083426), ("minute", -1.8177349556313156)],
n = 51}, n = 52},
koData = koData =
ClassData{prior = -0.7576857016975165, ClassData{prior = -0.768048488733063, unseen = -4.6443908991413725,
unseen = -4.6443908991413725,
likelihoods = likelihoods =
HashMap.fromList HashMap.fromList
[("una", -3.9415818076696905), [("una", -3.9415818076696905),
@ -555,7 +553,7 @@ classifiers
likelihoods = HashMap.fromList [("", 0.0)], n = 1}}), likelihoods = HashMap.fromList [("", 0.0)], n = 1}}),
("<integer> (latent time-of-day)", ("<integer> (latent time-of-day)",
Classifier{okData = Classifier{okData =
ClassData{prior = -1.0986122886681098, ClassData{prior = -1.0822184788924334,
unseen = -3.8066624897703196, unseen = -3.8066624897703196,
likelihoods = likelihoods =
HashMap.fromList HashMap.fromList
@ -563,15 +561,15 @@ classifiers
("number (0..19)", -1.3862943611198906)], ("number (0..19)", -1.3862943611198906)],
n = 41}, n = 41},
koData = koData =
ClassData{prior = -0.40546510810816444, ClassData{prior = -0.41376391092285947,
unseen = -4.454347296253507, unseen = -4.430816798843313,
likelihoods = likelihoods =
HashMap.fromList HashMap.fromList
[("integer (numeric)", -0.3317773923170052), [("integer (numeric)", -0.34130316389087856),
("number (21..29 31..39 41..49 51..59 61..69 71..79 81..89 91..99)", ("number (21..29 31..39 41..49 51..59 61..69 71..79 81..89 91..99)",
-3.3440389678222067), -3.3202283191284883),
("number (0..19)", -1.3981288187668934)], ("number (0..19)", -1.374318170073175)],
n = 82}}), n = 80}}),
("nth <time> of <time>", ("nth <time> of <time>",
Classifier{okData = Classifier{okData =
ClassData{prior = -0.4700036292457356, unseen = -2.833213344056216, ClassData{prior = -0.4700036292457356, unseen = -2.833213344056216,
@ -1452,203 +1450,194 @@ classifiers
likelihoods = HashMap.fromList [], n = 0}}), likelihoods = HashMap.fromList [], n = 0}}),
("two time tokens in a row", ("two time tokens in a row",
Classifier{okData = Classifier{okData =
ClassData{prior = -0.35863380842406534, ClassData{prior = -0.3402001067352274, unseen = -6.021023349349527,
unseen = -6.030685260261263,
likelihoods = likelihoods =
HashMap.fromList HashMap.fromList
[("Lunedi<day-of-month> <named-month>", -4.929666231562589), [("Lunedi<day-of-month> <named-month>", -4.919980925828125),
("<datetime> - <datetime> (interval)Giovedi", ("<datetime> - <datetime> (interval)Giovedi",
-5.3351313396707525), -5.32544603393629),
("intersect by \"di\", \"della\", \"del\"year (1000-2100 not latent)", ("intersect by \"di\", \"della\", \"del\"year (1000-2100 not latent)",
-4.929666231562589), -4.919980925828125),
("dayhour", -3.3202283191284883), ("dayhour", -3.3105430133940246),
("Febbraioyear (1000-2100 not latent)", -5.3351313396707525), ("Febbraioyear (1000-2100 not latent)", -5.32544603393629),
("Settembreat <time-of-day>", -4.641984159110808), ("Settembreat <time-of-day>", -4.632298853376344),
("daymonth", -2.562542617430972), ("daymonth", -2.552857311696508),
("<named-day> <day-of-month>Settembre", -4.236519051002643), ("<named-day> <day-of-month>Settembre", -4.22683374526818),
("day of month (1st)intersect by \"di\", \"della\", \"del\"", ("day of month (1st)intersect by \"di\", \"della\", \"del\"",
-4.641984159110808), -4.632298853376344),
("Ottobreyear (1000-2100 not latent)", -4.082368371175385), ("Ottobreyear (1000-2100 not latent)", -4.072683065440922),
("monthyear", -3.195065176174482), ("monthyear", -3.1853798704400185),
("day of month (1st)two time tokens in a row", ("day of month (1st)two time tokens in a row",
-4.236519051002643), -4.22683374526818),
("<ordinal> <cycle> of <time>year (1000-2100 not latent)", ("<ordinal> <cycle> of <time>year (1000-2100 not latent)",
-5.3351313396707525), -5.32544603393629),
("christmasyear (1000-2100 not latent)", -4.929666231562589), ("christmasyear (1000-2100 not latent)", -4.919980925828125),
("<named-day> <day-of-month>two time tokens in a row", ("<named-day> <day-of-month>two time tokens in a row",
-4.929666231562589), -4.919980925828125),
("tomorrowdopo <time>", -5.3351313396707525), ("tomorrowdopo <time>", -5.32544603393629),
("Giovedidalle <time-of-day> alle <time-of-day> (interval)", ("Giovedidalle <time-of-day> alle <time-of-day> (interval)",
-4.929666231562589), -4.919980925828125),
("intersect by \"di\", \"della\", \"del\"<day-of-month> <named-month>", ("intersect by \"di\", \"della\", \"del\"<day-of-month> <named-month>",
-4.641984159110808), -4.632298853376344),
("two time tokens separated by `di`Settembre", ("two time tokens separated by `di`Settembre",
-4.641984159110808), -4.632298853376344),
("day of month (1st)Maggio", -5.3351313396707525), ("day of month (1st)Maggio", -5.32544603393629),
("tra il <integer> e il <integer> (interval)Luglio", ("tra il <integer> e il <integer> (interval)Luglio",
-4.929666231562589), -4.919980925828125),
("day of month (1st)Mercoledi", -5.3351313396707525), ("day of month (1st)Mercoledi", -5.32544603393629),
("dayday", -2.770181982209216), ("dayday", -2.7604966764747525),
("il <time>year (1000-2100 not latent)", -5.3351313396707525), ("il <time>year (1000-2100 not latent)", -5.32544603393629),
("Giovediat <time-of-day>", -5.3351313396707525), ("Giovediat <time-of-day>", -5.32544603393629),
("entro il <integer>Aprile", -5.3351313396707525), ("entro il <integer>Aprile", -5.32544603393629),
("dayyear", -3.195065176174482), ("dayyear", -3.1853798704400185),
("tomorrowdalle <time-of-day> alle <time-of-day> (interval)", ("tomorrowdalle <time-of-day> alle <time-of-day> (interval)",
-5.3351313396707525), -5.32544603393629),
("hh(:|h)mm (time-of-day)two time tokens in a row", ("hh(:|h)mm (time-of-day)two time tokens in a row",
-4.929666231562589), -4.919980925828125),
("dd[/-]mmat <time-of-day>", -5.3351313396707525), ("dd[/-]mmat <time-of-day>", -5.32544603393629),
("dal <integer> al <integer> (interval)Luglio", ("dal <integer> al <integer> (interval)Luglio",
-4.929666231562589), -4.919980925828125),
("tomorrowdopo le <time-of-day>", -4.929666231562589), ("tomorrowdopo le <time-of-day>", -4.919980925828125),
("monthminute", -4.641984159110808), ("monthminute", -4.632298853376344),
("minutemonth", -3.8310539428944788), ("minutemonth", -3.821368637160015),
("il <time>Marzo", -5.3351313396707525), ("il <time>Marzo", -5.32544603393629),
("<named-day> <day-of-month>Febbraio", -4.418840607796598), ("<named-day> <day-of-month>Febbraio", -4.409155302062135),
("hh(:|h)mm (time-of-day)<named-day> <day-of-month>", ("hh(:|h)mm (time-of-day)<named-day> <day-of-month>",
-5.3351313396707525), -5.32544603393629),
("Settembreyear (1000-2100 not latent)", -4.929666231562589), ("Settembreyear (1000-2100 not latent)", -4.919980925828125),
("Mercoledi<day-of-month> <named-month>", -5.3351313396707525), ("Mercoledi<day-of-month> <named-month>", -5.32544603393629),
("il <day-of-month> <named-month>at <time-of-day>", ("il <day-of-month> <named-month>at <time-of-day>",
-5.3351313396707525), -5.32544603393629),
("day of month (1st)Marzo", -4.929666231562589), ("day of month (1st)Marzo", -4.919980925828125),
("Sabato<day-of-month> <named-month>", -5.3351313396707525), ("Sabato<day-of-month> <named-month>", -5.32544603393629),
("il <day-of-month>Settembre", -5.3351313396707525), ("il <day-of-month>Settembre", -5.32544603393629),
("Venerdi<day-of-month> <named-month>", -4.418840607796598), ("Venerdi<day-of-month> <named-month>", -4.409155302062135),
("<day-of-month> <named-month>at <time-of-day>", ("<day-of-month> <named-month>at <time-of-day>",
-4.641984159110808), -4.632298853376344),
("il <day-of-month> <named-month>year (1000-2100 not latent)", ("il <day-of-month> <named-month>year (1000-2100 not latent)",
-5.3351313396707525), -5.32544603393629),
("two time tokens separated by `di`year (1000-2100 not latent)", ("two time tokens separated by `di`year (1000-2100 not latent)",
-4.929666231562589), -4.919980925828125),
("last <cycle> of <time>year (1000-2100 not latent)", ("last <cycle> of <time>year (1000-2100 not latent)",
-4.641984159110808), -4.632298853376344),
("day of month (1st)two time tokens separated by `di`", ("day of month (1st)two time tokens separated by `di`",
-4.641984159110808), -4.632298853376344),
("il <day-of-month>Febbraio", -4.418840607796598), ("il <day-of-month>Febbraio", -4.409155302062135),
("Gennaioyear (1000-2100 not latent)", -4.641984159110808), ("Gennaioyear (1000-2100 not latent)", -4.632298853376344),
("the day after tomorrowat <time-of-day>", -4.929666231562589), ("the day after tomorrowat <time-of-day>", -4.919980925828125),
("two time tokens in a rowyear (1000-2100 not latent)", ("two time tokens in a rowyear (1000-2100 not latent)",
-4.641984159110808), -4.632298853376344),
("il <day-of-month>two time tokens in a row", ("il <day-of-month>two time tokens in a row",
-4.929666231562589), -4.919980925828125),
("Giovedientro <time>", -5.3351313396707525), ("Giovedientro <time>", -5.32544603393629),
("at <time-of-day>two time tokens in a row", ("at <time-of-day>two time tokens in a row",
-4.929666231562589), -4.919980925828125),
("dayminute", -2.9372360668723823), ("dayminute", -2.927550761137919),
("Venerditwo time tokens in a row", -4.929666231562589), ("Venerditwo time tokens in a row", -4.919980925828125),
("two time tokens in a rowat <time-of-day>", ("two time tokens in a rowat <time-of-day>", -4.22683374526818),
-4.236519051002643), ("minuteday", -3.1282214566000697),
("minuteday", -3.137906762334534),
("two time tokens separated by `di`<day-of-month> <named-month>", ("two time tokens separated by `di`<day-of-month> <named-month>",
-4.641984159110808), -4.632298853376344),
("il <time>at <time-of-day>", -5.3351313396707525), ("il <time>at <time-of-day>", -5.32544603393629),
("Sabatoat <time-of-day>", -5.3351313396707525), ("Sabatoat <time-of-day>", -5.32544603393629),
("intersect by \"di\", \"della\", \"del\"Settembre", ("intersect by \"di\", \"della\", \"del\"Settembre",
-4.641984159110808), -4.632298853376344),
("Domenica<day-of-month> <named-month>", -5.3351313396707525), ("Domenica<day-of-month> <named-month>", -5.32544603393629),
("last <day-of-week> of <time>year (1000-2100 not latent)", ("last <day-of-week> of <time>year (1000-2100 not latent)",
-5.3351313396707525), -5.32544603393629),
("immacolata concezioneat <time-of-day>", -5.3351313396707525), ("immacolata concezioneat <time-of-day>", -5.32544603393629),
("at <time-of-day><named-day> <day-of-month>", ("at <time-of-day><named-day> <day-of-month>",
-5.3351313396707525), -5.32544603393629),
("day of month (1st)Martedi", -4.418840607796598), ("day of month (1st)Martedi", -4.409155302062135),
("at <time-of-day>Venerdi", -5.3351313396707525), ("at <time-of-day>Venerdi", -5.32544603393629),
("weekyear", -4.929666231562589), ("weekyear", -4.919980925828125),
("Giovedi<time> timezone", -5.3351313396707525), ("Giovedi<time> timezone", -5.32544603393629),
("Gioveditra il <datetime> e il <datetime> (interval)", ("Gioveditra il <datetime> e il <datetime> (interval)",
-4.929666231562589), -4.919980925828125),
("two time tokens in a rowSettembre", -4.929666231562589), ("two time tokens in a rowSettembre", -4.919980925828125),
("tomorrowat <time-of-day>", -5.3351313396707525), ("tomorrowat <time-of-day>", -5.32544603393629),
("two time tokens in a row<day-of-month> <named-month>", ("two time tokens in a row<day-of-month> <named-month>",
-4.929666231562589), -4.919980925828125),
("Giovedientro le <time-of-day>", -5.3351313396707525), ("Giovedientro le <time-of-day>", -5.32544603393629),
("two time tokens in a rowin <named-month>", ("two time tokens in a rowin <named-month>",
-4.641984159110808), -4.632298853376344),
("Dicembreyear (1000-2100 not latent)", -4.641984159110808), ("Dicembreyear (1000-2100 not latent)", -4.632298853376344),
("Marzoyear (1000-2100 not latent)", -5.3351313396707525), ("Marzoyear (1000-2100 not latent)", -5.32544603393629),
("Martediin <named-month>", -4.641984159110808), ("Martediin <named-month>", -4.632298853376344),
("the day after tomorrowentro le <time-of-day>", ("the day after tomorrowentro le <time-of-day>",
-5.3351313396707525), -5.32544603393629),
("<day-of-month> <named-month>year (1000-2100 not latent)", ("<day-of-month> <named-month>year (1000-2100 not latent)",
-4.929666231562589), -4.919980925828125),
("commemorazione dei defuntiat <time-of-day>", ("commemorazione dei defuntiat <time-of-day>",
-5.3351313396707525), -5.32544603393629),
("il <day-of-month>Marzo", -5.3351313396707525), ("il <day-of-month>Marzo", -5.32544603393629),
("hh(:|h)mm (time-of-day)Venerdi", -5.3351313396707525)], ("hh(:|h)mm (time-of-day)Venerdi", -5.32544603393629)],
n = 153}, n = 153},
koData = koData =
ClassData{prior = -1.1994169877900753, unseen = -5.488937726156687, ClassData{prior = -1.2435036430825712, unseen = -5.438079308923196,
likelihoods = likelihoods =
HashMap.fromList HashMap.fromList
[("at <time-of-day>prossimi <unit-of-duration>", [("at <time-of-day>prossimi <unit-of-duration>",
-4.386184644822546), -4.33510971488613),
("intersect by \"di\", \"della\", \"del\"year (1000-2100 not latent)", ("intersect by \"di\", \"della\", \"del\"year (1000-2100 not latent)",
-4.098502572370764), -4.047427642434349),
("dayhour", -2.265921108622454), ("dayhour", -2.214846178686039),
("Settembreat <time-of-day>", -3.8753590210565547), ("Settembreat <time-of-day>", -3.8242840911201395),
("daymonth", -4.791649752930709), ("daymonth", -4.740574822994295),
("monthday", -4.386184644822546), ("monthday", -4.33510971488613),
("monthyear", -4.791649752930709), ("monthyear", -4.740574822994295),
("Luglio<day-of-month> <named-month>", -4.791649752930709), ("Luglio<day-of-month> <named-month>", -4.740574822994295),
("<named-day> <day-of-month>two time tokens in a row", ("<named-day> <day-of-month>two time tokens in a row",
-4.098502572370764), -4.047427642434349),
("Giovedidalle <time-of-day> alle <time-of-day> (interval)", ("Giovedidalle <time-of-day> alle <time-of-day> (interval)",
-4.791649752930709), -4.740574822994295),
("<hour-of-day> <integer> (as relative minutes)Luglio", ("monthhour", -3.6419625343261846),
-4.791649752930709), ("hourmonth", -4.33510971488613),
("monthhour", -3.6930374642626003), ("dayday", -4.740574822994295),
("hourmonth", -4.386184644822546), ("Febbraiothis <part-of-day>", -4.33510971488613),
("dayday", -4.791649752930709), ("Giovediat <time-of-day>", -4.33510971488613),
("Febbraiothis <part-of-day>", -4.386184644822546),
("Giovediat <time-of-day>", -4.386184644822546),
("tra il <datetime> e il <datetime> (interval)Luglio", ("tra il <datetime> e il <datetime> (interval)Luglio",
-4.386184644822546), -4.33510971488613),
("dayyear", -3.2875723561544357), ("dayyear", -3.2364974262180204),
("tomorrowdalle <time-of-day> alle <time-of-day> (interval)", ("tomorrowdalle <time-of-day> alle <time-of-day> (interval)",
-4.791649752930709), -4.740574822994295),
("<hour-of-day> and <relative minutes>Luglio", ("<hour-of-day> and <relative minutes>Luglio",
-4.791649752930709), -4.740574822994295),
("tomorrowstanotte", -4.791649752930709), ("tomorrowstanotte", -4.740574822994295),
("year (1000-2100 not latent)<hour-of-day> <integer> (as relative minutes)", ("dd[/-]mmat <time-of-day>", -4.740574822994295),
-4.386184644822546), ("il <day-of-month>Luglio", -4.740574822994295),
("dd[/-]mmat <time-of-day>", -4.791649752930709), ("tomorrowdopo le <time-of-day>", -4.33510971488613),
("il <day-of-month>Luglio", -4.791649752930709), ("monthminute", -4.740574822994295),
("tomorrowdopo le <time-of-day>", -4.386184644822546), ("minutemonth", -4.740574822994295),
("monthminute", -4.791649752930709),
("minutemonth", -4.386184644822546),
("il <day-of-month> <named-month>at <time-of-day>", ("il <day-of-month> <named-month>at <time-of-day>",
-4.791649752930709), -4.740574822994295),
("dopo <time>at <time-of-day>", -4.791649752930709), ("dopo <time>at <time-of-day>", -4.740574822994295),
("<day-of-month> <named-month>at <time-of-day>", ("<day-of-month> <named-month>at <time-of-day>",
-3.8753590210565547), -3.8242840911201395),
("weekmonth", -4.386184644822546), ("weekmonth", -4.33510971488613),
("two time tokens separated by `di`year (1000-2100 not latent)", ("two time tokens separated by `di`year (1000-2100 not latent)",
-4.098502572370764), -4.047427642434349),
("hourweek", -4.386184644822546), ("hourweek", -4.33510971488613),
("the day after tomorrowat <time-of-day>", -4.791649752930709), ("the day after tomorrowat <time-of-day>", -4.740574822994295),
("il <day-of-month>two time tokens in a row", ("il <day-of-month>two time tokens in a row",
-4.791649752930709), -4.740574822994295),
("Agosto<day-of-month> <named-month>", -4.791649752930709), ("Agosto<day-of-month> <named-month>", -4.740574822994295),
("dayminute", -2.999890283702655), ("dayminute", -2.9488153537662396),
("Venerditwo time tokens in a row", -4.098502572370764), ("Venerditwo time tokens in a row", -4.047427642434349),
("two time tokens in a rowat <time-of-day>", ("two time tokens in a rowat <time-of-day>",
-3.405355391810819), -3.3542804618744038),
("minuteday", -4.386184644822546), ("minuteday", -4.740574822994295),
("il <time>at <time-of-day>", -4.791649752930709), ("il <time>at <time-of-day>", -4.740574822994295),
("Giovedidopo le <time-of-day>", -4.098502572370764), ("Giovedidopo le <time-of-day>", -4.047427642434349),
("the <cycle> of <time>Ottobre", -4.386184644822546), ("the <cycle> of <time>Ottobre", -4.33510971488613),
("Gioveditra il <datetime> e il <datetime> (interval)", ("Gioveditra il <datetime> e il <datetime> (interval)",
-4.791649752930709), -4.740574822994295),
("tomorrowat <time-of-day>", -4.791649752930709), ("tomorrowat <time-of-day>", -4.740574822994295),
("<hour-of-day> <integer> (as relative minutes)Giovedi", ("Martedidopo <time>", -4.740574822994295),
-4.791649752930709), ("dopo <time>year (1000-2100 not latent)", -4.33510971488613),
("Martedidopo <time>", -4.791649752930709), ("hh(:|h)mm (time-of-day)Giovedi", -4.740574822994295),
("dopo <time>year (1000-2100 not latent)", -4.386184644822546), ("Marzoyear (1000-2100 not latent)", -4.740574822994295)],
("hh(:|h)mm (time-of-day)Giovedi", -4.791649752930709), n = 62}}),
("Marzoyear (1000-2100 not latent)", -4.791649752930709),
("yearminute", -4.386184644822546)],
n = 66}}),
("heure (grain)", ("heure (grain)",
Classifier{okData = Classifier{okData =
ClassData{prior = 0.0, unseen = -3.0910424533583156, ClassData{prior = 0.0, unseen = -3.0910424533583156,
@ -1865,30 +1854,28 @@ classifiers
likelihoods = HashMap.fromList [], n = 0}}), likelihoods = HashMap.fromList [], n = 0}}),
("<datetime> - <datetime> (interval)", ("<datetime> - <datetime> (interval)",
Classifier{okData = Classifier{okData =
ClassData{prior = -0.6931471805599453, unseen = -3.044522437723423, ClassData{prior = -0.4700036292457356,
unseen = -2.9444389791664407,
likelihoods = likelihoods =
HashMap.fromList HashMap.fromList
[("minuteminute", -1.6094379124341003), [("minuteminute", -1.5040773967762742),
("<day-of-month> <named-month><day-of-month> <named-month>", ("<day-of-month> <named-month><day-of-month> <named-month>",
-1.8971199848858813), -1.791759469228055),
("hh(:|h)mm (time-of-day)hh(:|h)mm (time-of-day)", ("hh(:|h)mm (time-of-day)hh(:|h)mm (time-of-day)",
-1.6094379124341003), -1.5040773967762742),
("dayday", -1.8971199848858813)], ("dayday", -1.791759469228055)],
n = 5}, n = 5},
koData = koData =
ClassData{prior = -0.6931471805599453, unseen = -3.044522437723423, ClassData{prior = -0.9808292530117262, unseen = -2.70805020110221,
likelihoods = likelihoods =
HashMap.fromList HashMap.fromList
[("monthday", -1.8971199848858813), [("monthday", -1.540445040947149),
("Luglio<day-of-month> <named-month>", -2.3025850929940455), ("Luglio<day-of-month> <named-month>", -1.9459101490553135),
("minuteminute", -2.3025850929940455), ("minuteminute", -1.9459101490553135),
("hh(:|h)mm (time-of-day)two time tokens in a row", ("hh(:|h)mm (time-of-day)two time tokens in a row",
-2.3025850929940455), -1.9459101490553135),
("year (1000-2100 not latent)<hour-of-day> <integer> (as relative minutes)", ("Agosto<day-of-month> <named-month>", -1.9459101490553135)],
-1.8971199848858813), n = 3}}),
("Agosto<day-of-month> <named-month>", -2.3025850929940455),
("yearminute", -1.8971199848858813)],
n = 5}}),
("<day-of-month> <named-month>", ("<day-of-month> <named-month>",
Classifier{okData = Classifier{okData =
ClassData{prior = -0.1880522315029396, unseen = -4.219507705176107, ClassData{prior = -0.1880522315029396, unseen = -4.219507705176107,
@ -2183,23 +2170,15 @@ classifiers
likelihoods = HashMap.fromList [], n = 0}}), likelihoods = HashMap.fromList [], n = 0}}),
("<hour-of-day> <integer> (as relative minutes)", ("<hour-of-day> <integer> (as relative minutes)",
Classifier{okData = Classifier{okData =
ClassData{prior = -1.6094379124341003, ClassData{prior = 0.0, unseen = -1.6094379124341003,
unseen = -1.6094379124341003,
likelihoods = likelihoods =
HashMap.fromList HashMap.fromList
[("<integer> (latent time-of-day)integer (numeric)", [("hour", -0.6931471805599453),
-0.6931471805599453), ("at <time-of-day>integer (numeric)", -0.6931471805599453)],
("hour", -0.6931471805599453)],
n = 1}, n = 1},
koData = koData =
ClassData{prior = -0.2231435513142097, ClassData{prior = -infinity, unseen = -1.0986122886681098,
unseen = -2.3978952727983707, likelihoods = HashMap.fromList [], n = 0}}),
likelihoods =
HashMap.fromList
[("<integer> (latent time-of-day)integer (numeric)",
-0.6931471805599453),
("hour", -0.6931471805599453)],
n = 4}}),
("dd-dd <month> (interval)", ("dd-dd <month> (interval)",
Classifier{okData = Classifier{okData =
ClassData{prior = 0.0, unseen = -1.6094379124341003, ClassData{prior = 0.0, unseen = -1.6094379124341003,

View File

@ -201,8 +201,7 @@ classifiers
likelihoods = HashMap.fromList [("", 0.0)], n = 32}}), likelihoods = HashMap.fromList [("", 0.0)], n = 32}}),
("intersect", ("intersect",
Classifier{okData = Classifier{okData =
ClassData{prior = -0.45983651189029134, ClassData{prior = -0.4488272263819219, unseen = -5.958424693029782,
unseen = -5.958424693029782,
likelihoods = likelihoods =
HashMap.fromList HashMap.fromList
[("intersect<hour-of-day> <integer> (as relative minutes)", [("intersect<hour-of-day> <integer> (as relative minutes)",
@ -271,68 +270,66 @@ classifiers
("day-of-weektime-of-day", -5.262690188904886)], ("day-of-weektime-of-day", -5.262690188904886)],
n = 173}, n = 173},
koData = koData =
ClassData{prior = -0.9980075895468108, unseen = -5.616771097666572, ClassData{prior = -1.017151342209129, unseen = -5.594711379601839,
likelihoods = likelihoods =
HashMap.fromList HashMap.fromList
[("year<time> \47560\51648\47561 <cycle>", -4.919980925828125), [("year<time> \47560\51648\47561 <cycle>", -4.897839799950911),
("day-of-weekintersect", -4.919980925828125), ("day-of-weekintersect", -4.897839799950911),
("dayhour", -2.2809235962128662), ("dayhour", -2.2587824703356527),
("daymonth", -4.5145158177199605), ("daymonth", -4.492374691842747),
("monthday", -3.1282214566000697), ("monthday", -3.1060803307228566),
("yearhour", -3.2152328335897), ("yearhour", -3.1930917077124863),
("<time> <part-of-day>time-of-day", -3.821368637160015), ("<time> <part-of-day>time-of-day", -3.7992275112828016),
("houryear", -4.22683374526818), ("houryear", -4.204692619390966),
("day-of-weekafter <time-of-day>", -4.919980925828125), ("day-of-weekafter <time-of-day>", -4.897839799950911),
("after <time-of-day>by <time> - \44620\51648", ("after <time-of-day>by <time> - \44620\51648",
-4.919980925828125), -4.897839799950911),
("intersectam|pm <time-of-day>", -4.5145158177199605), ("intersectam|pm <time-of-day>", -4.492374691842747),
("intersect<time> <part-of-day>", -4.00369019395397), ("intersect<time> <part-of-day>", -3.9815490680767565),
("yearintersect", -3.0481787489265337), ("yearintersect", -3.02603762304932),
("day-of-week<time-of-day> - <time-of-day> (interval)", ("day-of-week<time-of-day> - <time-of-day> (interval)",
-4.00369019395397), -3.9815490680767565),
("intersectmonth", -4.919980925828125), ("intersectmonth", -4.897839799950911),
("time-of-day<duration> ago", -4.919980925828125), ("time-of-day<duration> ago", -4.897839799950911),
("this <cycle>day-of-week", -4.5145158177199605), ("this <cycle>day-of-week", -4.492374691842747),
("intersecttime-of-day", -4.5145158177199605), ("intersecttime-of-day", -4.492374691842747),
("monthhour", -3.0481787489265337), ("monthhour", -3.02603762304932),
("intersectlast <time>", -4.919980925828125), ("intersectlast <time>", -4.897839799950911),
("dayday", -4.00369019395397), ("dayday", -3.9815490680767565),
("hourhour", -2.9740707767728116), ("hourhour", -2.951929650895598),
("month<datetime> - <datetime> (interval)", -4.00369019395397), ("month<datetime> - <datetime> (interval)",
("dayam|pm <time-of-day>", -4.5145158177199605), -3.9815490680767565),
("day-of-weekam|pm <time-of-day>", -4.919980925828125), ("dayam|pm <time-of-day>", -4.492374691842747),
("hourminute", -4.22683374526818), ("day-of-weekam|pm <time-of-day>", -4.897839799950911),
("hourminute", -4.204692619390966),
("<time-of-day> - <time-of-day> (interval)last <time>", ("<time-of-day> - <time-of-day> (interval)last <time>",
-4.00369019395397), -3.9815490680767565),
("intersectday", -4.5145158177199605), ("intersectday", -4.492374691842747),
("<datetime> - <datetime> (interval)day", -4.00369019395397), ("<datetime> - <datetime> (interval)day", -3.9815490680767565),
("month<time> <part-of-day>", -4.5145158177199605), ("month<time> <part-of-day>", -4.492374691842747),
("yearmonth", -4.5145158177199605), ("yearmonth", -4.492374691842747),
("dayminute", -4.22683374526818), ("dayminute", -4.204692619390966),
("<hour-of-day> <integer> (as relative minutes)seconds", ("<time> <part-of-day><date>\50640", -4.897839799950911),
-4.22683374526818), ("last <time>time-of-day", -4.897839799950911),
("<time> <part-of-day><date>\50640", -4.919980925828125), ("monthintersect", -3.288401887516811),
("last <time>time-of-day", -4.919980925828125), ("hoursecond", -4.897839799950911),
("monthintersect", -3.3105430133940246), ("year<time> <part-of-day>", -4.492374691842747),
("hoursecond", -4.919980925828125), ("intersectintersect", -3.6450768314555435),
("year<time> <part-of-day>", -4.5145158177199605), ("weekday", -4.492374691842747),
("intersectintersect", -3.667217957332757),
("weekday", -4.5145158177199605),
("intersectday with korean number - \51068\51068..\44396\51068", ("intersectday with korean number - \51068\51068..\44396\51068",
-4.5145158177199605), -4.492374691842747),
("day<time> <part-of-day>", -4.919980925828125), ("day<time> <part-of-day>", -4.897839799950911),
("yearday", -3.821368637160015), ("yearday", -3.7992275112828016),
("day-of-weekhh:mm", -4.919980925828125), ("day-of-weekhh:mm", -4.897839799950911),
("<time-of-day> - <time-of-day> (interval)time-of-day", ("<time-of-day> - <time-of-day> (interval)time-of-day",
-4.5145158177199605), -4.492374691842747),
("intersectafter <time-of-day>", -3.415903529051851), ("intersectafter <time-of-day>", -3.3937624031746374),
("minutesecond", -4.22683374526818),
("<time> <part-of-day><hour-of-day> <integer> (as relative minutes)", ("<time> <part-of-day><hour-of-day> <integer> (as relative minutes)",
-4.5145158177199605), -4.492374691842747),
("dayintersect", -4.919980925828125), ("dayintersect", -4.897839799950911),
("mm/ddafter <time-of-day>", -4.919980925828125), ("mm/ddafter <time-of-day>", -4.897839799950911),
("todayafter <time-of-day>", -4.919980925828125)], ("todayafter <time-of-day>", -4.897839799950911)],
n = 101}}), n = 98}}),
("season", ("season",
Classifier{okData = Classifier{okData =
ClassData{prior = 0.0, unseen = -1.3862943611198906, ClassData{prior = 0.0, unseen = -1.3862943611198906,
@ -684,27 +681,24 @@ classifiers
n = 2}}), n = 2}}),
("time-of-day (latent)", ("time-of-day (latent)",
Classifier{okData = Classifier{okData =
ClassData{prior = -1.3596261140377293, unseen = -3.332204510175204, ClassData{prior = -1.289667525430819, unseen = -3.258096538021482,
likelihoods = likelihoods =
HashMap.fromList HashMap.fromList
[("integer (numeric)", -0.6567795363890705), [("integer (numeric)", -0.579818495252942),
("integer - TYPE 1", -2.6026896854443837), ("integer - TYPE 1", -2.5257286443082556),
("integer (1..4) - for ordinals", -1.6863989535702288), ("integer (1..4) - for ordinals", -1.6094379124341003),
("integer (1..10) - TYPE 2", -2.6026896854443837)], ("integer (1..10) - TYPE 2", -2.5257286443082556)],
n = 19}, n = 19},
koData = koData =
ClassData{prior = -0.2967319079716989, ClassData{prior = -0.32208349916911333, unseen = -4.04305126783455,
unseen = -4.1588830833596715,
likelihoods = likelihoods =
HashMap.fromList HashMap.fromList
[("integer (numeric)", -1.052092273033217), [("integer (numeric)", -0.9343092373768334),
("integer - TYPE 1", -0.924258901523332), ("integer - TYPE 1", -0.8898574748059995),
("integer (20..90) - TYPE 2 and ordinals", -3.4499875458315876), ("integer (20..90) - TYPE 2 and ordinals", -3.332204510175204),
("integer (21..99) - TYPE 2", -3.4499875458315876), ("integer (21..99) - TYPE 2", -3.332204510175204),
("integer (1..4) - for ordinals", -2.3513752571634776), ("integer (1..4) - for ordinals", -2.2335922215070942)],
("integer - TYPE 1: powers of ten", -3.044522437723423), n = 50}}),
("compose by multiplication", -3.4499875458315876)],
n = 55}}),
("year", ("year",
Classifier{okData = Classifier{okData =
ClassData{prior = -1.006804739414987, unseen = -3.295836866004329, ClassData{prior = -1.006804739414987, unseen = -3.295836866004329,
@ -883,19 +877,15 @@ classifiers
likelihoods = HashMap.fromList [], n = 0}}), likelihoods = HashMap.fromList [], n = 0}}),
("<integer> (hour-of-day) relative minutes \51204", ("<integer> (hour-of-day) relative minutes \51204",
Classifier{okData = Classifier{okData =
ClassData{prior = -0.6931471805599453, unseen = -1.791759469228055, ClassData{prior = 0.0, unseen = -1.6094379124341003,
likelihoods = likelihoods =
HashMap.fromList HashMap.fromList
[("hour", -0.916290731874155), [("hour", -0.6931471805599453),
("time-of-dayinteger (21..99) - TYPE 2", -0.916290731874155)], ("time-of-dayinteger (21..99) - TYPE 2", -0.6931471805599453)],
n = 1}, n = 1},
koData = koData =
ClassData{prior = -0.6931471805599453, unseen = -1.791759469228055, ClassData{prior = -infinity, unseen = -1.0986122886681098,
likelihoods = likelihoods = HashMap.fromList [], n = 0}}),
HashMap.fromList
[("time-of-day (latent)integer - TYPE 1", -0.916290731874155),
("hour", -0.916290731874155)],
n = 1}}),
("<duration> ago", ("<duration> ago",
Classifier{okData = Classifier{okData =
ClassData{prior = -0.45198512374305727, ClassData{prior = -0.45198512374305727,
@ -1207,7 +1197,7 @@ classifiers
n = 10}}), n = 10}}),
("<time-of-day>\51060\51204", ("<time-of-day>\51060\51204",
Classifier{okData = Classifier{okData =
ClassData{prior = -0.5596157879354228, unseen = -2.70805020110221, ClassData{prior = -0.40546510810816444, unseen = -2.70805020110221,
likelihoods = likelihoods =
HashMap.fromList HashMap.fromList
[("am|pm <time-of-day>", -1.540445040947149), [("am|pm <time-of-day>", -1.540445040947149),
@ -1215,15 +1205,15 @@ classifiers
("hour", -1.0296194171811581)], ("hour", -1.0296194171811581)],
n = 4}, n = 4},
koData = koData =
ClassData{prior = -0.8472978603872037, ClassData{prior = -1.0986122886681098,
unseen = -2.5649493574615367, unseen = -2.3978952727983707,
likelihoods = likelihoods =
HashMap.fromList HashMap.fromList
[("time-of-day (latent)", -1.791759469228055), [("time-of-day (latent)", -1.6094379124341003),
("hour", -1.791759469228055), ("minute", -1.3862943611198906), ("hour", -1.6094379124341003), ("minute", -1.6094379124341003),
("<hour-of-day> <integer> (as relative minutes)", ("<hour-of-day> <integer> (as relative minutes)",
-1.3862943611198906)], -1.6094379124341003)],
n = 3}}), n = 2}}),
("New Year's Day", ("New Year's Day",
Classifier{okData = Classifier{okData =
ClassData{prior = 0.0, unseen = -1.3862943611198906, ClassData{prior = 0.0, unseen = -1.3862943611198906,
@ -1398,27 +1388,23 @@ classifiers
n = 1}}), n = 1}}),
("<hour-of-day> <integer> (as relative minutes)", ("<hour-of-day> <integer> (as relative minutes)",
Classifier{okData = Classifier{okData =
ClassData{prior = -1.0986122886681098, unseen = -2.639057329615259, ClassData{prior = -0.2876820724517809,
unseen = -2.3978952727983707,
likelihoods = likelihoods =
HashMap.fromList HashMap.fromList
[("time-of-daycompose by multiplication", -1.8718021769015913), [("time-of-daycompose by multiplication", -1.6094379124341003),
("time-of-dayinteger (numeric)", -1.8718021769015913), ("time-of-dayinteger (numeric)", -1.6094379124341003),
("hour", -1.1786549963416462), ("hour", -0.916290731874155),
("time-of-dayinteger (21..99) - TYPE 2", -1.8718021769015913)], ("time-of-dayinteger (21..99) - TYPE 2", -1.6094379124341003)],
n = 3}, n = 3},
koData = koData =
ClassData{prior = -0.40546510810816444, ClassData{prior = -1.3862943611198906,
unseen = -2.995732273553991, unseen = -1.9459101490553135,
likelihoods = likelihoods =
HashMap.fromList HashMap.fromList
[("time-of-day (latent)integer (21..99) - TYPE 2", [("hour", -1.0986122886681098),
-2.2512917986064953), ("time-of-dayinteger (21..99) - TYPE 2", -1.0986122886681098)],
("time-of-day (latent)integer - TYPE 1", -1.55814461804655), n = 1}}),
("time-of-day (latent)integer - TYPE 1: powers of ten",
-2.2512917986064953),
("hour", -0.9985288301111273),
("time-of-dayinteger (21..99) - TYPE 2", -2.2512917986064953)],
n = 6}}),
("few \47751", ("few \47751",
Classifier{okData = Classifier{okData =
ClassData{prior = 0.0, unseen = -1.791759469228055, ClassData{prior = 0.0, unseen = -1.791759469228055,

View File

@ -270,142 +270,134 @@ classifiers
likelihoods = HashMap.fromList [], n = 0}}), likelihoods = HashMap.fromList [], n = 0}}),
("intersect", ("intersect",
Classifier{okData = Classifier{okData =
ClassData{prior = -0.4392032477400145, unseen = -5.860786223465865, ClassData{prior = -0.4103550934023561, unseen = -5.846438775057725,
likelihoods = likelihoods =
HashMap.fromList HashMap.fromList
[("<datetime> - <datetime> (interval)on <date>", [("<datetime> - <datetime> (interval)on <date>",
-4.0661736852554045), -4.051784947803305),
("<time-of-day> - <time-of-day> (interval)on <date>", ("<time-of-day> - <time-of-day> (interval)on <date>",
-4.0661736852554045), -4.051784947803305),
("hourday", -5.1647859739235145), ("hourday", -5.150397236471415),
("dayhour", -2.9134941753170187), ("dayhour", -2.8991054378649195),
("daymonth", -2.9134941753170187), ("daymonth", -2.8991054378649195),
("monthyear", -3.0853444322436783), ("monthyear", -3.0709556947915786),
("intersecthh:mm", -5.1647859739235145), ("intersecthh:mm", -5.150397236471415),
("the <day-of-month> (ordinal)named-month", -3.912023005428146), ("the <day-of-month> (ordinal)named-month",
-3.8976342679760467),
("intersect by \"of\", \"from\", \"'s\"year", ("intersect by \"of\", \"from\", \"'s\"year",
-4.75932086581535), -4.74493212836325),
("last <day-of-week> of <time>year", -4.75932086581535), ("last <day-of-week> of <time>year", -4.74493212836325),
("todayat <time-of-day>", -4.75932086581535), ("todayat <time-of-day>", -4.74493212836325),
("dayday", -3.0247198104272432), ("dayday", -3.0103310729751436),
("dd/mmat <time-of-day>", -4.248495242049359), ("dd/mmat <time-of-day>", -4.23410650459726),
("intersect by \",\"hh:mm", -4.248495242049359), ("intersect by \",\"hh:mm", -4.23410650459726),
("intersectnamed-month", -4.75932086581535), ("intersectnamed-month", -4.74493212836325),
("dayyear", -3.2929837970219227), ("dayyear", -3.278595059569823),
("named-daythis <time>", -4.0661736852554045), ("named-daythis <time>", -4.051784947803305),
("tomorrow<time-of-day> sharp", -4.75932086581535), ("tomorrow<time-of-day> sharp", -4.74493212836325),
("<day-of-month>(ordinal) <named-month>year", ("<day-of-month>(ordinal) <named-month>year",
-4.75932086581535), -4.74493212836325),
("named-day<time> timezone", -4.471638793363569), ("named-day<time> timezone", -4.457250055911469),
("named-monthyear", -3.0853444322436783), ("named-monthyear", -3.0709556947915786),
("absorption of , after named day<named-month> <day-of-month> (non ordinal)", ("absorption of , after named day<named-month> <day-of-month> (non ordinal)",
-4.0661736852554045), -4.051784947803305),
("on <date>named-month", -3.912023005428146), ("on <date>named-month", -3.8976342679760467),
("tomorrowuntil <time-of-day>", -4.75932086581535), ("tomorrowuntil <time-of-day>", -4.74493212836325),
("absorption of , after named day<day-of-month> (non ordinal) <named-month>", ("absorption of , after named day<day-of-month> (non ordinal) <named-month>",
-4.471638793363569), -4.457250055911469),
("after <time-of-day>at <time-of-day>", -4.75932086581535), ("after <time-of-day>at <time-of-day>", -4.74493212836325),
("intersect by \",\"<day-of-month> (non ordinal) <named-month>", ("intersect by \",\"<day-of-month> (non ordinal) <named-month>",
-4.75932086581535), -4.74493212836325),
("named-day<day-of-month> (non ordinal) <named-month>", ("named-day<day-of-month> (non ordinal) <named-month>",
-5.1647859739235145), -5.150397236471415),
("named-day<named-month> <day-of-month> (non ordinal)", ("named-day<named-month> <day-of-month> (non ordinal)",
-5.1647859739235145), -5.150397236471415),
("named-dayfrom <datetime> - <datetime> (interval)", ("named-dayfrom <datetime> - <datetime> (interval)",
-4.75932086581535), -4.74493212836325),
("named-daynext <cycle>", -5.1647859739235145), ("named-daynext <cycle>", -5.150397236471415),
("named-dayintersect", -4.75932086581535), ("named-dayintersect", -4.74493212836325),
("named-dayfrom <time-of-day> - <time-of-day> (interval)", ("named-dayfrom <time-of-day> - <time-of-day> (interval)",
-4.75932086581535), -4.74493212836325),
("tomorrowafter <time-of-day>", -4.75932086581535), ("tomorrowafter <time-of-day>", -4.74493212836325),
("from <time-of-day> - <time-of-day> (interval)on <date>", ("from <time-of-day> - <time-of-day> (interval)on <date>",
-4.248495242049359), -4.23410650459726),
("dayminute", -2.8134107167600364), ("dayminute", -2.7990219793079367),
("from <datetime> - <datetime> (interval)on <date>", ("from <datetime> - <datetime> (interval)on <date>",
-4.471638793363569), -4.457250055911469),
("<ordinal> <cycle> of <time>year", -4.75932086581535), ("<ordinal> <cycle> of <time>year", -4.74493212836325),
("minuteday", -2.5620962884791303), ("minuteday", -2.5477075510270306),
("absorption of , after named dayintersect", ("absorption of , after named dayintersect",
-5.1647859739235145), -5.150397236471415),
("named-daybetween <time-of-day> and <time-of-day> (interval)", ("named-daybetween <time-of-day> and <time-of-day> (interval)",
-5.1647859739235145), -5.150397236471415),
("named-dayon <date>", -4.75932086581535), ("named-dayon <date>", -4.74493212836325),
("named-dayat <time-of-day>", -4.75932086581535), ("named-dayat <time-of-day>", -4.74493212836325),
("yearhh:mm", -5.1647859739235145), ("yearhh:mm", -5.150397236471415),
("named-daybetween <datetime> and <datetime> (interval)", ("named-daybetween <datetime> and <datetime> (interval)",
-5.1647859739235145), -5.150397236471415),
("absorption of , after named dayintersect by \",\"", ("absorption of , after named dayintersect by \",\"",
-4.75932086581535), -4.74493212836325),
("dd/mmyear", -4.75932086581535), ("dd/mmyear", -4.74493212836325),
("at <time-of-day>on <date>", -5.1647859739235145), ("at <time-of-day>on <date>", -5.150397236471415),
("between <time-of-day> and <time-of-day> (interval)on <date>", ("between <time-of-day> and <time-of-day> (interval)on <date>",
-5.1647859739235145), -5.150397236471415),
("between <datetime> and <datetime> (interval)on <date>", ("between <datetime> and <datetime> (interval)on <date>",
-5.1647859739235145), -5.150397236471415),
("dayweek", -4.0661736852554045), ("dayweek", -4.051784947803305),
("weekyear", -4.248495242049359), ("weekyear", -4.23410650459726),
("hh:mmtomorrow", -4.471638793363569), ("hh:mmtomorrow", -4.457250055911469),
("tomorrowat <time-of-day>", -3.912023005428146), ("tomorrowat <time-of-day>", -3.8976342679760467),
("named-daythis <cycle>", -4.471638793363569), ("named-daythis <cycle>", -4.457250055911469),
("named-daythe <day-of-month> (ordinal)", -5.1647859739235145), ("named-daythe <day-of-month> (ordinal)", -5.150397236471415),
("at <time-of-day>tomorrow", -4.75932086581535), ("at <time-of-day>tomorrow", -4.74493212836325),
("last <cycle> of <time>year", -4.248495242049359), ("last <cycle> of <time>year", -4.23410650459726),
("<day-of-month> (non ordinal) <named-month>year", ("<day-of-month> (non ordinal) <named-month>year",
-4.75932086581535), -4.74493212836325),
("yearminute", -5.1647859739235145)], ("yearminute", -5.150397236471415)],
n = 136}, n = 136},
koData = koData =
ClassData{prior = -1.034370019939756, unseen = -5.43372200355424, ClassData{prior = -1.0889034745411488, unseen = -5.356586274672012,
likelihoods = likelihoods =
HashMap.fromList HashMap.fromList
[("named-daynamed-month", -4.736198448394496), [("named-daynamed-month", -4.658710952916121),
("dayhour", -3.2321210516182215), ("dayhour", -3.154633556139847),
("daymonth", -2.133508762950112), ("daymonth", -2.0560212674717375),
("monthday", -3.8199077165203406), ("monthday", -3.742420221041966),
("monthyear", -3.8199077165203406), ("monthyear", -3.742420221041966),
("intersect by \"of\", \"from\", \"'s\"year", ("intersect by \"of\", \"from\", \"'s\"year",
-3.4834354798991276), -3.405947984420753),
("named-dayhh:mm", -4.736198448394496), ("named-dayhh:mm", -4.658710952916121),
("dd/mmat <time-of-day>", -3.8199077165203406), ("dd/mmat <time-of-day>", -3.742420221041966),
("hourhour", -3.4834354798991276), ("hourhour", -3.405947984420753),
("dayyear", -3.4834354798991276), ("dayyear", -3.405947984420753),
("named-daythis <time>", -2.596132284898225), ("named-daythis <time>", -2.5186447894198505),
("year<hour-of-day> <integer> (as relative minutes)", ("named-monthyear", -3.742420221041966),
-4.330733340286331),
("minutemonth", -4.330733340286331),
("named-monthyear", -3.8199077165203406),
("in|during the <part-of-day>until <time-of-day>", ("in|during the <part-of-day>until <time-of-day>",
-4.330733340286331), -4.253245844807957),
("absorption of , after named daynamed-month", ("absorption of , after named daynamed-month",
-3.6375861597263857), -3.5600986642480117),
("named-dayfrom <datetime> - <datetime> (interval)", ("named-dayfrom <datetime> - <datetime> (interval)",
-4.736198448394496), -4.658710952916121),
("<hour-of-day> <integer> (as relative minutes)named-month",
-4.330733340286331),
("named-dayfrom <time-of-day> - <time-of-day> (interval)", ("named-dayfrom <time-of-day> - <time-of-day> (interval)",
-4.736198448394496), -4.658710952916121),
("until <time-of-day>on <date>", -4.736198448394496), ("until <time-of-day>on <date>", -4.658710952916121),
("dayminute", -3.349904087274605), ("dayminute", -3.2724165917962305),
("minuteday", -3.2321210516182215), ("minuteday", -3.154633556139847),
("named-daybetween <time-of-day> and <time-of-day> (interval)", ("named-daybetween <time-of-day> and <time-of-day> (interval)",
-4.736198448394496), -4.658710952916121),
("named-dayon <date>", -4.736198448394496), ("named-dayon <date>", -4.658710952916121),
("named-dayat <time-of-day>", -3.8199077165203406), ("named-dayat <time-of-day>", -3.742420221041966),
("hh:mmon <date>", -3.349904087274605), ("hh:mmon <date>", -3.2724165917962305),
("named-daybetween <datetime> and <datetime> (interval)", ("named-daybetween <datetime> and <datetime> (interval)",
-4.736198448394496), -4.658710952916121),
("named-month<day-of-month> (non ordinal) <named-month>", ("named-month<day-of-month> (non ordinal) <named-month>",
-3.8199077165203406), -3.742420221041966),
("<named-month> <day-of-month> (non ordinal)named-month", ("<named-month> <day-of-month> (non ordinal)named-month",
-3.8199077165203406), -3.742420221041966),
("this <part-of-day>until <time-of-day>", -4.330733340286331), ("this <part-of-day>until <time-of-day>", -4.253245844807957),
("<hour-of-day> <integer> (as relative minutes)year", ("tomorrownoon", -4.658710952916121),
-4.330733340286331), ("this <time>until <time-of-day>", -4.253245844807957)],
("tomorrownoon", -4.736198448394496), n = 69}}),
("this <time>until <time-of-day>", -4.330733340286331),
("minuteyear", -4.330733340286331),
("yearminute", -4.330733340286331)],
n = 75}}),
("<ordinal> <cycle> of <time>", ("<ordinal> <cycle> of <time>",
Classifier{okData = Classifier{okData =
ClassData{prior = 0.0, unseen = -2.890371757896165, ClassData{prior = 0.0, unseen = -2.890371757896165,
@ -852,18 +844,17 @@ classifiers
likelihoods = HashMap.fromList [], n = 0}}), likelihoods = HashMap.fromList [], n = 0}}),
("time-of-day (latent)", ("time-of-day (latent)",
Classifier{okData = Classifier{okData =
ClassData{prior = -0.9775343571148737, unseen = -3.713572066704308, ClassData{prior = -0.9057086225436182, unseen = -3.713572066704308,
likelihoods = likelihoods =
HashMap.fromList [("integer (numeric)", -2.5317807984289897e-2)], HashMap.fromList [("integer (numeric)", -2.5317807984289897e-2)],
n = 38}, n = 38},
koData = koData =
ClassData{prior = -0.47198579044972677, ClassData{prior = -0.5179430915348547, unseen = -4.07753744390572,
unseen = -4.189654742026425,
likelihoods = likelihoods =
HashMap.fromList HashMap.fromList
[("integer (numeric)", -0.24256163717131135), [("integer (numeric)", -0.27625337662815824),
("integer (0..19)", -1.5353299402803784)], ("integer (0..19)", -1.4213856809311607)],
n = 63}}), n = 56}}),
("year", ("year",
Classifier{okData = Classifier{okData =
ClassData{prior = -0.1431008436406733, unseen = -3.332204510175204, ClassData{prior = -0.1431008436406733, unseen = -3.332204510175204,
@ -1306,35 +1297,28 @@ classifiers
likelihoods = HashMap.fromList [], n = 0}}), likelihoods = HashMap.fromList [], n = 0}}),
("<datetime> - <datetime> (interval)", ("<datetime> - <datetime> (interval)",
Classifier{okData = Classifier{okData =
ClassData{prior = -0.8362480242006186, ClassData{prior = -0.6931471805599453, unseen = -3.58351893845611,
unseen = -3.6888794541139363,
likelihoods = likelihoods =
HashMap.fromList HashMap.fromList
[("minuteminute", -1.466337068793427), [("minuteminute", -1.3581234841531944),
("hh:mmhh:mm", -1.466337068793427), ("hh:mmhh:mm", -1.3581234841531944),
("dayday", -1.8718021769015913), ("dayday", -1.7635885922613588),
("<day-of-month> (non ordinal) <named-month><day-of-month> (non ordinal) <named-month>", ("<day-of-month> (non ordinal) <named-month><day-of-month> (non ordinal) <named-month>",
-1.8718021769015913)], -1.7635885922613588)],
n = 13}, n = 13},
koData = koData =
ClassData{prior = -0.5679840376059393, unseen = -3.871201010907891, ClassData{prior = -0.6931471805599453, unseen = -3.58351893845611,
likelihoods = likelihoods =
HashMap.fromList HashMap.fromList
[("monthday", -2.0583881324820035), [("monthday", -1.7635885922613588),
("minuteminute", -1.9042374526547454), ("minuteminute", -1.6094379124341003),
("hh:mmhh:mm", -3.1570004211501135), ("hh:mmhh:mm", -2.8622008809294686),
("dayyear", -2.751535313041949), ("dayyear", -2.456735772821304),
("year<hour-of-day> <integer> (as relative minutes)", ("hh:mmintersect", -1.7635885922613588),
-2.751535313041949), ("dd/mmyear", -2.456735772821304),
("hh:mmintersect", -2.0583881324820035),
("dd/mmyear", -2.751535313041949),
("named-month<day-of-month> (non ordinal) <named-month>", ("named-month<day-of-month> (non ordinal) <named-month>",
-2.0583881324820035), -1.7635885922613588)],
("<hour-of-day> <integer> (as relative minutes)year", n = 13}}),
-2.751535313041949),
("minuteyear", -2.751535313041949),
("yearminute", -2.751535313041949)],
n = 17}}),
("<time-of-day> - <time-of-day> (interval)", ("<time-of-day> - <time-of-day> (interval)",
Classifier{okData = Classifier{okData =
ClassData{prior = -0.8109302162163288, unseen = -3.044522437723423, ClassData{prior = -0.8109302162163288, unseen = -3.044522437723423,
@ -1552,17 +1536,6 @@ classifiers
koData = koData =
ClassData{prior = -infinity, unseen = -1.0986122886681098, ClassData{prior = -infinity, unseen = -1.0986122886681098,
likelihoods = HashMap.fromList [], n = 0}}), likelihoods = HashMap.fromList [], n = 0}}),
("<hour-of-day> <integer> (as relative minutes)",
Classifier{okData =
ClassData{prior = -infinity, unseen = -1.0986122886681098,
likelihoods = HashMap.fromList [], n = 0},
koData =
ClassData{prior = 0.0, unseen = -2.833213344056216,
likelihoods =
HashMap.fromList
[("time-of-day (latent)integer (numeric)", -0.6931471805599453),
("hour", -0.6931471805599453)],
n = 7}}),
("this <time>", ("this <time>",
Classifier{okData = Classifier{okData =
ClassData{prior = -1.2443240998495033, ClassData{prior = -1.2443240998495033,

View File

@ -177,22 +177,22 @@ classifiers
likelihoods = HashMap.fromList [("", 0.0)], n = 4}}), likelihoods = HashMap.fromList [("", 0.0)], n = 4}}),
("at <time-of-day>", ("at <time-of-day>",
Classifier{okData = Classifier{okData =
ClassData{prior = -0.14058195062118944, ClassData{prior = -0.13580154115906176,
unseen = -4.7535901911063645, unseen = -4.787491742782046,
likelihoods = likelihoods =
HashMap.fromList HashMap.fromList
[("<ordinal> (as hour)", -1.5260563034950494), [("<ordinal> (as hour)", -1.4832866271072003),
("<integer> (latent time-of-day)", -2.3470368555648795), ("<integer> (latent time-of-day)", -2.381228220313159),
("about <time-of-day>", -4.051784947803305), ("about <time-of-day>", -4.085976312551584),
("hh:mm", -3.6463198396951406), ("hh:mm", -3.6805112044434196),
("<time-of-day> rano", -2.953172659135195), ("<time-of-day> rano", -2.987364023883474),
("hour", -0.832909122935104), ("hour", -0.827879774530102),
("<time-of-day> popo\322udniu/wieczorem/w nocy", ("<time-of-day> popo\322udniu/wieczorem/w nocy",
-2.26002547857525), -2.2942168433235293),
("minute", -3.1354942159291497)], ("minute", -3.169685580677429)],
n = 53}, n = 55},
koData = koData =
ClassData{prior = -2.031432322493475, unseen = -3.258096538021482, ClassData{prior = -2.063693184711697, unseen = -3.258096538021482,
likelihoods = likelihoods =
HashMap.fromList HashMap.fromList
[("<ordinal> (as hour)", -1.8325814637483102), [("<ordinal> (as hour)", -1.8325814637483102),
@ -429,230 +429,225 @@ classifiers
n = 1}}), n = 1}}),
("intersect", ("intersect",
Classifier{okData = Classifier{okData =
ClassData{prior = -0.32992437765008176, ClassData{prior = -0.3189150921417123, unseen = -6.280395838960195,
unseen = -6.284134161070802,
likelihoods = likelihoods =
HashMap.fromList HashMap.fromList
[("Tuesdayon <date>", -4.672828834461907), [("Tuesdayon <date>", -4.669083511731744),
("Sundaylast <cycle>", -5.183654458227897), ("Sundaylast <cycle>", -5.179909135497735),
("Fridaynext <cycle>", -5.589119566336061), ("Fridaynext <cycle>", -5.585374243605899),
("<datetime> - <datetime> (interval)on <date>", ("<datetime> - <datetime> (interval)on <date>",
-5.183654458227897), -5.179909135497735),
("mm/dd<time-of-day> popo\322udniu/wieczorem/w nocy", ("mm/dd<time-of-day> popo\322udniu/wieczorem/w nocy",
-5.589119566336061), -5.585374243605899),
("<hour-of-day> - <hour-of-day> (interval)on <date>", ("<hour-of-day> - <hour-of-day> (interval)on <date>",
-5.183654458227897), -5.179909135497735),
("<time-of-day> - <time-of-day> (interval)on <date>", ("<time-of-day> - <time-of-day> (interval)on <date>",
-5.183654458227897), -5.179909135497735),
("hourday", -3.7973600971080064), ("hourday", -3.7936147743778443),
("dayhour", -2.7269186854065928), ("dayhour", -2.7231733626764307),
("daymonth", -3.7973600971080064), ("daymonth", -3.7936147743778443),
("<time-of-day> popo\322udniu/wieczorem/w nocyabsorption of , after named day", ("<time-of-day> popo\322udniu/wieczorem/w nocyabsorption of , after named day",
-4.672828834461907), -4.669083511731744),
("TuesdaySeptember", -5.589119566336061), ("TuesdaySeptember", -5.585374243605899),
("monthyear", -3.104212916548061), ("monthyear", -3.100467593817899),
("Wednesdayintersect", -5.183654458227897), ("Wednesdayintersect", -5.179909135497735),
("from <hour-of-day> - <hour-of-day> (interval)on a named-day", ("from <hour-of-day> - <hour-of-day> (interval)on a named-day",
-5.589119566336061), -5.585374243605899),
("from <time-of-day> - <time-of-day> (interval)on a named-day", ("from <time-of-day> - <time-of-day> (interval)on a named-day",
-5.589119566336061), -5.585374243605899),
("intersecthh:mm", -5.589119566336061), ("intersecthh:mm", -5.585374243605899),
("from <datetime> - <datetime> (interval)on a named-day", ("from <datetime> - <datetime> (interval)on a named-day",
-5.589119566336061), -5.585374243605899),
("Wednesdaynext <cycle>", -5.183654458227897), ("Wednesdaynext <cycle>", -5.179909135497735),
("Tuesdaythis <cycle>", -5.589119566336061), ("Tuesdaythis <cycle>", -5.585374243605899),
("Saturday<time> <part-of-day>", -5.589119566336061), ("Saturday<time> <part-of-day>", -5.585374243605899),
("Marchyear", -5.183654458227897), ("Marchyear", -5.179909135497735),
("Saturdayat <time-of-day>", -5.183654458227897), ("Saturdayat <time-of-day>", -5.179909135497735),
("on a named-dayat <time-of-day>", -5.183654458227897), ("on a named-dayat <time-of-day>", -5.179909135497735),
("at <time-of-day>on a named-day", -5.589119566336061), ("at <time-of-day>on a named-day", -5.585374243605899),
("<time> <part-of-day>on a named-day", -5.183654458227897), ("<time> <part-of-day>on a named-day", -5.179909135497735),
("Wednesdayon <date>", -4.490507277667952), ("Wednesdayon <date>", -4.48676195493779),
("on a named-day<time> <part-of-day>", -5.589119566336061), ("on a named-day<time> <part-of-day>", -5.585374243605899),
("last <day-of-week> of <time>year", -5.589119566336061), ("last <day-of-week> of <time>year", -5.585374243605899),
("today<time> <part-of-day>", -5.589119566336061), ("today<time> <part-of-day>", -5.585374243605899),
("todayat <time-of-day>", -5.589119566336061), ("todayat <time-of-day>", -5.585374243605899),
("on <date>at <time-of-day>", -5.183654458227897), ("on <date>at <time-of-day>", -5.179909135497735),
("dayday", -2.9500622367208025), ("dayday", -2.9463169139906404),
("on <date><time> <part-of-day>", -5.589119566336061), ("on <date><time> <part-of-day>", -5.585374243605899),
("intersect by \",\"hh:mm", -4.672828834461907), ("intersect by \",\"hh:mm", -4.669083511731744),
("mm/ddat <time-of-day>", -4.8959723857761155), ("mm/ddat <time-of-day>", -4.892227063045954),
("WednesdayOctober", -5.183654458227897), ("WednesdayOctober", -5.179909135497735),
("last <cycle> <time>year", -4.672828834461907), ("last <cycle> <time>year", -4.669083511731744),
("intersect<named-month> <day-of-month> (non ordinal)", ("intersect<named-month> <day-of-month> (non ordinal)",
-4.8959723857761155), -4.892227063045954),
("intersect<day-of-month> (non ordinal) <named-month>", ("intersect<day-of-month> (non ordinal) <named-month>",
-4.8959723857761155), -4.892227063045954),
("dayyear", -3.5742165457937967), ("dayyear", -3.5704712230636346),
("Wednesday<day-of-month>(ordinal) <named-month>", ("Wednesday<day-of-month>(ordinal) <named-month>",
-5.589119566336061), -5.585374243605899),
("Thursday<time> <part-of-day>", -5.183654458227897), ("Thursday<time> <part-of-day>", -5.179909135497735),
("<day-of-month>(ordinal) <named-month>year", ("<day-of-month>(ordinal) <named-month>year",
-5.183654458227897), -5.179909135497735),
("day-after-tomorrow (single-word)at <time-of-day>", ("day-after-tomorrow (single-word)at <time-of-day>",
-5.589119566336061), -5.585374243605899),
("absorption of , after named day<day-of-month>(ordinal) <named-month>", ("absorption of , after named day<day-of-month>(ordinal) <named-month>",
-4.085042169559787), -4.081296846829625),
("Tuesdaynext <cycle>", -5.589119566336061), ("Tuesdaynext <cycle>", -5.585374243605899),
("tomorrow<time-of-day> popo\322udniu/wieczorem/w nocy", ("tomorrow<time-of-day> popo\322udniu/wieczorem/w nocy",
-5.589119566336061), -5.585374243605899),
("absorption of , after named day<named-month> <day-of-month> (non ordinal)", ("absorption of , after named day<named-month> <day-of-month> (non ordinal)",
-4.202825205216171), -4.199079882486009),
("Thursdayfrom <datetime> - <datetime> (interval)", ("Thursdayfrom <datetime> - <datetime> (interval)",
-4.8959723857761155), -4.892227063045954),
("Thursdayfrom <time-of-day> - <time-of-day> (interval)", ("Thursdayfrom <time-of-day> - <time-of-day> (interval)",
-4.8959723857761155), -4.892227063045954),
("tomorrowuntil <time-of-day>", -5.183654458227897), ("tomorrowuntil <time-of-day>", -5.179909135497735),
("absorption of , after named day<day-of-month> (non ordinal) <named-month>", ("absorption of , after named day<day-of-month> (non ordinal) <named-month>",
-4.085042169559787), -4.081296846829625),
("<time-of-day> popo\322udniu/wieczorem/w nocyintersect by \",\"", ("<time-of-day> popo\322udniu/wieczorem/w nocyintersect by \",\"",
-4.672828834461907), -4.669083511731744),
("TuesdayOctober", -5.589119566336061), ("TuesdayOctober", -5.585374243605899),
("last <day-of-week> <time>year", -5.183654458227897), ("last <day-of-week> <time>year", -5.179909135497735),
("Monday<day-of-month>(ordinal) <named-month>", ("Monday<day-of-month>(ordinal) <named-month>",
-5.183654458227897), -5.179909135497735),
("Mondaythis <cycle>", -5.589119566336061), ("Mondaythis <cycle>", -5.585374243605899),
("<time-of-day> ranoon <date>", -5.183654458227897), ("<time-of-day> ranoon <date>", -5.179909135497735),
("on <date><time-of-day> rano", -5.589119566336061), ("on <date><time-of-day> rano", -5.585374243605899),
("<time-of-day> popo\322udniu/wieczorem/w nocytomorrow", ("<time-of-day> popo\322udniu/wieczorem/w nocytomorrow",
-5.589119566336061), -5.585374243605899),
("from <time-of-day> - <time-of-day> (interval)on <date>", ("from <time-of-day> - <time-of-day> (interval)on <date>",
-5.589119566336061), -5.585374243605899),
("<time-of-day> popo\322udniu/wieczorem/w nocyFriday", ("<time-of-day> popo\322udniu/wieczorem/w nocyFriday",
-4.672828834461907), -4.669083511731744),
("at <time-of-day>intersect", -5.183654458227897), ("at <time-of-day>intersect", -5.179909135497735),
("dayminute", -3.979681653901961), ("dayminute", -3.975936331171799),
("<time-of-day> ranoon a named-day", -5.183654458227897), ("<time-of-day> ranoon a named-day", -5.179909135497735),
("from <hour-of-day> - <hour-of-day> (interval)on <date>", ("from <hour-of-day> - <hour-of-day> (interval)on <date>",
-5.589119566336061), -5.585374243605899),
("from <datetime> - <datetime> (interval)on <date>", ("from <datetime> - <datetime> (interval)on <date>",
-5.589119566336061), -5.585374243605899),
("intersectyear", -5.183654458227897), ("intersectyear", -5.179909135497735),
("on a named-day<time-of-day> rano", -5.589119566336061), ("on a named-day<time-of-day> rano", -5.585374243605899),
("<ordinal> <cycle> of <time>year", -5.589119566336061), ("<ordinal> <cycle> of <time>year", -5.585374243605899),
("minuteday", -2.39044644878538), ("minuteday", -2.386701126055218),
("absorption of , after named dayintersect", ("absorption of , after named dayintersect",
-5.589119566336061), -5.585374243605899),
("Saturday<time-of-day> rano", -5.589119566336061), ("Saturday<time-of-day> rano", -5.585374243605899),
("Octoberyear", -3.884371474097636), ("Octoberyear", -3.880626151367474),
("yearhh:mm", -5.589119566336061), ("yearhh:mm", -5.585374243605899),
("at <time-of-day>intersect by \",\"", -5.183654458227897), ("at <time-of-day>intersect by \",\"", -5.179909135497735),
("absorption of , after named dayintersect by \",\"", ("absorption of , after named dayintersect by \",\"",
-5.183654458227897), -5.179909135497735),
("tomorrowexactly <time-of-day>", -4.8959723857761155), ("tomorrowexactly <time-of-day>", -4.892227063045954),
("at <time-of-day>absorption of , after named day", ("at <time-of-day>absorption of , after named day",
-5.183654458227897), -5.179909135497735),
("Septemberyear", -4.672828834461907), ("Septemberyear", -4.669083511731744),
("at <time-of-day>on <date>", -5.589119566336061), ("at <time-of-day>on <date>", -5.585374243605899),
("on <date>year", -4.202825205216171), ("on <date>year", -4.199079882486009),
("dayweek", -3.643209417280748), ("dayweek", -3.639464094550586),
("Tuesdayin <duration>", -5.589119566336061), ("Tuesdayin <duration>", -5.585374243605899),
("<time> <part-of-day>on <date>", -5.183654458227897), ("<time> <part-of-day>on <date>", -5.179909135497735),
("weekyear", -4.336356597840693), ("weekyear", -4.332611275110531),
("<ordinal> <cycle> <time>year", -5.183654458227897), ("<ordinal> <cycle> <time>year", -5.179909135497735),
("tomorrowat <time-of-day>", -5.589119566336061), ("tomorrowat <time-of-day>", -5.585374243605899),
("tomorrow<time> <part-of-day>", -5.589119566336061), ("tomorrow<time> <part-of-day>", -5.585374243605899),
("at <time-of-day>Friday", -5.183654458227897), ("at <time-of-day>Friday", -5.179909135497735),
("<time-of-day> popo\322udniu/wieczorem/w nocyintersect", ("<time-of-day> popo\322udniu/wieczorem/w nocyintersect",
-4.672828834461907), -4.669083511731744),
("<named-month> <day-of-month> (ordinal)year", ("<named-month> <day-of-month> (ordinal)year",
-5.589119566336061), -5.585374243605899),
("tomorrow<time-of-day> rano", -5.589119566336061), ("tomorrow<time-of-day> rano", -5.585374243605899),
("<datetime> - <datetime> (interval)on a named-day", ("<datetime> - <datetime> (interval)on a named-day",
-5.183654458227897), -5.179909135497735),
("last <cycle> of <time>year", -5.183654458227897), ("last <cycle> of <time>year", -5.179909135497735),
("<named-month> <day-of-month> (non ordinal)year", ("<named-month> <day-of-month> (non ordinal)year",
-5.589119566336061), -5.585374243605899),
("<time-of-day> - <time-of-day> (interval)on a named-day", ("<time-of-day> - <time-of-day> (interval)on a named-day",
-5.183654458227897), -5.179909135497735),
("<day-of-month> (non ordinal) <named-month>year", ("<day-of-month> (non ordinal) <named-month>year",
-5.183654458227897), -5.179909135497735),
("<hour-of-day> - <hour-of-day> (interval)on a named-day", ("<hour-of-day> - <hour-of-day> (interval)on a named-day",
-5.183654458227897), -5.179909135497735),
("yearminute", -5.589119566336061)], ("yearminute", -5.585374243605899)],
n = 197}, n = 197},
koData = koData =
ClassData{prior = -1.2693226845343863, unseen = -5.69035945432406, ClassData{prior = -1.298053727675531, unseen = -5.662960480135946,
likelihoods = likelihoods =
HashMap.fromList HashMap.fromList
[("Tuesdayon <date>", -4.993828175779875), [("Tuesdayon <date>", -4.966335035199676),
("<time-of-day> ranoby <time>", -4.58836306767171), ("<time-of-day> ranoby <time>", -4.560869927091511),
("<named-month> <day-of-month> (non ordinal)July", ("<named-month> <day-of-month> (non ordinal)July",
-4.993828175779875), -4.966335035199676),
("Julyrelative minutes to|till|before <integer> (hour-of-day)", ("Julyrelative minutes to|till|before <integer> (hour-of-day)",
-4.993828175779875), -4.966335035199676),
("dayhour", -3.895215887111765), ("dayhour", -3.867722746531566),
("July<day-of-month> (non ordinal) <named-month>", ("July<day-of-month> (non ordinal) <named-month>",
-4.993828175779875), -4.966335035199676),
("daymonth", -2.5959329029815037), ("daymonth", -2.5684397624013053),
("monthday", -4.58836306767171), ("monthday", -4.560869927091511),
("monthyear", -4.07753744390572), ("monthyear", -4.050044303325521),
("Wednesdayintersect", -4.58836306767171), ("Wednesdayintersect", -4.560869927091511),
("<time> <part-of-day>until <time-of-day>", -4.58836306767171), ("<time> <part-of-day>until <time-of-day>", -4.560869927091511),
("Marchyear", -4.300680995219929), ("Marchyear", -4.273187854639731),
("Wednesdayon <date>", -4.993828175779875), ("Wednesdayon <date>", -4.966335035199676),
("absorption of , after named dayJuly", -4.993828175779875), ("absorption of , after named dayJuly", -4.966335035199676),
("<time> <part-of-day><time> <part-of-day>", ("<time> <part-of-day><time> <part-of-day>",
-4.300680995219929), -4.273187854639731),
("mm/ddat <time-of-day>", -4.993828175779875), ("mm/ddat <time-of-day>", -4.966335035199676),
("hourhour", -4.07753744390572), ("hourhour", -4.050044303325521),
("<time> <part-of-day>by <time>", -4.58836306767171), ("<time> <part-of-day>by <time>", -4.560869927091511),
("dayyear", -3.7410652072845063), ("dayyear", -3.713572066704308),
("<time-of-day> ranoby the end of <time>", -4.58836306767171), ("<time-of-day> ranoby the end of <time>", -4.560869927091511),
("<named-month> <day-of-month> (non ordinal)until <time-of-day>", ("<named-month> <day-of-month> (non ordinal)until <time-of-day>",
-4.993828175779875), -4.966335035199676),
("year<hour-of-day> <integer> (as relative minutes)", ("monthminute", -4.966335035199676),
-4.58836306767171), ("minutemonth", -4.273187854639731),
("monthminute", -4.58836306767171),
("minutemonth", -4.300680995219929),
("Thursdayfrom <datetime> - <datetime> (interval)", ("Thursdayfrom <datetime> - <datetime> (interval)",
-4.993828175779875), -4.966335035199676),
("Thursdayfrom <time-of-day> - <time-of-day> (interval)", ("Thursdayfrom <time-of-day> - <time-of-day> (interval)",
-4.993828175779875), -4.966335035199676),
("Aprilyear", -4.993828175779875), ("Aprilyear", -4.966335035199676),
("<time-of-day> popo\322udniu/wieczorem/w nocyintersect by \",\"", ("<time-of-day> popo\322udniu/wieczorem/w nocyintersect by \",\"",
-4.58836306767171), -4.560869927091511),
("after <time-of-day>at <time-of-day>", -4.993828175779875), ("after <time-of-day>at <time-of-day>", -4.966335035199676),
("SundayMarch", -4.993828175779875), ("SundayMarch", -4.966335035199676),
("hh:mmby the end of <time>", -4.993828175779875), ("hh:mmby the end of <time>", -4.966335035199676),
("daysecond", -4.58836306767171), ("daysecond", -4.560869927091511),
("<time> <part-of-day>by the end of <time>", -4.58836306767171), ("<time> <part-of-day>by the end of <time>",
("<time> <part-of-day><time-of-day> rano", -4.993828175779875), -4.560869927091511),
("<time-of-day> rano<time> <part-of-day>", -4.58836306767171), ("<time> <part-of-day><time-of-day> rano", -4.966335035199676),
("<time-of-day> rano<time> <part-of-day>", -4.560869927091511),
("<named-month> <day-of-month> (non ordinal)August", ("<named-month> <day-of-month> (non ordinal)August",
-4.993828175779875), -4.966335035199676),
("August<day-of-month> (non ordinal) <named-month>", ("August<day-of-month> (non ordinal) <named-month>",
-4.993828175779875), -4.966335035199676),
("at <time-of-day>intersect", -4.993828175779875), ("at <time-of-day>intersect", -4.966335035199676),
("dayminute", -4.58836306767171), ("dayminute", -4.560869927091511),
("<named-month> <day-of-month> (non ordinal)by <time>", ("<named-month> <day-of-month> (non ordinal)by <time>",
-4.993828175779875), -4.966335035199676),
("intersectyear", -3.7410652072845063), ("intersectyear", -3.713572066704308),
("intersectSeptember", -4.300680995219929), ("intersectSeptember", -4.273187854639731),
("minuteday", -3.289080083541449), ("minuteday", -3.2615869429612507),
("hh:mmon <date>", -4.58836306767171), ("hh:mmon <date>", -4.560869927091511),
("at <time-of-day>intersect by \",\"", -4.993828175779875), ("at <time-of-day>intersect by \",\"", -4.966335035199676),
("MondayMarch", -4.993828175779875), ("MondayMarch", -4.966335035199676),
("<named-month> <day-of-month> (non ordinal)by the end of <time>", ("<named-month> <day-of-month> (non ordinal)by the end of <time>",
-4.993828175779875), -4.966335035199676),
("tomorrowexactly <time-of-day>", -4.993828175779875), ("tomorrowexactly <time-of-day>", -4.966335035199676),
("hoursecond", -3.122025998878283), ("hoursecond", -3.094532858298084),
("absorption of , after named daySeptember", ("absorption of , after named daySeptember",
-4.993828175779875), -4.966335035199676),
("hh:mmon a named-day", -4.58836306767171), ("hh:mmon a named-day", -4.560869927091511),
("Sundayon <date>", -4.58836306767171), ("Sundayon <date>", -4.560869927091511),
("July<hour-of-day> <integer> (as relative minutes)", ("absorption of , after named dayFebruary", -3.867722746531566),
-4.993828175779875), ("hh:mmby <time>", -4.966335035199676),
("absorption of , after named dayFebruary", -3.895215887111765), ("tomorrowat <time-of-day>", -4.966335035199676),
("hh:mmby <time>", -4.993828175779875), ("minutesecond", -4.560869927091511),
("tomorrowat <time-of-day>", -4.993828175779875),
("minutesecond", -4.58836306767171),
("<time-of-day> popo\322udniu/wieczorem/w nocyintersect", ("<time-of-day> popo\322udniu/wieczorem/w nocyintersect",
-4.58836306767171), -4.560869927091511),
("Tuesdayintersect", -4.58836306767171), ("Tuesdayintersect", -4.560869927091511),
("Sundayintersect", -4.58836306767171), ("Sundayintersect", -4.560869927091511)],
("yearminute", -4.58836306767171)], n = 74}}),
n = 77}}),
("half after|past <integer> (hour-of-day)", ("half after|past <integer> (hour-of-day)",
Classifier{okData = Classifier{okData =
ClassData{prior = 0.0, unseen = -1.6094379124341003, ClassData{prior = 0.0, unseen = -1.6094379124341003,
@ -902,7 +897,7 @@ classifiers
likelihoods = HashMap.fromList [], n = 0}}), likelihoods = HashMap.fromList [], n = 0}}),
("<integer> (latent time-of-day)", ("<integer> (latent time-of-day)",
Classifier{okData = Classifier{okData =
ClassData{prior = -0.4732877044469254, ClassData{prior = -0.40546510810816444,
unseen = -3.7376696182833684, unseen = -3.7376696182833684,
likelihoods = likelihoods =
HashMap.fromList HashMap.fromList
@ -910,12 +905,13 @@ classifiers
("fifteen", -3.0204248861443626)], ("fifteen", -3.0204248861443626)],
n = 38}, n = 38},
koData = koData =
ClassData{prior = -0.9753796482441617, unseen = -3.295836866004329, ClassData{prior = -1.0986122886681098,
unseen = -3.1354942159291497,
likelihoods = likelihoods =
HashMap.fromList HashMap.fromList
[("integer (numeric)", -0.12260232209233239), [("integer (numeric)", -0.1466034741918754),
("one", -2.5649493574615367)], ("one", -2.3978952727983707)],
n = 23}}), n = 19}}),
("nth <time> of <time>", ("nth <time> of <time>",
Classifier{okData = Classifier{okData =
ClassData{prior = -0.5596157879354228, unseen = -2.833213344056216, ClassData{prior = -0.5596157879354228, unseen = -2.833213344056216,
@ -1855,37 +1851,33 @@ classifiers
n = 3}}), n = 3}}),
("<datetime> - <datetime> (interval)", ("<datetime> - <datetime> (interval)",
Classifier{okData = Classifier{okData =
ClassData{prior = -1.1526795099383855, unseen = -3.332204510175204, ClassData{prior = -1.041453874828161, unseen = -3.258096538021482,
likelihoods = likelihoods =
HashMap.fromList HashMap.fromList
[("minuteminute", -1.6863989535702288), [("minuteminute", -1.6094379124341003),
("hh:mmhh:mm", -1.6863989535702288), ("hh:mmhh:mm", -1.6094379124341003),
("dayday", -2.1972245773362196), ("dayday", -2.120263536200091),
("<named-month> <day-of-month> (non ordinal)<named-month> <day-of-month> (non ordinal)", ("<named-month> <day-of-month> (non ordinal)<named-month> <day-of-month> (non ordinal)",
-2.1972245773362196)], -2.120263536200091)],
n = 6}, n = 6},
koData = koData =
ClassData{prior = -0.3794896217049037, ClassData{prior = -0.4353180712578455, unseen = -3.58351893845611,
unseen = -3.7376696182833684,
likelihoods = likelihoods =
HashMap.fromList HashMap.fromList
[("<named-month> <day-of-month> (non ordinal)July", [("<named-month> <day-of-month> (non ordinal)July",
-3.0204248861443626), -2.8622008809294686),
("daymonth", -2.6149597780361984), ("daymonth", -2.456735772821304),
("about <time-of-day>noon", -3.0204248861443626), ("about <time-of-day>noon", -2.8622008809294686),
("minuteminute", -1.9218125974762528), ("minuteminute", -1.7635885922613588),
("<time-of-day> rano<time-of-day> rano", -3.0204248861443626), ("<time-of-day> rano<time-of-day> rano", -2.8622008809294686),
("until <time-of-day>noon", -3.0204248861443626), ("until <time-of-day>noon", -2.8622008809294686),
("hh:mmhh:mm", -3.0204248861443626), ("hh:mmhh:mm", -2.8622008809294686),
("hourhour", -2.1041341542702074), ("hourhour", -1.9459101490553135),
("year<hour-of-day> <integer> (as relative minutes)", ("hh:mmintersect", -1.9459101490553135),
-2.6149597780361984), ("at <time-of-day>noon", -2.8622008809294686),
("hh:mmintersect", -2.1041341542702074),
("at <time-of-day>noon", -3.0204248861443626),
("<named-month> <day-of-month> (non ordinal)August", ("<named-month> <day-of-month> (non ordinal)August",
-3.0204248861443626), -2.8622008809294686)],
("yearminute", -2.6149597780361984)], n = 11}}),
n = 13}}),
("Tuesday", ("Tuesday",
Classifier{okData = Classifier{okData =
ClassData{prior = 0.0, unseen = -3.0910424533583156, ClassData{prior = 0.0, unseen = -3.0910424533583156,
@ -2231,23 +2223,16 @@ classifiers
likelihoods = HashMap.fromList [], n = 0}}), likelihoods = HashMap.fromList [], n = 0}}),
("<hour-of-day> <integer> (as relative minutes)", ("<hour-of-day> <integer> (as relative minutes)",
Classifier{okData = Classifier{okData =
ClassData{prior = -1.0986122886681098, ClassData{prior = 0.0, unseen = -2.0794415416798357,
unseen = -2.1972245773362196,
likelihoods = likelihoods =
HashMap.fromList HashMap.fromList
[("<ordinal> (as hour)twenty", -1.3862943611198906), [("at <time-of-day>fifteen", -1.252762968495368),
("hour", -0.9808292530117262), ("at <time-of-day>twenty", -1.252762968495368),
("<ordinal> (as hour)fifteen", -1.3862943611198906)], ("hour", -0.8472978603872037)],
n = 2}, n = 2},
koData = koData =
ClassData{prior = -0.40546510810816444, ClassData{prior = -infinity, unseen = -1.3862943611198906,
unseen = -2.5649493574615367, likelihoods = HashMap.fromList [], n = 0}}),
likelihoods =
HashMap.fromList
[("<integer> (latent time-of-day)integer (numeric)",
-0.8754687373538999),
("hour", -0.8754687373538999)],
n = 4}}),
("23rd ordinal no space", ("23rd ordinal no space",
Classifier{okData = Classifier{okData =
ClassData{prior = 0.0, unseen = -1.0986122886681098, ClassData{prior = 0.0, unseen = -1.0986122886681098,

View File

@ -159,93 +159,85 @@ classifiers
likelihoods = HashMap.fromList [], n = 0}}), likelihoods = HashMap.fromList [], n = 0}}),
("intersect by `da` or `de`", ("intersect by `da` or `de`",
Classifier{okData = Classifier{okData =
ClassData{prior = -1.8588987720656835, unseen = -4.624972813284271, ClassData{prior = -1.8325814637483102, unseen = -4.574710978503383,
likelihoods = likelihoods =
HashMap.fromList HashMap.fromList
[("day of month (1st)named-month", -3.228826155721369), [("day of month (1st)named-month", -3.1780538303479458),
("daymonth", -2.8233610476132043), ("daymonth", -2.772588722239781),
("<day-of-month> de <named-month>two time tokens separated by \",\"2", ("<day-of-month> de <named-month>two time tokens separated by \",\"2",
-3.9219733362813143), -3.871201010907891),
("<day-of-month> de <named-month>intersect", ("<day-of-month> de <named-month>intersect",
-3.9219733362813143), -3.871201010907891),
("<day-of-month> de <named-month>two time tokens separated by \",\"", ("<day-of-month> de <named-month>two time tokens separated by \",\"",
-3.9219733362813143), -3.871201010907891),
("dayday", -3.228826155721369), ("dayday", -3.1780538303479458),
("dia <day-of-month> (non ordinal)named-month", ("dia <day-of-month> (non ordinal)named-month",
-3.5165082281731497), -3.4657359027997265),
("dayyear", -1.9760631872260008), ("dayyear", -1.9252908618525775),
("named-dayproximo <cycle> ", -3.9219733362813143), ("named-dayproximo <cycle> ", -3.871201010907891),
("dd-dd <month>(interval)year", -3.9219733362813143), ("dd-dd <month>(interval)year", -3.871201010907891),
("named-day<cycle> (que vem)", -3.9219733362813143), ("named-day<cycle> (que vem)", -3.871201010907891),
("two time tokens separated by \",\"2year", ("two time tokens separated by \",\"2year",
-3.5165082281731497), -3.4657359027997265),
("intersectyear", -3.9219733362813143), ("intersectyear", -3.871201010907891),
("<day-of-month> de <named-month>year", -2.5356789751614235), ("<day-of-month> de <named-month>year", -2.4849066497880004),
("two time tokens separated by \",\"year", -3.5165082281731497), ("two time tokens separated by \",\"year", -3.4657359027997265),
("dayweek", -3.228826155721369), ("dayweek", -3.1780538303479458),
("named-day<cycle> passado", -3.9219733362813143)], ("named-day<cycle> passado", -3.871201010907891)],
n = 24}, n = 24},
koData = koData =
ClassData{prior = -0.1694181519580468, unseen = -5.749392985908253, ClassData{prior = -0.1743533871447778, unseen = -5.707110264748875,
likelihoods = likelihoods =
HashMap.fromList HashMap.fromList
[("<hour-of-day> <integer> (as relative minutes)intersect", [("time-of-day (latent)<datetime> - <datetime> (interval)",
-5.0530560099802075), -4.605170185988091),
("time-of-day (latent)<datetime> - <datetime> (interval)", ("hourday", -2.870569130599985),
-4.647590901872044), ("monthday", -4.31748811353631),
("hourday", -2.912989846483937), ("monthyear", -3.506557897319982),
("monthday", -4.359908829420263), ("yearhour", -3.624340932976365),
("monthyear", -3.548978613203934), ("houryear", -3.0647251450409425),
("yearhour", -3.666761648860317),
("houryear", -3.1071458609248945),
("time-of-day (latent)two time tokens separated by \",\"2", ("time-of-day (latent)two time tokens separated by \",\"2",
-4.647590901872044), -4.605170185988091),
("time-of-day (latent)intersect", -3.1071458609248945), ("time-of-day (latent)intersect", -3.0647251450409425),
("year (latent)<time-of-day> <part-of-day>", ("year (latent)<time-of-day> <part-of-day>",
-5.0530560099802075), -5.0106352940962555),
("year (latent)intersect", -4.359908829420263), ("year (latent)intersect", -4.31748811353631),
("intersect by `da` or `de`two time tokens separated by \",\"", ("intersect by `da` or `de`two time tokens separated by \",\"",
-5.0530560099802075), -5.0106352940962555),
("year (latent)amanh\227 pela <part-of-day>", ("year (latent)amanh\227 pela <part-of-day>",
-5.0530560099802075), -5.0106352940962555),
("hourmonth", -1.8750021796322622), ("hourmonth", -1.8325814637483102),
("time-of-day (latent)intersect by `da` or `de`", ("time-of-day (latent)intersect by `da` or `de`",
-3.261296540752153), -3.2188758248682006),
("monthmonth", -5.0530560099802075), ("monthmonth", -5.0106352940962555),
("dayyear", -5.0530560099802075), ("dayyear", -5.0106352940962555),
("year (latent)named-month", -2.345005808877998), ("year (latent)named-month", -2.3025850929940455),
("minutemonth", -4.359908829420263), ("named-monthyear", -3.506557897319982),
("named-monthyear", -3.548978613203934), ("year (latent)<dim time> da manha", -5.0106352940962555),
("year (latent)<dim time> da manha", -5.0530560099802075),
("de <datetime> - <datetime> (interval)named-month", ("de <datetime> - <datetime> (interval)named-month",
-5.0530560099802075), -5.0106352940962555),
("\224s <time-of-day>named-month", -4.647590901872044), ("\224s <time-of-day>named-month", -4.605170185988091),
("<hour-of-day> <integer> (as relative minutes)named-month", ("yearmonth", -2.3025850929940455),
-5.0530560099802075), ("two time tokens separated by \",\"2year", -4.605170185988091),
("yearmonth", -2.345005808877998), ("intersect by `da` or `de`intersect", -5.0106352940962555),
("two time tokens separated by \",\"2year", -4.647590901872044), ("intersectyear", -5.0106352940962555),
("intersect by `da` or `de`intersect", -5.0530560099802075),
("intersectyear", -5.0530560099802075),
("intersect by `da` or `de`two time tokens separated by \",\"2", ("intersect by `da` or `de`two time tokens separated by \",\"2",
-5.0530560099802075), -5.0106352940962555),
("<day-of-month> de <named-month>year", -5.0530560099802075), ("<day-of-month> de <named-month>year", -5.0106352940962555),
("two time tokens separated by \",\"year", -4.647590901872044), ("two time tokens separated by \",\"year", -4.605170185988091),
("time-of-day (latent)two time tokens separated by \",\"", ("time-of-day (latent)two time tokens separated by \",\"",
-4.647590901872044), -4.605170185988091),
("intersect by `da` or `de`year", -3.4436180975461075), ("intersect by `da` or `de`year", -3.506557897319982),
("named-monthtwo time tokens separated by \",\"2", ("named-monthtwo time tokens separated by \",\"2",
-5.0530560099802075), -5.0106352940962555),
("year (latent)<datetime> - <datetime> (interval)", ("year (latent)<datetime> - <datetime> (interval)",
-4.647590901872044), -4.605170185988091),
("yearday", -5.0530560099802075), ("yearday", -5.0106352940962555),
("named-monthintersect", -5.0530560099802075), ("named-monthintersect", -5.0106352940962555),
("<hour-of-day> <integer> (as relative minutes)intersect by `da` or `de`",
-5.0530560099802075),
("minuteyear", -5.0530560099802075),
("named-monthtwo time tokens separated by \",\"", ("named-monthtwo time tokens separated by \",\"",
-5.0530560099802075), -5.0106352940962555),
("time-of-day (latent)named-month", -2.3789073605536792)], ("time-of-day (latent)named-month", -2.336486644669727)],
n = 130}}), n = 126}}),
("<hour-of-day> and half", ("<hour-of-day> and half",
Classifier{okData = Classifier{okData =
ClassData{prior = 0.0, unseen = -3.1354942159291497, ClassData{prior = 0.0, unseen = -3.1354942159291497,
@ -398,123 +390,120 @@ classifiers
n = 7}}), n = 7}}),
("intersect", ("intersect",
Classifier{okData = Classifier{okData =
ClassData{prior = -0.7215851158804788, unseen = -5.14166355650266, ClassData{prior = -0.702716631576096, unseen = -5.1298987149230735,
likelihoods = likelihoods =
HashMap.fromList HashMap.fromList
[("<day-of-month> de <named-month>in the <part-of-day>", [("<day-of-month> de <named-month>in the <part-of-day>",
-4.037186148382152), -4.02535169073515),
("dayhour", -2.3632097148104805), ("dayhour", -2.3513752571634776),
("<day-of-month> de <named-month>two time tokens separated by \",\"2", ("<day-of-month> de <named-month>two time tokens separated by \",\"2",
-4.442651256490317), -4.430816798843313),
("nowquinze para as <hour-of-day> (as relative minutes)", ("nowquinze para as <hour-of-day> (as relative minutes)",
-4.442651256490317), -4.430816798843313),
("intersectnamed-day", -4.442651256490317), ("intersectnamed-day", -4.430816798843313),
("now\224s <time-of-day>", -4.037186148382152), ("now\224s <time-of-day>", -4.02535169073515),
("<day-of-month> de <named-month>intersect", ("<day-of-month> de <named-month>intersect",
-4.442651256490317), -4.430816798843313),
("now<hour-of-day> and 3/4", -4.442651256490317), ("now<hour-of-day> and 3/4", -4.430816798843313),
("intersect by `da` or `de`named-day", -4.442651256490317), ("intersect by `da` or `de`named-day", -4.430816798843313),
("<day-of-month> de <named-month>two time tokens separated by \",\"", ("<day-of-month> de <named-month>two time tokens separated by \",\"",
-4.442651256490317), -4.430816798843313),
("dayday", -2.9385738597140425), ("dayday", -2.9267394020670396),
("hourhour", -4.442651256490317), ("hourhour", -4.430816798843313),
("named-day\224s <time-of-day>", -4.442651256490317), ("named-day\224s <time-of-day>", -4.430816798843313),
("dayyear", -2.4277482359480516), ("dayyear", -2.4159137783010487),
("minutehour", -3.1898882879949486), ("minutehour", -3.1780538303479458),
("<hour-of-day> and quinzein the <part-of-day>", ("<hour-of-day> and quinzein the <part-of-day>",
-4.037186148382152), -4.02535169073515),
("de <year>named-day", -4.442651256490317), ("de <year>named-day", -4.430816798843313),
("intersect by `da` or `de`in the <part-of-day>",
-4.02535169073515),
("now<hour-of-day> and <relative minutes>", -4.430816798843313),
("named-dayin the <part-of-day>", -4.430816798843313),
("tomorrow<time-of-day> horas", -4.02535169073515),
("now<integer> para as <hour-of-day> (as relative minutes)",
-4.430816798843313),
("\224s <time-of-day>in the <part-of-day>",
-3.7376696182833684),
("named-dayintersect", -4.430816798843313),
("named-dayamanh\227 pela <part-of-day>", -4.430816798843313),
("dayminute", -3.1780538303479458),
("named-dayintersect by `da` or `de`", -4.430816798843313),
("yearnamed-day", -4.430816798843313),
("dd-dd <month>(interval)de <year>", -4.430816798843313),
("named-day<day-of-month> de <named-month>",
-4.430816798843313),
("named-day<time-of-day> <part-of-day>", -4.430816798843313),
("dia <day-of-month> de <named-month>in the <part-of-day>",
-4.02535169073515),
("yearday", -4.02535169073515),
("named-day<dim time> da manha", -4.430816798843313),
("two time tokens separated by \",\"de <year>",
-4.02535169073515),
("dd[/-]mmyear", -4.430816798843313),
("<day-of-month> de <named-month>de <year>",
-3.044522437723423),
("tomorrowdepois das <time-of-day>", -4.02535169073515),
("<hour-of-day> and <relative minutes>in the <part-of-day>",
-4.02535169073515),
("two time tokens separated by \",\"2de <year>",
-4.02535169073515),
("intersectde <year>", -4.430816798843313)],
n = 52},
koData =
ClassData{prior = -0.6836684366054016, unseen = -5.14166355650266,
likelihoods =
HashMap.fromList
[("hourday", -2.9385738597140425),
("dayhour", -3.056356895370426),
("daymonth", -4.442651256490317),
("monthday", -3.3440389678222067),
("named-month\224s <time-of-day>", -4.442651256490317),
("monthyear", -2.9385738597140425),
("intersectnamed-day", -4.037186148382152),
("now\224s <time-of-day>", -4.037186148382152),
("houryear", -2.496741107435003),
("<time-of-day> am|pm<day-of-month> de <named-month>",
-4.442651256490317),
("intersect by `da` or `de`named-day", -3.5263605246161616),
("monthhour", -3.1898882879949486),
("intersect by `da` or `de`two time tokens separated by \",\"",
-4.442651256490317),
("hourmonth", -4.442651256490317),
("<time-of-day> am|pmintersect by `da` or `de`",
-4.442651256490317),
("dayyear", -4.442651256490317),
("intersect by `da` or `de`\224s <time-of-day>",
-4.442651256490317),
("intersect by `da` or `de`in the <part-of-day>", ("intersect by `da` or `de`in the <part-of-day>",
-4.037186148382152), -4.037186148382152),
("now<hour-of-day> and <relative minutes>", -4.442651256490317), ("now<hour-of-day> and <relative minutes>", -4.442651256490317),
("named-dayin the <part-of-day>", -4.442651256490317), ("daysecond", -4.442651256490317),
("tomorrow<time-of-day> horas", -4.037186148382152), ("named-dayright now", -4.442651256490317),
("now<integer> para as <hour-of-day> (as relative minutes)",
-4.442651256490317),
("\224s <time-of-day>in the <part-of-day>",
-3.7495040759303713),
("named-dayintersect", -4.442651256490317), ("named-dayintersect", -4.442651256490317),
("named-dayamanh\227 pela <part-of-day>", -4.442651256490317), ("dayminute", -4.037186148382152),
("dayminute", -3.1898882879949486), ("named-monthde <year>", -2.9385738597140425),
("named-dayintersect by `da` or `de`", -4.442651256490317), ("intersect by `da` or `de`intersect", -4.442651256490317),
("yearnamed-day", -4.442651256490317),
("dd-dd <month>(interval)de <year>", -4.442651256490317),
("named-day<day-of-month> de <named-month>",
-4.442651256490317),
("named-day<time-of-day> <part-of-day>", -4.442651256490317),
("dia <day-of-month> de <named-month>in the <part-of-day>",
-4.037186148382152),
("yearday", -4.037186148382152),
("named-day<dim time> da manha", -4.442651256490317),
("two time tokens separated by \",\"de <year>",
-4.037186148382152),
("dd[/-]mmyear", -4.442651256490317),
("<day-of-month> de <named-month>de <year>",
-3.056356895370426),
("tomorrowdepois das <time-of-day>", -4.037186148382152),
("<hour-of-day> and <relative minutes>in the <part-of-day>",
-4.037186148382152),
("two time tokens separated by \",\"2de <year>",
-4.037186148382152),
("intersectde <year>", -4.442651256490317)],
n = 52},
koData =
ClassData{prior = -0.6654956492294354, unseen = -5.176149732573829,
likelihoods =
HashMap.fromList
[("hourday", -2.9732594177019323),
("dayhour", -3.0910424533583156),
("daymonth", -4.477336814478207),
("monthday", -3.378724525810097),
("named-month\224s <time-of-day>", -4.477336814478207),
("monthyear", -2.9732594177019323),
("intersectnamed-day", -4.071871706370042),
("now\224s <time-of-day>", -4.071871706370042),
("houryear", -2.531426665422893),
("<time-of-day> am|pm<day-of-month> de <named-month>",
-4.477336814478207),
("intersect by `da` or `de`named-day", -3.5610460826040513),
("monthhour", -3.2245738459828384),
("intersect by `da` or `de`two time tokens separated by \",\"",
-4.477336814478207),
("hourmonth", -4.477336814478207),
("<time-of-day> am|pmintersect by `da` or `de`",
-4.477336814478207),
("dayyear", -4.477336814478207),
("intersect by `da` or `de`\224s <time-of-day>",
-4.477336814478207),
("intersect by `da` or `de`in the <part-of-day>",
-4.071871706370042),
("now<hour-of-day> and <relative minutes>", -4.477336814478207),
("daysecond", -4.477336814478207),
("named-dayright now", -4.477336814478207),
("named-dayintersect", -4.477336814478207),
("dayminute", -4.071871706370042),
("named-monthde <year>", -2.9732594177019323),
("intersect by `da` or `de`intersect", -4.477336814478207),
("intersect by `da` or `de`two time tokens separated by \",\"2", ("intersect by `da` or `de`two time tokens separated by \",\"2",
-4.477336814478207), -4.442651256490317),
("named-dayintersect by `da` or `de`", -3.378724525810097), ("named-dayintersect by `da` or `de`", -3.3440389678222067),
("named-monthin the <part-of-day>", -4.071871706370042), ("named-monthin the <part-of-day>", -4.037186148382152),
("named-monthtwo time tokens separated by \",\"2", ("named-monthtwo time tokens separated by \",\"2",
-4.477336814478207), -4.442651256490317),
("two time tokens separated by \",\"de <year>", ("two time tokens separated by \",\"de <year>",
-4.071871706370042), -4.037186148382152),
("intersect by `da` or `de`de <year>", -2.867898902044106), ("intersect by `da` or `de`de <year>", -2.9385738597140425),
("named-monthintersect", -4.477336814478207), ("named-monthintersect", -4.442651256490317),
("<day-of-month> de <named-month>\224s <time-of-day>", ("<day-of-month> de <named-month>\224s <time-of-day>",
-4.477336814478207), -4.442651256490317),
("<hour-of-day> <integer> (as relative minutes)year",
-4.477336814478207),
("<day-of-month> de <named-month>de <year>", ("<day-of-month> de <named-month>de <year>",
-4.477336814478207), -4.442651256490317),
("two time tokens separated by \",\"2de <year>", ("two time tokens separated by \",\"2de <year>",
-4.071871706370042), -4.037186148382152),
("intersectde <year>", -4.477336814478207), ("intersectde <year>", -4.442651256490317),
("minuteyear", -4.071871706370042),
("named-monthtwo time tokens separated by \",\"", ("named-monthtwo time tokens separated by \",\"",
-4.477336814478207)], -4.442651256490317)],
n = 55}}), n = 53}}),
("season", ("season",
Classifier{okData = Classifier{okData =
ClassData{prior = 0.0, unseen = -1.6094379124341003, ClassData{prior = 0.0, unseen = -1.6094379124341003,
@ -857,21 +846,20 @@ classifiers
likelihoods = HashMap.fromList [], n = 0}}), likelihoods = HashMap.fromList [], n = 0}}),
("time-of-day (latent)", ("time-of-day (latent)",
Classifier{okData = Classifier{okData =
ClassData{prior = -0.9650808960435872, unseen = -3.332204510175204, ClassData{prior = -0.9328200338253656, unseen = -3.332204510175204,
likelihoods = likelihoods =
HashMap.fromList HashMap.fromList
[("integer (numeric)", -1.0986122886681098), [("integer (numeric)", -1.0986122886681098),
("number (0..15)", -0.46262352194811296)], ("number (0..15)", -0.46262352194811296)],
n = 24}, n = 24},
koData = koData =
ClassData{prior = -0.4795730802618862, ClassData{prior = -0.4999559515290868, unseen = -3.713572066704308,
unseen = -3.7612001156935624,
likelihoods = likelihoods =
HashMap.fromList HashMap.fromList
[("integer (numeric)", -0.4795730802618862), [("integer (numeric)", -0.5108256237659907),
("number (0..15)", -1.0986122886681098), ("number (0..15)", -1.0498221244986778),
("number (20..90)", -3.044522437723423)], ("number (20..90)", -2.995732273553991)],
n = 39}}), n = 37}}),
("<hour-of-day> and <relative minutes>", ("<hour-of-day> and <relative minutes>",
Classifier{okData = Classifier{okData =
ClassData{prior = -0.2719337154836418, unseen = -3.713572066704308, ClassData{prior = -0.2719337154836418, unseen = -3.713572066704308,
@ -1160,44 +1148,40 @@ classifiers
likelihoods = HashMap.fromList [], n = 0}}), likelihoods = HashMap.fromList [], n = 0}}),
("<datetime> - <datetime> (interval)", ("<datetime> - <datetime> (interval)",
Classifier{okData = Classifier{okData =
ClassData{prior = -1.8718021769015913, ClassData{prior = -1.791759469228055, unseen = -3.1354942159291497,
unseen = -3.2188758248682006,
likelihoods = likelihoods =
HashMap.fromList HashMap.fromList
[("minuteminute", -2.4849066497880004), [("minuteminute", -2.3978952727983707),
("dayday", -2.4849066497880004), ("dayday", -2.3978952727983707),
("hh(:|.|h)mm (time-of-day)hh(:|.|h)mm (time-of-day)", ("hh(:|.|h)mm (time-of-day)hh(:|.|h)mm (time-of-day)",
-2.4849066497880004), -2.3978952727983707),
("<day-of-month> de <named-month><day-of-month> de <named-month>", ("<day-of-month> de <named-month><day-of-month> de <named-month>",
-2.4849066497880004)], -2.3978952727983707)],
n = 2}, n = 2},
koData = koData =
ClassData{prior = -0.1670540846631662, ClassData{prior = -0.1823215567939546,
unseen = -3.7612001156935624, unseen = -3.6635616461296463,
likelihoods = likelihoods =
HashMap.fromList HashMap.fromList
[("hourday", -3.044522437723423), [("hourday", -2.9444389791664407),
("dayhour", -3.044522437723423), ("dayhour", -2.9444389791664407),
("daymonth", -3.044522437723423), ("daymonth", -2.9444389791664407),
("monthday", -2.639057329615259), ("monthday", -2.538973871058276),
("<day-of-month> de <named-month>intersect by `da` or `de`", ("<day-of-month> de <named-month>intersect by `da` or `de`",
-2.639057329615259), -2.538973871058276),
("monthhour", -2.639057329615259), ("monthhour", -2.538973871058276),
("monthmonth", -3.044522437723423), ("monthmonth", -2.9444389791664407),
("hourhour", -3.044522437723423), ("hourhour", -2.9444389791664407),
("dayyear", -3.044522437723423), ("dayyear", -2.9444389791664407),
("named-month<day-of-month> de <named-month>", ("named-month<day-of-month> de <named-month>",
-3.044522437723423), -2.9444389791664407),
("intersect by `da` or `de`<day-of-month> de <named-month>", ("intersect by `da` or `de`<day-of-month> de <named-month>",
-2.639057329615259), -2.538973871058276),
("intersect by `da` or `de`intersect by `da` or `de`", ("intersect by `da` or `de`intersect by `da` or `de`",
-2.639057329615259), -2.538973871058276),
("dd[/-]mmyear", -3.044522437723423), ("dd[/-]mmyear", -2.9444389791664407),
("<hour-of-day> <integer> (as relative minutes)year", ("named-monthintersect by `da` or `de`", -2.538973871058276)],
-3.044522437723423), n = 10}}),
("named-monthintersect by `da` or `de`", -2.639057329615259),
("minuteyear", -3.044522437723423)],
n = 11}}),
("segundo (grain)", ("segundo (grain)",
Classifier{okData = Classifier{okData =
ClassData{prior = 0.0, unseen = -1.6094379124341003, ClassData{prior = 0.0, unseen = -1.6094379124341003,
@ -1311,17 +1295,6 @@ classifiers
("<hour-of-day> and <relative minutes>", -2.120263536200091), ("<hour-of-day> and <relative minutes>", -2.120263536200091),
("hour", -1.4271163556401458), ("minute", -2.120263536200091)], ("hour", -1.4271163556401458), ("minute", -2.120263536200091)],
n = 7}}), n = 7}}),
("<hour-of-day> <integer> (as relative minutes)",
Classifier{okData =
ClassData{prior = -infinity, unseen = -1.0986122886681098,
likelihoods = HashMap.fromList [], n = 0},
koData =
ClassData{prior = 0.0, unseen = -1.9459101490553135,
likelihoods =
HashMap.fromList
[("time-of-day (latent)integer (numeric)", -0.6931471805599453),
("hour", -0.6931471805599453)],
n = 2}}),
("fazem <duration>", ("fazem <duration>",
Classifier{okData = Classifier{okData =
ClassData{prior = 0.0, unseen = -2.772588722239781, ClassData{prior = 0.0, unseen = -2.772588722239781,

View File

@ -49,29 +49,22 @@ classifiers
likelihoods = HashMap.fromList [], n = 0}}), likelihoods = HashMap.fromList [], n = 0}}),
("intersect", ("intersect",
Classifier{okData = Classifier{okData =
ClassData{prior = -0.13353139262452263, ClassData{prior = 0.0, unseen = -3.044522437723423,
unseen = -3.1354942159291497,
likelihoods = likelihoods =
HashMap.fromList HashMap.fromList
[("daymonth", -1.9924301646902063), [("daymonth", -1.8971199848858813),
("martithe <day-of-month> (number)", -2.3978952727983707), ("martithe <day-of-month> (number)", -2.3025850929940455),
("dayday", -1.2992829841302609), ("dayday", -1.2039728043259361),
("absorption of , after named day<day-of-month>(number) <named-month>", ("absorption of , after named day<day-of-month>(number) <named-month>",
-1.9924301646902063), -1.8971199848858813),
("absorption of , after named day<day-of-month> (non ordinal) <named-month>", ("absorption of , after named day<day-of-month> (non ordinal) <named-month>",
-1.9924301646902063), -1.8971199848858813),
("<named-day> <day-of-month> (number)februarie", ("<named-day> <day-of-month> (number)februarie",
-1.9924301646902063)], -1.8971199848858813)],
n = 7}, n = 7},
koData = koData =
ClassData{prior = -2.0794415416798357, ClassData{prior = -infinity, unseen = -1.9459101490553135,
unseen = -2.3978952727983707, likelihoods = HashMap.fromList [], n = 0}}),
likelihoods =
HashMap.fromList
[("iunie<hour-of-day> <integer> (as relative minutes)",
-1.6094379124341003),
("monthminute", -1.6094379124341003)],
n = 1}}),
("<named-day> <day-of-month> (number)", ("<named-day> <day-of-month> (number)",
Classifier{okData = Classifier{okData =
ClassData{prior = 0.0, unseen = -2.4849066497880004, ClassData{prior = 0.0, unseen = -2.4849066497880004,
@ -157,14 +150,6 @@ classifiers
koData = koData =
ClassData{prior = -infinity, unseen = -0.6931471805599453, ClassData{prior = -infinity, unseen = -0.6931471805599453,
likelihoods = HashMap.fromList [], n = 0}}), likelihoods = HashMap.fromList [], n = 0}}),
("time-of-day (latent)",
Classifier{okData =
ClassData{prior = -infinity, unseen = -0.6931471805599453,
likelihoods = HashMap.fromList [], n = 0},
koData =
ClassData{prior = 0.0, unseen = -1.0986122886681098,
likelihoods = HashMap.fromList [("integer (numeric)", 0.0)],
n = 1}}),
("vineri", ("vineri",
Classifier{okData = Classifier{okData =
ClassData{prior = 0.0, unseen = -1.3862943611198906, ClassData{prior = 0.0, unseen = -1.3862943611198906,
@ -286,17 +271,6 @@ classifiers
koData = koData =
ClassData{prior = -infinity, unseen = -1.0986122886681098, ClassData{prior = -infinity, unseen = -1.0986122886681098,
likelihoods = HashMap.fromList [], n = 0}}), likelihoods = HashMap.fromList [], n = 0}}),
("<hour-of-day> <integer> (as relative minutes)",
Classifier{okData =
ClassData{prior = -infinity, unseen = -1.0986122886681098,
likelihoods = HashMap.fromList [], n = 0},
koData =
ClassData{prior = 0.0, unseen = -1.6094379124341003,
likelihoods =
HashMap.fromList
[("time-of-day (latent)integer (numeric)", -0.6931471805599453),
("hour", -0.6931471805599453)],
n = 1}}),
("<day-of-month>(number) <named-month>", ("<day-of-month>(number) <named-month>",
Classifier{okData = Classifier{okData =
ClassData{prior = 0.0, unseen = -2.5649493574615367, ClassData{prior = 0.0, unseen = -2.5649493574615367,

View File

@ -302,150 +302,143 @@ classifiers
likelihoods = HashMap.fromList [], n = 0}}), likelihoods = HashMap.fromList [], n = 0}}),
("intersect", ("intersect",
Classifier{okData = Classifier{okData =
ClassData{prior = -0.4434925036974037, unseen = -5.84354441703136, ClassData{prior = -0.4131871542020747,
unseen = -5.8289456176102075,
likelihoods = likelihoods =
HashMap.fromList HashMap.fromList
[("Onsdagthis <cycle>", -5.147494476813453), [("Onsdagthis <cycle>", -5.1328529268205045),
("Torsdag<time> timezone", -4.454347296253507), ("Torsdag<time> timezone", -4.43970574626056),
("<datetime> - <datetime> (interval)on <date>", ("<datetime> - <datetime> (interval)on <date>",
-4.048882188145344), -4.034240638152395),
("<time-of-day> - <time-of-day> (interval)on <date>", ("<time-of-day> - <time-of-day> (interval)on <date>",
-4.048882188145344), -4.034240638152395),
("hourday", -5.147494476813453), ("hourday", -5.1328529268205045),
("dayhour", -2.896202678206958), ("dayhour", -2.8815611282140097),
("daymonth", -3.0074283133171824), ("daymonth", -2.992786763324234),
("monthyear", -3.132591456271188), ("monthyear", -3.1179499062782403),
("Torsdagbetween <time-of-day> and <time-of-day> (interval)", ("Torsdagbetween <time-of-day> and <time-of-day> (interval)",
-5.147494476813453), -5.1328529268205045),
("Mandagon <date>", -5.147494476813453), ("Mandagon <date>", -5.1328529268205045),
("intersecthh:mm", -5.147494476813453), ("intersecthh:mm", -5.1328529268205045),
("Torsdagbetween <datetime> and <datetime> (interval)", ("Torsdagbetween <datetime> and <datetime> (interval)",
-5.147494476813453), -5.1328529268205045),
("Torsdagat <time-of-day>", -4.742029368705289), ("Torsdagat <time-of-day>", -4.727387818712341),
("Marsyear", -5.147494476813453), ("Marsyear", -5.1328529268205045),
("intersect by \"of\", \"from\", \"'s\"year", ("intersect by \"of\", \"from\", \"'s\"year",
-4.742029368705289), -4.727387818712341),
("Oktoberyear", -3.5380565643793527), ("Oktoberyear", -3.5234150143864045),
("Torsdagfrom <time-of-day> - <time-of-day> (interval)", ("Torsdagfrom <time-of-day> - <time-of-day> (interval)",
-4.742029368705289), -4.727387818712341),
("Torsdagfrom <datetime> - <datetime> (interval)", ("Torsdagfrom <datetime> - <datetime> (interval)",
-4.742029368705289), -4.727387818712341),
("last <day-of-week> of <time>year", -5.147494476813453), ("last <day-of-week> of <time>year", -5.1328529268205045),
("todayat <time-of-day>", -4.742029368705289), ("todayat <time-of-day>", -4.727387818712341),
("the <day-of-month> (ordinal)Februari", -5.147494476813453), ("the <day-of-month> (ordinal)Februari", -5.1328529268205045),
("dayday", -3.275692299911862), ("dayday", -3.2610507499189136),
("dd/mmat <time-of-day>", -4.231203744939298), ("dd/mmat <time-of-day>", -4.21656219494635),
("intersect by \",\"hh:mm", -4.231203744939298), ("intersect by \",\"hh:mm", -4.21656219494635),
("dayyear", -3.355735007585398), ("dayyear", -3.34109345759245),
("tomorrow<time-of-day> sharp", -4.742029368705289), ("tomorrow<time-of-day> sharp", -4.727387818712341),
("<day-of-month>(ordinal) <named-month>year", ("<day-of-month>(ordinal) <named-month>year",
-4.742029368705289), -4.727387818712341),
("Onsdag<named-month> <day-of-month> (non ordinal)", ("Onsdag<named-month> <day-of-month> (non ordinal)",
-5.147494476813453), -5.1328529268205045),
("Onsdagthis <time>", -4.454347296253507), ("Onsdagthis <time>", -4.43970574626056),
("absorption of , after named day<named-month> <day-of-month> (non ordinal)", ("absorption of , after named day<named-month> <day-of-month> (non ordinal)",
-4.048882188145344), -4.034240638152395),
("tomorrowuntil <time-of-day>", -4.742029368705289), ("tomorrowuntil <time-of-day>", -4.727387818712341),
("absorption of , after named day<day-of-month> (non ordinal) <named-month>", ("absorption of , after named day<day-of-month> (non ordinal) <named-month>",
-4.454347296253507), -4.43970574626056),
("after <time-of-day>at <time-of-day>", -4.742029368705289), ("after <time-of-day>at <time-of-day>", -4.727387818712341),
("the <day-of-month> (ordinal)Mars", -4.048882188145344), ("the <day-of-month> (ordinal)Mars", -4.034240638152395),
("intersect by \",\"<day-of-month> (non ordinal) <named-month>", ("intersect by \",\"<day-of-month> (non ordinal) <named-month>",
-4.742029368705289), -4.727387818712341),
("Mandagthis <cycle>", -5.147494476813453), ("Mandagthis <cycle>", -5.1328529268205045),
("tomorrowafter <time-of-day>", -4.742029368705289), ("tomorrowafter <time-of-day>", -4.727387818712341),
("from <time-of-day> - <time-of-day> (interval)on <date>", ("from <time-of-day> - <time-of-day> (interval)on <date>",
-4.231203744939298), -4.21656219494635),
("dayminute", -2.7961192196499756), ("dayminute", -2.7814776696570274),
("from <datetime> - <datetime> (interval)on <date>", ("from <datetime> - <datetime> (interval)on <date>",
-4.454347296253507), -4.43970574626056),
("on <date>Mars", -4.048882188145344), ("on <date>Mars", -4.034240638152395),
("<ordinal> <cycle> of <time>year", -4.742029368705289), ("<ordinal> <cycle> of <time>year", -4.727387818712341),
("minuteday", -2.5448047913690695), ("minuteday", -2.5301632413761213),
("absorption of , after named dayintersect", ("absorption of , after named dayintersect",
-5.147494476813453), -5.1328529268205045),
("yearhh:mm", -5.147494476813453), ("yearhh:mm", -5.1328529268205045),
("Tisdagthis <time>", -4.742029368705289), ("Tisdagthis <time>", -4.727387818712341),
("Onsdagnext <cycle>", -5.147494476813453), ("Onsdagnext <cycle>", -5.1328529268205045),
("absorption of , after named dayintersect by \",\"", ("absorption of , after named dayintersect by \",\"",
-4.742029368705289), -4.727387818712341),
("Sondaglast <cycle>", -5.147494476813453), ("Sondaglast <cycle>", -5.1328529268205045),
("dd/mmyear", -4.742029368705289), ("dd/mmyear", -4.727387818712341),
("Septemberyear", -4.231203744939298), ("Septemberyear", -4.21656219494635),
("at <time-of-day>on <date>", -5.147494476813453), ("at <time-of-day>on <date>", -5.1328529268205045),
("between <time-of-day> and <time-of-day> (interval)on <date>", ("between <time-of-day> and <time-of-day> (interval)on <date>",
-5.147494476813453), -5.1328529268205045),
("between <datetime> and <datetime> (interval)on <date>", ("between <datetime> and <datetime> (interval)on <date>",
-5.147494476813453), -5.1328529268205045),
("dayweek", -3.894731508318085), ("dayweek", -3.880089958325137),
("Tisdagthis <cycle>", -5.147494476813453), ("Tisdagthis <cycle>", -5.1328529268205045),
("on <date>Februari", -5.147494476813453), ("on <date>Februari", -5.1328529268205045),
("weekyear", -4.231203744939298), ("weekyear", -4.21656219494635),
("hh:mmtomorrow", -4.454347296253507), ("hh:mmtomorrow", -4.43970574626056),
("tomorrowat <time-of-day>", -3.894731508318085), ("tomorrowat <time-of-day>", -3.880089958325137),
("at <time-of-day>tomorrow", -4.742029368705289), ("at <time-of-day>tomorrow", -4.727387818712341),
("Sondag<day-of-month> (non ordinal) <named-month>", ("Sondag<day-of-month> (non ordinal) <named-month>",
-5.147494476813453), -5.1328529268205045),
("last <cycle> of <time>year", -4.231203744939298), ("last <cycle> of <time>year", -4.21656219494635),
("<day-of-month> (non ordinal) <named-month>year", ("<day-of-month> (non ordinal) <named-month>year",
-4.742029368705289), -4.727387818712341),
("yearminute", -5.147494476813453)], ("yearminute", -5.1328529268205045)],
n = 129}, n = 129},
koData = koData =
ClassData{prior = -1.0266387890430204, unseen = -5.442417710521793, ClassData{prior = -1.0833448165373212, unseen = -5.365976015021851,
likelihoods = likelihoods =
HashMap.fromList HashMap.fromList
[("OnsdagFebruari", -4.74493212836325), [("OnsdagFebruari", -4.66814498514948),
("dayhour", -3.240854731586976), ("dayhour", -3.164067588373206),
("daymonth", -2.1799827709017134), ("daymonth", -2.103195627687943),
("monthday", -3.828641396489095), ("monthday", -3.751854253275325),
("monthyear", -3.828641396489095), ("monthyear", -3.751854253275325),
("Torsdagbetween <time-of-day> and <time-of-day> (interval)", ("Torsdagbetween <time-of-day> and <time-of-day> (interval)",
-4.74493212836325), -4.66814498514948),
("Mandagon <date>", -4.339467020255086), ("Mandagon <date>", -4.2626798770413155),
("Torsdagbetween <datetime> and <datetime> (interval)", ("Torsdagbetween <datetime> and <datetime> (interval)",
-4.74493212836325), -4.66814498514948),
("Torsdagat <time-of-day>", -3.828641396489095), ("Torsdagat <time-of-day>", -3.751854253275325),
("Marsyear", -4.051784947803305), ("Marsyear", -3.9749978045895347),
("intersect by \"of\", \"from\", \"'s\"year", ("intersect by \"of\", \"from\", \"'s\"year",
-3.6463198396951406), -3.56953269648137),
("Torsdagfrom <time-of-day> - <time-of-day> (interval)", ("Torsdagfrom <time-of-day> - <time-of-day> (interval)",
-4.74493212836325), -4.66814498514948),
("Torsdagfrom <datetime> - <datetime> (interval)", ("Torsdagfrom <datetime> - <datetime> (interval)",
-4.339467020255086), -4.2626798770413155),
("Mandagintersect", -4.339467020255086), ("Mandagintersect", -4.2626798770413155),
("absorption of , after named dayJuli", -4.339467020255086), ("absorption of , after named dayJuli", -4.2626798770413155),
("hourmonth", -4.339467020255086), ("hourmonth", -4.2626798770413155),
("dd/mmat <time-of-day>", -3.828641396489095), ("dd/mmat <time-of-day>", -3.751854253275325),
("dayyear", -3.3586377672433594), ("dayyear", -3.2818506240295893),
("year<hour-of-day> <integer> (as relative minutes)",
-4.339467020255086),
("<named-month> <day-of-month> (non ordinal)Augusti", ("<named-month> <day-of-month> (non ordinal)Augusti",
-3.828641396489095), -3.751854253275325),
("Augusti<day-of-month> (non ordinal) <named-month>", ("Augusti<day-of-month> (non ordinal) <named-month>",
-3.828641396489095), -3.751854253275325),
("minutemonth", -4.339467020255086), ("Onsdagthis <time>", -3.4153820166541116),
("Onsdagthis <time>", -3.492169159867882), ("Aprilyear", -4.66814498514948),
("Aprilyear", -4.74493212836325), ("yearmonth", -4.66814498514948),
("yearmonth", -4.74493212836325), ("until <time-of-day>on <date>", -4.66814498514948),
("until <time-of-day>on <date>", -4.74493212836325), ("Torsdaghh:mm", -4.66814498514948),
("Torsdaghh:mm", -4.74493212836325), ("dayminute", -3.2818506240295893),
("dayminute", -3.3586377672433594), ("minuteday", -3.164067588373206),
("minuteday", -3.240854731586976), ("Tisdagthis <time>", -3.751854253275325),
("Tisdagthis <time>", -3.828641396489095), ("hh:mmon <date>", -3.2818506240295893),
("hh:mmon <date>", -3.3586377672433594), ("on <date>Februari", -4.2626798770413155),
("on <date>Februari", -4.339467020255086), ("absorption of , after named dayFebruari",
("absorption of , after named dayFebruari", -4.051784947803305), -3.9749978045895347),
("<hour-of-day> <integer> (as relative minutes)Juli", ("intersectFebruari", -4.2626798770413155),
-4.339467020255086), ("Mandagthis <time>", -4.66814498514948),
("<hour-of-day> <integer> (as relative minutes)year", ("Sondagthis <time>", -4.2626798770413155)],
-4.339467020255086), n = 66}}),
("intersectFebruari", -4.339467020255086),
("Mandagthis <time>", -4.74493212836325),
("Sondagthis <time>", -4.339467020255086),
("minuteyear", -4.339467020255086),
("yearminute", -4.339467020255086)],
n = 72}}),
("<ordinal> <cycle> of <time>", ("<ordinal> <cycle> of <time>",
Classifier{okData = Classifier{okData =
ClassData{prior = 0.0, unseen = -2.890371757896165, ClassData{prior = 0.0, unseen = -2.890371757896165,
@ -862,19 +855,19 @@ classifiers
n = 2}}), n = 2}}),
("time-of-day (latent)", ("time-of-day (latent)",
Classifier{okData = Classifier{okData =
ClassData{prior = -0.9675840262617056, unseen = -3.713572066704308, ClassData{prior = -0.8950133334268701, unseen = -3.713572066704308,
likelihoods = likelihoods =
HashMap.fromList HashMap.fromList
[("integer (numeric)", -5.129329438755058e-2), [("integer (numeric)", -5.129329438755058e-2),
("integer (0..19)", -2.995732273553991)], ("integer (0..19)", -2.995732273553991)],
n = 38}, n = 38},
koData = koData =
ClassData{prior = -0.4780358009429998, unseen = -4.174387269895637, ClassData{prior = -0.525266307920785, unseen = -4.060443010546419,
likelihoods = likelihoods =
HashMap.fromList HashMap.fromList
[("integer (numeric)", -0.2076393647782445), [("integer (numeric)", -0.2363887780642304),
("integer (0..19)", -1.6739764335716716)], ("integer (0..19)", -1.55814461804655)],
n = 62}}), n = 55}}),
("year", ("year",
Classifier{okData = Classifier{okData =
ClassData{prior = -0.14842000511827333, ClassData{prior = -0.14842000511827333,
@ -1357,36 +1350,32 @@ classifiers
likelihoods = HashMap.fromList [], n = 0}}), likelihoods = HashMap.fromList [], n = 0}}),
("<datetime> - <datetime> (interval)", ("<datetime> - <datetime> (interval)",
Classifier{okData = Classifier{okData =
ClassData{prior = -0.8362480242006186, unseen = -3.713572066704308, ClassData{prior = -0.6931471805599453,
unseen = -3.6109179126442243,
likelihoods = likelihoods =
HashMap.fromList HashMap.fromList
[("minuteminute", -1.491654876777717), [("minuteminute", -1.3862943611198906),
("hh:mmhh:mm", -1.491654876777717), ("hh:mmhh:mm", -1.3862943611198906),
("dayday", -1.8971199848858813), ("dayday", -1.791759469228055),
("<day-of-month> (non ordinal) <named-month><day-of-month> (non ordinal) <named-month>", ("<day-of-month> (non ordinal) <named-month><day-of-month> (non ordinal) <named-month>",
-1.8971199848858813)], -1.791759469228055)],
n = 13}, n = 13},
koData = koData =
ClassData{prior = -0.5679840376059393, unseen = -3.891820298110627, ClassData{prior = -0.6931471805599453,
unseen = -3.6109179126442243,
likelihoods = likelihoods =
HashMap.fromList HashMap.fromList
[("Juli<day-of-month> (non ordinal) <named-month>", [("Juli<day-of-month> (non ordinal) <named-month>",
-3.1780538303479458), -2.890371757896165),
("monthday", -2.0794415416798357), ("monthday", -1.791759469228055),
("minuteminute", -1.9252908618525775), ("minuteminute", -1.6376087894007967),
("hh:mmhh:mm", -3.1780538303479458), ("hh:mmhh:mm", -2.890371757896165),
("dayyear", -2.772588722239781), ("dayyear", -2.4849066497880004),
("year<hour-of-day> <integer> (as relative minutes)",
-2.772588722239781),
("Augusti<day-of-month> (non ordinal) <named-month>", ("Augusti<day-of-month> (non ordinal) <named-month>",
-2.2617630984737906), -1.9740810260220096),
("hh:mmintersect", -2.0794415416798357), ("hh:mmintersect", -1.791759469228055),
("dd/mmyear", -2.772588722239781), ("dd/mmyear", -2.4849066497880004)],
("<hour-of-day> <integer> (as relative minutes)year", n = 13}}),
-2.772588722239781),
("minuteyear", -2.772588722239781),
("yearminute", -2.772588722239781)],
n = 17}}),
("<time-of-day> - <time-of-day> (interval)", ("<time-of-day> - <time-of-day> (interval)",
Classifier{okData = Classifier{okData =
ClassData{prior = -0.8109302162163288, unseen = -3.044522437723423, ClassData{prior = -0.8109302162163288, unseen = -3.044522437723423,
@ -1596,17 +1585,6 @@ classifiers
koData = koData =
ClassData{prior = -infinity, unseen = -1.0986122886681098, ClassData{prior = -infinity, unseen = -1.0986122886681098,
likelihoods = HashMap.fromList [], n = 0}}), likelihoods = HashMap.fromList [], n = 0}}),
("<hour-of-day> <integer> (as relative minutes)",
Classifier{okData =
ClassData{prior = -infinity, unseen = -1.0986122886681098,
likelihoods = HashMap.fromList [], n = 0},
koData =
ClassData{prior = 0.0, unseen = -2.833213344056216,
likelihoods =
HashMap.fromList
[("time-of-day (latent)integer (numeric)", -0.6931471805599453),
("hour", -0.6931471805599453)],
n = 7}}),
("this <time>", ("this <time>",
Classifier{okData = Classifier{okData =
ClassData{prior = -1.276293465905562, unseen = -3.6635616461296463, ClassData{prior = -1.276293465905562, unseen = -3.6635616461296463,

View File

@ -13,21 +13,19 @@
module Duckling.Time.DA.Rules module Duckling.Time.DA.Rules
( rules ) where ( rules ) where
import Control.Monad (liftM2)
import Data.Text (Text) import Data.Text (Text)
import Prelude import Prelude
import Duckling.Dimensions.Types import Duckling.Dimensions.Types
import Duckling.Numeral.Helpers (parseInt) import Duckling.Numeral.Helpers (parseInt)
import Duckling.Ordinal.Types (OrdinalData (..)) import Duckling.Ordinal.Types (OrdinalData (..))
import qualified Duckling.Ordinal.Types as TOrdinal
import Duckling.Time.Helpers import Duckling.Time.Helpers
import Duckling.Time.Types (TimeData (..)) import Duckling.Time.Types (TimeData (..))
import qualified Duckling.Time.Types as TTime
import qualified Duckling.TimeGrain.Types as TG
import Duckling.Regex.Types import Duckling.Regex.Types
import Duckling.Types import Duckling.Types
import qualified Duckling.Ordinal.Types as TOrdinal
import qualified Duckling.Time.Types as TTime
import qualified Duckling.TimeGrain.Types as TG
daysOfWeek :: [(Text, String)] daysOfWeek :: [(Text, String)]
daysOfWeek = daysOfWeek =
@ -680,7 +678,7 @@ ruleHourofdayIntegerAsRelativeMinutes :: Rule
ruleHourofdayIntegerAsRelativeMinutes = Rule ruleHourofdayIntegerAsRelativeMinutes = Rule
{ name = "<hour-of-day> <integer> (as relative minutes)" { name = "<hour-of-day> <integer> (as relative minutes)"
, pattern = , pattern =
[ Predicate isAnHourOfDay [ Predicate $ and . sequence [isNotLatent, isAnHourOfDay]
, Predicate $ isIntegerBetween 1 59 , Predicate $ isIntegerBetween 1 59
] ]
, prod = \tokens -> case tokens of , prod = \tokens -> case tokens of
@ -1562,7 +1560,7 @@ ruleTimeofdayTimeofdayInterval :: Rule
ruleTimeofdayTimeofdayInterval = Rule ruleTimeofdayTimeofdayInterval = Rule
{ name = "<time-of-day> - <time-of-day> (interval)" { name = "<time-of-day> - <time-of-day> (interval)"
, pattern = , pattern =
[ Predicate $ liftM2 (&&) isATimeOfDay isNotLatent [ Predicate $ and . sequence [isNotLatent, isATimeOfDay]
, regex "\\-|til|indtil" , regex "\\-|til|indtil"
, Predicate isATimeOfDay , Predicate isATimeOfDay
] ]
@ -1720,7 +1718,7 @@ ruleTimezone :: Rule
ruleTimezone = Rule ruleTimezone = Rule
{ name = "<time> timezone" { name = "<time> timezone"
, pattern = , pattern =
[ Predicate $ liftM2 (&&) isATimeOfDay isNotLatent [ Predicate $ and . sequence [isNotLatent, isATimeOfDay]
, regex "\\b(YEKT|YEKST|YAKT|YAKST|WITA|WIT|WIB|WGT|WGST|WFT|WET|WEST|WAT|WAST|VUT|VLAT|VLAST|VET|UZT|UYT|UYST|UTC|ULAT|TVT|TMT|TLT|TKT|TJT|TFT|TAHT|SST|SRT|SGT|SCT|SBT|SAST|SAMT|RET|PYT|PYST|PWT|PST|PONT|PMST|PMDT|PKT|PHT|PHOT|PGT|PETT|PETST|PET|PDT|OMST|OMSST|NZST|NZDT|NUT|NST|NPT|NOVT|NOVST|NFT|NDT|NCT|MYT|MVT|MUT|MST|MSK|MSD|MMT|MHT|MDT|MAWT|MART|MAGT|MAGST|LINT|LHST|LHDT|KUYT|KST|KRAT|KRAST|KGT|JST|IST|IRST|IRKT|IRKST|IRDT|IOT|IDT|ICT|HOVT|HKT|GYT|GST|GMT|GILT|GFT|GET|GAMT|GALT|FNT|FKT|FKST|FJT|FJST|EST|EGT|EGST|EET|EEST|EDT|ECT|EAT|EAST|EASST|DAVT|ChST|CXT|CVT|CST|COT|CLT|CLST|CKT|CHAST|CHADT|CET|CEST|CDT|CCT|CAT|CAST|BTT|BST|BRT|BRST|BOT|BNT|AZT|AZST|AZOT|AZOST|AWST|AWDT|AST|ART|AQTT|ANAT|ANAST|AMT|AMST|ALMT|AKST|AKDT|AFT|AEST|AEDT|ADT|ACST|ACDT)\\b" , regex "\\b(YEKT|YEKST|YAKT|YAKST|WITA|WIT|WIB|WGT|WGST|WFT|WET|WEST|WAT|WAST|VUT|VLAT|VLAST|VET|UZT|UYT|UYST|UTC|ULAT|TVT|TMT|TLT|TKT|TJT|TFT|TAHT|SST|SRT|SGT|SCT|SBT|SAST|SAMT|RET|PYT|PYST|PWT|PST|PONT|PMST|PMDT|PKT|PHT|PHOT|PGT|PETT|PETST|PET|PDT|OMST|OMSST|NZST|NZDT|NUT|NST|NPT|NOVT|NOVST|NFT|NDT|NCT|MYT|MVT|MUT|MST|MSK|MSD|MMT|MHT|MDT|MAWT|MART|MAGT|MAGST|LINT|LHST|LHDT|KUYT|KST|KRAT|KRAST|KGT|JST|IST|IRST|IRKT|IRKST|IRDT|IOT|IDT|ICT|HOVT|HKT|GYT|GST|GMT|GILT|GFT|GET|GAMT|GALT|FNT|FKT|FKST|FJT|FJST|EST|EGT|EGST|EET|EEST|EDT|ECT|EAT|EAST|EASST|DAVT|ChST|CXT|CVT|CST|COT|CLT|CLST|CKT|CHAST|CHADT|CET|CEST|CDT|CCT|CAT|CAST|BTT|BST|BRT|BRST|BOT|BNT|AZT|AZST|AZOT|AZOST|AWST|AWDT|AST|ART|AQTT|ANAT|ANAST|AMT|AMST|ALMT|AKST|AKDT|AFT|AEST|AEDT|ADT|ACST|ACDT)\\b"
] ]
, prod = \tokens -> case tokens of , prod = \tokens -> case tokens of

View File

@ -13,7 +13,6 @@
module Duckling.Time.DE.Rules module Duckling.Time.DE.Rules
( rules ) where ( rules ) where
import Control.Monad (liftM2)
import Prelude import Prelude
import Data.Text (Text) import Data.Text (Text)
import qualified Data.Text as Text import qualified Data.Text as Text
@ -683,7 +682,7 @@ ruleHourofdayIntegerAsRelativeMinutes :: Rule
ruleHourofdayIntegerAsRelativeMinutes = Rule ruleHourofdayIntegerAsRelativeMinutes = Rule
{ name = "<hour-of-day> <integer> (as relative minutes)" { name = "<hour-of-day> <integer> (as relative minutes)"
, pattern = , pattern =
[ Predicate isAnHourOfDay [ Predicate $ and . sequence [isNotLatent, isAnHourOfDay]
, Predicate $ isIntegerBetween 1 59 , Predicate $ isIntegerBetween 1 59
] ]
, prod = \tokens -> case tokens of , prod = \tokens -> case tokens of
@ -1274,7 +1273,7 @@ ruleYearLatent = Rule
{ name = "year (latent)" { name = "year (latent)"
, pattern = , pattern =
[ Predicate $ [ Predicate $
liftM2 (||) (isIntegerBetween (- 10000) 0) (isIntegerBetween 25 999) or . sequence [isIntegerBetween (- 10000) 0, isIntegerBetween 25 999]
] ]
, prod = \tokens -> case tokens of , prod = \tokens -> case tokens of
(token:_) -> do (token:_) -> do
@ -1514,7 +1513,7 @@ ruleTimeofdayTimeofdayInterval :: Rule
ruleTimeofdayTimeofdayInterval = Rule ruleTimeofdayTimeofdayInterval = Rule
{ name = "<time-of-day> - <time-of-day> (interval)" { name = "<time-of-day> - <time-of-day> (interval)"
, pattern = , pattern =
[ Predicate $ liftM2 (&&) isATimeOfDay isNotLatent [ Predicate $ and . sequence [isNotLatent, isATimeOfDay]
, regex "\\-|bis" , regex "\\-|bis"
, Predicate isATimeOfDay , Predicate isATimeOfDay
] ]
@ -1530,7 +1529,7 @@ ruleTimeofdayTimeofdayInterval2 = Rule
, pattern = , pattern =
[ Predicate isATimeOfDay [ Predicate isATimeOfDay
, regex "\\-|/|bis" , regex "\\-|/|bis"
, Predicate $ liftM2 (&&) isATimeOfDay isNotLatent , Predicate $ and . sequence [isNotLatent, isATimeOfDay]
] ]
, prod = \tokens -> case tokens of , prod = \tokens -> case tokens of
(Token Time td1:_:Token Time td2:_) -> (Token Time td1:_:Token Time td2:_) ->
@ -1657,7 +1656,7 @@ ruleTimezone :: Rule
ruleTimezone = Rule ruleTimezone = Rule
{ name = "<time> timezone" { name = "<time> timezone"
, pattern = , pattern =
[ Predicate $ liftM2 (&&) isATimeOfDay isNotLatent [ Predicate $ and . sequence [isNotLatent, isATimeOfDay]
, regex "\\b(YEKT|YEKST|YAKT|YAKST|WITA|WIT|WIB|WGT|WGST|WFT|WET|WEST|WAT|WAST|VUT|VLAT|VLAST|VET|UZT|UYT|UYST|UTC|ULAT|TVT|TMT|TLT|TKT|TJT|TFT|TAHT|SST|SRT|SGT|SCT|SBT|SAST|SAMT|RET|PYT|PYST|PWT|PST|PONT|PMST|PMDT|PKT|PHT|PHOT|PGT|PETT|PETST|PET|PDT|OMST|OMSST|NZST|NZDT|NUT|NST|NPT|NOVT|NOVST|NFT|NDT|NCT|MYT|MVT|MUT|MST|MSK|MSD|MMT|MHT|MDT|MAWT|MART|MAGT|MAGST|LINT|LHST|LHDT|KUYT|KST|KRAT|KRAST|KGT|JST|IST|IRST|IRKT|IRKST|IRDT|IOT|IDT|ICT|HOVT|HKT|GYT|GST|GMT|GILT|GFT|GET|GAMT|GALT|FNT|FKT|FKST|FJT|FJST|EST|EGT|EGST|EET|EEST|EDT|ECT|EAT|EAST|EASST|DAVT|ChST|CXT|CVT|CST|COT|CLT|CLST|CKT|CHAST|CHADT|CET|CEST|CDT|CCT|CAT|CAST|BTT|BST|BRT|BRST|BOT|BNT|AZT|AZST|AZOT|AZOST|AWST|AWDT|AST|ART|AQTT|ANAT|ANAST|AMT|AMST|ALMT|AKST|AKDT|AFT|AEST|AEDT|ADT|ACST|ACDT)\\b" , regex "\\b(YEKT|YEKST|YAKT|YAKST|WITA|WIT|WIB|WGT|WGST|WFT|WET|WEST|WAT|WAST|VUT|VLAT|VLAST|VET|UZT|UYT|UYST|UTC|ULAT|TVT|TMT|TLT|TKT|TJT|TFT|TAHT|SST|SRT|SGT|SCT|SBT|SAST|SAMT|RET|PYT|PYST|PWT|PST|PONT|PMST|PMDT|PKT|PHT|PHOT|PGT|PETT|PETST|PET|PDT|OMST|OMSST|NZST|NZDT|NUT|NST|NPT|NOVT|NOVST|NFT|NDT|NCT|MYT|MVT|MUT|MST|MSK|MSD|MMT|MHT|MDT|MAWT|MART|MAGT|MAGST|LINT|LHST|LHDT|KUYT|KST|KRAT|KRAST|KGT|JST|IST|IRST|IRKT|IRKST|IRDT|IOT|IDT|ICT|HOVT|HKT|GYT|GST|GMT|GILT|GFT|GET|GAMT|GALT|FNT|FKT|FKST|FJT|FJST|EST|EGT|EGST|EET|EEST|EDT|ECT|EAT|EAST|EASST|DAVT|ChST|CXT|CVT|CST|COT|CLT|CLST|CKT|CHAST|CHADT|CET|CEST|CDT|CCT|CAT|CAST|BTT|BST|BRT|BRST|BOT|BNT|AZT|AZST|AZOT|AZOST|AWST|AWDT|AST|ART|AQTT|ANAT|ANAST|AMT|AMST|ALMT|AKST|AKDT|AFT|AEST|AEDT|ADT|ACST|ACDT)\\b"
] ]
, prod = \tokens -> case tokens of , prod = \tokens -> case tokens of

View File

@ -45,6 +45,8 @@ negativeCorpus = (testContext, examples)
, "dozens o'clock" , "dozens o'clock"
, "Rat 6" , "Rat 6"
, "rat 6" , "rat 6"
, "3 30"
, "three twenty"
] ]
allExamples :: [Example] allExamples :: [Example]
@ -312,6 +314,7 @@ allExamples = concat
, "3:15pm" , "3:15pm"
, "3:15PM" , "3:15PM"
, "3:15p" , "3:15p"
, "at 3 15"
] ]
, examples (datetime (2013, 2, 12, 15, 20, 0) Minute) , examples (datetime (2013, 2, 12, 15, 20, 0) Minute)
[ "at 20 past 3pm" [ "at 20 past 3pm"
@ -319,6 +322,7 @@ allExamples = concat
, "3:20 in afternoon" , "3:20 in afternoon"
, "twenty after 3pm" , "twenty after 3pm"
, "3:20p" , "3:20p"
, "at three twenty"
] ]
, examples (datetime (2013, 2, 12, 15, 30, 0) Minute) , examples (datetime (2013, 2, 12, 15, 30, 0) Minute)
[ "at half past three pm" [ "at half past three pm"

View File

@ -13,7 +13,6 @@
module Duckling.Time.EN.Rules module Duckling.Time.EN.Rules
( rules ) where ( rules ) where
import Control.Monad (liftM2)
import Data.Maybe import Data.Maybe
import Data.Text (Text) import Data.Text (Text)
import Prelude import Prelude
@ -315,7 +314,7 @@ ruleYearPastLatent = Rule
{ name = "past year (latent)" { name = "past year (latent)"
, pattern = , pattern =
[ Predicate $ [ Predicate $
liftM2 (||) (isIntegerBetween (- 10000) 0) (isIntegerBetween 25 999) or . sequence [isIntegerBetween (- 10000) 0, isIntegerBetween 25 999]
] ]
, prod = \tokens -> case tokens of , prod = \tokens -> case tokens of
(token:_) -> do (token:_) -> do
@ -378,7 +377,7 @@ ruleNamedDOMOrdinal :: Rule
ruleNamedDOMOrdinal = Rule ruleNamedDOMOrdinal = Rule
{ name = "<named-month>|<named-day> <day-of-month> (ordinal)" { name = "<named-month>|<named-day> <day-of-month> (ordinal)"
, pattern = , pattern =
[ Predicate $ liftM2 (||) isAMonth isADayOfWeek [ Predicate $ or . sequence [isAMonth, isADayOfWeek]
, Predicate isDOMOrdinal , Predicate isDOMOrdinal
] ]
, prod = \tokens -> case tokens of , prod = \tokens -> case tokens of
@ -457,7 +456,7 @@ ruleTODLatent :: Rule
ruleTODLatent = Rule ruleTODLatent = Rule
{ name = "time-of-day (latent)" { name = "time-of-day (latent)"
, pattern = , pattern =
[ Predicate $ liftM2 (&&) isNumeralSafeToUse (isIntegerBetween 0 23) [ Predicate $ and . sequence [isNumeralSafeToUse, isIntegerBetween 0 23]
] ]
, prod = \tokens -> case tokens of , prod = \tokens -> case tokens of
(token:_) -> do (token:_) -> do
@ -562,7 +561,7 @@ ruleHONumeral :: Rule
ruleHONumeral = Rule ruleHONumeral = Rule
{ name = "<hour-of-day> <integer>" { name = "<hour-of-day> <integer>"
, pattern = , pattern =
[ Predicate $ liftM2 (&&) isNotLatent isAnHourOfDay [ Predicate $ and . sequence [isNotLatent, isAnHourOfDay]
, Predicate $ isIntegerBetween 1 59 , Predicate $ isIntegerBetween 1 59
] ]
, prod = \tokens -> case tokens of , prod = \tokens -> case tokens of
@ -1061,7 +1060,7 @@ ruleIntervalTODDash :: Rule
ruleIntervalTODDash = Rule ruleIntervalTODDash = Rule
{ name = "<time-of-day> - <time-of-day> (interval)" { name = "<time-of-day> - <time-of-day> (interval)"
, pattern = , pattern =
[ Predicate $ liftM2 (&&) isNotLatent isATimeOfDay [ Predicate $ and . sequence [isNotLatent, isATimeOfDay]
, regex "\\-|:|to|th?ru|through|(un)?til(l)?" , regex "\\-|:|to|th?ru|through|(un)?til(l)?"
, Predicate isATimeOfDay , Predicate isATimeOfDay
] ]
@ -1629,7 +1628,7 @@ ruleTimezone :: Rule
ruleTimezone = Rule ruleTimezone = Rule
{ name = "<time> timezone" { name = "<time> timezone"
, pattern = , pattern =
[ Predicate $ liftM2 (&&) isATimeOfDay isNotLatent [ Predicate $ and . sequence [isNotLatent, isATimeOfDay]
, regex "\\b(YEKT|YEKST|YAKT|YAKST|WITA|WIT|WIB|WGT|WGST|WFT|WET|WEST|WAT|WAST|VUT|VLAT|VLAST|VET|UZT|UYT|UYST|UTC|ULAT|TVT|TMT|TLT|TKT|TJT|TFT|TAHT|SST|SRT|SGT|SCT|SBT|SAST|SAMT|RET|PYT|PYST|PWT|PST|PONT|PMST|PMDT|PKT|PHT|PHOT|PGT|PETT|PETST|PET|PDT|OMST|OMSST|NZST|NZDT|NUT|NST|NPT|NOVT|NOVST|NFT|NDT|NCT|MYT|MVT|MUT|MST|MSK|MSD|MMT|MHT|MDT|MAWT|MART|MAGT|MAGST|LINT|LHST|LHDT|KUYT|KST|KRAT|KRAST|KGT|JST|IST|IRST|IRKT|IRKST|IRDT|IOT|IDT|ICT|HOVT|HKT|GYT|GST|GMT|GILT|GFT|GET|GAMT|GALT|FNT|FKT|FKST|FJT|FJST|EST|EGT|EGST|EET|EEST|EDT|ECT|EAT|EAST|EASST|DAVT|ChST|CXT|CVT|CST|COT|CLT|CLST|CKT|CHAST|CHADT|CET|CEST|CDT|CCT|CAT|CAST|BTT|BST|BRT|BRST|BOT|BNT|AZT|AZST|AZOT|AZOST|AWST|AWDT|AST|ART|AQTT|ANAT|ANAST|AMT|AMST|ALMT|AKST|AKDT|AFT|AEST|AEDT|ADT|ACST|ACDT)\\b" , regex "\\b(YEKT|YEKST|YAKT|YAKST|WITA|WIT|WIB|WGT|WGST|WFT|WET|WEST|WAT|WAST|VUT|VLAT|VLAST|VET|UZT|UYT|UYST|UTC|ULAT|TVT|TMT|TLT|TKT|TJT|TFT|TAHT|SST|SRT|SGT|SCT|SBT|SAST|SAMT|RET|PYT|PYST|PWT|PST|PONT|PMST|PMDT|PKT|PHT|PHOT|PGT|PETT|PETST|PET|PDT|OMST|OMSST|NZST|NZDT|NUT|NST|NPT|NOVT|NOVST|NFT|NDT|NCT|MYT|MVT|MUT|MST|MSK|MSD|MMT|MHT|MDT|MAWT|MART|MAGT|MAGST|LINT|LHST|LHDT|KUYT|KST|KRAT|KRAST|KGT|JST|IST|IRST|IRKT|IRKST|IRDT|IOT|IDT|ICT|HOVT|HKT|GYT|GST|GMT|GILT|GFT|GET|GAMT|GALT|FNT|FKT|FKST|FJT|FJST|EST|EGT|EGST|EET|EEST|EDT|ECT|EAT|EAST|EASST|DAVT|ChST|CXT|CVT|CST|COT|CLT|CLST|CKT|CHAST|CHADT|CET|CEST|CDT|CCT|CAT|CAST|BTT|BST|BRT|BRST|BOT|BNT|AZT|AZST|AZOT|AZOST|AWST|AWDT|AST|ART|AQTT|ANAT|ANAST|AMT|AMST|ALMT|AKST|AKDT|AFT|AEST|AEDT|ADT|ACST|ACDT)\\b"
] ]
, prod = \tokens -> case tokens of , prod = \tokens -> case tokens of

View File

@ -13,20 +13,19 @@
module Duckling.Time.ES.Rules module Duckling.Time.ES.Rules
( rules ) where ( rules ) where
import Control.Monad (liftM2)
import qualified Data.Text as Text
import Prelude import Prelude
import qualified Data.Text as Text
import Duckling.Dimensions.Types import Duckling.Dimensions.Types
import Duckling.Numeral.Helpers (parseInt) import Duckling.Numeral.Helpers (parseInt)
import Duckling.Ordinal.Types (OrdinalData (..)) import Duckling.Ordinal.Types (OrdinalData (..))
import qualified Duckling.Ordinal.Types as TOrdinal
import Duckling.Regex.Types import Duckling.Regex.Types
import Duckling.Time.Helpers import Duckling.Time.Helpers
import Duckling.Time.Types (TimeData (..)) import Duckling.Time.Types (TimeData (..))
import Duckling.Types
import qualified Duckling.Ordinal.Types as TOrdinal
import qualified Duckling.Time.Types as TTime import qualified Duckling.Time.Types as TTime
import qualified Duckling.TimeGrain.Types as TG import qualified Duckling.TimeGrain.Types as TG
import Duckling.Types
ruleTheDayAfterTomorrow :: Rule ruleTheDayAfterTomorrow :: Rule
ruleTheDayAfterTomorrow = Rule ruleTheDayAfterTomorrow = Rule
@ -441,7 +440,7 @@ ruleHourofdayIntegerAsRelativeMinutes :: Rule
ruleHourofdayIntegerAsRelativeMinutes = Rule ruleHourofdayIntegerAsRelativeMinutes = Rule
{ name = "<hour-of-day> <integer> (as relative minutes)" { name = "<hour-of-day> <integer> (as relative minutes)"
, pattern = , pattern =
[ Predicate isAnHourOfDay [ Predicate $ and . sequence [isNotLatent, isAnHourOfDay]
, Predicate $ isIntegerBetween 1 59 , Predicate $ isIntegerBetween 1 59
] ]
, prod = \tokens -> case tokens of , prod = \tokens -> case tokens of
@ -1336,7 +1335,7 @@ ruleTimezone :: Rule
ruleTimezone = Rule ruleTimezone = Rule
{ name = "<time> timezone" { name = "<time> timezone"
, pattern = , pattern =
[ Predicate $ liftM2 (&&) isATimeOfDay isNotLatent [ Predicate $ and . sequence [isATimeOfDay, isNotLatent]
, regex "\\b(YEKT|YEKST|YAKT|YAKST|WITA|WIT|WIB|WGT|WGST|WFT|WET|WEST|WAT|WAST|VUT|VLAT|VLAST|VET|UZT|UYT|UYST|UTC|ULAT|TVT|TMT|TLT|TKT|TJT|TFT|TAHT|SST|SRT|SGT|SCT|SBT|SAST|SAMT|RET|PYT|PYST|PWT|PST|PONT|PMST|PMDT|PKT|PHT|PHOT|PGT|PETT|PETST|PET|PDT|OMST|OMSST|NZST|NZDT|NUT|NST|NPT|NOVT|NOVST|NFT|NDT|NCT|MYT|MVT|MUT|MST|MSK|MSD|MMT|MHT|MDT|MAWT|MART|MAGT|MAGST|LINT|LHST|LHDT|KUYT|KST|KRAT|KRAST|KGT|JST|IST|IRST|IRKT|IRKST|IRDT|IOT|IDT|ICT|HOVT|HKT|GYT|GST|GMT|GILT|GFT|GET|GAMT|GALT|FNT|FKT|FKST|FJT|FJST|EST|EGT|EGST|EET|EEST|EDT|ECT|EAT|EAST|EASST|DAVT|ChST|CXT|CVT|CST|COT|CLT|CLST|CKT|CHAST|CHADT|CET|CEST|CDT|CCT|CAT|CAST|BTT|BST|BRT|BRST|BOT|BNT|AZT|AZST|AZOT|AZOST|AWST|AWDT|AST|ART|AQTT|ANAT|ANAST|AMT|AMST|ALMT|AKST|AKDT|AFT|AEST|AEDT|ADT|ACST|ACDT)\\b" , regex "\\b(YEKT|YEKST|YAKT|YAKST|WITA|WIT|WIB|WGT|WGST|WFT|WET|WEST|WAT|WAST|VUT|VLAT|VLAST|VET|UZT|UYT|UYST|UTC|ULAT|TVT|TMT|TLT|TKT|TJT|TFT|TAHT|SST|SRT|SGT|SCT|SBT|SAST|SAMT|RET|PYT|PYST|PWT|PST|PONT|PMST|PMDT|PKT|PHT|PHOT|PGT|PETT|PETST|PET|PDT|OMST|OMSST|NZST|NZDT|NUT|NST|NPT|NOVT|NOVST|NFT|NDT|NCT|MYT|MVT|MUT|MST|MSK|MSD|MMT|MHT|MDT|MAWT|MART|MAGT|MAGST|LINT|LHST|LHDT|KUYT|KST|KRAT|KRAST|KGT|JST|IST|IRST|IRKT|IRKST|IRDT|IOT|IDT|ICT|HOVT|HKT|GYT|GST|GMT|GILT|GFT|GET|GAMT|GALT|FNT|FKT|FKST|FJT|FJST|EST|EGT|EGST|EET|EEST|EDT|ECT|EAT|EAST|EASST|DAVT|ChST|CXT|CVT|CST|COT|CLT|CLST|CKT|CHAST|CHADT|CET|CEST|CDT|CCT|CAT|CAST|BTT|BST|BRT|BRST|BOT|BNT|AZT|AZST|AZOT|AZOST|AWST|AWDT|AST|ART|AQTT|ANAT|ANAST|AMT|AMST|ALMT|AKST|AKDT|AFT|AEST|AEDT|ADT|ACST|ACDT)\\b"
] ]
, prod = \tokens -> case tokens of , prod = \tokens -> case tokens of

View File

@ -31,6 +31,8 @@ negativeCorpus = (testContext {lang = FR}, examples)
where where
examples = examples =
[ "Ana a un court de tennis" [ "Ana a un court de tennis"
, "deux trois"
, "deux trois minutes"
] ]
allExamples :: [Example] allExamples :: [Example]

View File

@ -13,10 +13,8 @@
module Duckling.Time.FR.Rules module Duckling.Time.FR.Rules
( rules ) where ( rules ) where
import Control.Monad (liftM2)
import Prelude
import Data.Text (Text) import Data.Text (Text)
import Prelude
import qualified Data.Text as Text import qualified Data.Text as Text
import Duckling.Dimensions.Types import Duckling.Dimensions.Types
@ -656,7 +654,7 @@ ruleHourofdayInteger :: Rule
ruleHourofdayInteger = Rule ruleHourofdayInteger = Rule
{ name = "<hour-of-day> <integer> (as relative minutes)" { name = "<hour-of-day> <integer> (as relative minutes)"
, pattern = , pattern =
[ Predicate $ liftM2 (&&) isAnHourOfDay hasNoDirection [ Predicate $ and . sequence [isNotLatent, isAnHourOfDay, hasNoDirection]
, Predicate $ isIntegerBetween 1 59 , Predicate $ isIntegerBetween 1 59
] ]
, prod = \tokens -> case tokens of , prod = \tokens -> case tokens of
@ -672,7 +670,7 @@ ruleHourofdayIntegerMinutes :: Rule
ruleHourofdayIntegerMinutes = Rule ruleHourofdayIntegerMinutes = Rule
{ name = "<hour-of-day> <integer> minutes" { name = "<hour-of-day> <integer> minutes"
, pattern = , pattern =
[ Predicate isAnHourOfDay [ Predicate $ and . sequence [isNotLatent, isAnHourOfDay]
, Predicate $ isIntegerBetween 1 59 , Predicate $ isIntegerBetween 1 59
, regex "min\\.?(ute)?s?" , regex "min\\.?(ute)?s?"
] ]
@ -1465,7 +1463,7 @@ ruleVersTimeofday = Rule
{ name = "à|vers <time-of-day>" { name = "à|vers <time-of-day>"
, pattern = , pattern =
[ regex "(vers|autour de|(a|à) environ|aux alentours de|(a|à))" [ regex "(vers|autour de|(a|à) environ|aux alentours de|(a|à))"
, Predicate $ liftM2 (&&) isATimeOfDay isNotLatent , Predicate $ and . sequence [isATimeOfDay, isNotLatent]
] ]
, prod = \tokens -> case tokens of , prod = \tokens -> case tokens of
(_:x:_) -> Just x (_:x:_) -> Just x
@ -1886,7 +1884,7 @@ ruleTimezone :: Rule
ruleTimezone = Rule ruleTimezone = Rule
{ name = "<time> timezone" { name = "<time> timezone"
, pattern = , pattern =
[ Predicate $ liftM2 (&&) isATimeOfDay isNotLatent [ Predicate $ and . sequence [isNotLatent, isATimeOfDay]
, regex "\\b(YEKT|YEKST|YAKT|YAKST|WITA|WIT|WIB|WGT|WGST|WFT|WET|WEST|WAT|WAST|VUT|VLAT|VLAST|VET|UZT|UYT|UYST|UTC|ULAT|TVT|TMT|TLT|TKT|TJT|TFT|TAHT|SST|SRT|SGT|SCT|SBT|SAST|SAMT|RET|PYT|PYST|PWT|PST|PONT|PMST|PMDT|PKT|PHT|PHOT|PGT|PETT|PETST|PET|PDT|OMST|OMSST|NZST|NZDT|NUT|NST|NPT|NOVT|NOVST|NFT|NDT|NCT|MYT|MVT|MUT|MST|MSK|MSD|MMT|MHT|MDT|MAWT|MART|MAGT|MAGST|LINT|LHST|LHDT|KUYT|KST|KRAT|KRAST|KGT|JST|IST|IRST|IRKT|IRKST|IRDT|IOT|IDT|ICT|HOVT|HKT|GYT|GST|GMT|GILT|GFT|GET|GAMT|GALT|FNT|FKT|FKST|FJT|FJST|EST|EGT|EGST|EET|EEST|EDT|ECT|EAT|EAST|EASST|DAVT|ChST|CXT|CVT|CST|COT|CLT|CLST|CKT|CHAST|CHADT|CET|CEST|CDT|CCT|CAT|CAST|BTT|BST|BRT|BRST|BOT|BNT|AZT|AZST|AZOT|AZOST|AWST|AWDT|AST|ART|AQTT|ANAT|ANAST|AMT|AMST|ALMT|AKST|AKDT|AFT|AEST|AEDT|ADT|ACST|ACDT)\\b" , regex "\\b(YEKT|YEKST|YAKT|YAKST|WITA|WIT|WIB|WGT|WGST|WFT|WET|WEST|WAT|WAST|VUT|VLAT|VLAST|VET|UZT|UYT|UYST|UTC|ULAT|TVT|TMT|TLT|TKT|TJT|TFT|TAHT|SST|SRT|SGT|SCT|SBT|SAST|SAMT|RET|PYT|PYST|PWT|PST|PONT|PMST|PMDT|PKT|PHT|PHOT|PGT|PETT|PETST|PET|PDT|OMST|OMSST|NZST|NZDT|NUT|NST|NPT|NOVT|NOVST|NFT|NDT|NCT|MYT|MVT|MUT|MST|MSK|MSD|MMT|MHT|MDT|MAWT|MART|MAGT|MAGST|LINT|LHST|LHDT|KUYT|KST|KRAT|KRAST|KGT|JST|IST|IRST|IRKT|IRKST|IRDT|IOT|IDT|ICT|HOVT|HKT|GYT|GST|GMT|GILT|GFT|GET|GAMT|GALT|FNT|FKT|FKST|FJT|FJST|EST|EGT|EGST|EET|EEST|EDT|ECT|EAT|EAST|EASST|DAVT|ChST|CXT|CVT|CST|COT|CLT|CLST|CKT|CHAST|CHADT|CET|CEST|CDT|CCT|CAT|CAST|BTT|BST|BRT|BRST|BOT|BNT|AZT|AZST|AZOT|AZOST|AWST|AWDT|AST|ART|AQTT|ANAT|ANAST|AMT|AMST|ALMT|AKST|AKDT|AFT|AEST|AEDT|ADT|ACST|ACDT)\\b"
] ]
, prod = \tokens -> case tokens of , prod = \tokens -> case tokens of

View File

@ -11,7 +11,7 @@
module Duckling.Time.HR.Rules module Duckling.Time.HR.Rules
( rules ) where ( rules ) where
import Control.Monad (join, liftM2) import Control.Monad (join)
import Data.Maybe import Data.Maybe
import Data.String import Data.String
import Data.Text (Text) import Data.Text (Text)
@ -172,7 +172,7 @@ ruleHourofdayNumeral :: Rule
ruleHourofdayNumeral = Rule ruleHourofdayNumeral = Rule
{ name = "<hour-of-day> <integer> (as relative minutes)" { name = "<hour-of-day> <integer> (as relative minutes)"
, pattern = , pattern =
[ Predicate isAnHourOfDay [ Predicate $ and . sequence [isNotLatent, isAnHourOfDay]
, Predicate $ isIntegerBetween 1 59 , Predicate $ isIntegerBetween 1 59
] ]
, prod = \tokens -> case tokens of , prod = \tokens -> case tokens of
@ -1203,7 +1203,7 @@ ruleYearLatent = Rule
{ name = "year (latent)" { name = "year (latent)"
, pattern = , pattern =
[ Predicate $ [ Predicate $
liftM2 (||) (isIntegerBetween (- 10000) 0) (isIntegerBetween 25 999) or . sequence [isIntegerBetween (- 10000) 0, isIntegerBetween 25 999]
] ]
, prod = \tokens -> case tokens of , prod = \tokens -> case tokens of
(token:_) -> do (token:_) -> do
@ -1359,7 +1359,7 @@ ruleTimezone :: Rule
ruleTimezone = Rule ruleTimezone = Rule
{ name = "<time> timezone" { name = "<time> timezone"
, pattern = , pattern =
[ Predicate $ liftM2 (&&) (isGrainFinerThan TG.Day) isNotLatent [ Predicate $ and . sequence [isNotLatent, isGrainFinerThan TG.Day]
, regex "\\b(YEKT|YEKST|YAKT|YAKST|WITA|WIT|WIB|WGT|WGST|WFT|WET|WEST|WAT|WAST|VUT|VLAT|VLAST|VET|UZT|UYT|UYST|UTC|ULAT|TVT|TMT|TLT|TKT|TJT|TFT|TAHT|SST|SRT|SGT|SCT|SBT|SAST|SAMT|RET|PYT|PYST|PWT|PST|PONT|PMST|PMDT|PKT|PHT|PHOT|PGT|PETT|PETST|PET|PDT|OMST|OMSST|NZST|NZDT|NUT|NST|NPT|NOVT|NOVST|NFT|NDT|NCT|MYT|MVT|MUT|MST|MSK|MSD|MMT|MHT|MDT|MAWT|MART|MAGT|MAGST|LINT|LHST|LHDT|KUYT|KST|KRAT|KRAST|KGT|JST|IST|IRST|IRKT|IRKST|IRDT|IOT|IDT|ICT|HOVT|HKT|GYT|GST|GMT|GILT|GFT|GET|GAMT|GALT|FNT|FKT|FKST|FJT|FJST|EST|EGT|EGST|EET|EEST|EDT|ECT|EAT|EAST|EASST|DAVT|ChST|CXT|CVT|CST|COT|CLT|CLST|CKT|CHAST|CHADT|CET|CEST|CDT|CCT|CAT|CAST|BTT|BST|BRT|BRST|BOT|BNT|AZT|AZST|AZOT|AZOST|AWST|AWDT|AST|ART|AQTT|ANAT|ANAST|AMT|AMST|ALMT|AKST|AKDT|AFT|AEST|AEDT|ADT|ACST|ACDT)\\b" , regex "\\b(YEKT|YEKST|YAKT|YAKST|WITA|WIT|WIB|WGT|WGST|WFT|WET|WEST|WAT|WAST|VUT|VLAT|VLAST|VET|UZT|UYT|UYST|UTC|ULAT|TVT|TMT|TLT|TKT|TJT|TFT|TAHT|SST|SRT|SGT|SCT|SBT|SAST|SAMT|RET|PYT|PYST|PWT|PST|PONT|PMST|PMDT|PKT|PHT|PHOT|PGT|PETT|PETST|PET|PDT|OMST|OMSST|NZST|NZDT|NUT|NST|NPT|NOVT|NOVST|NFT|NDT|NCT|MYT|MVT|MUT|MST|MSK|MSD|MMT|MHT|MDT|MAWT|MART|MAGT|MAGST|LINT|LHST|LHDT|KUYT|KST|KRAT|KRAST|KGT|JST|IST|IRST|IRKT|IRKST|IRDT|IOT|IDT|ICT|HOVT|HKT|GYT|GST|GMT|GILT|GFT|GET|GAMT|GALT|FNT|FKT|FKST|FJT|FJST|EST|EGT|EGST|EET|EEST|EDT|ECT|EAT|EAST|EASST|DAVT|ChST|CXT|CVT|CST|COT|CLT|CLST|CKT|CHAST|CHADT|CET|CEST|CDT|CCT|CAT|CAST|BTT|BST|BRT|BRST|BOT|BNT|AZT|AZST|AZOT|AZOST|AWST|AWDT|AST|ART|AQTT|ANAT|ANAST|AMT|AMST|ALMT|AKST|AKDT|AFT|AEST|AEDT|ADT|ACST|ACDT)\\b"
] ]
, prod = \tokens -> case tokens of , prod = \tokens -> case tokens of
@ -1470,7 +1470,7 @@ ruleTimeofdayTimeofdayInterval :: Rule
ruleTimeofdayTimeofdayInterval = Rule ruleTimeofdayTimeofdayInterval = Rule
{ name = "<time-of-day> - <time-of-day> (interval)" { name = "<time-of-day> - <time-of-day> (interval)"
, pattern = , pattern =
[ Predicate $ liftM2 (&&) isNotLatent isATimeOfDay [ Predicate $ and . sequence [isNotLatent, isATimeOfDay]
, regex "\\-|:" , regex "\\-|:"
, Predicate isATimeOfDay , Predicate isATimeOfDay
] ]

View File

@ -13,7 +13,6 @@
module Duckling.Time.HU.Rules module Duckling.Time.HU.Rules
( rules ) where ( rules ) where
import Control.Monad (liftM2)
import Data.Maybe import Data.Maybe
import Data.String import Data.String
import Data.Text (Text) import Data.Text (Text)
@ -183,7 +182,7 @@ ruleTODLatent :: Rule
ruleTODLatent = Rule ruleTODLatent = Rule
{ name = "time-of-day (latent)" { name = "time-of-day (latent)"
, pattern = , pattern =
[ Predicate $ liftM2 (&&) isNumeralSafeToUse (isIntegerBetween 0 23) [ Predicate $ and . sequence [isNumeralSafeToUse, isIntegerBetween 0 23]
] ]
, prod = \tokens -> case tokens of , prod = \tokens -> case tokens of
(token:_) -> do (token:_) -> do

View File

@ -28,7 +28,6 @@ module Duckling.Time.Helpers
, getIntValue , getIntValue
) where ) where
import Control.Monad (liftM2)
import Data.Maybe import Data.Maybe
import Data.Text (Text) import Data.Text (Text)
import Prelude import Prelude
@ -300,7 +299,7 @@ isDOMInteger :: Predicate
isDOMInteger = isIntegerBetween 1 31 isDOMInteger = isIntegerBetween 1 31
isDOMValue :: Predicate isDOMValue :: Predicate
isDOMValue = liftM2 (||) isDOMOrdinal isDOMInteger isDOMValue = or . sequence [isDOMOrdinal, isDOMInteger]
-- ----------------------------------------------------------------- -- -----------------------------------------------------------------
-- Production -- Production

View File

@ -13,8 +13,8 @@ module Duckling.Time.IT.Corpus
, negativeCorpus , negativeCorpus
) where ) where
import Prelude
import Data.String import Data.String
import Prelude
import Duckling.Lang import Duckling.Lang
import Duckling.Resolve import Duckling.Resolve
@ -31,6 +31,7 @@ negativeCorpus = (testContext {lang = IT}, examples)
where where
examples = examples =
[ "ma" [ "ma"
, "3 20"
] ]
allExamples :: [Example] allExamples :: [Example]
@ -342,7 +343,7 @@ allExamples = concat
, "tre e 20" , "tre e 20"
, "3 e 20" , "3 e 20"
, "3:20" , "3:20"
, "3 20" , "alle 3 20"
] ]
, examples (datetime (2013, 2, 12, 15, 30, 0) Minute) , examples (datetime (2013, 2, 12, 15, 30, 0) Minute)
[ "15:30" [ "15:30"

View File

@ -13,7 +13,6 @@
module Duckling.Time.IT.Rules module Duckling.Time.IT.Rules
( rules ) where ( rules ) where
import Control.Monad (liftM2)
import Data.Text (Text) import Data.Text (Text)
import Prelude import Prelude
import qualified Data.Text as Text import qualified Data.Text as Text
@ -514,7 +513,7 @@ ruleHourofdayIntegerAsRelativeMinutes :: Rule
ruleHourofdayIntegerAsRelativeMinutes = Rule ruleHourofdayIntegerAsRelativeMinutes = Rule
{ name = "<hour-of-day> <integer> (as relative minutes)" { name = "<hour-of-day> <integer> (as relative minutes)"
, pattern = , pattern =
[ Predicate isAnHourOfDay [ Predicate $ and . sequence [isNotLatent, isAnHourOfDay]
, Predicate $ isIntegerBetween 1 59 , Predicate $ isIntegerBetween 1 59
] ]
, prod = \tokens -> case tokens of , prod = \tokens -> case tokens of
@ -576,7 +575,7 @@ ruleHhRelativeminutesDelPomeriggiotimeofday :: Rule
ruleHhRelativeminutesDelPomeriggiotimeofday = Rule ruleHhRelativeminutesDelPomeriggiotimeofday = Rule
{ name = "hh <relative-minutes> del pomeriggio(time-of-day)" { name = "hh <relative-minutes> del pomeriggio(time-of-day)"
, pattern = , pattern =
[ Predicate isAnHourOfDay [ Predicate $ and . sequence [isNotLatent, isAnHourOfDay]
, Predicate $ isIntegerBetween 1 59 , Predicate $ isIntegerBetween 1 59
, regex "d(i|el(la)?) (pomeriggio|(sta)?(sera|notte))" , regex "d(i|el(la)?) (pomeriggio|(sta)?(sera|notte))"
] ]
@ -609,11 +608,12 @@ ruleHhIntegerminutesDelPomeriggiotimeofday2 = Rule
tt $ hourMinute False h n tt $ hourMinute False h n
_ -> Nothing _ -> Nothing
} }
ruleHourofdayIntegerMinutes :: Rule ruleHourofdayIntegerMinutes :: Rule
ruleHourofdayIntegerMinutes = Rule ruleHourofdayIntegerMinutes = Rule
{ name = "<hour-of-day> <integer> minutes" { name = "<hour-of-day> <integer> minutes"
, pattern = , pattern =
[ Predicate isAnHourOfDay [ Predicate $ and . sequence [isNotLatent, isAnHourOfDay]
, Predicate $ isIntegerBetween 1 59 , Predicate $ isIntegerBetween 1 59
, regex "min(ut[oi]|\\.)?" , regex "min(ut[oi]|\\.)?"
] ]
@ -2242,7 +2242,7 @@ ruleTimezone :: Rule
ruleTimezone = Rule ruleTimezone = Rule
{ name = "<time> timezone" { name = "<time> timezone"
, pattern = , pattern =
[ Predicate $ liftM2 (&&) isATimeOfDay isNotLatent [ Predicate $ and . sequence [isNotLatent, isATimeOfDay]
, regex "\\b(YEKT|YEKST|YAKT|YAKST|WITA|WIT|WIB|WGT|WGST|WFT|WET|WEST|WAT|WAST|VUT|VLAT|VLAST|VET|UZT|UYT|UYST|UTC|ULAT|TVT|TMT|TLT|TKT|TJT|TFT|TAHT|SST|SRT|SGT|SCT|SBT|SAST|SAMT|RET|PYT|PYST|PWT|PST|PONT|PMST|PMDT|PKT|PHT|PHOT|PGT|PETT|PETST|PET|PDT|OMST|OMSST|NZST|NZDT|NUT|NST|NPT|NOVT|NOVST|NFT|NDT|NCT|MYT|MVT|MUT|MST|MSK|MSD|MMT|MHT|MDT|MAWT|MART|MAGT|MAGST|LINT|LHST|LHDT|KUYT|KST|KRAT|KRAST|KGT|JST|IST|IRST|IRKT|IRKST|IRDT|IOT|IDT|ICT|HOVT|HKT|GYT|GST|GMT|GILT|GFT|GET|GAMT|GALT|FNT|FKT|FKST|FJT|FJST|EST|EGT|EGST|EET|EEST|EDT|ECT|EAT|EAST|EASST|DAVT|ChST|CXT|CVT|CST|COT|CLT|CLST|CKT|CHAST|CHADT|CET|CEST|CDT|CCT|CAT|CAST|BTT|BST|BRT|BRST|BOT|BNT|AZT|AZST|AZOT|AZOST|AWST|AWDT|AST|ART|AQTT|ANAT|ANAST|AMT|AMST|ALMT|AKST|AKDT|AFT|AEST|AEDT|ADT|ACST|ACDT)\\b" , regex "\\b(YEKT|YEKST|YAKT|YAKST|WITA|WIT|WIB|WGT|WGST|WFT|WET|WEST|WAT|WAST|VUT|VLAT|VLAST|VET|UZT|UYT|UYST|UTC|ULAT|TVT|TMT|TLT|TKT|TJT|TFT|TAHT|SST|SRT|SGT|SCT|SBT|SAST|SAMT|RET|PYT|PYST|PWT|PST|PONT|PMST|PMDT|PKT|PHT|PHOT|PGT|PETT|PETST|PET|PDT|OMST|OMSST|NZST|NZDT|NUT|NST|NPT|NOVT|NOVST|NFT|NDT|NCT|MYT|MVT|MUT|MST|MSK|MSD|MMT|MHT|MDT|MAWT|MART|MAGT|MAGST|LINT|LHST|LHDT|KUYT|KST|KRAT|KRAST|KGT|JST|IST|IRST|IRKT|IRKST|IRDT|IOT|IDT|ICT|HOVT|HKT|GYT|GST|GMT|GILT|GFT|GET|GAMT|GALT|FNT|FKT|FKST|FJT|FJST|EST|EGT|EGST|EET|EEST|EDT|ECT|EAT|EAST|EASST|DAVT|ChST|CXT|CVT|CST|COT|CLT|CLST|CKT|CHAST|CHADT|CET|CEST|CDT|CCT|CAT|CAST|BTT|BST|BRT|BRST|BOT|BNT|AZT|AZST|AZOT|AZOST|AWST|AWDT|AST|ART|AQTT|ANAT|ANAST|AMT|AMST|ALMT|AKST|AKDT|AFT|AEST|AEDT|ADT|ACST|ACDT)\\b"
] ]
, prod = \tokens -> case tokens of , prod = \tokens -> case tokens of

View File

@ -13,20 +13,19 @@
module Duckling.Time.KO.Rules module Duckling.Time.KO.Rules
( rules ) where ( rules ) where
import Control.Monad (liftM2)
import qualified Data.Text as Text
import Prelude import Prelude
import qualified Data.Text as Text
import Duckling.Dimensions.Types import Duckling.Dimensions.Types
import Duckling.Numeral.Helpers (parseInt) import Duckling.Numeral.Helpers (parseInt)
import Duckling.Ordinal.Types (OrdinalData (..)) import Duckling.Ordinal.Types (OrdinalData (..))
import qualified Duckling.Ordinal.Types as TOrdinal
import Duckling.Regex.Types import Duckling.Regex.Types
import Duckling.Time.Helpers import Duckling.Time.Helpers
import Duckling.Time.Types (TimeData (..)) import Duckling.Time.Types (TimeData (..))
import Duckling.Types
import qualified Duckling.Ordinal.Types as TOrdinal
import qualified Duckling.Time.Types as TTime import qualified Duckling.Time.Types as TTime
import qualified Duckling.TimeGrain.Types as TG import qualified Duckling.TimeGrain.Types as TG
import Duckling.Types
ruleNamedday :: Rule ruleNamedday :: Rule
ruleNamedday = Rule ruleNamedday = Rule
@ -253,7 +252,7 @@ ruleIntegerHourofdayRelativeMinutes :: Rule
ruleIntegerHourofdayRelativeMinutes = Rule ruleIntegerHourofdayRelativeMinutes = Rule
{ name = "<integer> (hour-of-day) relative minutes 전" { name = "<integer> (hour-of-day) relative minutes 전"
, pattern = , pattern =
[ Predicate isAnHourOfDay [ Predicate $ and . sequence [isNotLatent, isAnHourOfDay]
, Predicate $ isIntegerBetween 1 59 , Predicate $ isIntegerBetween 1 59
, regex "분전" , regex "분전"
] ]
@ -269,7 +268,7 @@ ruleHourofdayIntegerAsRelativeMinutes :: Rule
ruleHourofdayIntegerAsRelativeMinutes = Rule ruleHourofdayIntegerAsRelativeMinutes = Rule
{ name = "<hour-of-day> <integer> (as relative minutes)" { name = "<hour-of-day> <integer> (as relative minutes)"
, pattern = , pattern =
[ Predicate isAnHourOfDay [ Predicate $ and . sequence [isNotLatent, isAnHourOfDay]
, Predicate $ isIntegerBetween 1 59 , Predicate $ isIntegerBetween 1 59
, regex "" , regex ""
] ]
@ -936,7 +935,7 @@ ruleAfterTimeofday :: Rule
ruleAfterTimeofday = Rule ruleAfterTimeofday = Rule
{ name = "after <time-of-day>" { name = "after <time-of-day>"
, pattern = , pattern =
[ Predicate $ liftM2 (||) isATimeOfDay isAPartOfDay [ Predicate $ or . sequence [isATimeOfDay, isAPartOfDay]
, regex "지나서|(이)?후(에)?" , regex "지나서|(이)?후(에)?"
] ]
, prod = \tokens -> case tokens of , prod = \tokens -> case tokens of
@ -1132,7 +1131,7 @@ ruleTimeofdayTimeofdayInterval :: Rule
ruleTimeofdayTimeofdayInterval = Rule ruleTimeofdayTimeofdayInterval = Rule
{ name = "<time-of-day> - <time-of-day> (interval)" { name = "<time-of-day> - <time-of-day> (interval)"
, pattern = , pattern =
[ Predicate $ liftM2 (&&) isATimeOfDay isNotLatent [ Predicate $ and . sequence [isNotLatent, isATimeOfDay]
, regex "\\-|\\~|부터" , regex "\\-|\\~|부터"
, Predicate isATimeOfDay , Predicate isATimeOfDay
] ]
@ -1245,7 +1244,7 @@ ruleTimezone :: Rule
ruleTimezone = Rule ruleTimezone = Rule
{ name = "<time> timezone" { name = "<time> timezone"
, pattern = , pattern =
[ Predicate $ liftM2 (&&) isATimeOfDay isNotLatent [ Predicate $ and . sequence [isNotLatent, isATimeOfDay]
, regex "\\b(YEKT|YEKST|YAKT|YAKST|WITA|WIT|WIB|WGT|WGST|WFT|WET|WEST|WAT|WAST|VUT|VLAT|VLAST|VET|UZT|UYT|UYST|UTC|ULAT|TVT|TMT|TLT|TKT|TJT|TFT|TAHT|SST|SRT|SGT|SCT|SBT|SAST|SAMT|RET|PYT|PYST|PWT|PST|PONT|PMST|PMDT|PKT|PHT|PHOT|PGT|PETT|PETST|PET|PDT|OMST|OMSST|NZST|NZDT|NUT|NST|NPT|NOVT|NOVST|NFT|NDT|NCT|MYT|MVT|MUT|MST|MSK|MSD|MMT|MHT|MDT|MAWT|MART|MAGT|MAGST|LINT|LHST|LHDT|KUYT|KST|KRAT|KRAST|KGT|JST|IST|IRST|IRKT|IRKST|IRDT|IOT|IDT|ICT|HOVT|HKT|GYT|GST|GMT|GILT|GFT|GET|GAMT|GALT|FNT|FKT|FKST|FJT|FJST|EST|EGT|EGST|EET|EEST|EDT|ECT|EAT|EAST|EASST|DAVT|ChST|CXT|CVT|CST|COT|CLT|CLST|CKT|CHAST|CHADT|CET|CEST|CDT|CCT|CAT|CAST|BTT|BST|BRT|BRST|BOT|BNT|AZT|AZST|AZOT|AZOST|AWST|AWDT|AST|ART|AQTT|ANAT|ANAST|AMT|AMST|ALMT|AKST|AKDT|AFT|AEST|AEDT|ADT|ACST|ACDT)\\b" , regex "\\b(YEKT|YEKST|YAKT|YAKST|WITA|WIT|WIB|WGT|WGST|WFT|WET|WEST|WAT|WAST|VUT|VLAT|VLAST|VET|UZT|UYT|UYST|UTC|ULAT|TVT|TMT|TLT|TKT|TJT|TFT|TAHT|SST|SRT|SGT|SCT|SBT|SAST|SAMT|RET|PYT|PYST|PWT|PST|PONT|PMST|PMDT|PKT|PHT|PHOT|PGT|PETT|PETST|PET|PDT|OMST|OMSST|NZST|NZDT|NUT|NST|NPT|NOVT|NOVST|NFT|NDT|NCT|MYT|MVT|MUT|MST|MSK|MSD|MMT|MHT|MDT|MAWT|MART|MAGT|MAGST|LINT|LHST|LHDT|KUYT|KST|KRAT|KRAST|KGT|JST|IST|IRST|IRKT|IRKST|IRDT|IOT|IDT|ICT|HOVT|HKT|GYT|GST|GMT|GILT|GFT|GET|GAMT|GALT|FNT|FKT|FKST|FJT|FJST|EST|EGT|EGST|EET|EEST|EDT|ECT|EAT|EAST|EASST|DAVT|ChST|CXT|CVT|CST|COT|CLT|CLST|CKT|CHAST|CHADT|CET|CEST|CDT|CCT|CAT|CAST|BTT|BST|BRT|BRST|BOT|BNT|AZT|AZST|AZOT|AZOST|AWST|AWDT|AST|ART|AQTT|ANAT|ANAST|AMT|AMST|ALMT|AKST|AKDT|AFT|AEST|AEDT|ADT|ACST|ACDT)\\b"
] ]
, prod = \tokens -> case tokens of , prod = \tokens -> case tokens of

View File

@ -13,7 +13,6 @@
module Duckling.Time.NB.Rules module Duckling.Time.NB.Rules
( rules ) where ( rules ) where
import Control.Monad (liftM2)
import Prelude import Prelude
import Duckling.Dimensions.Types import Duckling.Dimensions.Types
@ -92,7 +91,7 @@ ruleHourofdayIntegerAsRelativeMinutes :: Rule
ruleHourofdayIntegerAsRelativeMinutes = Rule ruleHourofdayIntegerAsRelativeMinutes = Rule
{ name = "<hour-of-day> <integer> (as relative minutes)" { name = "<hour-of-day> <integer> (as relative minutes)"
, pattern = , pattern =
[ Predicate isAnHourOfDay [ Predicate $ and . sequence [isNotLatent, isAnHourOfDay]
, Predicate $ isIntegerBetween 1 59 , Predicate $ isIntegerBetween 1 59
] ]
, prod = \tokens -> case tokens of , prod = \tokens -> case tokens of
@ -1356,7 +1355,7 @@ ruleYearLatent = Rule
{ name = "year (latent)" { name = "year (latent)"
, pattern = , pattern =
[ Predicate $ [ Predicate $
liftM2 (||) (isIntegerBetween (- 10000) 0) (isIntegerBetween 25 999) or . sequence [isIntegerBetween (- 10000) 0, isIntegerBetween 25 999]
] ]
, prod = \tokens -> case tokens of , prod = \tokens -> case tokens of
(token:_) -> do (token:_) -> do
@ -1619,7 +1618,7 @@ ruleTimeofdayTimeofdayInterval :: Rule
ruleTimeofdayTimeofdayInterval = Rule ruleTimeofdayTimeofdayInterval = Rule
{ name = "<time-of-day> - <time-of-day> (interval)" { name = "<time-of-day> - <time-of-day> (interval)"
, pattern = , pattern =
[ Predicate $ liftM2 (&&) isATimeOfDay isNotLatent [ Predicate $ and . sequence [isNotLatent, isATimeOfDay]
, regex "\\-|tilogmed|til" , regex "\\-|tilogmed|til"
, Predicate isATimeOfDay , Predicate isATimeOfDay
] ]
@ -1804,7 +1803,7 @@ ruleTimezone :: Rule
ruleTimezone = Rule ruleTimezone = Rule
{ name = "<time> timezone" { name = "<time> timezone"
, pattern = , pattern =
[ Predicate $ liftM2 (&&) isATimeOfDay isNotLatent [ Predicate $ and . sequence [isNotLatent, isATimeOfDay]
, regex "\\b(YEKT|YEKST|YAKT|YAKST|WITA|WIT|WIB|WGT|WGST|WFT|WET|WEST|WAT|WAST|VUT|VLAT|VLAST|VET|UZT|UYT|UYST|UTC|ULAT|TVT|TMT|TLT|TKT|TJT|TFT|TAHT|SST|SRT|SGT|SCT|SBT|SAST|SAMT|RET|PYT|PYST|PWT|PST|PONT|PMST|PMDT|PKT|PHT|PHOT|PGT|PETT|PETST|PET|PDT|OMST|OMSST|NZST|NZDT|NUT|NST|NPT|NOVT|NOVST|NFT|NDT|NCT|MYT|MVT|MUT|MST|MSK|MSD|MMT|MHT|MDT|MAWT|MART|MAGT|MAGST|LINT|LHST|LHDT|KUYT|KST|KRAT|KRAST|KGT|JST|IST|IRST|IRKT|IRKST|IRDT|IOT|IDT|ICT|HOVT|HKT|GYT|GST|GMT|GILT|GFT|GET|GAMT|GALT|FNT|FKT|FKST|FJT|FJST|EST|EGT|EGST|EET|EEST|EDT|ECT|EAT|EAST|EASST|DAVT|ChST|CXT|CVT|CST|COT|CLT|CLST|CKT|CHAST|CHADT|CET|CEST|CDT|CCT|CAT|CAST|BTT|BST|BRT|BRST|BOT|BNT|AZT|AZST|AZOT|AZOST|AWST|AWDT|AST|ART|AQTT|ANAT|ANAST|AMT|AMST|ALMT|AKST|AKDT|AFT|AEST|AEDT|ADT|ACST|ACDT)\\b" , regex "\\b(YEKT|YEKST|YAKT|YAKST|WITA|WIT|WIB|WGT|WGST|WFT|WET|WEST|WAT|WAST|VUT|VLAT|VLAST|VET|UZT|UYT|UYST|UTC|ULAT|TVT|TMT|TLT|TKT|TJT|TFT|TAHT|SST|SRT|SGT|SCT|SBT|SAST|SAMT|RET|PYT|PYST|PWT|PST|PONT|PMST|PMDT|PKT|PHT|PHOT|PGT|PETT|PETST|PET|PDT|OMST|OMSST|NZST|NZDT|NUT|NST|NPT|NOVT|NOVST|NFT|NDT|NCT|MYT|MVT|MUT|MST|MSK|MSD|MMT|MHT|MDT|MAWT|MART|MAGT|MAGST|LINT|LHST|LHDT|KUYT|KST|KRAT|KRAST|KGT|JST|IST|IRST|IRKT|IRKST|IRDT|IOT|IDT|ICT|HOVT|HKT|GYT|GST|GMT|GILT|GFT|GET|GAMT|GALT|FNT|FKT|FKST|FJT|FJST|EST|EGT|EGST|EET|EEST|EDT|ECT|EAT|EAST|EASST|DAVT|ChST|CXT|CVT|CST|COT|CLT|CLST|CKT|CHAST|CHADT|CET|CEST|CDT|CCT|CAT|CAST|BTT|BST|BRT|BRST|BOT|BNT|AZT|AZST|AZOT|AZOST|AWST|AWDT|AST|ART|AQTT|ANAT|ANAST|AMT|AMST|ALMT|AKST|AKDT|AFT|AEST|AEDT|ADT|ACST|ACDT)\\b"
] ]
, prod = \tokens -> case tokens of , prod = \tokens -> case tokens of

View File

@ -13,8 +13,8 @@ module Duckling.Time.PL.Corpus
, negativeCorpus , negativeCorpus
) where ) where
import Prelude
import Data.String import Data.String
import Prelude
import Duckling.Lang import Duckling.Lang
import Duckling.Resolve import Duckling.Resolve
@ -38,6 +38,7 @@ negativeCorpus = (testContext {lang = PL}, examples)
, "no nic" , "no nic"
, "pierwszy" , "pierwszy"
, "drugiej" , "drugiej"
, "trzecia piętnaście"
] ]
allExamples :: [Example] allExamples :: [Example]
@ -459,14 +460,14 @@ allExamples = concat
[ "piętnaście po trzeciej" [ "piętnaście po trzeciej"
, "15 po trzeciej" , "15 po trzeciej"
, "kwadrans po 3" , "kwadrans po 3"
, "trzecia piętnaście" , "o trzecia piętnaście"
, "15:15" , "15:15"
] ]
, examples (datetime (2013, 2, 12, 15, 20, 0) Minute) , examples (datetime (2013, 2, 12, 15, 20, 0) Minute)
[ "20 po 3" [ "20 po 3"
, "3:20" , "3:20"
, "3:20 w poludnie" , "3:20 w poludnie"
, "trzecia dwadzieścia" , "o trzecia dwadzieścia"
] ]
, examples (datetime (2013, 2, 12, 15, 30, 0) Minute) , examples (datetime (2013, 2, 12, 15, 30, 0) Minute)
[ "w pół do szesnastej" [ "w pół do szesnastej"

View File

@ -13,7 +13,6 @@
module Duckling.Time.PL.Rules module Duckling.Time.PL.Rules
( rules ) where ( rules ) where
import Control.Monad (liftM2)
import Prelude import Prelude
import qualified Data.Text as Text import qualified Data.Text as Text
@ -125,7 +124,7 @@ ruleHourofdayIntegerAsRelativeMinutes :: Rule
ruleHourofdayIntegerAsRelativeMinutes = Rule ruleHourofdayIntegerAsRelativeMinutes = Rule
{ name = "<hour-of-day> <integer> (as relative minutes)" { name = "<hour-of-day> <integer> (as relative minutes)"
, pattern = , pattern =
[ Predicate isAnHourOfDay [ Predicate $ and . sequence [isNotLatent, isAnHourOfDay]
, Predicate $ isIntegerBetween 1 59 , Predicate $ isIntegerBetween 1 59
] ]
, prod = \tokens -> case tokens of , prod = \tokens -> case tokens of
@ -583,7 +582,7 @@ ruleHourofdayHourofdayInterval = Rule
, pattern = , pattern =
[ Predicate isATimeOfDay [ Predicate isATimeOfDay
, regex "-|do|aż po|po" , regex "-|do|aż po|po"
, Predicate $ liftM2 (&&) isATimeOfDay isNotLatent , Predicate $ and . sequence [isNotLatent, isATimeOfDay]
] ]
, prod = \tokens -> case tokens of , prod = \tokens -> case tokens of
(Token Time td1:_:Token Time td2:_) -> (Token Time td1:_:Token Time td2:_) ->
@ -1343,7 +1342,7 @@ ruleFromHourofdayHourofdayInterval = Rule
[ regex "od" [ regex "od"
, Predicate isATimeOfDay , Predicate isATimeOfDay
, regex "-|to|th?ru|through|until" , regex "-|to|th?ru|through|until"
, Predicate $ liftM2 (&&) isATimeOfDay isNotLatent , Predicate $ and . sequence [isNotLatent, isATimeOfDay]
] ]
, prod = \tokens -> case tokens of , prod = \tokens -> case tokens of
(_:Token Time td1:_:Token Time td2:_) -> (_:Token Time td1:_:Token Time td2:_) ->
@ -1498,7 +1497,7 @@ ruleTimeofdayTimeofdayInterval :: Rule
ruleTimeofdayTimeofdayInterval = Rule ruleTimeofdayTimeofdayInterval = Rule
{ name = "<time-of-day> - <time-of-day> (interval)" { name = "<time-of-day> - <time-of-day> (interval)"
, pattern = , pattern =
[ Predicate $ liftM2 (&&) isATimeOfDay isNotLatent [ Predicate $ and . sequence [isNotLatent, isATimeOfDay]
, regex "\\-|:|do|po|aż do|az do|aż po|az po" , regex "\\-|:|do|po|aż do|az do|aż po|az po"
, Predicate isATimeOfDay , Predicate isATimeOfDay
] ]
@ -1657,7 +1656,7 @@ ruleTimezone :: Rule
ruleTimezone = Rule ruleTimezone = Rule
{ name = "<time> timezone" { name = "<time> timezone"
, pattern = , pattern =
[ Predicate $ liftM2 (&&) isATimeOfDay isNotLatent [ Predicate $ and . sequence [isNotLatent, isATimeOfDay]
, regex "\\b(YEKT|YEKST|YAKT|YAKST|WITA|WIT|WIB|WGT|WGST|WFT|WET|WEST|WAT|WAST|VUT|VLAT|VLAST|VET|UZT|UYT|UYST|UTC|ULAT|TVT|TMT|TLT|TKT|TJT|TFT|TAHT|SST|SRT|SGT|SCT|SBT|SAST|SAMT|RET|PYT|PYST|PWT|PST|PONT|PMST|PMDT|PKT|PHT|PHOT|PGT|PETT|PETST|PET|PDT|OMST|OMSST|NZST|NZDT|NUT|NST|NPT|NOVT|NOVST|NFT|NDT|NCT|MYT|MVT|MUT|MST|MSK|MSD|MMT|MHT|MDT|MAWT|MART|MAGT|MAGST|LINT|LHST|LHDT|KUYT|KST|KRAT|KRAST|KGT|JST|IST|IRST|IRKT|IRKST|IRDT|IOT|IDT|ICT|HOVT|HKT|GYT|GST|GMT|GILT|GFT|GET|GAMT|GALT|FNT|FKT|FKST|FJT|FJST|EST|EGT|EGST|EET|EEST|EDT|ECT|EAT|EAST|EASST|DAVT|ChST|CXT|CVT|CST|COT|CLT|CLST|CKT|CHAST|CHADT|CET|CEST|CDT|CCT|CAT|CAST|BTT|BST|BRT|BRST|BOT|BNT|AZT|AZST|AZOT|AZOST|AWST|AWDT|AST|ART|AQTT|ANAT|ANAST|AMT|AMST|ALMT|AKST|AKDT|AFT|AEST|AEDT|ADT|ACST|ACDT)\\b" , regex "\\b(YEKT|YEKST|YAKT|YAKST|WITA|WIT|WIB|WGT|WGST|WFT|WET|WEST|WAT|WAST|VUT|VLAT|VLAST|VET|UZT|UYT|UYST|UTC|ULAT|TVT|TMT|TLT|TKT|TJT|TFT|TAHT|SST|SRT|SGT|SCT|SBT|SAST|SAMT|RET|PYT|PYST|PWT|PST|PONT|PMST|PMDT|PKT|PHT|PHOT|PGT|PETT|PETST|PET|PDT|OMST|OMSST|NZST|NZDT|NUT|NST|NPT|NOVT|NOVST|NFT|NDT|NCT|MYT|MVT|MUT|MST|MSK|MSD|MMT|MHT|MDT|MAWT|MART|MAGT|MAGST|LINT|LHST|LHDT|KUYT|KST|KRAT|KRAST|KGT|JST|IST|IRST|IRKT|IRKST|IRDT|IOT|IDT|ICT|HOVT|HKT|GYT|GST|GMT|GILT|GFT|GET|GAMT|GALT|FNT|FKT|FKST|FJT|FJST|EST|EGT|EGST|EET|EEST|EDT|ECT|EAT|EAST|EASST|DAVT|ChST|CXT|CVT|CST|COT|CLT|CLST|CKT|CHAST|CHADT|CET|CEST|CDT|CCT|CAT|CAST|BTT|BST|BRT|BRST|BOT|BNT|AZT|AZST|AZOT|AZOST|AWST|AWDT|AST|ART|AQTT|ANAT|ANAST|AMT|AMST|ALMT|AKST|AKDT|AFT|AEST|AEDT|ADT|ACST|ACDT)\\b"
] ]
, prod = \tokens -> case tokens of , prod = \tokens -> case tokens of

View File

@ -32,6 +32,8 @@ negativeCorpus = (testContext {lang = PT}, examples)
examples = examples =
[ "no 987" [ "no 987"
, "um" , "um"
, "um dos"
, "um dos minutos"
] ]
allExamples :: [Example] allExamples :: [Example]

View File

@ -380,7 +380,7 @@ ruleHourofdayIntegerAsRelativeMinutes :: Rule
ruleHourofdayIntegerAsRelativeMinutes = Rule ruleHourofdayIntegerAsRelativeMinutes = Rule
{ name = "<hour-of-day> <integer> (as relative minutes)" { name = "<hour-of-day> <integer> (as relative minutes)"
, pattern = , pattern =
[ Predicate isAnHourOfDay [ Predicate $ and . sequence [isNotLatent, isAnHourOfDay]
, Predicate $ isIntegerBetween 1 59 , Predicate $ isIntegerBetween 1 59
] ]
, prod = \tokens -> case tokens of , prod = \tokens -> case tokens of
@ -428,7 +428,7 @@ ruleHourofdayIntegerAsRelativeMinutes2 :: Rule
ruleHourofdayIntegerAsRelativeMinutes2 = Rule ruleHourofdayIntegerAsRelativeMinutes2 = Rule
{ name = "<hour-of-day> <integer> (as relative minutes) minutos" { name = "<hour-of-day> <integer> (as relative minutes) minutos"
, pattern = , pattern =
[ Predicate isAnHourOfDay [ Predicate $ and . sequence [isNotLatent, isAnHourOfDay]
, Predicate $ isIntegerBetween 1 59 , Predicate $ isIntegerBetween 1 59
, regex "min\\.?(uto)?s?" , regex "min\\.?(uto)?s?"
] ]

View File

@ -13,7 +13,6 @@
module Duckling.Time.RO.Rules module Duckling.Time.RO.Rules
( rules ) where ( rules ) where
import Control.Monad (liftM2)
import Data.Text (Text) import Data.Text (Text)
import Prelude import Prelude
@ -22,9 +21,9 @@ import Duckling.Numeral.Helpers (parseInt)
import Duckling.Regex.Types import Duckling.Regex.Types
import Duckling.Time.Helpers import Duckling.Time.Helpers
import Duckling.Time.Types (TimeData (..)) import Duckling.Time.Types (TimeData (..))
import Duckling.Types
import qualified Duckling.Time.Types as TTime import qualified Duckling.Time.Types as TTime
import qualified Duckling.TimeGrain.Types as TG import qualified Duckling.TimeGrain.Types as TG
import Duckling.Types
ruleAcum :: Rule ruleAcum :: Rule
ruleAcum = Rule ruleAcum = Rule
@ -363,7 +362,7 @@ ruleHourofdayIntegerAsRelativeMinutes :: Rule
ruleHourofdayIntegerAsRelativeMinutes = Rule ruleHourofdayIntegerAsRelativeMinutes = Rule
{ name = "<hour-of-day> <integer> (as relative minutes)" { name = "<hour-of-day> <integer> (as relative minutes)"
, pattern = , pattern =
[ Predicate isAnHourOfDay [ Predicate $ and . sequence [isNotLatent, isAnHourOfDay]
, Predicate $ isIntegerBetween 1 59 , Predicate $ isIntegerBetween 1 59
] ]
, prod = \tokens -> case tokens of , prod = \tokens -> case tokens of
@ -1006,7 +1005,7 @@ ruleTimezone :: Rule
ruleTimezone = Rule ruleTimezone = Rule
{ name = "<time> timezone" { name = "<time> timezone"
, pattern = , pattern =
[ Predicate $ liftM2 (&&) isATimeOfDay isNotLatent [ Predicate $ and . sequence [isNotLatent, isATimeOfDay]
, regex "\\b(YEKT|YEKST|YAKT|YAKST|WITA|WIT|WIB|WGT|WGST|WFT|WET|WEST|WAT|WAST|VUT|VLAT|VLAST|VET|UZT|UYT|UYST|UTC|ULAT|TVT|TMT|TLT|TKT|TJT|TFT|TAHT|SST|SRT|SGT|SCT|SBT|SAST|SAMT|RET|PYT|PYST|PWT|PST|PONT|PMST|PMDT|PKT|PHT|PHOT|PGT|PETT|PETST|PET|PDT|OMST|OMSST|NZST|NZDT|NUT|NST|NPT|NOVT|NOVST|NFT|NDT|NCT|MYT|MVT|MUT|MST|MSK|MSD|MMT|MHT|MDT|MAWT|MART|MAGT|MAGST|LINT|LHST|LHDT|KUYT|KST|KRAT|KRAST|KGT|JST|IST|IRST|IRKT|IRKST|IRDT|IOT|IDT|ICT|HOVT|HKT|GYT|GST|GMT|GILT|GFT|GET|GAMT|GALT|FNT|FKT|FKST|FJT|FJST|EST|EGT|EGST|EET|EEST|EDT|ECT|EAT|EAST|EASST|DAVT|ChST|CXT|CVT|CST|COT|CLT|CLST|CKT|CHAST|CHADT|CET|CEST|CDT|CCT|CAT|CAST|BTT|BST|BRT|BRST|BOT|BNT|AZT|AZST|AZOT|AZOST|AWST|AWDT|AST|ART|AQTT|ANAT|ANAST|AMT|AMST|ALMT|AKST|AKDT|AFT|AEST|AEDT|ADT|ACST|ACDT)\\b" , regex "\\b(YEKT|YEKST|YAKT|YAKST|WITA|WIT|WIB|WGT|WGST|WFT|WET|WEST|WAT|WAST|VUT|VLAT|VLAST|VET|UZT|UYT|UYST|UTC|ULAT|TVT|TMT|TLT|TKT|TJT|TFT|TAHT|SST|SRT|SGT|SCT|SBT|SAST|SAMT|RET|PYT|PYST|PWT|PST|PONT|PMST|PMDT|PKT|PHT|PHOT|PGT|PETT|PETST|PET|PDT|OMST|OMSST|NZST|NZDT|NUT|NST|NPT|NOVT|NOVST|NFT|NDT|NCT|MYT|MVT|MUT|MST|MSK|MSD|MMT|MHT|MDT|MAWT|MART|MAGT|MAGST|LINT|LHST|LHDT|KUYT|KST|KRAT|KRAST|KGT|JST|IST|IRST|IRKT|IRKST|IRDT|IOT|IDT|ICT|HOVT|HKT|GYT|GST|GMT|GILT|GFT|GET|GAMT|GALT|FNT|FKT|FKST|FJT|FJST|EST|EGT|EGST|EET|EEST|EDT|ECT|EAT|EAST|EASST|DAVT|ChST|CXT|CVT|CST|COT|CLT|CLST|CKT|CHAST|CHADT|CET|CEST|CDT|CCT|CAT|CAST|BTT|BST|BRT|BRST|BOT|BNT|AZT|AZST|AZOT|AZOST|AWST|AWDT|AST|ART|AQTT|ANAT|ANAST|AMT|AMST|ALMT|AKST|AKDT|AFT|AEST|AEDT|ADT|ACST|ACDT)\\b"
] ]
, prod = \tokens -> case tokens of , prod = \tokens -> case tokens of

View File

@ -13,20 +13,19 @@
module Duckling.Time.SV.Rules module Duckling.Time.SV.Rules
( rules ) where ( rules ) where
import Control.Monad (liftM2)
import Data.Text (Text) import Data.Text (Text)
import Prelude import Prelude
import Duckling.Dimensions.Types import Duckling.Dimensions.Types
import Duckling.Numeral.Helpers (parseInt) import Duckling.Numeral.Helpers (parseInt)
import Duckling.Ordinal.Types (OrdinalData (..)) import Duckling.Ordinal.Types (OrdinalData (..))
import qualified Duckling.Ordinal.Types as TOrdinal
import Duckling.Regex.Types import Duckling.Regex.Types
import Duckling.Time.Helpers import Duckling.Time.Helpers
import Duckling.Time.Types (TimeData (..)) import Duckling.Time.Types (TimeData (..))
import Duckling.Types
import qualified Duckling.Ordinal.Types as TOrdinal
import qualified Duckling.Time.Types as TTime import qualified Duckling.Time.Types as TTime
import qualified Duckling.TimeGrain.Types as TG import qualified Duckling.TimeGrain.Types as TG
import Duckling.Types
daysOfWeek :: [(Text, String)] daysOfWeek :: [(Text, String)]
daysOfWeek = daysOfWeek =
@ -120,7 +119,7 @@ ruleHourofdayIntegerAsRelativeMinutes :: Rule
ruleHourofdayIntegerAsRelativeMinutes = Rule ruleHourofdayIntegerAsRelativeMinutes = Rule
{ name = "<hour-of-day> <integer> (as relative minutes)" { name = "<hour-of-day> <integer> (as relative minutes)"
, pattern = , pattern =
[ Predicate isAnHourOfDay [ Predicate $ and . sequence [isNotLatent, isAnHourOfDay]
, Predicate $ isIntegerBetween 1 59 , Predicate $ isIntegerBetween 1 59
] ]
, prod = \tokens -> case tokens of , prod = \tokens -> case tokens of
@ -1494,7 +1493,7 @@ ruleTimeofdayTimeofdayInterval :: Rule
ruleTimeofdayTimeofdayInterval = Rule ruleTimeofdayTimeofdayInterval = Rule
{ name = "<time-of-day> - <time-of-day> (interval)" { name = "<time-of-day> - <time-of-day> (interval)"
, pattern = , pattern =
[ Predicate $ liftM2 (&&) isATimeOfDay isNotLatent [ Predicate $ and . sequence [isNotLatent, isATimeOfDay]
, regex "\\-|till|till och med|tom" , regex "\\-|till|till och med|tom"
, Predicate isATimeOfDay , Predicate isATimeOfDay
] ]
@ -1642,7 +1641,7 @@ ruleTimezone :: Rule
ruleTimezone = Rule ruleTimezone = Rule
{ name = "<time> timezone" { name = "<time> timezone"
, pattern = , pattern =
[ Predicate $ liftM2 (&&) isATimeOfDay isNotLatent [ Predicate $ and . sequence [isNotLatent, isATimeOfDay]
, regex "\\b(YEKT|YEKST|YAKT|YAKST|WITA|WIT|WIB|WGT|WGST|WFT|WET|WEST|WAT|WAST|VUT|VLAT|VLAST|VET|UZT|UYT|UYST|UTC|ULAT|TVT|TMT|TLT|TKT|TJT|TFT|TAHT|SST|SRT|SGT|SCT|SBT|SAST|SAMT|RET|PYT|PYST|PWT|PST|PONT|PMST|PMDT|PKT|PHT|PHOT|PGT|PETT|PETST|PET|PDT|OMST|OMSST|NZST|NZDT|NUT|NST|NPT|NOVT|NOVST|NFT|NDT|NCT|MYT|MVT|MUT|MST|MSK|MSD|MMT|MHT|MDT|MAWT|MART|MAGT|MAGST|LINT|LHST|LHDT|KUYT|KST|KRAT|KRAST|KGT|JST|IST|IRST|IRKT|IRKST|IRDT|IOT|IDT|ICT|HOVT|HKT|GYT|GST|GMT|GILT|GFT|GET|GAMT|GALT|FNT|FKT|FKST|FJT|FJST|EST|EGT|EGST|EET|EEST|EDT|ECT|EAT|EAST|EASST|DAVT|ChST|CXT|CVT|CST|COT|CLT|CLST|CKT|CHAST|CHADT|CET|CEST|CDT|CCT|CAT|CAST|BTT|BST|BRT|BRST|BOT|BNT|AZT|AZST|AZOT|AZOST|AWST|AWDT|AST|ART|AQTT|ANAT|ANAST|AMT|AMST|ALMT|AKST|AKDT|AFT|AEST|AEDT|ADT|ACST|ACDT)\\b" , regex "\\b(YEKT|YEKST|YAKT|YAKST|WITA|WIT|WIB|WGT|WGST|WFT|WET|WEST|WAT|WAST|VUT|VLAT|VLAST|VET|UZT|UYT|UYST|UTC|ULAT|TVT|TMT|TLT|TKT|TJT|TFT|TAHT|SST|SRT|SGT|SCT|SBT|SAST|SAMT|RET|PYT|PYST|PWT|PST|PONT|PMST|PMDT|PKT|PHT|PHOT|PGT|PETT|PETST|PET|PDT|OMST|OMSST|NZST|NZDT|NUT|NST|NPT|NOVT|NOVST|NFT|NDT|NCT|MYT|MVT|MUT|MST|MSK|MSD|MMT|MHT|MDT|MAWT|MART|MAGT|MAGST|LINT|LHST|LHDT|KUYT|KST|KRAT|KRAST|KGT|JST|IST|IRST|IRKT|IRKST|IRDT|IOT|IDT|ICT|HOVT|HKT|GYT|GST|GMT|GILT|GFT|GET|GAMT|GALT|FNT|FKT|FKST|FJT|FJST|EST|EGT|EGST|EET|EEST|EDT|ECT|EAT|EAST|EASST|DAVT|ChST|CXT|CVT|CST|COT|CLT|CLST|CKT|CHAST|CHADT|CET|CEST|CDT|CCT|CAT|CAST|BTT|BST|BRT|BRST|BOT|BNT|AZT|AZST|AZOT|AZOST|AWST|AWDT|AST|ART|AQTT|ANAT|ANAST|AMT|AMST|ALMT|AKST|AKDT|AFT|AEST|AEDT|ADT|ACST|ACDT)\\b"
] ]
, prod = \tokens -> case tokens of , prod = \tokens -> case tokens of

View File

@ -12,7 +12,6 @@
module Duckling.Time.VI.Rules module Duckling.Time.VI.Rules
( rules ) where ( rules ) where
import Control.Monad (liftM2)
import Prelude import Prelude
import Data.Text (Text) import Data.Text (Text)
import qualified Data.Text as Text import qualified Data.Text as Text
@ -859,7 +858,7 @@ ruleTimezone :: Rule
ruleTimezone = Rule ruleTimezone = Rule
{ name = "<time> timezone" { name = "<time> timezone"
, pattern = , pattern =
[ Predicate $ liftM2 (&&) (isGrainFinerThan TG.Day) isNotLatent [ Predicate $ and . sequence [isNotLatent, isGrainFinerThan TG.Day]
, regex "\\b(YEKT|YEKST|YAKT|YAKST|WITA|WIT|WIB|WGT|WGST|WFT|WET|WEST|WAT|WAST|VUT|VLAT|VLAST|VET|UZT|UYT|UYST|UTC|ULAT|TVT|TMT|TLT|TKT|TJT|TFT|TAHT|SST|SRT|SGT|SCT|SBT|SAST|SAMT|RET|PYT|PYST|PWT|PST|PONT|PMST|PMDT|PKT|PHT|PHOT|PGT|PETT|PETST|PET|PDT|OMST|OMSST|NZST|NZDT|NUT|NST|NPT|NOVT|NOVST|NFT|NDT|NCT|MYT|MVT|MUT|MST|MSK|MSD|MMT|MHT|MDT|MAWT|MART|MAGT|MAGST|LINT|LHST|LHDT|KUYT|KST|KRAT|KRAST|KGT|JST|IST|IRST|IRKT|IRKST|IRDT|IOT|IDT|ICT|HOVT|HKT|GYT|GST|GMT|GILT|GFT|GET|GAMT|GALT|FNT|FKT|FKST|FJT|FJST|EST|EGT|EGST|EET|EEST|EDT|ECT|EAT|EAST|EASST|DAVT|ChST|CXT|CVT|CST|COT|CLT|CLST|CKT|CHAST|CHADT|CET|CEST|CDT|CCT|CAT|CAST|BTT|BST|BRT|BRST|BOT|BNT|AZT|AZST|AZOT|AZOST|AWST|AWDT|AST|ART|AQTT|ANAT|ANAST|AMT|AMST|ALMT|AKST|AKDT|AFT|AEST|AEDT|ADT|ACST|ACDT)\\b" , regex "\\b(YEKT|YEKST|YAKT|YAKST|WITA|WIT|WIB|WGT|WGST|WFT|WET|WEST|WAT|WAST|VUT|VLAT|VLAST|VET|UZT|UYT|UYST|UTC|ULAT|TVT|TMT|TLT|TKT|TJT|TFT|TAHT|SST|SRT|SGT|SCT|SBT|SAST|SAMT|RET|PYT|PYST|PWT|PST|PONT|PMST|PMDT|PKT|PHT|PHOT|PGT|PETT|PETST|PET|PDT|OMST|OMSST|NZST|NZDT|NUT|NST|NPT|NOVT|NOVST|NFT|NDT|NCT|MYT|MVT|MUT|MST|MSK|MSD|MMT|MHT|MDT|MAWT|MART|MAGT|MAGST|LINT|LHST|LHDT|KUYT|KST|KRAT|KRAST|KGT|JST|IST|IRST|IRKT|IRKST|IRDT|IOT|IDT|ICT|HOVT|HKT|GYT|GST|GMT|GILT|GFT|GET|GAMT|GALT|FNT|FKT|FKST|FJT|FJST|EST|EGT|EGST|EET|EEST|EDT|ECT|EAT|EAST|EASST|DAVT|ChST|CXT|CVT|CST|COT|CLT|CLST|CKT|CHAST|CHADT|CET|CEST|CDT|CCT|CAT|CAST|BTT|BST|BRT|BRST|BOT|BNT|AZT|AZST|AZOT|AZOST|AWST|AWDT|AST|ART|AQTT|ANAT|ANAST|AMT|AMST|ALMT|AKST|AKDT|AFT|AEST|AEDT|ADT|ACST|ACDT)\\b"
] ]
, prod = \tokens -> case tokens of , prod = \tokens -> case tokens of

View File

@ -13,21 +13,19 @@
module Duckling.Time.ZH.Rules module Duckling.Time.ZH.Rules
( rules ) where ( rules ) where
import Control.Monad (liftM2)
import Data.Text (Text) import Data.Text (Text)
import qualified Data.Text as Text
import Prelude import Prelude
import qualified Data.Text as Text
import Duckling.Dimensions.Types import Duckling.Dimensions.Types
import Duckling.Numeral.Helpers (parseInt) import Duckling.Numeral.Helpers (parseInt)
import qualified Duckling.Ordinal.Types as TOrdinal
import Duckling.Regex.Types import Duckling.Regex.Types
import Duckling.Time.Helpers import Duckling.Time.Helpers
import Duckling.Time.Types (TimeData (..)) import Duckling.Time.Types (TimeData (..))
import Duckling.Types
import qualified Duckling.Ordinal.Types as TOrdinal
import qualified Duckling.Time.Types as TTime import qualified Duckling.Time.Types as TTime
import qualified Duckling.TimeGrain.Types as TG import qualified Duckling.TimeGrain.Types as TG
import Duckling.Types
ruleTheDayAfterTomorrow :: Rule ruleTheDayAfterTomorrow :: Rule
ruleTheDayAfterTomorrow = Rule ruleTheDayAfterTomorrow = Rule
@ -963,7 +961,7 @@ ruleTimezone :: Rule
ruleTimezone = Rule ruleTimezone = Rule
{ name = "<time> timezone" { name = "<time> timezone"
, pattern = , pattern =
[ Predicate $ liftM2 (&&) isATimeOfDay isNotLatent [ Predicate $ and . sequence [isNotLatent, isATimeOfDay]
, regex "\\b(YEKT|YEKST|YAKT|YAKST|WITA|WIT|WIB|WGT|WGST|WFT|WET|WEST|WAT|WAST|VUT|VLAT|VLAST|VET|UZT|UYT|UYST|UTC|ULAT|TVT|TMT|TLT|TKT|TJT|TFT|TAHT|SST|SRT|SGT|SCT|SBT|SAST|SAMT|RET|PYT|PYST|PWT|PST|PONT|PMST|PMDT|PKT|PHT|PHOT|PGT|PETT|PETST|PET|PDT|OMST|OMSST|NZST|NZDT|NUT|NST|NPT|NOVT|NOVST|NFT|NDT|NCT|MYT|MVT|MUT|MST|MSK|MSD|MMT|MHT|MDT|MAWT|MART|MAGT|MAGST|LINT|LHST|LHDT|KUYT|KST|KRAT|KRAST|KGT|JST|IST|IRST|IRKT|IRKST|IRDT|IOT|IDT|ICT|HOVT|HKT|GYT|GST|GMT|GILT|GFT|GET|GAMT|GALT|FNT|FKT|FKST|FJT|FJST|EST|EGT|EGST|EET|EEST|EDT|ECT|EAT|EAST|EASST|DAVT|ChST|CXT|CVT|CST|COT|CLT|CLST|CKT|CHAST|CHADT|CET|CEST|CDT|CCT|CAT|CAST|BTT|BST|BRT|BRST|BOT|BNT|AZT|AZST|AZOT|AZOST|AWST|AWDT|AST|ART|AQTT|ANAT|ANAST|AMT|AMST|ALMT|AKST|AKDT|AFT|AEST|AEDT|ADT|ACST|ACDT)\\b" , regex "\\b(YEKT|YEKST|YAKT|YAKST|WITA|WIT|WIB|WGT|WGST|WFT|WET|WEST|WAT|WAST|VUT|VLAT|VLAST|VET|UZT|UYT|UYST|UTC|ULAT|TVT|TMT|TLT|TKT|TJT|TFT|TAHT|SST|SRT|SGT|SCT|SBT|SAST|SAMT|RET|PYT|PYST|PWT|PST|PONT|PMST|PMDT|PKT|PHT|PHOT|PGT|PETT|PETST|PET|PDT|OMST|OMSST|NZST|NZDT|NUT|NST|NPT|NOVT|NOVST|NFT|NDT|NCT|MYT|MVT|MUT|MST|MSK|MSD|MMT|MHT|MDT|MAWT|MART|MAGT|MAGST|LINT|LHST|LHDT|KUYT|KST|KRAT|KRAST|KGT|JST|IST|IRST|IRKT|IRKST|IRDT|IOT|IDT|ICT|HOVT|HKT|GYT|GST|GMT|GILT|GFT|GET|GAMT|GALT|FNT|FKT|FKST|FJT|FJST|EST|EGT|EGST|EET|EEST|EDT|ECT|EAT|EAST|EASST|DAVT|ChST|CXT|CVT|CST|COT|CLT|CLST|CKT|CHAST|CHADT|CET|CEST|CDT|CCT|CAT|CAST|BTT|BST|BRT|BRST|BOT|BNT|AZT|AZST|AZOT|AZOST|AWST|AWDT|AST|ART|AQTT|ANAT|ANAST|AMT|AMST|ALMT|AKST|AKDT|AFT|AEST|AEDT|ADT|ACST|ACDT)\\b"
] ]
, prod = \tokens -> case tokens of , prod = \tokens -> case tokens of

View File

@ -651,6 +651,7 @@ test-suite duckling-test
, Duckling.Ordinal.DA.Tests , Duckling.Ordinal.DA.Tests
, Duckling.Ordinal.DE.Tests , Duckling.Ordinal.DE.Tests
, Duckling.Ordinal.EN.Tests , Duckling.Ordinal.EN.Tests
, Duckling.Ordinal.ES.Tests
, Duckling.Ordinal.ET.Tests , Duckling.Ordinal.ET.Tests
, Duckling.Ordinal.FR.Tests , Duckling.Ordinal.FR.Tests
, Duckling.Ordinal.GA.Tests , Duckling.Ordinal.GA.Tests