Sample code for 30+ languages & platforms
AutoIt

Xml TagPath Property Explained

See more XML Examples

Demonstrates and explains the TagPath property.

Note: The TagPath property was introduced in Chilkat v9.5.0.77

Chilkat AutoIt Downloads

AutoIt
Local $bSuccess = False

$oXml = ObjCreate("Chilkat.Xml")

; Load some XML:
$bSuccess = $oXml.LoadXml("<a><bbb><ccc><ddd>1</ddd><ddd><z>zzz</z></ddd><ddd>3</ddd></ccc></bbb></a>")

ConsoleWrite($oXml.GetXml() & @CRLF)

; 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:
Local $bFound = $oXml.SearchForTag2($oXml,"z")
If ($bFound = True) Then
    ; We found a node having the tag "z".
    ; The TagPath property tells us the location in the document.
Local $sTagPath = $oXml.TagPath
    ConsoleWrite($sTagPath & @CRLF)

    ; 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.
    $oXml.GetRoot2 
    ConsoleWrite($oXml.Tag & @CRLF)
    ; The root tag is "a".

    ; Follow the tagPath to the "z" node:
    $bFound = $oXml.FindChild2($sTagPath)
    ConsoleWrite("found = " & $bFound & ", tag = " & $oXml.Tag & @CRLF)
    ; We are now at "z".

EndIf