﻿// ***************************************************************************
// *
// * Copyright (C) 2006 International Business Machines
// * Corporation and others.  All Rights Reserved.
// * Tool: com.ibm.icu.dev.tool.cldr.LDML2ICUConverter.java
// * Source File:<path>/common/main/sv_SE.xml
// *
// ***************************************************************************
sv_SE{
    Countries{
        UM{"USA:s yttre öar"}
    }
    Languages{
        afa{"afroasiatiskt (annat)"}
        cpe{"kreol- och pidginspråk, engelskbaserade (övriga)"}
        cpf{"kreol- och pidginspråk, franskbaserade (övriga)"}
        cpp{"kreol- och pidginspråk, portugisiskbaserade (övriga)"}
        crh{"krimturkiska, krimtatariska"}
        crp{"kreol- och pidginspråk (annat)"}
        enm{"medelengelska (ca 1100-1500)"}
        gil{"gilbertesiska, kiribati"}
        gn{"guarani"}
        iro{"irokesiska språk"}
        khi{"khoisanska (annat)"}
        km{"kambodjanska, khmeriska"}
        kn{"kanaresiska, kannada"}
        lol{"lolo, mongo"}
        mga{"medeliriska (ca 900-1200)"}
        nah{"nahuatl, aztekiska"}
        nds{"lågtyska, lågsaxiska"}
        oc{"provensalska (efter 1500), occitanska"}
        oj{"odjibwa, chippewa"}
        phn{"kananeiska, feniciska"}
        ps{"pashto, afghanska"}
        rw{"rwanda, kinjarwanda"}
        sit{"sinotibetanskt (annat)"}
        smi{"samiska språk (övriga)"}
        sn{"shona, manshona"}
    }
    NumberPatterns{
        "#,##0.###",
        "¤ #,##0.00",
        "#,##0 %",
        "#E0",
    }
    Types{
        collation{
            stroke{"streckordning"}
        }
    }
    Version{"1.44"}
    calendar{
        gregorian{
            DateTimeElements:intvector{
                2,
                4,
            }
            DateTimePatterns{
                "'kl. 'HH.mm.ss z",
                "HH.mm.ss z",
                "HH.mm.ss",
                "HH.mm",
                "EEEE, yyyy MMMM dd",
                "EEE d MMM yyyy",
                "d MMM yyyy",
                "yyyy-MM-dd",
                "{1} {0}",
            }
            fields{
                dayperiod{
                    dn{"tidsvisning"}
                }
            }
        }
    }
    delimiters{
        alternateQuotationEnd{"”"}
        alternateQuotationStart{"”"}
        quotationEnd{"’"}
        quotationStart{"’"}
    }
    measurementSystemNames{
        US{"Tumsystem"}
        metric{"Metriskt system"}
    }
}
