Sample code for 30+ languages & platforms
Visual Basic 6.0

Handling Namespaces in XML Tags

See more XML Examples

Demonstrates new features added in Chilkat v9.5.0.77 for helping with namespace prefixed tags.

Chilkat Visual Basic 6.0 Downloads

Visual Basic 6.0
' First create some XML using namespace prefixed tags.

' Create this XML. 
' Use this online tool to generate the code from sample XML: 
' Generate Code to Create XML

' <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
'    xmlns:scm="http://www.springcm.com/atlas/webservices/v201308/scm/">
'    <soapenv:Header/>
'    <soapenv:Body>
'       <scm:AccountGetCurrent>
'          <scm:token>123</scm:token>
'       </scm:AccountGetCurrent>
'    </soapenv:Body>
' </soapenv:Envelope>

Dim xml As New ChilkatXml
xml.Tag = "soapenv:Envelope"
success = xml.AddAttribute("xmlns:soapenv","http://schemas.xmlsoap.org/soap/envelope/")
success = xml.AddAttribute("xmlns:scm","http://www.springcm.com/atlas/webservices/v201308/scm/")
xml.UpdateChildContent "soapenv:Header",""
xml.UpdateChildContent "soapenv:Body|scm:AccountGetCurrent|scm:token","123"

' Go to the "Body" tag, regardless of namespace prefix.
Dim xmlBody As ChilkatXml
Set xmlBody = xml.FindChild("*:Body")
If (xml.LastMethodSuccess <> 1) Then
    Debug.Print "Body child not found."
    Exit Sub
End If

' Get the full tag w/ namespace prefix:
' Output is "soapenv:Body"
Debug.Print xmlBody.Tag

' Get the namespace prefix:
' Output is "soapenv"
Debug.Print xmlBody.TagNsPrefix

' Get the unprefixed tag:
' Output is "Body"
Debug.Print xmlBody.TagUnprefixed

' Check to see if the unprefixed tag equals "Body"
Dim isBodyTag As Long
isBodyTag = xmlBody.TagUnpEquals("Body")
Debug.Print "isBodyTag = " & isBodyTag

' Check to see if the namespace prefix equals "soapenv";
Dim isSoapenv As Long
isSoapenv = xmlBody.TagNsEquals("soapenv")
Debug.Print "isSoapenv = " & isSoapenv

' Change just the namespace prefix of the tag
xmlBody.TagNsPrefix = "se"
' The tag has changed from "soapenv:Body" to "se:Body"
Debug.Print xmlBody.Tag

' Change the unprefixed part of the tag.
xmlBody.TagUnprefixed = "Bodie"
' The tag has changed from "se:Body" to "se:Bodie"
Debug.Print xmlBody.Tag