Sample code for 30+ languages & platforms
Ruby

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

Ruby
require 'chilkat'

success = false

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() + "\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 == true)
    # We found a node having the tag "z".
    # The TagPath property tells us the location in the document.
    tagPath = xml.tagPath()
    print tagPath + "\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() + "\n";
    # The root tag is "a".

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

end