Hola amigos me encontré este código pero aparentemente solo es para leer y quería saber como se le asigna valores y cuales solo las propiedades que hay que grabar.
Public loDom
loDom = CreateObject("MSXML2.DomDocument")
If Vartype(loDom) == "O"
loDom.Load("xml\archivo.xml")
EndIf
If loDom.parseError.errorCode > 0
MessageBox(rtrim(loDom.parseError.Reason)
Return
EndIf
* Clear
* loNodes = loDom.selectNodes("//UBLExtensions/UBLExtension/ExtensionContent/AdditionalInformation")
* For i = 0 To loNodes.length - 1
* For j = 0 To loNodes.Item(i).Attributes.length - 1
* sAtributeName = loNodes.Item(i).Attributes.Item(j).nodeName
* sAtributeValues = loNodes.Item(i).Attributes.Item(j).text
* ? i, j, sAtributeName + "=" + sAtributeValues
* Next j
* Next i
* Return
Clear
*!* Llamamos a la función LeerDatos pasándole el nodo raíz
LeerDatos(loDom.documentElement.childNodes)
Function LeerDatos
Lparameters toRoot As MSXML2.IXMLDOMNode
Local loChild As MSXML2.IXMLDOMNode
For Each loChild In toRoot
? loChild.nodeType, loChild.nodeName
If loChild.nodeType <> 3
For Each loAttributes In loChild.Attributes
lcAtributeName = loAttributes.nodeName
lcAtributeValues = loAttributes.Text
? lcAtributeName + "=" + lcAtributeValues
EndFor
EndIf
If loChild.nodeType = 3
? loChild.nodeValue
EndIf
If loChild.hasChildNodes
LeerDatos(loChild.ChildNodes)
EndIf
EndFor
EndFunc