Beschreiben einer Kultur mit LDML-Daten

Wenn die Anwendung eine Kultur mit Save speichert, entspricht die resultierende XML-Darstellung des CultureAndRegionInfoBuilder-Objekts dem Format von Locale Data Markup Language (LDML), Version 1.1. Die CreateFromLdml-Methode ist die Umkehrung von Save und wird aus dieser XML-Datei geladen.

Die meisten aussagekräftigen Daten zur Beschreibung einer Kultur sind in special-Elementen innerhalb der XML-Datei enthalten. Die special-Elemente in LDML ermöglichen produktspezifische Anmerkungen und Daten.

In .NET Framework dient das special-Element als ein Container für Daten, die aus dem msLocale-Schema (https://schemas.microsoft.com/globalization/2005/carib/ldml) extrahiert wurden. Wie bei einem Schema üblich, stellt dieser URI einen eindeutigen Namen bereit. Es handelt sich dabei jedoch nicht um die URL eines tatsächlichen Dokuments.

Die meisten relevanten XML-Elemente entsprechen Eigenschaften oder von Methoden zurückgegebenen Werten der Klassen, die eine Kultur beschreiben, wie CultureAndRegionInfoBuilder und CultureInfo. Ein kleiner Teil der Elemente ist nicht für .NET Framework, sondern für Windows spezifisch. Diese Elemente werden nicht als Eigenschaften von CultureAndRegionInfoBuilder einbezogen.

Weitere Informationen zum LDML-Standard finden Sie in Annex 35 des Unicode Technical Standard, "Locale Data Markup Language (LDML)", auf der Unicode-Homepage (auf Englisch).

Nur-Windows-Elemente

Verschiedene Elemente in diesem Thema werden als "Nur-Windows-Elemente" beschrieben. Sie sind für nicht verwalteten Windows-Code relevant, jedoch nicht für .NET Framework. Wenn die Anwendung außerhalb von .NET Framework eine LDML-Datei erstellt und diese dann mithilfe von .NET Framework registriert, wird die Datei sowohl für Windows als auch für .NET Framework verfügbar. Wenn die Anwendung in .NET Framework eine vorhandene Kulturdefinition ändert und dann als benutzerdefinierte Kultur speichert, werden die Nur-Windows-Elemente von der ursprünglichen Kultur intakt an die gespeicherte Kultur übergeben.

identity-Elemente

In der folgenden Tabelle werden die identity -Elemente beschrieben.

Element

Hinweise

Version

LDML 1.1; Format: <version number="1.1">ldml version 1.1</version>

generation

Die Zeit, zu der die Datumsdatei generiert wurde, z. B. <generation date="2006-08-28" />

special

Ein Container, dessen gesamter Inhalt aus dem msLocale-Schema extrahiert wurde

Bei den folgenden Elementen handelt es sich um identity/special-Elemente. Falls nicht anders vermerkt, werden alle Werte durch das type-Attribut angegeben. Beispiel:

    <identity>
        ...
        <special xmlns:msLocale="https://schemas.microsoft.com/globalization/2005/carib/ldml">
             <!-- A typical case... -->
             <msLocale:cultureAndRegionInfoName type="en-US-fabricam"/>
             ...
             <!-- ...but here are some examples that use CDATA -->
             <msLocale:geoId>244</msLocale:geoId>
             <msLocale:languageIsoName type="twoLetters">
                 en
             </msLocale:languageIsoName> 
             ...
        </special>
    </identity>

In der folgenden Tabelle werden Eigenschaften und Methoden der identity-Elemente beschrieben.

Element

Eigenschaft/Methode

Hinweise

msLocale:cultureAndRegionInfoName

CultureName

Beispiele: "en", "en-US", "en-US-fabricam"

msLocale:cultureAndRegionModifier

IsNeutralCulture

Wird nur für neutrale Kulturen verwendet; type ist immer "neutral"

msLocale:cultureInfoVersion

Nicht zutreffend

Derzeit "1.0"

msLocale:geoId

GeoId

Beispiel: "244"; dieser Wert wird nicht mit einem type-Attribut, sondern als Text CDATA angegeben.

msLocale:parentName

Parent

Beispiel: "en"

msLocale:specificCulture

CreateSpecificCulture

Beispiel: "en-US"; nur relevant für neutrale Kulturen, in denen es die spezifische Standardkultur angibt

msLocale:languageNameAbbr

ThreeLetterWindowsLanguageName

Beispiel: "ENU"

msLocale:languageIsoName type="threeLetters"

ThreeLetterISOLanguageName

Beispiel: "eng"; dieser Wert wird nicht mit einem type-Attribut, sondern als Text CDATA angegeben; type ist "threeLetters"

msLocale:languageIsoName type="twoLetters"

TwoLetterISOLanguageName

Beispiel: "en"; dieser Wert wird nicht mit einem type-Attribut, sondern als Text CDATA angegeben; type ist "twoLetters"

msLocale:nativeDisplayName

CultureNativeName

Beispiele: "English (United States)", "Deutsch (Deutschland)".

msLocale:englishName

CultureEnglishName

Beispiele: "English (United States)", German (Germany).

msLocale:countryCode

Nicht zutreffend

Nur Windows; der Wert wird als CDATA angegeben; mit Ausnahme von Kanada (das die Landeskennzahl 2 hat) ist diese Kennzahl mit der internationalen Vorwahl für Telefongespräche identisch; in Windows wird über GetLocaleInfo oder GetLocaleInfoEx darauf zugegriffen, wobei LCTYPE als LOCALE_ICOUNTRY angegeben wird

msLocale:regionNativeName

RegionNativeName

Beispiele: "United States", "Deutschland"

msLocale:regionEnglishName

RegionEnglishName

Beispiele: "United States", "Germany"

msLocale:regionIsoName type="threeLetters"

ThreeLetterISORegionName

Beispiel: "USA"; dieser Wert wird nicht mit einem type-Attribut, sondern als Text CDATA angegeben; type ist "threeLetters"

msLocale:regionIsoName type="twoLetters"

TwoLetterISORegionName

Beispiel: "US"; dieser Wert wird nicht mit einem type-Attribut, sondern als Text CDATA angegeben; type ist "twoLetters"

msLocale:textInfoName

TextInfo.CultureName

Beispiel: "en-US"

msLocale:sortName

CompareInfo.Name

Beispiele: "en-US", "de-DE_phoneb"

msLocale:ietfLanguageTag

IetfLanguageTag

Beispiel: "en-US"

msLocale:englishLanguage

Nur Windows

Beispiele "English", "German"

layout-Element

In der folgenden Tabelle wird das layout-Element beschrieben.

Element

Hinweise

special

Ein Container, dessen gesamter Inhalt aus dem msLocale-Schema stammt

Das Element in der folgenden Tabelle fällt unter layout/special.

Element

Eigenschaft/Methode

Hinweise

msLocale:direction

IsRightToLeft

Die Richtung des Textlayouts, die folgende Werte haben kann:

  • "left-to-right"

  • "right-to-left"

Beispiel: <msLocale:Direction type="left-to-right"/>

characters-Element

In der folgenden Tabelle wird das characters-Element beschrieben.

Element

Hinweise

special

Ein Container, dessen gesamter Inhalt aus dem msLocale-Schema stammt

In der folgenden Tabelle werden characters/special-Elemente beschrieben. Falls nicht anders vermerkt, werden alle Werte durch das type-Attribut angegeben.

Element

Eigenschaft/Methode

Hinweise

msLocale:keyboardLayout

KeyboardLayoutId

Der Wert wird als CDATA behandelt

msLocale:consoleFallbackName

ConsoleFallbackUICulture

Beispiel: "en-US"

msLocale:fontSignature

Nicht zutreffend

Ein Container für weiteren Inhalt aus dem msLocale-Schema

mslocale:scripts

Nicht zutreffend

Ein Container für weiteren Inhalt aus dem msLocale-Schema

Die folgenden Elemente fallen unter characters/special/msLocale:fontSignature:

  • msLocale:unicodeRanges

  • msLocale:defaultCodePages

  • msLocale:codePages

Jedes dieser Elemente ist genau ein Container für weiteren Inhalt, der aus dem msLocale-Schema extrahiert wurde.

Die Elemente in der folgenden Tabelle fallen unter characters/special/msLocale:fontSignature/msLocale:unicodeRanges. Alle Werte werden durch das type-Attribute angegeben. Diese Informationen gelten nur für Windows und entsprechen teilweise der LOCALESIGNATURE-Struktur in Windows.

Element

Eigenschaft/Methode

Hinweise

msLocale:range

Nicht zutreffend

Nur Windows; ein Wert zwischen 0 und 122, der eine Bitzahl in Unicode Subset Bitfield (USB) darstellt und in der FONTSIGNATURE-Struktur von Windows enthalten ist; dieses Element kann mehrfach vorkommen

msLocale:layoutProgress

Nicht zutreffend

Nur Windows; mögliche Werte:

  • "horizontalRightToLeft"

  • "verticalBeforeHorizontal"

  • "verticalBottomToTop"

Die folgenden Elemente fallen unter characters/special/msLocale:fontSignature/msLocale:defaultCodePages und characters/special/msLocale:fontSignature/msLocale:codePages:

  • msLocale:ansiCodePage

  • msLocale:ansiOemCodePage

  • msLocale:oemCodePage

Jedes dieser Elemente ist genau ein Container für msLocale:codePage-Elemente, deren Werte durch das type-Attribut angegeben werden.

Element

Hinweise

msLocale:codePage

Eine Codepage; muss für das Element geeignet sein, in dem sie enthalten ist; Codepage "1252" ist z. B. eine ANSI-Codepage von Windows und fällt unter msLocale:ansiCodePage; Codepage "932" ist eine ANSI-/OEM-Codepage und fällt unter msLocale:ansiOemCodePage; Codepage "855" ist eine OEM-Codepage und fällt unter msLocale:oemCodePage

Unter characters/special/msLocale:fontSignature/msLocale:defaultCodePages sollte sich eines der folgenden Elemente befinden:

  • Ein einzelnes msLocale:ansiOemCodePage-Element, das ein einzelnes msLocale:codePage-Element enthält

  • Ein einzelnes msLocale:ansiCodePage-Element, das ein einzelnes msLocale:codePage-Element enthält, sowie ein einzelnes msLocale:oemCodePage-Element, das ein einzelnes msLocale:codePage-Element enthält

Bei msLocale:defaultCodePages-Daten handelt es sich um Daten, die nur für Windows gelten. Bei characters/special/msLocale:fontSignature/msLocale:codePages-Daten handelt es sich ebenfalls um Daten, die nur für Windows gelten. Darin werden alle Codepages aufgelistet, die die angegebene Sprache und das Skript unterstützen. Deshalb kann diese Liste mehrere Codepages desselben Typs enthalten. Beispiele:

<msLocale:codePages>
    <msLocale:ansiCodePage>
        ...
    </msLocale:ansiCodePage>
    <msLocale:oemCodePage>
        <msLocale:codePage type="864" />
        <msLocale:codePage type="708" />
    </msLocale:oemCodePage>
</msLocale:codePages>

Die Elemente in der folgenden Tabelle fallen unter characters/special/msLocale:fontSignature/msLocale:scripts. Alle Werte werden durch das type-Attribute angegeben. Diese Informationen gelten nur für Windows. Es besteht keine Möglichkeit, diese Daten in Windows festzulegen. Sie entsprechen jedoch den Rückgabewerten der GetStringScripts-Funktion von Windows.

Element

Eigenschaft/Methode

Hinweise

msLocale:script

Nicht zutreffend

Nur Windows; ein aus vier Buchstaben bestehender Code für ein Skript, z. B. "Latn" (Latein) oder "Cyrl" (Kyrillisch); dieses Element kann beliebig oft vorkommen

measurement-Elemente

In der folgenden Tabelle werden die Elemente definiert, die unter measurement fallen.

Element

Eigenschaft/Methode

Hinweise

measurementSystem

IsMetric

Das type-Attribut ist entweder "metric" oder "US"

paperSize

Nicht zutreffend

Nur Windows; dieses Element ist ein Container für ein height- und ein width-Element; mögliche Werte sind:

  • width = "216", height = "279" (Letter)

  • width = "216", height = "356" (Legal)

  • width = "297", height = "420" (A3)

  • width = "210", height = "297" (A4)

dates-Element

Das einzige Element, das unter dates fällt, ist das calendars-Element. Dieses Element ist ausschließlich ein Containerelement.

HinweisHinweis

.NET Framework verwendet POSIX-Regeln, um Datums- und Uhrzeitformate aus einem standardmäßigen LDML-Element zu interpretieren, also einem Element, das nicht aus dem msLocale-Schema, sondern aus dem LDML-Namespace extrahiert wurde.Der AM/PM-Indikator lautet beispielsweise "a".Elemente im msLocale-Schema folgen Microsoft-Regeln für Datums- und Uhrzeitformate.Der AM/PM-Bezeichner wird z. B. im Format "tt" angegeben.

In der folgenden Tabelle werden Elemente beschrieben, die unter dates/calendars fallen. Alle Werte werden durch das type-Attribute angegeben.

Element

Eigenschaft/Methode

Hinweise

default

AvailableCalendars

Ein Standardkalender; das type-Attribut ist entweder "metric" oder "US"; in von Microsoft generierten Dateien entspricht der Standardkalender immer AvailableCalendars[0]

Mögliche Kalenderwerte sind:

  • "Gregorian"

  • "Gregorian-US"

  • "Japanese"

  • "Taiwan"

  • "Korean"

  • "Hijri"

  • "Thai"

  • "Hebrew"

  • "Gregorian-ME-French"

  • "Gregorian-Arabic"

  • "Gregorian-XLIT-English"

  • "Gregorian-XLIT-French"

calendar

AvailableCalendars

Ein Indikator für verfügbare Kalender; dieses Element kann für jeden verfügbaren Kalender einmal wiederholt werden; die möglichen type-Attributwerte sind mit denen für default identisch; dieses Element fungiert auch als Container für Elemente, die Daten über den Kalender bereitstellen

Hinweis   Für nicht standardmäßige Kalender ist dieses Element normalerweise leer. Wenn also sowohl "Gregorian" als auch "Gregorian-US" verfügbar sind und "Gregorian" das default-Element ist, lautet das Element für "Gregorian-US" einfach <calendar type=" Gregorian-US" />.

Die Elemente in der folgenden Tabelle fallen unter dates/calendars/calendar. Alle Werte werden durch das type-Attribute angegeben.

Element

Eigenschaft/Methode

Hinweise

months

Nicht zutreffend

Ein Container

days

Nicht zutreffend

Ein Container

week

Nicht zutreffend

Ein Container

am

AMDesignator

CDATA gibt den Text an, der zur Bezeichnung einer Zeit vor 12 Uhr mittags verwendet wird, z. B. "AM"

pm

PMDesignator

CDATA gibt den Text an, der zur Bezeichnung einer Zeit nach 12 Uhr mittags verwendet wird, z. B. "PM"

dateformat

Nicht zutreffend

Ein Container

timeformat

Nicht zutreffend

Ein Container

eras

Nicht zutreffend

Ein Container

Unter dates/calendars/calendar/months befindet sich ein einzelnes monthContext-Element, dessen type-Attribut "format" lauten muss. Unter dates/calendars/calendar/months/monthContext sollten sich vier monthWidth-Elemente befinden.

Element

Eigenschaft/Methode

Hinweise

monthWidth type="wide"

MonthNames

Ein Container

monthWidth type="abbreviated"

AbbreviatedMonthNames

Ein Container

monthWidth type="genitive"

MonthGenitiveNames

Ein Container

monthWidth type="genitiveAbbreviated"

AbbreviatedMonthGenitiveNames

Ein Container

Unter dates/calendars/calendar/months/monthContext/monthWidth sollte sich für jeden Monat des Jahres ein month-Element befinden, je nach Kalender also 12 oder 13 dieser Elemente. Für jedes month-Element entspricht type der Nummer des Monats. Der CDATA-Typ gibt die relevante Zeichenfolge an. Beispiel:

...
<calendar type="Gregorian">
   <months>
      <monthContext type="format">
          <monthWidth type="wide">            
              <month type="1">January</month>
              <month type="2">February</month>
              <month type="3">March</month>
              ...
          </monthWidth>
          <monthWidth type="abbreviated">
              <month type="1">Jan</month>
              <month type="2">Feb</month>
              <month type="3">Mar</month>
              ...
          </monthWidth>
          ...
      </monthContext>
   </months>
</calendar>

Unter dates/calendars/calendar/days befindet sich ein einzelnes dayContext-Element, dessen type-Attribut "format" lauten muss. Unter dates/calendars/calendar/days/dayContext sollten sich drei dayWidth-Elemente befinden.

Element

Eigenschaft/Methode

Hinweise

dayWidth type="wide"

DayNames

Ein Container

dayWidth type="abbreviated"

AbbreviatedDayNames

Ein Container

dayWidth type="shorter"

ShortestDayNames

Ein Container

Unter dates/calendars/calendar/days/dayContext/dayWidth sollte sich für jeden Wochentag ein day-Element befinden. Für jedes day-Element besitzt das type-Attribut einen der folgenden Werte: "sun", "mon", "tue", "wed", "thu", "fri" oder "sat". Der CDATA-Typ gibt die relevante Zeichenfolge an. Beispiel:

...
<calendar type="Gregorian">
   <days>
      <dayContext type="format">
          <dayWidth type="wide">
              <day type="sun">Sunday</month>
              <day type="mon">Monday</month>
              <day type="tue">Tuesday</month>
              ...
          </dayWidth>
          ...
      </dayContext>
   </days>
</calendar>

Die Elemente in der folgenden Tabelle fallen unter dates/calendars/calendar/week.

Element

Eigenschaft/Methode

Hinweise

firstDay

FirstDayOfWeek

Das day-Attribut muss einen der folgenden Werte besitzen: "sun", "mon", "tue", "wed", "thu", "fri" oder "sat"

special

Nicht zutreffend

Ein Container, dessen gesamter Inhalt aus dem msLocale-Schema stammt

Die Elemente in der folgenden Tabelle fallen unter dates/calendars/calendar/week/special.

Element

Eigenschaft/Methode

Hinweise

msLocale:weekRule

CalendarWeekRule

Das type-Attribut muss einen der folgenden Werte haben:

  • firstDay

  • firstFourDayWeek

  • firstFullWeek

Das Element in der folgenden Tabelle fällt unter dates/calendars/calendar/dateformats.

Element

Hinweise

special

Ein Container, dessen gesamter Inhalt aus dem msLocale-Schema stammt

Die Elemente in der folgenden Tabelle fallen unter dates/calendars/calendar/dateformats/special. Alle Werte werden durch das type-Attribute angegeben.

Element

Eigenschaft/Methode

Hinweise

msLocale:dateFormatLength type="long"

GetAllDateTimePatterns('D')

Ein Container

msLocale:dateFormatLength type="short"

GetAllDateTimePatterns('d')

Ein Container

msLocale:yearMonth

GetAllDateTimePatterns('Y')

Ein Container für jedes relevante DateTime-Muster; das type-Attribut gibt einen eindeutigen nullbasierten Index an; es sollten keine Lücken vorhanden sein

msLocale:monthDay

MonthDayPattern

Ein Container

Die Elemente in der folgenden Tabelle fallen unter dates/calendars/calendar/dateformats/special/msLocale:dateFormatLength. Alle Werte werden durch das type-Attribute angegeben.

Element

Eigenschaft/Methode

Hinweise

msLocale:default

Nicht zutreffend

Ein Wert, der dem type-Attribut des Standardformats entspricht; in von Microsoft generierten LDML-Dateien lautet der Standardwert immer "0"

msLocale:dateFormat

GetAllDateTimePatterns ('D'), GetAllDateTimePatterns ('d')

Ein Container für jedes relevante DateTime-Formatmuster; das type-Attribut gibt einen eindeutigen nullbasierten Index an; es sollten keine Lücken vorhanden sein

Die folgenden Elemente sind Container für msLocale:pattern-Elemente, deren Werte als CDATA-Typen angegeben werden:

  • dates/calendars/calendar/dateformats/special/msLocale:dateFormatLength /msLocale:dateformat

  • dates/calendars/calendar/dateformats/special/msLocale:yearMonth

  • dates/calendars/calendar/dateformats/special/msLocale:monthDay

Beispiel:

<dateFormats>
    <special xmlns:msLocale="https://schemas.microsoft.com/globalization/2005/carib/ldml">
        <msLocale:dateFormatLength type="long">
            <msLocale:default type="0"/>
            <msLocale:dateFormat type="0">
                <msLocale:pattern>dddd, MMMM dd, yyyy</pattern>
            </msLocale:dateFormat>
                       
            <msLocale:dateFormat type="1">
                <msLocale:pattern>MMMM dd, yyyy</pattern>
            </msLocale:dateFormat>
            ...
        </msLocale:dateFormatLength>
        ...
        <msLocale:yearMonth type="0">
            <msLocale:pattern>MMMM, yyyy</msLocale:pattern>
        </msLocale:yearMonth>

        <msLocale:yearMonth type="1">
            <msLocale:pattern>mm, yy</msLocale:pattern>
        </msLocale:yearMonth>

        <msLocale:monthDay>
            <msLocale:pattern>MMMM dd</msLocale:pattern>
        </msLocale:monthDay>
    </special>
</dateFormats>

Das Element in der folgenden Tabelle fällt unter dates/calendars/calendar/timeformats.

Element

Hinweise

special

Ein Container, dessen gesamter Inhalt aus dem msLocale-Schema stammt

Die Elemente in der folgenden Tabelle fallen unter dates/calendars/calendar/timeformats/special. Alle Werte werden durch das type-Attribute angegeben.

Element

Eigenschaft/Methode

Hinweise

msLocale:durationFormats

Nicht zutreffend

Nur Windows; ein Container

msLocale:timeFormatLength type="long"

GetAllDateTimePatterns('T')

Ein Container

msLocale:timeFormatLength type="short"

GetAllDateTimePatterns('t')

Ein Container

Die Elemente in der folgenden Tabelle fallen unter dates/calendars/calendar/dateformats/special/msLocale:durationFormats. Alle Werte werden durch das type-Attribute angegeben.

Element

Eigenschaft/Methode

Hinweise

msLocale:default

Nicht zutreffend

Nur Windows; ein Wert, der dem type-Attribut des Standardformats entspricht; in von Microsoft generierten Dateien lautet der Standardwert immer "0"

msLocale:durationFormat

Nicht zutreffend

Nur Windows. Ein Container für jeden relevanten DateTime-Wert; das type-Attribut gibt einen eindeutigen nullbasierten Index an; es sollten keine Lücken vorhanden sein

Die Elemente in der folgenden Tabelle fallen unter dates/calendars/calendar/dateformats/special/msLocale:timeFormatLength. Alle Werte werden durch das type-Attribute angegeben.

Element

Eigenschaft/Methode

Hinweise

msLocale:default

Nicht zutreffend

Ein Wert, der dem type-Attribut des Standardformats entspricht; in von Microsoft generierten Dateien lautet der Standardwert immer "0"

msLocale:timeFormat

GetAllDateTimePatterns ('T'), GetAllDateTimePatterns ('t')

Ein Container für jeden relevanten DateTime-Wert; das type-Attribut gibt einen eindeutigen nullbasierten Index an; es sollten keine Lücken vorhanden sein

Die folgenden Elemente sind Container für msLocale:pattern-Elemente, deren Werte als CDATA-Typen angegeben werden:

  • dates/calendars/calendar/dateformats/special/msLocale:durationFormats/msLocale:durationFormat

  • dates/calendars/calendar/dateformats/special/msLocale:timeFormatLength/msLocale:timeformat

Beispiel:

<timeFormats>
    <special xmlns:msLocale="https://schemas.microsoft.com/globalization/2005/carib/ldml">
        <msLocale:durationFormats>
            <msLocale:default type="0" />
            <msLocale:durationFormat type="0">
                <msLocale:pattern>HH:mm:ss</msLocale:pattern>
            </msLocale:durationFormat>
        </msLocale:durationFormats>

        <msLocale:timeFormatLength type="long">
            <msLocale:default type="0"/>
            <msLocale:timeFormat type="0">
                <msLocale:pattern>h:mm:ss tt</msLocale:pattern>
            </msLocale:timeFormat>
            <msLocale:timeFormat type="1">
                <msLocale:pattern>h:mm:ss a</msLocale:pattern>
            </timeFormat>
            ...
        </timeFormatLength>
        ...
    </special>
</timeFormats>

Die Elemente in der folgenden Tabelle fallen unter "dates/calendars/calendar/eras".

Element

Eigenschaft/Methode

Hinweise

eraAbbr

GetEraName

Ein Container

eraNames

GetAbbreviatedEraName

Ein Container

Sowohl unter "dates/calendars/calendar/eras/eraAbbr" als auch unter "dates/calendars/calendar/eras/eraNames" sollte für jeden Zeitraum ein "era"-Element vorhanden sein. Für jedes "era"-Element entspricht "type" der Nummer des Zeitraums. Der CDATA-Typ gibt die relevante Zeichenfolge an. Beispiel:

<eras>
   <eraAbbr>
      <era type="0">BC</era>
      <era type="1">AD</era>
   </eraAbbr>
   <eraNames>
      <era type="0">Before Christ</era>
      <era type="1">Anno Domini</era>
   </eraNames>
</eras>

numbers-Elemente

In der folgenden Tabelle werden die Elemente definiert, die unter numbers fallen.

Element

Hinweise

symbols

Ein Container

currencies

Ein Container

special

Ein Container, dessen gesamter Inhalt aus dem msLocale-Schema stammt

Elemente unter numbers/symbols

Die Elemente in der folgenden Tabelle fallen unter numbers/symbols. Falls nicht anders vermerkt, werden die Daten dieser Elemente als CDATA-Typ angegeben.

Element

Eigenschaft/Methode

Hinweise

decimal

NumberDecimalSeparator

Beispiel: "."

group

NumberGroupSeparator

Beispiel: ","

list

TextInfo.ListSeparator

Beispiel: ";"

percentSign

PercentSymbol

Beispiel: "%"

infinity type="positive"

PositiveInfinitySymbol,

Beispiel: "Infinity"

infinity type="negative"

NegativeInfinitySymbol

Beispiel: "-Infinity"

nan

NaNSymbol

"Not a Number"-Symbol (Keine Zahl). Beispiel: "NaN".

special

Nicht zutreffend

Ein Container, dessen gesamter Inhalt aus dem msLocale-Schema stammt

Die Elemente in der folgenden Tabelle fallen unter numbers/symbols/special. Falls nicht anders vermerkt, werden die Daten dieser Elemente als CDATA-Typ angegeben.

Element

Eigenschaft/Methode

Hinweise

msLocale:currencyDecimalSeparator

CurrencyDecimalSeparator

Beispiel: "."

msLocale:currencyGroupSeparator

CurrencyGroupSeparator

Beispiel: ","

msLocale:leadingZero

Nicht zutreffend

Nur Windows; kein CDATA-Typ; das type-Attribut muss entweder "yes" oder "no" lauten, damit führende Nullen zugelassen bzw. nicht zugelassen werden

Beispiel:

<symbols>
    <decimal>.</decimal>
    <group>,</group>
    ...
    <infinity type="positive">Infinity</infinity>
    <infinity type="negative">-Infinity</infinity>
    ...
    <special xmlns:msLocale="https://schemas.microsoft.com/globalization/2005/carib/ldml">
        <msLocale:currencyDecimalSeparator>
            .
        </msLocale:currencyDecimalSeparator>
        <msLocale:currencyGroupSeparator>
            ,
        </msLocale:currencyGroupSeparator>
        <msLocale:leadingZero type="yes" />
    </special>
</symbols>

Elemente unter numbers/currencies

Das Element in der folgenden Tabelle fällt unter numbers/currencies.

Element

Hinweise

currency

Ein Container; das type-Attribut muss als "default" angegeben werden

Die Elemente in der folgenden Tabelle fallen unter numbers/currencies/currency. Falls nicht anders vermerkt, werden die Daten dieser Elemente als CDATA-Typ angegeben.

Element

Eigenschaft/Methode

Hinweise

symbol

ISOCurrencySymbol

Beispiel: "$"

displayName

CurrencyNativeName

Beispiel: "Dollar"

special

Nicht zutreffend

Ein Container, dessen gesamter Inhalt aus dem msLocale-Schema stammt

Die Elemente in der folgenden Tabelle fallen unter numbers/currencies/currency/special. Falls nicht anders vermerkt, werden die Daten dieser Elemente als CDATA-Typ angegeben.

Element

Eigenschaft/Methode

Hinweise

msLocale:isoCurrency

ISOCurrencySymbol

Beispiel: "USD"

msLocale:currencyEnglishName

CurrencyEnglishName

Beispiel: "Dollar"

Beispiel:

<currencies>
    <currency type="default">
        <symbol>$</symbol>
        <displayName>Dollar</displayName>
        <special xmlns:msLocale="https://schemas.microsoft.com/globalization/2005/carib/ldml">
                <msLocale:isoCurrency>USD</msLocale:isoCurrency>
                <msLocale:currencyEnglishName>
                    Dollar
                </msLocale:currencyEnglishName>
    </special>
</currency>

Die Elemente in der folgenden Tabelle fallen unter numbers/currencies/special. Falls nicht anders vermerkt, werden alle Werte werden durch das type-Attribut angegeben.

Element

Eigenschaft/Methode

Hinweise

msLocale:decimalDigits

NumberDecimalDigits

Die als CDATA angegebene Anzahl der in numerischen Werten zu verwendenden Dezimalstellen; Beispiel: "2"

msLocale:negativePattern

NumberNegativePattern

Das Formatmuster für negative numerische Werte

msLocale:currencyDecimalDigits

CurrencyDecimalDigits

Die Anzahl der in Währungsangaben zu verwendenden Dezimalstellen; im Gegensatz zu msLocale:decimalDigits wird dieses Element im type-Attribut angegeben. Beispiel: "2"

msLocale:currencyPositivePattern

CurrencyPositivePattern

Das Formatmuster für positive Währungsangaben

msLocale:currencyNagativePattern

CurrencyNegativePattern

Das Formatmuster für negative Währungsangaben

msLocale:percentPositivePattern

PercentPositivePattern

Das Formatmuster für positive Prozentangaben

msLocale:percentNagativePattern

PercentNegativePattern

Das Formatmuster für negative Prozentangaben

msLocale:groupSizes

NumberGroupSizes

Die Anzahl von Ziffern in jeder Gruppe links vom Dezimaltrennzeichen in numerischen Werten; die tatsächliche Gruppierungsgröße wird als CDATA-Typ angegeben; das type-Attribut dient zur Serialisierung dieses Elements; es kann eine beliebige Anzahl dieser Elemente vorhanden sein, von denen jedes über ein eindeutiges type-Attribut verfügt und beginnend mit "0" serialisiert wird; der Wert beginnt bei der am wenigsten signifikanten Gruppe von Ziffern

msLocale:nativeDigits

NativeDigits

Systemeigene Ziffern, die den europäischen Ziffern 0 bis 9 entsprechen (eine für jede Ziffer); das type-Attribut ist eine Ziffer von "0" bis"9"; CDATA gibt das zur Darstellung dieser Ziffer verwendete Zeichen an

msLocale:digitSubstitution

DigitSubstitution

Ein Wert, der angibt, wie die Ziffernform auf der grafischen Benutzeroberfläche angezeigt wird; gültige Einstellungen für das type-Attribut sind:

  • "context" (Standard)

  • "none" (immer "0"-"9" verwenden)

  • "nativeNational" (immer ersetzen)

Beispiele:

<numbers>
    ...
    <special xmlns:msLocale="https://schemas.microsoft.com/globalization/2005/carib/ldml">
        <msLocale:decimalDigits>2</msLocale:decimalDigits>     
        <msLocale:negativePattern type="1"/>
        <msLocale:currencyDecimalDigits type="2"/>
        <msLocale:currencyPositivePattern type="0"/>
        <msLocale:currencyNegativePattern type="0"/>
        <msLocale:percentNegativePattern type="0"/>
        <msLocale:percentPositivePattern type="0"/>
        <msLocale:groupSizes type="0">3</msLocale:groupSizes>
        <msLocale:currencyGroupSizes type="0">
            3
        </msLocale:currencyGroupSizes>
        <msLocale:nativeDigits type="0">0</msLocale:nativeDigits>
        <msLocale:nativeDigits type="1">1</msLocale:nativeDigits>
        ...
        <msLocale:nativeDigits type="9">9</msLocale:nativeDigits>
        <msLocale:digitSubstitution type="context"/>
    </special>
</numbers>

Siehe auch

Referenz

CultureAndRegionInfoBuilder