Mit der Zusatzbibliothek ASXML gelingt es mir die Anzahl der in einem XML-Dokument enthaltenen Knoten ( z.B. \\realName) auszulesen.
Außerdem gelingt es mir über xmlGetTag den Handle des ersten Knoten auszulesen. Wie komme ich nun aber an die Handles aller weiteren Knoten? Ziel ist es alle Knoten-Inhalte in ein Array einzulesen.
Zur Verdeutlichung ein paar Code-Fragmente:
Code: Alles auswählen
::nXmlDoc := XmlDocOpenFile(cXmlDoc)
::aXML := {}
FOR i=1 TO n
::nActions := XmlDocSetAction(::nXmlDoc,aXmlTagName[i],;
{|n,c,a,h| ::Tags2Array(n,c,a,h)})
NEXT
METHOD DkXml:Tags2Array(cTag, cContent, aAttribs, nHandle)
LOCAL aTagMember, cTagContent, i,j
ALTD()
i=LEN(::aXML)+1
AADD(::aXML,ARRAY(::nActions))
FOR j=1 TO ::nActions
xmlGetTag(nHandle,@aTagMember)
cTagContent := aTagMember[XMLTAG_CONTENT]
::aXML[i,j] := cTagContent
NEXT
RETURN XML_PROCESS_CONTINUE