duckling-0.2.0.0: Duckling/Distance/EN/Corpus.hs
-- Copyright (c) 2016-present, Facebook, Inc.
-- All rights reserved.
--
-- This source code is licensed under the BSD-style license found in the
-- LICENSE file in the root directory of this source tree.
{-# LANGUAGE OverloadedStrings #-}
module Duckling.Distance.EN.Corpus
( corpus
) where
import Data.String
import Prelude
import Duckling.Distance.Types
import Duckling.Testing.Types
corpus :: Corpus
corpus = (testContext, testOptions, allExamples)
allExamples :: [Example]
allExamples = concat
[ examples (simple Kilometre 3)
[ "3 kilometers"
, "3 km"
, "3km"
, "3k"
, "3.0 km"
]
, examples (simple Mile 8)
[ "8 miles"
, "eight mile"
, "8 mi"
]
, examples (simple M 9)
[ "9m"
]
, examples (simple Centimetre 2)
[ "2cm"
, "2 centimeters"
]
, examples (simple Inch 5)
[ "5 in"
, "5''"
, "five inches"
, "5\""
]
, examples (simple Metre 1.87)
[ "1.87 meters"
]
-- Composite values:
, examples (simple Inch 94)
[ "7 feet and 10 inches"
, "7 feet, 10 inches"
, "7 feet 10 inches"
]
, examples (simple Metre 2001)
[ "2 km and 1 meter"
, "2 kilometer, 1 metre"
, "2 kilometer 1 metre"
]
, examples (simple Inch 166)
[ "2 yards 7 ft 10 inches"
, "2 yds, 7 feet and 10 inches"
, "2 yards, 7 feet, 10 in"
]
, examples (simple Foot 13)
[ "2 yards and 7 feet"
, "2 yards, 7 feet"
, "2 yd 7'"
]
, examples (simple Centimetre 1000806)
[ "10 kms 8 metres 6 cm"
, "10 kms, 8 meters, 6 cm"
, "10 kms, 8 meters and 6 centimeters"
-- , "10 kms, 8 meters, and 6 cm" -- Oxford comma not supported
]
, examples (simple Metre 1.3048)
[ "1 meter and 1 foot"
]
, examples (simple Kilometre 2.609344)
[ "1 kilometer and 1 mile"
]
, examples (simple M 3)
-- The original, ambiguous "m" unit is preserved
[ "3m"
]
, examples (simple Centimetre 305)
-- The ambiguous "m" unit is inferred as "meteres"
[ "3m and 5cm"
]
, examples (simple Foot 5281)
-- The ambiguous "m" unit is inferred as "miles"
[ "1m and 1ft"
]
-- Ranges:
, examples (between Kilometre (3, 5))
[ "between 3 and 5 kilometers"
, "from 3km to 5km"
, "around 3-5 kilometers"
, "about 3km-5km"
, "3-5 kilometers"
]
, examples (under Mile 3.5)
[ "under 3.5 miles"
, "less than 3.5mi"
, "lower than three point five miles"
]
, examples (above Inch 5)
[ "more than five inches"
, "at least 5''"
, "over 5\""
, "above 5 in"
]
, examples (between Millimetre (5, 6))
[ "between 5 and six millimeters"
, "between 5 and six millimetres"
, "5-6 mm"
]
]