Primitive XML-Datentypen

In der folgenden Tabelle sind die primitiven XML-Schemadatentypen, die auf den Datentyp anwendbaren Facets und eine Beschreibung des Datentyps aufgelistet. Eine Beschreibung der Facets finden Sie unter Datentypfacets.

Facets können nur einmal in einer Typdefinition auftreten. Ausnahmen stellen das enumeration-Facet und das pattern-Facet dar. Das Enumeration-Facet und das pattern-Facet können über mehrere Einträge verfügen und werden gruppiert.

Datentyp Facets Beschreibung

string

length, pattern, maxLength, minLength, enumeration, whiteSpace

Stellt Zeichenfolgen dar.

boolean

pattern, whiteSpace

Stellt boolesche Werte dar. Diese sind entweder true oder false.

decimal

enumeration, pattern, totalDigits, fractionDigits, minInclusive, maxInclusive, maxExclusive, whiteSpace

Stellt Zahlen beliebiger Genauigkeit dar.

float

pattern, enumeration, minInclusive, minExclusive, maxInclusive, maxExclusive, whiteSpace

Stellt 32-Bit-Gleitkommazahlen mit einfacher Genauigkeit dar.

double

pattern, enumeration, minInclusive, minExclusive, maxInclusive, maxExclusive, whiteSpace

Stellt 64-Bit-Gleitkommazahlen mit doppelter Genauigkeit dar.

duration

enumeration, pattern, minInclusive, minExclusive, maxInclusive, maxExclusive, whiteSpace

Stellt eine Zeitdauer dar.

Das Muster für duration ist PnYnMnDTnHnMnS, wobei nY die Anzahl der Jahre, nM die Anzahl der Monate, nD die Anzahl der Tage, T das Trennzeichen für Datum/Uhrzeit, nH die Anzahl der Stunden, nM die Anzahl der Minuten und nS die Anzahl der Sekunden darstellt.

dateTime

enumeration, pattern, minInclusive, minExclusive, maxInclusive, maxExclusive, whiteSpace

Stellt eine bestimmte Zeitinstanz dar.

Das Muster für dateTime ist CCYY-MM-DDThh:mm:ss, wobei CC das Jahrhundert, YY das Jahr, MM den Monat und DD den Tag darstellt und optional ein führendes Minuszeichen (-) aufweist, um eine negative Zahl anzugeben. Wird das Negativvorzeichen ausgelassen, wird ein Positivvorzeichen (+) angenommen. T stellt das Trennzeichen für Datum/Uhrzeit dar. hh, mm und ss stehen für Stunde, Minute und Sekunde. Zusätzliche Ziffern können ggf. zur Erhöhung der Genauigkeit durch Angabe von Sekundenbruchteilen verwendet werden. Beispielweise wird das Format ss.ss... mit einer beliebigen Anzahl von Ziffern nach dem Dezimaltrennzeichen unterstützt. Die Angabe von Sekundenbruchteilen ist optional.

Auf diese Darstellung kann unmittelbar ein "Z" folgen, um die koordinierte Weltzeit (Coordinated Universal Time, UTC) oder die Zeitzone anzugeben. Beispielsweise wird die Differenz zwischen lokaler Zeit und koordinierter Weltzeit, auf die direkt ein Plus- (+) oder Minuszeichen (-) folgt, worauf die Differenz zur koordinierten Weltzeit folgt, als hh:mm dargestellt. Die Angabe der Minuten ist erforderlich. Wenn die Zeitzone eingeschlossen wird, müssen Stunden und Minuten angegeben werden.

time

enumeration, pattern, minInclusive, minExclusive, maxInclusive, maxExclusive, whiteSpace

Stellt eine Zeitinstanz dar, die sich jeden Tag wiederholt.

Das Muster für time ist hh:mm:ss.sss mit optionaler Zeitzonenangabe.

date

enumeration, pattern, minInclusive, minExclusive, maxInclusive, maxExclusive, whiteSpace

Stellt ein Kalenderdatum dar.

Das Muster für date ist CCYY-MM-DD mit optionaler Zeitzonenangabe (wie für dateTime zulässig).

gYearMonth

enumeration, pattern, minInclusive, minExclusive, maxInclusive, maxExclusive, whiteSpace

Stellt (nach dem gregorianischen Kalender) einen bestimmten Monat in einem bestimmten Jahr dar. Ein Satz nicht periodischer Instanzen, die einen Monat dauern.

Das Muster für gYearMonth ist CCYY-MM mit optionaler Zeitzonenangabe.

gYear

enumeration, pattern, minInclusive, minExclusive, maxInclusive, maxExclusive, whiteSpace

Stellt (nach dem gregorianischen Kalender) ein Jahr dar. Ein Satz nicht periodischer Instanzen, die ein Jahr dauern.

Das Muster für gYear ist CCYY mit optionaler Zeitzonenangabe (wie für dateTime zulässig).

gMonthDay

enumeration, pattern, minInclusive, minExclusive, maxInclusive, maxExclusive, whiteSpace

Stellt ein bestimmtes Datum (nach dem gregorianischen Kalender) dar, das sich wiederholt, insbesondere einen bestimmten Tag des Jahrs (z. B. den 3. Mai). gMonthDay ist ein Satz von Kalenderdaten. Es handelt sich hierbei um einen Satz eintägiger, sich jährlich wiederholender Instanzen.

Das Muster für gMonthDay ist --MM-DD mit optionaler Zeitzonenangabe (wie für date zulässig).

gDay

enumeration, pattern, minInclusive, minExclusive, maxInclusive, maxExclusive, whiteSpace

Stellt einen bestimmten Tag (nach dem gregorianischen Kalender) dar, der sich wiederholt, insbesondere einen bestimmten Tag des Monats (z. B. den fünften Tag des Monats). gDay ist der Bereich eines Satzes von Kalenderdaten. Es handelt sich hierbei um einen Satz eintägiger, sich monatlich wiederholender Instanzen.

Das Muster für gDay ist ---DD mit optionaler Zeitzonenangabe (wie für date zulässig).

gMonth

enumeration, pattern, minInclusive, minExclusive, maxInclusive, maxExclusive, whiteSpace

Stellt einen bestimmten Monat (nach dem gregorianischen Kalender) dar, der sich jedes Jahr wiederholt. gMonth ist der Bereich eines Satzes von Kalendermonaten. Es handelt sich hierbei um einen Satz von Instanzen, die einen Monat dauern und sich jährlich wiederholen.

Das Muster für gMonth ist --MM-- mit optionaler Zeitzonenangabe (wie für date zulässig).

hexBinary

length, pattern, maxLength, minLength, enumeration, whiteSpace

Stellt beliebige hexadezimal codierte Binärdaten dar. hexBinary ist ein Satz von Sequenzen aus binären Oktetts mit begrenzter Länge. Jedes binäre Oktett ist als Zeichentupel codiert, das aus zwei hexadezimalen Zeichen ([0–9;a–f;A–F]) besteht, die den Oktettcode darstellen.

base64Binary

length, pattern, maxLength, minLength, enumeration, whiteSpace

Stellt beliebige Base64-codierte Binärdaten dar. base64Binary ist ein Satz von Sequenzen aus binären Oktetts mit begrenzter Länge.

anyURI

length, pattern, maxLength, minLength, enumeration, whiteSpace

Stellt einen wie in RFC 2396 definierten URI dar. Ein anyURI-Wert kann absolut oder relativ sein und einen optionalen Fragmentbezeichner aufweisen.

QName

length, enumeration, pattern, maxLength, minLength, whiteSpace

Stellt einen qualifizierten Namen dar. Ein qualifizierter Name setzt sich aus einem Präfix und einem lokalen Teil zusammen, die durch einen Doppelpunkt getrennt werden. Sowohl das Präfix als auch der lokale Name müssen ein NCName sein. Das Präfix muss mithilfe einer Namespacedeklaration einem Namespace-URI-Verweis zugeordnet sein.

NOTATION

length, enumeration, pattern, maxLength, minLength, whiteSpace

Stellt einen NOTATION-Attributtyp dar. Ein Satz von QNames.

Siehe auch

Verweis

Referenz zu XML-Datentypen
Abgeleitete XML-Datentypen

Konzepte

Datentypfacets