Leere Elemente und Nullwerte kommen häufig in XML-Dokumenten vor.
In einem stabilen Nachrichtenfluss müssen leere Elemente und Nullwerte erkannt und entsprechend behandelt werden. Entsprechend können Elemente in einer Nachrichtenbaumstruktur den Wert NULL, einen leeren Wert oder überhaupt keinen Wert haben. In diesem Abschnitt wird beschrieben, wie diese Werte von der XMLNS-Domäne syntaktisch analysiert und geschrieben werden. Hinweise zu einer guten ESQL- bzw. Java™-Codierung finden Sie im Abschnitt Nullwerte handhaben.
Beschreibung | XML-Eingabe, die von XMLNS syntaktisch analysiert wird | Wert 'element' in der Nachrichtenbaumstruktur |
---|---|---|
Leerer Elementwert | <element/> | Leere Zeichenfolge |
Leerer Elementwert | <element></element> | Leere Zeichenfolge |
Ordner mit untergeordneten Elementen | <element><childElement/></element> | Kein Wert |
Wert des Elements 'nil' | <element xsi:nil="true"/> | Leere Zeichenfolge |
Hinweis: Beide Formate eines leeren Elements ergeben den gleichen Wert in der Nachrichtenbaumstruktur.
Hinweis: Der Wert NULL wird vom XMLNS-Parser nie in die Nachrichtenbaumstruktur eingefügt.
Beschreibung | Wert 'element' in der Nachrichtenbaumstruktur | XML-Ausgabe vom XMLNS-Parser |
---|---|---|
Leerer Elementwert | Leere Zeichenfolge | <element/> |
Elementwert 'null' | NULL | <element/> |
Ordner mit untergeordneten Elementen | Kein Wert | <element><childElement/></element> |
- <element/>
- <element></element>
Beide Formate werden vom XMLNS-Parser gleich behandelt. Das Element wird zur Nachrichtenbaumstruktur mit dem Wert “” hinzugefügt (die leere Zeichenfolge).
Wenn eine Nachrichtenbaumstruktur vom XMLNS-Parser erzeugt wird, verwendet dieser stets das erste Format für Elemente mit dem Wert “” (die leere Zeichenfolge).
Der XMLNS-Parser behandelt das xsi:nil-Attribut wie jedes andere Attribut. Wenn 'xsi:nil' bei der Syntaxanalyse vorkommt, wird der Wert des übergeordneten Elements nicht auf NULL gesetzt. Wenn dieses Verhalten erforderlich ist, müssen Sie den XMLNSC-Parser verwenden. Wenn beim Schreiben einer Nachrichtenbaumstruktur ein xsi:nil-Attribut vorkommt, wird es wie jedes andere Attribut erzeugt.