Sample code for 30+ languages & platforms
Xojo Plugin

AddAttribute - Insert New Attribute in an XML Node

Demonstrates adding an name=value attribute to an XML element.

This example uses the XML sample file here: sample1.xml. The sample1.xml file contains this content:

Chilkat Xojo Plugin Downloads

Xojo Plugin
Dim success As Boolean
success = False

Dim xml As New Chilkat.Xml

success = xml.LoadXmlFile("qa_data/xml/sample1.xml")
If (success <> True) Then
    System.DebugLog(xml.LastErrorText)
    Return
End If

// Navigate to the "books" element:
Dim bFound As Boolean
bFound = xml.FindChild2("books")
If (bFound = False) Then
    System.DebugLog("No books child found!")
    Return
End If

Dim numChildren As Int32
numChildren = xml.NumChildren

Dim i As Int32
i = 0
While i < numChildren

    // Navigate to the Nth book 
    success = xml.GetChild2(i)

    // Display the book title:
    System.DebugLog(xml.GetAttrValue("title"))

    // Add a new integer attribute:
    // Should never fail..
    success = xml.AddAttributeInt("bookId",i)

    // Add a new unread="yes" attribute:
    success = xml.AddAttribute("unread","yes")

    // Navigate back up to the parent:
    success = xml.GetParent2()

    i = i + 1
Wend

// Navigate back to the document root:
xml.GetRoot2 

// Save the updated document:
success = xml.SaveXml("modified.xml")
If (success <> True) Then
    System.DebugLog(xml.LastErrorText)
    Return
End If

System.DebugLog(xml.GetXml())