PowerBuilder
PowerBuilder
Benefit of XML Methods Having Names Ending in "2"
See more XML Examples
The Chilkat XML methods having names ending with "2" update the internal reference rather than return a new XML object instance. See the example below..Note: There are a few methods, such as LoadXml2, where the "2" simply indicates the method is the same but has an additional argument. (There are some programming environments where overloading methods is not allowed. Therefore, Chilkat will avoid providing methods having the same name but with different arguments.)
Chilkat PowerBuilder Downloads
integer li_rc
integer li_Success
string x
oleobject loo_Xml
oleobject loo_XAbc
oleobject loo_XXyz
li_Success = 0
x = "<test><abc><xyz>123</xyz></abc></test>"
loo_Xml = create oleobject
li_rc = loo_Xml.ConnectToNewObject("Chilkat.Xml")
if li_rc < 0 then
destroy loo_Xml
MessageBox("Error","Connecting to COM object failed")
return
end if
li_Success = loo_Xml.LoadXml(x)
// First demonstrate getting "123" in the simplest way:
Write-Debug loo_Xml.ChilkatPath("abc|xyz|*")
// Now demonstrate navigating to the "xyz" node using non-"2" methods.
// The following few lines of code create two object instances, which will need
// to be deleted or garbage collected.
loo_XAbc = loo_Xml.FindChild("abc")
loo_XXyz = loo_XAbc.FindChild("xyz")
Write-Debug loo_XXyz.Content
destroy loo_XXyz
destroy loo_XAbc
// Now demonstrate navigating to the "xyz" node using the "2" methods.
// No object instances are created.
li_Success = loo_Xml.FindChild2("abc")
li_Success = loo_Xml.FindChild2("xyz")
Write-Debug loo_Xml.Content
// Restore xml back to the root of the document.
loo_Xml.GetRoot2()
destroy loo_Xml