Das physische XML-Format unterstützt die Handhabung von Nullwerten in Nachrichten. Die Eigenschaften der Nullwertcodierung für XML werden nur in der Nachrichtengruppe festgelegt und gelten für alle definierten Objekte in der Nachrichtengruppe.
Mit Hilfe der beiden folgenden Eigenschaften können Sie die numerische und nicht numerische Codierung für
NULL-Werte im XML Wire Format darstellen:
- Nullwertcodierung für numerische Elemente
- Nullwertcodierung für nicht-numerische Elemente
Stellen die numerische bzw. nicht numerische Codierung für NULL-Werte dar.
- Numerische Datentypen:
- Schematypen für Dezimalzahlen: decimal, integer, negativeInteger,
nonNegativeInteger, nonPositiveInteger, positiveInteger
- Schematypen für Gleitkommazahlen
- Schematypen für ganze Zahlen:
byte, int, long, short, unsignedByte, unsignedInt, unsignedLong, unsignedShort
- Nicht numerische Datentypen:
- Schematypen für binäre Werte: base64Binary, hexBinary
- Schematypen für boolesche Werte: Boolean
- Schematypen für Datum/Uhrzeit: date, dateTime, gDay, gMonth, gMonthDay, gYear, gYearMonth,
time
- Schematypen für Zeichenfolgen: anyURI, duration, ENTITIES, ENTITY, ID, IDREF, IDREFS, language, Name, NCName, NMTOKEN, NMTOKENS, normalizedString,
NOTATION, QName, string, token
Für jede dieser Codierungen gibt es die folgenden zulässigen Werte:
- NULLEmpty (Standardwert)
- NULLValue
- NULLXMLSchema
- NULLValueAttribute
- NULLAttribute (veraltet)
- NULLElement (veraltet)
Sie müssen keine zusätzlichen Informationen für
NULLEmpty, NULLXMLSchema und NULLValueAttribute angeben; wenn Sie jedoch NULLValue, NULLAttribute oder NULLElement auswählen, müssen Sie weitere Werte definieren, die der Darstellung der NULL-Bedingung in den Nachrichtengruppeneigenschaften Parameterwert der Nullwertcodierung für numerische Elemente und Parameterwert der Nullwertcodierung für nicht-numerische Elemente zugeordnet werden sollen.
In der folgenden Tabelle wird die Funktionsweise jeder Codierung gezeigt. Durch die Beispiel-XML wird in jeder Codierung dem Element myElem ein NULL-Wert zugeteilt:
Hinweise: - Es wird der Wert von Boolescher Wert 'True'
verwendet.
- Dies gilt nur für Elementwiedergabe
XMLElementAttrVal, wie in
XML-Wiedergabeoptionen angegeben. Das Markieren eines
Elements für diese Art der Wiedergabe und das Setzen des Elements auf Null ist gleichbedeutend mit
dem Entfernen des Attributs des Elements, das den genauen Wert des Elements angibt.
- Dies gilt nur für Elementwiedergabe
XMLElementAttrIdVal, wie in
XML-Wiedergabeoptionen angegeben. Das Markieren eines
Elements für diese Art der Wiedergabe und das Setzen des Elements auf Null ist gleichbedeutend mit
dem Entfernen des Attributs des Elements, das den genauen Wert des Elements angibt, jedoch unter
Beibehaltung der Attribut-ID.
Nullwertcodierung für numerische ElementeNullwertcodierung für nicht-numerische Elemente
|
Parameterwert der Nullwertcodierung für numerische ElementeParameterwert der Nullwertcodierung für nicht-numerische Elemente
|
Beispiel-XML |
NULLEmpty |
|
<myElem/>
<myElem></myElem>
|
NULLValue |
zzz |
<myElem>zzz</myElem> |
NULLXMLSchema |
|
<myElem xsi:nil='true'/>1 |
NULLValueAttribute |
|
<myElem></myElem>2
<parent id="myElem"></parent>3
|
NULLElement |
null4 |
<myElem><null/></myElem> |
NULLAttribute |
null4 |
<myElem null='true'/>1 |
Hinweise: - Diese Attribute ergeben den Wert 'true', deshalb muss es sich bei dem Wert um "true", "1" oder um die Eigenschaft
Boolescher Wert 'True' handeln.
- Dies gilt nur für Elementwiedergabe
XMLElementAttrVal, wie in
XML-Wiedergabeoptionen angegeben. Wenn ein Element auf diese Weise als wiedergegebenes Element markiert und auf null gesetzt wird, entspricht dies dem Entfernen des Attributs aus dem Element, das den Wert des Elements bereitstellt.
- Dies gilt nur für Elementwiedergabe
XMLElementAttrIdVal, wie in
XML-Wiedergabeoptionen angegeben. Wenn ein Element auf diese Weise als wiedergegebenes Element markiert und auf null gesetzt wird, entspricht dies dem Entfernen des Attributs aus dem Element, das den Namen des Elements bereitstellt.
- NULLElement und NULLAttribute sind veraltet. Der bereitgestellte Name des Elements oder Attributs sollte keine Namespace-URI und kein Präfix enthalten.
Wenn für die Nachrichtengruppe Namespaces aktiviert sind, entspricht der Name jedem Namespace.
Sie müssen keine zusätzliche Klarstellung für
NULLEmpty und
NULLValAttr angeben, aber wenn Sie
NULLValue,
NULLAttribute oder
NULLElement auswählen, müssen Sie weitere Werte
definieren, die der Darstellung der NULL-Bedingung in den Nachrichtengruppeneigenschaften
Parameterwert der Nullwertcodierung für numerische
Elemnente und Parameterwert der Nullwertcodierung
für nicht-numerische Elemente zugeordnet werden sollen (siehe Tabelle oben).