Visual Basic 6.0
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
' 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