XMLNode: Bereichsbezogen, global
Die XMLNode- API bietet Methoden zum Abfragen von Werten aus XML-Knoten. XMLNodes werden aus XMLDocument2-Objekten extrahiert, die XML-Zeichenfolgen enthalten.
Es gibt keine Konstruktoren zum Erstellen einer eigenständigen Instanz eines XMLNode-Objekts. Verwenden Sie stattdessen die Methode createElement() von XMLDocument2, die einem vorhandenen Dokument einen Knoten hinzufügt.
Scoped XMLNode – getAttribute(String attribute)
Ruft den Wert des Attributs ab.
| Name | Typ | Beschreibung |
|---|---|---|
| Attribut | Zeichenfolge | Name des Attributs. |
| Typ | Beschreibung |
|---|---|
| Zeichenfolge | Wert des Attributs. |
var xmlString = "<test>" +
" <one>" +
" <two att=\"xxx\">abcd1234</two>" +
" <three boo=\"yah\" att=\"yyy\">1234abcd</three>" +
" <two>another</two>" +
" </one>" +
" <number>1234</number>" +
"</test>";
var xmlDoc = new XMLDocument2();
xmlDoc.parseXML(xmlString);
var node = xmlDoc.getNode('//two');
gs.info(node.getAttribute('att'));
Ausgabe:
xxx
Scoped XMLNode – getAttributes()
Gibt ein Objekt zurück, das die Attribute des Knotens als Eigenschaften mit Werten enthält.
| Name | Typ | Beschreibung |
|---|---|---|
| Keine |
| Typ | Beschreibung |
|---|---|
| Objekt | Enthält Name-Wert-Paare, wobei der Name das Attribut und der Wert der Attributwert ist. |
Scoped XMLNode – getChildNodeIterator()
Ruft ein XMLNodeIterator-Objekt ab, mit dem die Liste der untergeordneten Knoten durchlaufen werden kann.
| Name | Typ | Beschreibung |
|---|---|---|
| Keine |
| Typ | Beschreibung |
|---|---|
| XMLNodeIterator | Knoten-Iterator-Objekt. |
var xmlString = "<test>" +
" <one>" +
" <two att=\"xxx\">abcd1234</two>" +
" <three boo=\"yah\" att=\"yyy\">1234abcd</three>" +
" <two>another</two>" +
" </one>" +
" <number>1234</number>" +
"</test>";
var xmlDoc = new XMLDocument2();
xmlDoc.parseXML(xmlString);
var node = xmlDoc.getNode('//one');
var iter= node.getChildNodeIterator();
gs.info(iter.hasNext());
Scoped XMLNode – getFirstChild()
Ruft den ersten untergeordneten Knoten des Knotens ab.
| Name | Typ | Beschreibung |
|---|---|---|
| Keine |
| Typ | Beschreibung |
|---|---|
| XMLNode | Erster untergeordneter Knoten des Knotens. |
var xmlString = "<test>" +
"<one>" +
"<two att=\"xxx\">abcd1234</two>" +
"<three boo=\"yah\" att=\"yyy\">1234abcd</three>" +
"<two>another</two>" +
"</one>" +
"<number>1234</number>" +
"</test>";
var xmlDoc = new XMLDocument2();
xmlDoc.parseXML(xmlString);
var node = xmlDoc.getNode('//one');
gs.info(node.getFirstChild());
<two att="xxx">abcd1234</two>Scoped XMLNode – getLastChild()
Ruft den letzten untergeordneten Knoten des Knotens ab.
| Name | Typ | Beschreibung |
|---|---|---|
| Keine |
| Typ | Beschreibung |
|---|---|
| XMLNode | Letztes untergeordnetes Element des Knotens. |
var xmlString = "<test>" +
"<one>" +
"<two att=\"xxx\">abcd1234</two>" +
"<three boo=\"yah\" att=\"yyy\">1234abcd</three>" +
"<two>another</two>" +
"</one>" +
"<number>1234</number>" +
"</test>";
var xmlDoc = new XMLDocument2();
xmlDoc.parseXML(xmlString);
var node = xmlDoc.getNode('//one');
gs.info(node.getLastChild());
<two>another</two>Scoped XMLNode – getNodeName()
Ruft den Namen des Knotens ab. Der Name eines Knotens wird vom Knotentyp bestimmt. Der Name eines Dokumentelementknotens lautet #document. Der Name eines Textknotens lautet #text. Der Name eines Elementknotens ist der Name des Elements.
| Name | Typ | Beschreibung |
|---|---|---|
| Keine |
| Typ | Beschreibung |
|---|---|
| Zeichenfolge | Name des Knotens. |
var xmlString = "<test>" +
" <one>" +
" <two att=\"xxx\">abcd1234</two>" +
" <three boo=\"yah\" att=\"yyy\">1234abcd</three>" +
" <two>another</two>" +
" </one>" +
" <number>1234</number>" +
"</test>";
var xmlDoc = new XMLDocument2();
xmlDoc.parseXML(xmlString);
var node = xmlDoc.getNode('//two');
gs.info(node.getNodeName());
Ausgabe:
two
Scoped XMLNode – getNodeValue()
Ruft den Wert des Knotens ab. Der Wert eines Knotens wird vom Knotentyp bestimmt. Element- und Dokumentelementknoten geben NULL zurück.
| Name | Typ | Beschreibung |
|---|---|---|
| Keine |
| Typ | Beschreibung |
|---|---|
| Zeichenfolge | Wert des Knotens. |
var xmlString = "<test>" +
" <one>" +
" <two att=\"xxx\">abcd1234</two>" +
" <three boo=\"yah\" att=\"yyy\">1234abcd</three>" +
" <two>another</two>" +
" </one>" +
" <number>1234</number>" +
"</test>";
var xmlDoc = new XMLDocument2();
xmlDoc.parseXML(xmlString);
var node = xmlDoc.getNode('//two');
gs.info(node.getNodeValue());
Ausgabe:
null
Scoped XMLNode – getTextContent()
Ruft den Textinhalt des aktuellen Knotens ab. Der Textinhalt eines Knotens besteht aus allen untergeordneten Textknoten des Knotens.
| Name | Typ | Beschreibung |
|---|---|---|
| Keine |
| Typ | Beschreibung |
|---|---|
| Zeichenfolge | Textinhalt des aktuellen Knotens. |
var xmlString = "<test>" +
" <one>" +
" <two att=\"xxx\">abcd1234</two>" +
" <three boo=\"yah\" att=\"yyy\">1234abcd</three>" +
" <two>another</two>" +
" </one>" +
" <number>1234</number>" +
"</test>";
var xmldoc = new XMLDocument2();
xmldoc.parseXML(xmlString);
var node = xmldoc.getNode('//one/two');
gs.info(node.getTextContent());
Ausgabe:
abcd1234
Scoped XMLNode – hasAttribute(String attribute)
Bestimmt, ob der Knoten das angegebene Attribut hat.
| Name | Typ | Beschreibung |
|---|---|---|
| Attribut | Zeichenfolge | Name des zu überprüfenden Attributs. |
| Typ | Beschreibung |
|---|---|
| Boolean | „True“, wenn der Knoten das Attribut hat. |
var xmlString = "<test>" +
" <one>" +
" <two att=\"xxx\">abcd1234</two>" +
" <three boo=\"yah\" att=\"yyy\">1234abcd</three>" +
" <two>another</two>" +
" </one>" +
" <number>1234</number>" +
"</test>";
var xmlDoc = new XMLDocument2();
xmlDoc.parseXML(xmlString);
var node = xmlDoc.getNode('//two');
gs.info(node.hasAttribute('att'));
Ausgabe:
true
Bereichsbezogener XMLNode – isCDATANode()
Gibt an, ob der CDATA-Knoten als separater Knoten beibehalten wird.
Verwenden Sie die Methode Bereichsbezogenes XML-Dokument2 – setEnableCDATAReporting(Boolean enable), um sicherzustellen, dass CDATA-Knoten erhalten bleiben und nicht als Text behandelt werden.
| Name | Typ | Beschreibung |
|---|---|---|
| Keine |
| Typ | Beschreibung |
|---|---|
| Boolean | Kennzeichnung, die angibt, ob es sich bei einem abgefragten Knoten um CDATA oder Nur-Text handelt. Gültige Werte:
|
Das folgende Beispiel zeigt, wie eine XML-Zeichenfolge bei aktivierter CDATA-Berichterstellung mit Bereichsbezogenes XML-Dokument2 – setEnableCDATAReporting(Boolean enable)analysiert wird. Der Code verwendet isCDATANode(), um anzuzeigen, dass der erste in der XML-Zeichenfolge abgefragte Knoten ein CDATA-Knoten ist.
var xmlString = "<test>" +
" <one>" +
" <two att=\"xxx\">abcd1234</two>" +
" <three boo=\"yah\" att=\"yyy\">1234abcd</three>"+
" <four><![CDATA[another]]>element</four>" +
" </one>" +
" <number>1234</number>" +
"</test>";
var xmlDoc = new XMLDocument2();
xmlDoc.setEnableCDATAReporting(true); // Enables CDATA reporting
xmlDoc.parseXML(xmlString);
var content = xmlDoc.getFirstNode('/test/one/four');
gs.info(content.getFirstChild().isCDATANode());
Ausgabe:
true
Scoped XMLNode – toString()
Gibt den Zeichenfolgenwert des aktuellen Knotens zurück.
| Name | Typ | Beschreibung |
|---|---|---|
| Keine |
| Typ | Beschreibung |
|---|---|
| Zeichenfolge | Zeichenfolgewert des aktuellen Knotens. |
var xmlString = "<test>" +
" <one>" +
" <two att=\"xxx\">abcd1234</two>" +
" <three boo=\"yah\" att=\"yyy\">1234abcd</three>" +
" <two>another</two>" +
" </one>" +
" <number>1234</number>" +
"</test>";
var xmlDoc = new XMLDocument2();
xmlDoc.parseXML(xmlString);
var node = xmlDoc.getNode('//one');
gs.info(node.toString());
<one>
<two att="xxx">abcd1234</two>
<three att="yyy" boo="yah">1234abcd</three>
<two>another</two>
</one>