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
(Delphi ActiveX) Xml TagPath Property ExplainedDemonstrates and explains the TagPath property. Note: The TagPath property was introduced in Chilkat v9.5.0.77
uses Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics, Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Vcl.StdCtrls, Chilkat_TLB; ... procedure TForm1.Button1Click(Sender: TObject); var xml: TChilkatXml; success: Integer; found: Integer; tagPath: WideString; begin xml := TChilkatXml.Create(Self); // Load some XML: success := xml.LoadXml('<a><bbb><ccc><ddd>1</ddd><ddd><z>zzz</z></ddd><ddd>3</ddd></ccc></bbb></a>'); Memo1.Lines.Add(xml.GetXml()); // This is what we have: // <?xml version="1.0" encoding="utf-8"?> // <a> // <bbb> // <ccc> // <ddd>1</ddd> // <ddd> // <z>zzz</z> // </ddd> // <ddd>3</ddd> // </ccc> // </bbb> // </a> // The TagPath property is read-only property that returns the unique path to the // node from the document root. // For example: found := xml.SearchForTag2(xml.ControlInterface,'z'); if (found = 1) then begin // We found a node having the tag "z". // The TagPath property tells us the location in the document. tagPath := xml.TagPath; Memo1.Lines.Add(tagPath); // The tagPath is bbb|ccc|ddd[1]|z // If we to back to the document root, we can get to the given node via the tagPath. xml.GetRoot2(); Memo1.Lines.Add(xml.Tag); // The root tag is "a". // Follow the tagPath to the "z" node: found := xml.FindChild2(tagPath); Memo1.Lines.Add('found = ' + IntToStr(Ord(found)) + ', tag = ' + xml.Tag); // We are now at "z". end; end; |
© 2000-2024 Chilkat Software, Inc. All Rights Reserved.