@XMLGetAttributes
Syntax
@XMLGetAttributes(XMLN;AttributeNames);
@XMLGetAttributes(XMLN;AttributeNames;AttributeValues);
@XMLGetAttributes(XMLN;AttributeNames;AttributeValues;AttributeNamespaces);
@XMLGetAttributes(XMLN;AttributeNames;AttributeValues;AttributeNamespaces;AttributePrefixes);
Beschreibung
Diese @Function ermittelt die Attribute eines XML-Knotens.
Die Attributnamen werden als Textliste zurückgegeben. Optional können zusätzlich die zugehörigen Attributwerte, Namespace-URIs und Namespace-Präfixe in weiteren Textlisten zurückgegeben werden.
Alle zurückgegebenen Texte werden entsprechend den für das XML-Handle gesetzten Output-Flags in den gewünschten Zeichensatz konvertiert.
VSPECHXMLNODE XMLN:
Handle des XML-Knotens, dessen Attribute ermittelt werden sollen.
XMLN muss ein gültiges VSPECHXMLNODE (XMLN) Handle enthalten, das auf einen XML-Knoten verweist.
TEXTLIST AttributeNames:
Variable, in der die Namen aller Attribute des XML-Knotens als Textliste zurückgegeben werden.
TEXTLIST AttributeValues (Optional):
Variable, in der die Werte der Attribute als Textliste zurückgegeben werden.
Die Reihenfolge entspricht der Textliste AttributeNames, sodass Name und Wert über ihren jeweiligen Listenindex einander zugeordnet werden können.
TEXTLIST AttributeNamespaces (Optional)
Variable, in der die Namespace-URIs der Attribute als Textliste zurückgegeben werden.
Besitzt ein Attribut keinen Namespace, enthält das entsprechende Listenelement einen leeren Text.
TEXTLIST AttributePrefixes (Optional)
Variable, in der die Namespace-Präfixe der Attribute als Textliste zurückgegeben werden.
Besitzt ein Attribut kein Namespace-Präfix, enthält das entsprechende Listenelement einen leeren Text.
Return-Wert:
Bei erfolgreicher Ausführung liefert die @Function TRUE.
Die ermittelten Informationen werden in den übergebenen Textlisten zurückgegeben. Dabei enthalten alle angegebenen Listen die Einträge in derselben Reihenfolge.
Bei einem ungültigen XML-Node-Handle, einem Fehler bei der Zeichensatzkonvertierung oder einem Fehler beim Erzeugen einer Textliste liefert die @Function @ERROR.
Beispiel: @XMLGetAttributes(XMLN;AttributeNames);
XML := "<?xml version=\"1.0\" encoding=\"UTF-8\"?>" +
"<customer id=\"4711\" name=\"Example GmbH\" />";
hXMLD := @XMLParse(XML);
hXMLRoot := @XMLGetRoot(hXMLD);
@XMLGetAttributes(hXMLRoot;AttributeNames);
@XMLRelease(hXMLD);
Das Beispiel ermittelt die Namen aller Attribute des Root-Elements. AttributeNames enthält anschließend die Werte "id" und "name".
Beispiel: @XMLGetAttributes(XMLN;AttributeNames;AttributeValues;AttributeNamespaces;AttributePrefixes);
XML := "<?xml version=\"1.0\" encoding=\"UTF-8\"?>" +
"<customer xmlns:c=\"https://example.com/customer\" " +
"id=\"4711\" c:type=\"business\" />";
hXMLD := @XMLParse(XML);
hXMLRoot := @XMLGetRoot(hXMLD);
@XMLGetAttributes(
hXMLRoot;
AttributeNames;
AttributeValues;
AttributeNamespaces;
AttributePrefixes
);
@XMLRelease(hXMLD);
Das Beispiel ermittelt Namen, Werte, Namespace-URIs und Namespace-Präfixe aller Attribute des Root-Elements.
Die einzelnen Textlisten sind positionsgleich aufgebaut, sodass die jeweiligen Einträge über denselben Listenindex zusammengehören.
