Chilkat HOME .NET Core C# Android™ AutoIt C C# C++ Chilkat2-Python CkPython Classic ASP DataFlex Delphi ActiveX Delphi DLL Go Java Lianja Mono C# Node.js Objective-C PHP ActiveX PHP Extension Perl PowerBuilder PowerShell PureBasic Ruby SQL Server Swift 2 Swift 3,4,5... Tcl Unicode C Unicode C++ VB.NET VBScript Visual Basic 6.0 Visual FoxPro Xojo Plugin
(DataFlex) Handling Namespaces in XML TagsSee more XML ExamplesDemonstrates new features added in Chilkat v9.5.0.77 for helping with namespace prefixed tags.
Use ChilkatAx-win32.pkg Procedure Test Handle hoXml Boolean iSuccess Variant vXmlBody Handle hoXmlBody Boolean iIsBodyTag Boolean iIsSoapenv String sTemp1 Boolean bTemp1 // 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> Get Create (RefClass(cComChilkatXml)) To hoXml If (Not(IsComObjectCreated(hoXml))) Begin Send CreateComObject of hoXml End Set ComTag Of hoXml To "soapenv:Envelope" Get ComAddAttribute Of hoXml "xmlns:soapenv" "http://schemas.xmlsoap.org/soap/envelope/" To iSuccess Get ComAddAttribute Of hoXml "xmlns:scm" "http://www.springcm.com/atlas/webservices/v201308/scm/" To iSuccess Send ComUpdateChildContent To hoXml "soapenv:Header" "" Send ComUpdateChildContent To hoXml "soapenv:Body|scm:AccountGetCurrent|scm:token" "123" // Go to the "Body" tag, regardless of namespace prefix. Get ComFindChild Of hoXml "*:Body" To vXmlBody If (IsComObject(vXmlBody)) Begin Get Create (RefClass(cComChilkatXml)) To hoXmlBody Set pvComObject Of hoXmlBody To vXmlBody End Get ComLastMethodSuccess Of hoXml To bTemp1 If (bTemp1 <> True) Begin Showln "Body child not found." Procedure_Return End // Get the full tag w/ namespace prefix: // Output is "soapenv:Body" Get ComTag Of hoXmlBody To sTemp1 Showln sTemp1 // Get the namespace prefix: // Output is "soapenv" Get ComTagNsPrefix Of hoXmlBody To sTemp1 Showln sTemp1 // Get the unprefixed tag: // Output is "Body" Get ComTagUnprefixed Of hoXmlBody To sTemp1 Showln sTemp1 // Check to see if the unprefixed tag equals "Body" Get ComTagUnpEquals Of hoXmlBody "Body" To iIsBodyTag Showln "isBodyTag = " iIsBodyTag // Check to see if the namespace prefix equals "soapenv"; Get ComTagNsEquals Of hoXmlBody "soapenv" To iIsSoapenv Showln "isSoapenv = " iIsSoapenv // Change just the namespace prefix of the tag Set ComTagNsPrefix Of hoXmlBody To "se" // The tag has changed from "soapenv:Body" to "se:Body" Get ComTag Of hoXmlBody To sTemp1 Showln sTemp1 // Change the unprefixed part of the tag. Set ComTagUnprefixed Of hoXmlBody To "Bodie" // The tag has changed from "se:Body" to "se:Bodie" Get ComTag Of hoXmlBody To sTemp1 Showln sTemp1 Send Destroy of hoXmlBody End_Procedure |
© 2000-2024 Chilkat Software, Inc. All Rights Reserved.