diff --git a/nemo_text_processing/text_normalization/sv/data/abbreviations/__init__.py b/nemo_text_processing/text_normalization/sv/data/abbreviations/__init__.py new file mode 100644 index 000000000..6ebc808fa --- /dev/null +++ b/nemo_text_processing/text_normalization/sv/data/abbreviations/__init__.py @@ -0,0 +1,13 @@ +# Copyright (c) 2023, NVIDIA CORPORATION & AFFILIATES. All rights reserved. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. diff --git a/nemo_text_processing/text_normalization/sv/data/abbreviations/abbreviations.tsv b/nemo_text_processing/text_normalization/sv/data/abbreviations/abbreviations.tsv new file mode 100644 index 000000000..c3520d433 --- /dev/null +++ b/nemo_text_processing/text_normalization/sv/data/abbreviations/abbreviations.tsv @@ -0,0 +1,325 @@ +ackl ackordslagen +actl lagen om avtal och andra rättshandlingar på förmögenhetsrättens område +anll anläggningslagen +anml anmälningsskyldighetslagen +arkf arkivförordningen +arkivl arkivlagen +avbetkl lagen om avbetalningsköp mellan näringsidkare +avbetln lagen om avbetalningsköp mellan näringsidkare +avgf avgiftsförordningen +avtl avtalslagen +avtvillkl lagen om avtalsvillkorslag i konsumentförhållanden +bverfg bundesverfassungsgericht +bverfge entscheidungen des bundenverfassungerichts +behl behandlingslagen +behandll lagen om behandling av häktade och anhållna med flera +betsl betalningssäkringslagen +bou bostadsutskottet +brb brottsbalken +brb:s brottsbalkens +brl brottsskadelagen +brp lagen om införande av brottsbalken +chl checklagen +checkl checklagen +csskr centralstyrelsens skrivelse +dataf dataförordningen +delgf delgivningsförordningen +delgl delgivningslagen +delgivnl delgivningslagen +depl depositionslagen +djsl djurskyddslagen +dlgl delgivningslagen +dsju departementsserien, justitiedepartementet +dödnl dödningslagen +egtullk eg tull k +ekoml lagen om elektronisk kommunikation +erfl lagen om ersättningsfonder +ersl ersättningslagen +exml expansionsmedelslagen +expl expropriationslagen +exprl expropriationslagen +exprk expropriationskungörelsen +f d föredetta +fviii faktor åtta +fiu finansutskottet +fingeravtrycksf fingeravtrycksförordningen +firmal firmalagen +främjandel främjandelagen +ftaxl fastighetstaxeringslagen +fvl förvaltningslagen +fvprl förvaltningsprocesslagen +föu försvarsutskottet +gutll gamla utlänningslagen +gåvol gåvolagen +hovr hovrätten +hovr:n hovrätten +hovr:ns hovrättens +hskl hälsoskyddslagen +indrivningsf indrivningsförordningen +inkassol inkassolagen +insiderl insiderlagen +instrrps förordning med instruktion för rps +instrrå förordning med instruktion för riksåklagaren +ju-dep justitiedepartementet +juu justitieutskottet +jvsl järnvägssäkerhetslagen +jvtrl järnvägstrafiklagen +jäml jämställdhetslagen +k.prop. kunglig proposition +kkl konsumentköplagen +kres kunglig resolution +kskr kunglig skrivelse +kamrr kammarrätten +kamrr:s kammarrättens +kförkl kunglig förklaring +kkl körkortslagen +kkrl konsumentkreditlagen +komml kommissionslagen +konkl konkurslagen +konstjl konsumenttjänstlagen +kru kulturutskottet +kskl kommunalskattelagen +ku-dep kulturdepartementet +kungl kungörandelagen +köpl köplagen +lst:s länsstyrelses +lagr lagrådet +lst länsstyrelsen +mskl miljöskadelagen +mc mac +miljöb miljöbalken +miljöb:s miljöbalkens +nutll nya utlänningslagen +nok natur och kultur +nyttjl lagen om nyttjanderätt till fast egendom +offsekrl offentlighets- och sekretesslagen +pbrl lagen om pantbrevsregister +poll polislagen +poll:s polislagens +polisl polislagen +prokural prokuralagen +rbkomm kommentar till rättegångsbalken +regf regeringsformen +regr regeringsrätten +regr:s regeringsrättens +rhjf rättshjälpsförordningen +rhjl rättshjälpslagen +ridd.o riddarhusordningen +romf romfördraget +rtjl räddningstjänstlagen +räntel räntelagen +sambol lagen om sambors gemensamma hem +samägarl lagen om samäganderätt +sekrf sekretessförordningen +sekrl sekretesslagen +sekrl:s sekretesslagens +seml semesterlagen +servl lagen om servitut +sjöl sjölagen +skbrl skattebrottslagen +skl skadeståndslagen +sku skatteutskottet +skadestl skadeståndslagen +skadestl:s skadeståndslagens +skbrl skuldebrevslagen +skkl skogskontolagen +sksanl skuldsaneringslagen +skstl skadeståndslagen +smittskl smittskyddslagen +smittskl:s smittskyddslagens +sof socialtjänstförordningen +sol socialtjänstlagen +sol:s socialtjänstlagens +sou socialutskottet +sofl socialförsäkringslagen +stsskl strålskyddslagen +svjt svensk juristtidning +tr:n tingsrätten +tr:ns tingsrättens +taxl taxeringslagen +taxl:s taxeringslagens +telel telelagen +tr.f tryckfrihetsförordningen +tr.o tryckfrihetsförordningen +trf trafikförordningen +trf:s trafikförordningens +traf trafikförordningen +traf:s trafikförordningens +trafikf trafikförordningen +trafikf:s trafikförordningens +tskl trafikskadelagen +tvl lagen om särskilda tvångsåtgärder i beskattningsförfarandet +ubu utbildningsutskottet +upphl upphovsrättslagen +utlf utlänningsförordningen +utll utlänningslagen +utll:s utlänningslagens +vall:s vallagens +verksf verksförordningen +verksf:s verksförordningens +vxl växellagen +a.d. anno domini +c:a cirka +e l. eller liknande +eg. egentligen +eo. extra ordinarie +f d. föredetta +fn. för närvarande +sr. senior +vall vallagen +ägofrl lagen om ägofred +äktb äktenskapsbalken +äktp lagen om införande av äktenskapsbalken +ärendel lagen om domstolsärenden +åklf åklagarförordningen +alkhl alkohollagen +anstf anställningsförordningen +anstf:s anställningsförordningens +arkivf arkivförordningen +avbetköpl avbetalningsköplagen +bokfl bokföringslagen +co. kompani +coq10 koenzym q 10 +delgl:s delgivningslagens +depch departementschef +diskrl diskrimineringslagen +fiskel fiskelagen +fullml lagen om fullmaktsanställning +förfsamlf författningssamlingsförordningen +hsjvl hälso och sjukvårdslagen +hyresfl lagen om förvärv av hyresfastighet +hyresftl lagen om förvärv av hyresfastighet +högskf högskoleförordningen +högskl högskolelagen +ibid. ibidem +justr justitieråd +k. instr kunglig instruktion +kköpl konsumentköplagen +ktjl konsumenttjänstlagen +kamr kammarrätten +kamr:s kammarrättens +kebbe-förl kebbe-förlaget +koml kommunallagen +koml:s kommunallagens +konkurrensl konkurrenslagen +kulturml lagen om kulturminnen +kulturml:s lagen om kulturminnens +kungl maj:t kungliga majestät +kungl maj:ts kungliga majestäts +kungl. maj:t kungliga majestät +kungl. maj:ts kungliga majestäts +kökrkl körkortslagen +kökrkl:s körkortslagens +körkf körkortsförordningen +lkavg lagen om rätt för kommun att ta ut avgift +lstinstr förordning med länsstyrelseinstruktion +livsml livsmedelslagen +livsml:s livsmedelslagens +lösdrl lösdriverilagen +medbl lagen om svenskt medborgarskap +medbl:s lagen om svenskt medborgarskaps +mme madame +myndf myndighetsförordningen +namnl namnlagen +partnerl partnerlagen +polisf polisförordningen +preskl preskriptionslagen +preskrl preskriptionslagen +rättsprl rättsprövningslagen +sbetl skattebetalningslagen +skoll skollagen +tulll tullagen +vitesl viteslagen +vägl väglagen +vägmf vägmärkesförordningen +a st. anfört ställe +adr. adress +adv. adverb +agr. agronomie +al.fälgar aluminiumfälgar +alufälg aluminiumfälgar +arbetsmarkn.pol arbetsmarknadspolitisk +art nr artikelnummer +avg. avgift +begr.byrå begravningsbyrå +beh. behandling +behandl. behandling +behanl behandling +best nr beställningsnummer +chefsexp chefsexpedition +chefsexp. chefsexpedition +d:o dito +dens. densamma +dep chef departementschef +dep sek departementssekreterare +dep. chef departementschef +dep. chefen departementschefen +dep. sekreterare departementssekreterare +dep.chef departementschef +dep.chefen departementschefen +dep.sekreterare departementssekreterare +doc. docent +dw dödvikt +e.t.c. etcetera +ekon. ekonomie +el dyl. eller dylikt +el. eller +eng. engelska +epist. epistel +ex. exempel +fig. figur +fjv fjärrvärme +fr a. framför allt +fr. från +fre-sön fredag till söndag +fred-sönd fredag till söndag +frfattare författare +följ. följande +förf.s författarens +förf:a författarna +förf:na författarna +förf:nas författarnas +förf:s författarens +hovr. hovrätt +i sht. i synnerhet +isht i synnerhet +jmftal jämförelsetal +jr junior +jur. juris +jur.utr. juris utriusque +k:a kyrka +kand. kandidat +kostn. kostnad +leg. legitimerad +lic. licentiat +lig. ligament +mag. magister +maj:t majestät +maj:ts majestäts +min övers. min översättning +mom. moment +omm om och endast om +op. opus +ord pris ordinarie pris +ord. pris ordinarie pris +ord.pris ordinarie pris +pat.avg. patientavgift +pers. person +rec. recension +reg. register +rev. reviderad +s:a summa +sign. signatur +spec. speciell +startförp. startförpackning +startförpackn startförpackning +stud. studerande +t e x till exempel +tab. tabell +tekn. teknologie +tel. telefon +tel: telefon +temp. temperatur +teol. teologie +vs. versus +överkl.nämnd överklagarnämnd diff --git a/nemo_text_processing/text_normalization/sv/data/abbreviations/abbreviations_alternatives.tsv b/nemo_text_processing/text_normalization/sv/data/abbreviations/abbreviations_alternatives.tsv new file mode 100644 index 000000000..fe2f571b4 --- /dev/null +++ b/nemo_text_processing/text_normalization/sv/data/abbreviations/abbreviations_alternatives.tsv @@ -0,0 +1,21 @@ +e. u. enligt uppdrag +e.u. enligt uppdrag +ibid. på samma sida +adj. adjektiv +bearb. bearbetade +ev. eventuell +ex. exemplar +fr. fru +fr. fröken +omarb. omarbetade +omm ekvivalent +red. redaktörer +red. redigerad +red. revision +rev. revision +sign. signum +suppl. supplement +tekn. tekniska +trol. trolovad +utg. utgivare +övers. översättare diff --git a/nemo_text_processing/text_normalization/sv/data/abbreviations/abbreviations_opt_dot.tsv b/nemo_text_processing/text_normalization/sv/data/abbreviations/abbreviations_opt_dot.tsv new file mode 100644 index 000000000..1d726551f --- /dev/null +++ b/nemo_text_processing/text_normalization/sv/data/abbreviations/abbreviations_opt_dot.tsv @@ -0,0 +1,361 @@ +ca cirka +f. d föredetta +fd föredetta +sc.st.l scandinavian studies in law +d. y den yngre +d. ä den äldre +d.y den yngre +d.ä den äldre +e. l eller liknande +e. o extra ordinarie +e. u enligt uppgift +e.c e contrario +e.l eller liknande +e.o extra ordinarie +e.u enligt uppgift +f. n för närvarande +f. ö för övrigt +f.n för närvarande +f.ö för övrigt +ff och följande sidor +fg föregående +interp interpellation +o. a och andra +o.a och andra +rskr riksdagsskrivelse +u. a utan anmärkning +u. o utan ort +u. å utan årtal +u.a utan anmärkning +u.o utan ort +u.å utan årtal +ua utan anmärkning +uo utan ort +uå utan årtal +ö. g över gården +ö. h över havet +ö.g över gården +ö.h över havet +drottningg drottninggatan +engl england +frankf frankfurt +friedr friderich +hantverkarg hantverkargatan +hornsg hornsgatan +ll-förl ll-förlaget +läkartidn läkartidningen +pirat-förl piratförlaget +sveav sveavägen +söderk söderköping +tpb-nr tpb-nummer +tunnbindareg tunnbindaregatan +a. st anfört ställe +a.st anfört ställe +adj adjunkt +ak. avh akademisk avhandling +akad. avh akademisk avhandling +allm allmän +ankomstnr ankomstnummer +anläggn anläggning +anm anmärkning +anmärkn anmärkning +anskaffn anskaffning +anst anställning +anstnr anställningsnummer +arb arbete +art. nr artikelnummer +art.nr artikelnummer +artikelnr artikelnummer +artnr artikelnummer +avd avdelning +avh avhandling +bakgr bakgrund +bearb bearbetad +begravn begravning +best. nr beställningsnummer +best.nr beställningsnummer +bestnr beställningsnummer +beställn beställning +betaln betalning +betr beträffande +bg bankgiro +bitr biträdande +bl a bland annat +bl. a bland annat +bl.a bland annat +bokförl bokförlag +brottsbal brottsbalken +bränsleförbr bränsleförbrukning +budgetprop budgetproposition +civ ek civilekonom +civ ing civilingenjör +civ. ek civilekonom +civ. ing civilingenjör +d v s det vill säga +d. v. s det vill säga +d.v.s det vill säga +dagl dagligen +delnr delnummer +deltävl deltävling +dep. sek departementssekreterare +dep.sek departementssekreterare +dgr dagar +diagr diagram +div diverse +dnr diarienummer +dopgtj dopgudstjänst +dvs det vill säga +e dyl eller dylikt +e. dyl eller dylikt +e.dyl eller dylikt +eftr efterträdare +ekonomprogr ekonomiprogram +el. dyl eller dylikt +el.dyl eller dylikt +elitutb elitutbildning +et al med flera +et. al med flera +etc etcetera +ev eventuellt +ex vis exempelvis +ex. vis exempelvis +exkl exklusive +exv exempelvis +exvis exempelvis +f. v. b för vidare befordran +f.v.b för vidare befordran +fil cand filosofie kandidat +fil dr filosofie doktor +fil lic filosofie licentiat +fil mag filosofie magister +fil. cand filosofie kandidat +fil. dr filosofie doktor +fil. lic filosofie licentiat +fil. mag filosofie magister +fil.cand filosofie kandidat +fil.dr filosofie doktor +fil.lic filosofie licentiat +fil.mag filosofie magister +fortf fortfarande +forts fortsättning +fr o m från och med +fr. a framför allt +fr. o. m från och med +fr.a framför allt +fr.o.m från och med +fr.om från och med +fskr festskrift +fvb för vidare befordran +färgill färgillustration +föreg föregående +förest föreståndare +förf författare +försl förslag +försäkr försäkring +försälj försäljning +förv. arb förvärvsarbete +förv.arb förvärvsarbete +förvärvsarb förvärvsarbetande +geriatr geriatriska +ggr gånger +hg hekto +hovr hovrätt +hänv hänvisning +högskoleutb högskoleutbildning +högskoleutbildn högskoleutbildning +i o f s i och för sig +i o. f. s i och för sig +i st. f i stället för +i st.f i stället för +i.o.f.s i och för sig +i.st.f i stället för +infonr infonummer +inkl inklusive +inkomstfr inkomstfrämjande +inköpsnr inköpsnummer +inst. f institutionen för +inv invånare +iofs i och för sig +jfr jämför +jmf jämför +jmfr jämför +jourtfn jourtelefon +kommunfullm kommunfullmäktige +kompetensutv kompetensutveckling +kongl kongelige +kulturdep kulturdepartementet +kundtelnr kundtelefonnummer +köksutr köksutrustning +licensnr licensnummer +lärarutb lärarutbildning +löneutv löneutveckling +löpnr löpnummer +m a o med andra ord +m fl med flera +m m med mera +m. a. o med andra ord +m. fl med flera +m. m med mera +m.a.o med andra ord +m.e.m mer eller mindre +m.fl med flera +m.v.h med vänlig hälsning +medförf medförfattare +medl medlem +mfl med flera +mkt mycket +motsv motsvarande +mvh med vänlig hälsning +målgr målgrupp +målnr målnummer +möjl möjligen +ngt något +nuv nuvarande +nybes nybesiktad +näml nämligen +näringsdep näringsdepartementet +närv närvarande +o d och dylikt +o dyl och dylikt +o s v och så vidare +o. s. v och så vidare +o.s.v och så vidare +obesk obeskattad +obet obetald +obs observera +odont odontologie +officersutb officersutbildning +omarb omarbetad +omkr omkring +onsd onsdag +op cit i anfört arbete +op. cit i anfört arbete +op.cit i anfört arbete +opubl opublicerad +ordertel ordertelefon +ordertlf ordertelefon +ordf ordförande +orig original +osign osignerad +ospec ospecificerad +osv och så vidare +p g a på grund av +p gr a på grund av +p. g. a på grund av +p. gr. a på grund av +p.g.a på grund av +p.gr.a på grund av +pat avg patientavgift +pat. avg patientavgift +pediatr pediatrik +personnr personnummer +pga på grund av +pkt paket +plac placering +pocketuppl pocketupplaga +postnr postnummer +prof professor +prog program +progr program +prop proposition +psalt psaltaren +pseud pseudonym +publ publikation +påfölj påföljande +radnr radnummer +rangnr rangnummer +rapportnr rapportnummer +red redaktör +repr repris +resp respektive +revsekr revisionssekreterare +revuppl revisionsupplaga +rundskr rundskrivelse +rundskriv rundskrivelse +s. a. s så att säga +s.a.s så att säga +samtl samtliga +sedv sedvanlig +sekr sekreterare +serviceorg serviceorganisation +sjukd sjukdom +sjuksköt sjuksköterska +sjukv sjukvård +socialdemokr socialdemokratiska +soffgr soffgrupp +spec ped specialpedagog +spec. ped specialpedagog +spec.ped specialpedagog +specialped specialpedagog +spårnr spårnummer +startm startmotor +stl storlek +studentlitt studentlitteratur +studieförb studieförbund +suppl suppleant +sv. övers svensk översättning +sängb sängbord +sänkn sänkning +särsk särskilt +t ex till exempel +t o m till och med +t. e. x till exempel +t. o. m till och med +taknr taknummer +tandvb tandvårdsbyrån +tel nr telefonnummer +tel. nr telefonnummer +tel.nr telefonnummer +telefon-nr telefonnummer +telefonnr telefonnummer +telnr telefonnummer +temanr temanummer +tex till exempel +texttfn texttelefon +tfn telefon +tfn nr telefonnummer +tfn. nr telefonnummer +tfn.nr telefonnummer +tfnnr telefonnummer +tidn tidning +tidskr tidskrift +tidsskr tidsskrift +tillb tillbehör +tillg tillgång +tillh tillhör +tjf tjänsteförrättare +tjl tjänstledig +trol troligen +trpt transport +träningslgh träningslägenhet +tävl tävling +u p a utan personligt ansvar +u. p. a utan personligt ansvar +u.p.a utan personligt ansvar +udg udgave +univ universitet +uppdr uppdrag +upphandl upphandling +urspr ursprungligen +ursprungl ursprungligen +utb utbildning +utbildn utbildning +utg utgiven +uth uthyres +utl utländsk +vanl vanligen +varusmugglingssl varusmugglingslagen +verksamh verksamhet +vindistr vindistrikt +vol volym +vuxenutb vuxenutbildning +vx växel +webbnr webbnummer +ytterl ytterligare +yttr yttrande +årg årgång +åtg åtgärd +ökn ökning +övers översättning +övn övning +övr övrigt diff --git a/nemo_text_processing/text_normalization/sv/data/abbreviations_nondet.tsv b/nemo_text_processing/text_normalization/sv/data/abbreviations/nondeterministic.tsv similarity index 94% rename from nemo_text_processing/text_normalization/sv/data/abbreviations_nondet.tsv rename to nemo_text_processing/text_normalization/sv/data/abbreviations/nondeterministic.tsv index 66033b9eb..5f6be13f8 100644 --- a/nemo_text_processing/text_normalization/sv/data/abbreviations_nondet.tsv +++ b/nemo_text_processing/text_normalization/sv/data/abbreviations/nondeterministic.tsv @@ -11,8 +11,8 @@ mån måndag mån månad ons ons ons onsdag -AB AB -AB aktiebolag +ab ab +ab aktiebolag s:a södra s:a stora st. stycke diff --git a/nemo_text_processing/text_normalization/sv/data/math_operations.tsv b/nemo_text_processing/text_normalization/sv/data/math_operations.tsv index ce51d4154..20c4c3bc9 100644 --- a/nemo_text_processing/text_normalization/sv/data/math_operations.tsv +++ b/nemo_text_processing/text_normalization/sv/data/math_operations.tsv @@ -1,8 +1,10 @@ + plus ++/- plus minus +± plus minus - minus / delad ÷ delad : delad × gånger * gånger -· gånger \ No newline at end of file +· gånger diff --git a/nemo_text_processing/text_normalization/sv/data/measure/greek_lower.tsv b/nemo_text_processing/text_normalization/sv/data/measure/greek_lower.tsv index 13ca01f38..7af54d8e8 100644 --- a/nemo_text_processing/text_normalization/sv/data/measure/greek_lower.tsv +++ b/nemo_text_processing/text_normalization/sv/data/measure/greek_lower.tsv @@ -22,4 +22,3 @@ χ chi ψ psi ω omega - diff --git a/nemo_text_processing/text_normalization/sv/data/measure/greek_upper.tsv b/nemo_text_processing/text_normalization/sv/data/measure/greek_upper.tsv index daac61c5c..60e1909f2 100644 --- a/nemo_text_processing/text_normalization/sv/data/measure/greek_upper.tsv +++ b/nemo_text_processing/text_normalization/sv/data/measure/greek_upper.tsv @@ -22,4 +22,3 @@ Χ chi Ψ psi Ω omega - diff --git a/nemo_text_processing/text_normalization/sv/data/measure/unit.tsv b/nemo_text_processing/text_normalization/sv/data/measure/unit.tsv index e0e2af1fe..1f7ec1d1d 100644 --- a/nemo_text_processing/text_normalization/sv/data/measure/unit.tsv +++ b/nemo_text_processing/text_normalization/sv/data/measure/unit.tsv @@ -21,6 +21,8 @@ cu mi kubikmil cwt centner da atommassenhet db decibel +dba decibel +dl deciliter dm2 kvadratdecimeter dm² kvadratdecimeter dm3 kubikdecimeter @@ -67,6 +69,7 @@ km² kvadratkilometer km3 kubikkilometer km³ kubikkilometer km kilometer +km:s kilometers kn kilonewton kpa kilopascal kp kilopond @@ -101,6 +104,7 @@ ml milliliter mm2 kvadratmillimeter mm² kvadratmillimeter m meter +mbar millibar Mm megameter mm millimeter mol mol @@ -112,6 +116,7 @@ ms millisekund Mv megavolt mv millivolt mw megawatt +mwh megawattimme nm nanometer ns nanosekund ºc celsiusgrad @@ -134,6 +139,8 @@ TB terabyte tim timme tj terajoule tl teraliter +tsk tesked +twh terawattimme " tum v volt YB yottabyte @@ -145,3 +152,41 @@ zj zettajoule μs mikrosekund ω ohm msk matsked +cl centiliter +hpa hektopascal +hPa hektopascal +kbit kilobit +kHz kilohertz +kJ kilojoule +kV kilovolt +kWh kilowattimme +kcal/dag kilokalori per dag +kcal/gram kilokalori per gram +l liter +lx lux +mbyte megabyte +mm vp millimeter vattenpelare +mmhg millimeter kvicksilver +mmHg millimeter kvicksilver +mmol millimol +mwel megawatt el +nmol nanomol +personkm personkilometer +pmol pikomol +twhel terawattimme el +twhkyla terawattimme kyla +twhvärme terawattimme värme +µm mikrometer +kvm kvadratmeter +m.ö.h meter över havet +mö.h meter över havet +inv/km2 invånare per kvadratkilometer +kr/kg kronor per kilo +kr/m2 kronor per kvadratmeter +kr/månad kronor per månad +kr/styck kronor styck +kr/år kronor per år +krm kryddmått +kton kiloton +nr/år nummer per år +tkr/månad tusen kronor per månad diff --git a/nemo_text_processing/text_normalization/sv/data/measure/unit_neuter.tsv b/nemo_text_processing/text_normalization/sv/data/measure/unit_neuter.tsv index 0ca4d4e3c..da70c6b60 100644 --- a/nemo_text_processing/text_normalization/sv/data/measure/unit_neuter.tsv +++ b/nemo_text_processing/text_normalization/sv/data/measure/unit_neuter.tsv @@ -1,3 +1,4 @@ +dg decigram g gram kg kilogram kp kilopond @@ -11,3 +12,5 @@ pg petagram rpm varv per minut varv/min varv per minut μg mikrogram +cg centigram +mikrog mikrogram diff --git a/nemo_text_processing/text_normalization/sv/data/measure/unit_optional_dot.tsv b/nemo_text_processing/text_normalization/sv/data/measure/unit_optional_dot.tsv new file mode 100644 index 000000000..927a24f36 --- /dev/null +++ b/nemo_text_processing/text_normalization/sv/data/measure/unit_optional_dot.tsv @@ -0,0 +1,2 @@ +cal kalori +kr/st kronor styck diff --git a/nemo_text_processing/text_normalization/sv/data/measure/unit_plural.tsv b/nemo_text_processing/text_normalization/sv/data/measure/unit_plural.tsv index 1e7d79aa9..0119c3bd4 100644 --- a/nemo_text_processing/text_normalization/sv/data/measure/unit_plural.tsv +++ b/nemo_text_processing/text_normalization/sv/data/measure/unit_plural.tsv @@ -9,6 +9,8 @@ celsiusgrad celsiusgrader centimeter centner decibel +decigram +deciliter decimeter decisekund decisekunder elektronvolt @@ -76,6 +78,7 @@ megasekund megasekunder megasiemens megavolt megawatt +megawattimme megawattimmar meter mikrogram mikrometer @@ -106,6 +109,8 @@ radian radianer sekund sekunder sievert terabyte +terawattimme terawattimmar +tesked teskedar terajoule teraliter timme timmar @@ -119,3 +124,36 @@ yottajoule zettabyte zettajoule matsked matskedar +centigram +centiliter +hektopascal +kilobit per sekund +kalori kalorier +kilokalori per dag kilokalorier per dag +kilokalori per gram kilokalorier per gram +liter +lux +megawatt el +megabyte +meter över havet +invånare per kvadratkilometer +kilometers +kiloton +kronor per kilo +kronor per kvadratmeter +kronor per månad +kronor per år +kronor styck +kryddmått +millibar +nummer per år +tusen kronor per månad +millimeter kvicksilver +millimeter vattenpelare +millimol +nanomol +personkilometer +pikomol +terawattimme el terawattimmar el +terawattimme kyla terawattimmar kyla +terawattimme värme terawattimmar värme diff --git a/nemo_text_processing/text_normalization/sv/data/money/currency_major.tsv b/nemo_text_processing/text_normalization/sv/data/money/currency_major.tsv index e358bdf04..cf5c58a0c 100644 --- a/nemo_text_processing/text_normalization/sv/data/money/currency_major.tsv +++ b/nemo_text_processing/text_normalization/sv/data/money/currency_major.tsv @@ -27,6 +27,8 @@ esp peseta ₧ peseta ptas peseta usd amerikansk dollar +us$ amerikansk dollar +US$ amerikansk dollar usd$ amerikansk dollar USD$ amerikansk dollar aud australisk dollar diff --git a/nemo_text_processing/text_normalization/sv/data/money/currency_quantity.tsv b/nemo_text_processing/text_normalization/sv/data/money/currency_quantity.tsv new file mode 100644 index 000000000..a79ae7f43 --- /dev/null +++ b/nemo_text_processing/text_normalization/sv/data/money/currency_quantity.tsv @@ -0,0 +1,10 @@ +mdkr miljarder kr +mkr miljoner kr +mkr. miljoner kr +mnkr miljoner kr +mnkr. miljoner kr +msek miljoner sek +msek. miljoner sek +tkr tusen kr +tkr. tusen kr +tkronor tusen kr diff --git a/nemo_text_processing/text_normalization/sv/data/reference/__init__.py b/nemo_text_processing/text_normalization/sv/data/reference/__init__.py new file mode 100644 index 000000000..6ebc808fa --- /dev/null +++ b/nemo_text_processing/text_normalization/sv/data/reference/__init__.py @@ -0,0 +1,13 @@ +# Copyright (c) 2023, NVIDIA CORPORATION & AFFILIATES. All rights reserved. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. diff --git a/nemo_text_processing/text_normalization/sv/data/reference/cardinal.tsv b/nemo_text_processing/text_normalization/sv/data/reference/cardinal.tsv new file mode 100644 index 000000000..fc26c067c --- /dev/null +++ b/nemo_text_processing/text_normalization/sv/data/reference/cardinal.tsv @@ -0,0 +1,6 @@ +§ paragraf +art artikel +kap kapitel +mom moment +s sida +st stycke diff --git a/nemo_text_processing/text_normalization/sv/data/reference/cardinal_nondeterministic.tsv b/nemo_text_processing/text_normalization/sv/data/reference/cardinal_nondeterministic.tsv new file mode 100644 index 000000000..7e57c1c1d --- /dev/null +++ b/nemo_text_processing/text_normalization/sv/data/reference/cardinal_nondeterministic.tsv @@ -0,0 +1 @@ +kl klass diff --git a/nemo_text_processing/text_normalization/sv/data/reference/ordinal_common.tsv b/nemo_text_processing/text_normalization/sv/data/reference/ordinal_common.tsv new file mode 100644 index 000000000..ea5c97366 --- /dev/null +++ b/nemo_text_processing/text_normalization/sv/data/reference/ordinal_common.tsv @@ -0,0 +1,4 @@ +§ paragrafen paragraf +art artikeln artikel +kl klassen klass +s sidan sida diff --git a/nemo_text_processing/text_normalization/sv/data/reference/ordinal_neuter.tsv b/nemo_text_processing/text_normalization/sv/data/reference/ordinal_neuter.tsv new file mode 100644 index 000000000..a3b2c9b4a --- /dev/null +++ b/nemo_text_processing/text_normalization/sv/data/reference/ordinal_neuter.tsv @@ -0,0 +1,3 @@ +kap kapitlet kapitel +mom momentet moment +st stycket stycke diff --git a/nemo_text_processing/text_normalization/sv/data/whitelist.tsv b/nemo_text_processing/text_normalization/sv/data/whitelist.tsv index a8f66fb52..a08b6a1cf 100644 --- a/nemo_text_processing/text_normalization/sv/data/whitelist.tsv +++ b/nemo_text_processing/text_normalization/sv/data/whitelist.tsv @@ -56,3 +56,5 @@ rdr. riksdaler ÅR åskådliga rummet o.s.a. om svar anhålles o. s. a. om svar anhålles +& co och kompani +& Co. och kompani diff --git a/nemo_text_processing/text_normalization/sv/taggers/cardinal.py b/nemo_text_processing/text_normalization/sv/taggers/cardinal.py index 750ff867b..5145175ad 100644 --- a/nemo_text_processing/text_normalization/sv/taggers/cardinal.py +++ b/nemo_text_processing/text_normalization/sv/taggers/cardinal.py @@ -25,7 +25,7 @@ insert_space, ) from nemo_text_processing.text_normalization.sv.graph_utils import SV_ALPHA -from nemo_text_processing.text_normalization.sv.utils import get_abs_path +from nemo_text_processing.text_normalization.sv.utils import get_abs_path, load_labels def make_million(number: str, non_zero_no_one: 'pynini.FstLike', deterministic: bool = True) -> 'pynini.FstLike': @@ -360,6 +360,17 @@ def __init__(self, deterministic: bool = True): optional_minus_graph = pynini.closure(pynutil.insert("negative: ") + pynini.cross("-", "\"true\" "), 0, 1) final_graph = optional_minus_graph + pynutil.insert("integer: \"") + self.graph + pynutil.insert("\"") + reference_graph = pynini.Fst() + reference_labels = load_labels(get_abs_path("data/reference/cardinal.tsv")) + if not deterministic: + reference_labels += load_labels(get_abs_path("data/reference/cardinal_nondeterministic.tsv")) + for written, spoken in reference_labels: + optional_dot = pynini.closure(pynutil.delete("."), 0, 1) if written.isalpha() else pynini.accep("") + unit = pynutil.delete(written) + optional_dot + unit_first = pynutil.insert(f"{spoken} ") + unit + delete_space + self.graph + number_first = pynutil.insert(f"{spoken} ") + self.graph + delete_space + unit + reference_graph |= unit_first | number_first + final_graph |= pynutil.insert("integer: \"") + reference_graph + pynutil.insert("\"") if not deterministic: final_graph |= pynutil.add_weight( optional_minus_graph + pynutil.insert("integer: \"") + self.graph_en + pynutil.insert("\""), -0.001 diff --git a/nemo_text_processing/text_normalization/sv/taggers/measure.py b/nemo_text_processing/text_normalization/sv/taggers/measure.py index 4da3f81c2..2668a757e 100644 --- a/nemo_text_processing/text_normalization/sv/taggers/measure.py +++ b/nemo_text_processing/text_normalization/sv/taggers/measure.py @@ -49,6 +49,8 @@ def __init__(self, cardinal: GraphFst, decimal: GraphFst, fraction: GraphFst, de cardinal_graph_en = cardinal.graph_en graph_unit = pynini.string_file(get_abs_path("data/measure/unit.tsv")) + graph_unit_optional_dot = pynini.string_file(get_abs_path("data/measure/unit_optional_dot.tsv")) + graph_unit |= graph_unit_optional_dot + pynini.closure(pynutil.delete("."), 0, 1) graph_unit_ett = pynini.string_file(get_abs_path("data/measure/unit_neuter.tsv")) graph_plurals = pynini.string_file(get_abs_path("data/measure/unit_plural.tsv")) greek_lower = pynini.string_file(get_abs_path("data/measure/greek_lower.tsv")) @@ -215,13 +217,14 @@ def __init__(self, cardinal: GraphFst, decimal: GraphFst, fraction: GraphFst, de math_operations = pynini.string_file(get_abs_path("data/math_operations.tsv")) delimiter = pynini.accep(" ") | pynutil.insert(" ") + math_operand = cardinal_graph_ett | SV_ALPHA | greek equals = pynini.cross("=", "är") if not deterministic: equals |= pynini.cross("=", "är lika med") math = ( - (cardinal_graph_ett | SV_ALPHA | greek) + math_operand + delimiter + math_operations + (delimiter | SV_ALPHA) @@ -229,11 +232,11 @@ def __init__(self, cardinal: GraphFst, decimal: GraphFst, fraction: GraphFst, de + delimiter + equals + delimiter - + (cardinal_graph_ett | SV_ALPHA | greek) + + math_operand ) math |= ( - (cardinal_graph_ett | SV_ALPHA | greek) + math_operand + delimiter + equals + delimiter @@ -244,6 +247,8 @@ def __init__(self, cardinal: GraphFst, decimal: GraphFst, fraction: GraphFst, de + cardinal_graph_ett ) + math |= math_operand + delimiter + math_operations + delimiter + math_operand + math = ( pynutil.insert("units: \"math\" cardinal { integer: \"") + math diff --git a/nemo_text_processing/text_normalization/sv/taggers/money.py b/nemo_text_processing/text_normalization/sv/taggers/money.py index 16858cc5c..91ec3040b 100644 --- a/nemo_text_processing/text_normalization/sv/taggers/money.py +++ b/nemo_text_processing/text_normalization/sv/taggers/money.py @@ -116,6 +116,10 @@ def __init__(self, cardinal: GraphFst, decimal: GraphFst, deterministic: bool = final_graph = (graph_integer_only + optional_delete_fractional_zeros) | graph_decimal + currency_quantity = pynini.string_file(get_abs_path("data/money/currency_quantity.tsv")) + amount = pynini.closure(NEMO_DIGIT | pynini.union(",", ".", "-", " "), 1) + final_graph |= (amount + currency_quantity) @ final_graph + # remove trailing zeros of non zero number in the first 2 digits and fill up to 2 digits # e.g. 2000 -> 20, 0200->02, 01 -> 01, 10 -> 10 # not accepted: 002, 00, 0, diff --git a/nemo_text_processing/text_normalization/sv/taggers/ordinal.py b/nemo_text_processing/text_normalization/sv/taggers/ordinal.py index 0877ca08f..3f713895b 100644 --- a/nemo_text_processing/text_normalization/sv/taggers/ordinal.py +++ b/nemo_text_processing/text_normalization/sv/taggers/ordinal.py @@ -26,7 +26,7 @@ insert_space, ) from nemo_text_processing.text_normalization.sv.taggers.cardinal import filter_punctuation, make_million -from nemo_text_processing.text_normalization.sv.utils import get_abs_path +from nemo_text_processing.text_normalization.sv.utils import get_abs_path, load_labels class OrdinalFst(GraphFst): @@ -200,12 +200,26 @@ def __init__(self, cardinal: GraphFst, deterministic: bool = True): self.suffixed_to_words = self.suffixed_ordinal @ self.graph self.bare_ordinals = cleaned_graph - kapitlet_word = pynini.union("kapitlet", pynini.cross("kap", "kapitlet")) - kapitlet = cleaned_graph + NEMO_SPACE + kapitlet_word + reference_graph = pynini.Fst() + if not deterministic: + reference_groups = [ + ("ordinal_common.tsv", "den", "denna"), + ("ordinal_neuter.tsv", "det", "detta"), + ] + for filename, article, demonstrative in reference_groups: + for written, definite, indefinite in load_labels(get_abs_path(f"data/reference/{filename}")): + optional_dot = pynini.closure(pynutil.delete("."), 0, 1) if written.isalpha() else pynini.accep("") + unit = pynutil.delete(written) + optional_dot + reference = cleaned_graph + delete_space + unit + reference_graph |= reference + pynutil.insert(f" {definite}") + reference_graph |= pynutil.insert(f"{article} ") + reference + pynutil.insert(f" {definite}") + reference_graph |= ( + pynutil.insert(f"{demonstrative} ") + reference + pynutil.insert(f" {indefinite}") + ) tok_graph = ( pynutil.insert("integer: \"") - + (cleaned_graph + pynutil.delete(".") | self.suffixed_to_words | kapitlet) + + (cleaned_graph + pynutil.delete(".") | self.suffixed_to_words | reference_graph) + pynutil.insert("\"") ) diff --git a/nemo_text_processing/text_normalization/sv/taggers/tokenize_and_classify.py b/nemo_text_processing/text_normalization/sv/taggers/tokenize_and_classify.py index ff2495524..ac980d61e 100644 --- a/nemo_text_processing/text_normalization/sv/taggers/tokenize_and_classify.py +++ b/nemo_text_processing/text_normalization/sv/taggers/tokenize_and_classify.py @@ -147,7 +147,7 @@ def __init__( | pynutil.add_weight(decimal_graph, 1.1) | pynutil.add_weight(measure_graph, 1.1) | pynutil.add_weight(cardinal_graph, 1.1) - | pynutil.add_weight(ordinal_graph, 1.1) + | pynutil.add_weight(ordinal_graph, 1.09) | pynutil.add_weight(money_graph, 1.1) | pynutil.add_weight(telephone_graph, 1.1) | pynutil.add_weight(electonic_graph, 1.1) diff --git a/nemo_text_processing/text_normalization/sv/taggers/whitelist.py b/nemo_text_processing/text_normalization/sv/taggers/whitelist.py index e8bf8151c..e0e3c1f26 100644 --- a/nemo_text_processing/text_normalization/sv/taggers/whitelist.py +++ b/nemo_text_processing/text_normalization/sv/taggers/whitelist.py @@ -14,7 +14,8 @@ import pynini from pynini.lib import pynutil -from nemo_text_processing.text_normalization.en.graph_utils import GraphFst, convert_space +from nemo_text_processing.text_normalization.en.graph_utils import NEMO_SIGMA, GraphFst, convert_space +from nemo_text_processing.text_normalization.sv.graph_utils import TO_LOWER from nemo_text_processing.text_normalization.sv.utils import get_abs_path, load_labels @@ -41,11 +42,25 @@ def _get_whitelist_graph(input_case, file): graph = pynini.string_map(whitelist) return graph + def _get_case_insensitive_graph(input_case, file): + graph = _get_whitelist_graph("lower_cased", file) + if input_case == "lower_cased": + return graph + lower_cased_input = pynini.cdrewrite(TO_LOWER, "", "", NEMO_SIGMA) + return lower_cased_input @ graph + + def _get_case_insensitive_optional_dot_graph(input_case, file): + graph = _get_case_insensitive_graph(input_case, file) + return graph + pynini.closure(pynutil.delete("."), 0, 1) + graph = _get_whitelist_graph(input_case, get_abs_path("data/whitelist.tsv")) + graph |= _get_case_insensitive_graph(input_case, get_abs_path("data/abbreviations/abbreviations.tsv")) + graph |= _get_case_insensitive_optional_dot_graph( + input_case, get_abs_path("data/abbreviations/abbreviations_opt_dot.tsv") + ) if not deterministic and input_case != "lower_cased": - graph |= pynutil.add_weight( - _get_whitelist_graph("lower_cased", get_abs_path("data/whitelist.tsv")), weight=0.0001 - ) + lower_cased_graph = _get_whitelist_graph("lower_cased", get_abs_path("data/whitelist.tsv")) + graph |= pynutil.add_weight(lower_cased_graph, weight=0.0001) if input_file: whitelist_provided = _get_whitelist_graph(input_case, input_file) @@ -57,7 +72,12 @@ def _get_whitelist_graph(input_case, file): if not deterministic: units_graph = _get_whitelist_graph(input_case, file=get_abs_path("data/measure/unit.tsv")) units_graph |= _get_whitelist_graph(input_case, file=get_abs_path("data/measure/unit_neuter.tsv")) - units_graph |= _get_whitelist_graph(input_case, file=get_abs_path("data/abbreviations_nondet.tsv")) + units_graph |= _get_whitelist_graph( + input_case, file=get_abs_path("data/abbreviations/nondeterministic.tsv") + ) + units_graph |= _get_case_insensitive_graph( + input_case, get_abs_path("data/abbreviations/abbreviations_alternatives.tsv") + ) graph |= units_graph self.graph = graph diff --git a/tests/nemo_text_processing/sv/data_text_normalization/test_cases_cardinal.txt b/tests/nemo_text_processing/sv/data_text_normalization/test_cases_cardinal.txt index 7b0f75a54..2fcd04af9 100644 --- a/tests/nemo_text_processing/sv/data_text_normalization/test_cases_cardinal.txt +++ b/tests/nemo_text_processing/sv/data_text_normalization/test_cases_cardinal.txt @@ -18,6 +18,15 @@ 201~tvåhundraett 111~hundraelva 110~hundratio +§ 3~paragraf tre +3 §~paragraf tre +kap. 9~kapitel nio +9 kap~kapitel nio +st. 2~stycke två +2 st.~stycke två +s. 4~sida fyra +art. 7~artikel sju +3 mom.~moment tre 1000~tusen 540~femhundrafyrtio 850~åttahundrafemtio diff --git a/tests/nemo_text_processing/sv/data_text_normalization/test_cases_date.txt b/tests/nemo_text_processing/sv/data_text_normalization/test_cases_date.txt index d3e3fbc97..c47f55432 100644 --- a/tests/nemo_text_processing/sv/data_text_normalization/test_cases_date.txt +++ b/tests/nemo_text_processing/sv/data_text_normalization/test_cases_date.txt @@ -4,6 +4,8 @@ 2. jan., 2022 f Kr~andra januari tjugotjugotvå före Kristus 23. jan. 2022~tjugotredje januari tjugotjugotvå 2022 f.Kr.~tjugotjugotvå före Kristus +2022 e.kr~tjugotjugotvå efter Kristus +2022 f.kr~tjugotjugotvå före Kristus 2022.01.02~andra januari tjugotjugotvå 2000.01.02~andra januari tjugohundra 2000-01-02~andra januari tjugohundra diff --git a/tests/nemo_text_processing/sv/data_text_normalization/test_cases_measure.txt b/tests/nemo_text_processing/sv/data_text_normalization/test_cases_measure.txt index 2fa5a70bb..054ba1ab2 100644 --- a/tests/nemo_text_processing/sv/data_text_normalization/test_cases_measure.txt +++ b/tests/nemo_text_processing/sv/data_text_normalization/test_cases_measure.txt @@ -5,3 +5,45 @@ 3mm~tre millimeter 1+5=6~ett plus fem är sex α+1=3~alfa plus ett är tre +1 +/- 0~ett plus minus noll +1 ± 0~ett plus minus noll +1 dg~ett decigram +2 dg~två decigram +1 dl~en deciliter +2 dl~två deciliter +1 MWh~en megawattimme +2 MWh~två megawattimmar +1 TWh~en terawattimme +2 TWh~två terawattimmar +1 tsk~en tesked +2 tsk~två teskedar +1 cg~ett centigram +2 cg~två centigram +1 cal.~en kalori +2 cal~två kalorier +1 hPa~en hektopascal +2 MWel~två megawatt el +1 TWhel~en terawattimme el +2 TWhel~två terawattimmar el +1 µm~en mikrometer +1 mmol~en millimol +1 mbyte~en megabyte +1 mmHg~en millimeter kvicksilver +100 m.ö.h~hundra meter över havet +1 kvm~en kvadratmeter +2 dBA~två decibel +2 inv/km2~två invånare per kvadratkilometer +2 km:s~två kilometers +2 kr/kg~två kronor per kilo +2 kr/m2~två kronor per kvadratmeter +2 kr/månad~två kronor per månad +2 kr/styck~två kronor styck +2 kr/st.~två kronor styck +2 kr/år~två kronor per år +2 krm~två kryddmått +2 kton~två kiloton +2 mbar~två millibar +2 ml/l~två milliliter per liter +2 mm³~två kubikmillimeter +2 nr/år~två nummer per år +2 tkr/månad~två tusen kronor per månad diff --git a/tests/nemo_text_processing/sv/data_text_normalization/test_cases_money.txt b/tests/nemo_text_processing/sv/data_text_normalization/test_cases_money.txt index 99f546fdf..39e93c48e 100644 --- a/tests/nemo_text_processing/sv/data_text_normalization/test_cases_money.txt +++ b/tests/nemo_text_processing/sv/data_text_normalization/test_cases_money.txt @@ -63,3 +63,10 @@ $1 925,21~tusen niohundratjugofem dollar tjugoen cent $1 234,123~tusen tvåhundratrettiofyra komma hundratjugotre dollar US $76,3 biljoner~US sjuttiosex komma tre biljoner dollar USD$76,3 biljoner~sjuttiosex komma tre biljoner amerikanska dollar +2 mdkr~två miljarder kronor +2 mkr.~två miljoner kronor +2 mnkr~två miljoner kronor +2 msek~två miljoner kronor +2 tkr~två tusen kronor +2 tkronor~två tusen kronor +US$2~två amerikanska dollar diff --git a/tests/nemo_text_processing/sv/data_text_normalization/test_cases_normalize_with_audio.txt b/tests/nemo_text_processing/sv/data_text_normalization/test_cases_normalize_with_audio.txt index dd9874bae..a7cddb3d0 100644 --- a/tests/nemo_text_processing/sv/data_text_normalization/test_cases_normalize_with_audio.txt +++ b/tests/nemo_text_processing/sv/data_text_normalization/test_cases_normalize_with_audio.txt @@ -12,3 +12,27 @@ två ett tredje december tjugotjugotvå tredje december tjugohundratjugotvå tredje december tvåtusen tjugotvå +~3 § +paragraf tre +tredje paragraf +tredje paragrafen +den tredje paragrafen +denna tredje paragraf +~9 kap. +kapitel nio +nionde kapitlet +det nionde kapitlet +detta nionde kapitel +~2 st. +stycke två +andra stycket +det andra stycket +detta andra stycke +~kl. 3 +klockan tre +klass tre +~3 kl. +klass tre +tredje klassen +den tredje klassen +denna tredje klass diff --git a/tests/nemo_text_processing/sv/data_text_normalization/test_cases_ordinal.txt b/tests/nemo_text_processing/sv/data_text_normalization/test_cases_ordinal.txt index fee817946..f11bdeb5f 100644 --- a/tests/nemo_text_processing/sv/data_text_normalization/test_cases_ordinal.txt +++ b/tests/nemo_text_processing/sv/data_text_normalization/test_cases_ordinal.txt @@ -4,4 +4,3 @@ 2.~andra 20.~tjugonde 23.~tjugotredje -9 kap~nionde kapitlet diff --git a/tests/nemo_text_processing/sv/data_text_normalization/test_cases_whitelist.txt b/tests/nemo_text_processing/sv/data_text_normalization/test_cases_whitelist.txt index 78649e640..d9e2c64d9 100644 --- a/tests/nemo_text_processing/sv/data_text_normalization/test_cases_whitelist.txt +++ b/tests/nemo_text_processing/sv/data_text_normalization/test_cases_whitelist.txt @@ -1 +1,15 @@ s:t erik~sankt erik +allm. information~allmän information +ALLM information~allmän information +bg. 123~bankgiro hundratjugotre +Kalle Anka & co~Kalle Anka och kompani +bl. a. böcker~bland annat böcker +se ff.~se och följande sidor +d.v.s. samma sak~det vill säga samma sak +fr.o.m. måndag~från och med måndag +akad. avh. i ämnet~akademisk avhandling i ämnet +dnr. 123~diarienummer hundratjugotre +i.o.f.s. inte~i och för sig inte +pga. vädret~på grund av vädret +AckL gäller~ackordslagen gäller +ackl gäller~ackl gäller diff --git a/tests/nemo_text_processing/sv/test_sparrowhawk_normalization.sh b/tests/nemo_text_processing/sv/test_sparrowhawk_normalization.sh index 49480ee6a..0f204bae9 100644 --- a/tests/nemo_text_processing/sv/test_sparrowhawk_normalization.sh +++ b/tests/nemo_text_processing/sv/test_sparrowhawk_normalization.sh @@ -15,7 +15,7 @@ runtest () { # trim white space spoken="$(echo -e "${spoken}" | sed -e 's/^[[:space:]]*//' -e 's/[[:space:]]*$//')" - denorm_pred="$(echo -e "${denorm_pred}" | sed -e 's/^[[:space:]]*//' -e 's/[[:space:]]*$//')" + denorm_pred="$(echo -e "${denorm_pred}" | sed -e 's/ / /g' -e 's/^[[:space:]]*//' -e 's/[[:space:]]*$//')" # input expected actual assertEquals "$written" "$spoken" "$denorm_pred"