de.txt   [plain text]


// ***************************************************************************
// *
// *   Copyright (C) 2004, 2007 International Business Machines
// *   Corporation and others.  All Rights Reserved.
// *
// ***************************************************************************
// 

de {
    // * RuleBasedNumberFormat data for German

    // again, I'm not 100% sure of these rules.  I think both "hundert" and
    // "einhundert" are correct or 100, but I'm not sure which is preferable
    // in situations where this framework is likely to be used.  Also, is it
    // really true that numbers are run together into compound words all the
    // time?
    SpelloutRules {
        // 1 is "eins" when by itself, but turns into "ein" in most
        // combinations
        "%alt-ones:\n"
            "-x: minus >>;\n"
            "x.x: << komma >>;\n"
            "null; eins; =%%main=;\n"
        "%%main:\n"
               // words for numbers from 0 to 12.  Notice that the values
               // from 13 to 19 can derived algorithmically, unlike in most
               // other languages
            "null; ein; zwei; drei; vier; f\u00fcnf; sechs; sieben; acht; neun;\n"
            "zehn; elf; zw\u00f6lf; >>zehn;\n"
               // rules for the multiples of 10.  Notice that the ones digit
               // goes on the front
            "20: [>>und]zwanzig;\n"
            "30: [>>und]drei\u00dfig;\n"
            "40: [>>und]vierzig;\n"
            "50: [>>und]f\u00fcnfzig;\n"
            "60: [>>und]sechzig;\n"
            "70: [>>und]siebzig;\n"
            "80: [>>und]achtzig;\n"
            "90: [>>und]neunzig;\n"
            "100: hundert[>%alt-ones>];\n"
            "200: <<hundert[>%alt-ones>];\n"
            "1000: tausend[>%alt-ones>];\n"
            "1100: tausendein[>%alt-ones>];\n"
            "1200: tausend[>%alt-ones>];\n"
            "2000: <<tausend[>%alt-ones>];\n"
            "1,000,000: eine Million[ >%alt-ones>];\n"
            "2,000,000: << Millionen[ >%alt-ones>];\n"
            "1,000,000,000: eine Milliarde[ >%alt-ones>];\n"
            "2,000,000,000: << Milliarden[ >%alt-ones>];\n"
            "1,000,000,000,000: eine Billion[ >%alt-ones>];\n"
            "2,000,000,000,000: << Billionen[ >%alt-ones>];\n"
            "1,000,000,000,000,000: =#,##0=;"
        "%%lenient-parse:\n"
            "&\u0000 << ' ' << '-'\n"
            "& ae , \u00e4 & ae , \u00c4\n"
            "& oe , \u00f6 & oe , \u00d6\n"
            "& ue , \u00fc & ue , \u00dc\n"
    }
}