Sample code for 30+ languages & platforms
Perl

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 Perl Downloads

Perl
use chilkat();

$success = 0;

$xml = chilkat::CkXml->new();

# Load some XML:
$success = $xml->LoadXml("<a><bbb><ccc><ddd>1</ddd><ddd><z>zzz</z></ddd><ddd>3</ddd></ccc></bbb></a>");

print $xml->getXml() . "\r\n";

# 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,"z");
if ($found == 1) {
    # We found a node having the tag "z".
    # The TagPath property tells us the location in the document.
    $tagPath = $xml->tagPath();
    print $tagPath . "\r\n";

    # 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();
    print $xml->tag() . "\r\n";
    # The root tag is "a".

    # Follow the tagPath to the "z" node:
    $found = $xml->FindChild2($tagPath);
    print "found = " . $found . ", tag = " . $xml->tag() . "\r\n";
    # We are now at "z".

}