Sample code for 30+ languages & platforms
Visual FoxPro

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 Visual FoxPro Downloads

Visual FoxPro
LOCAL lnSuccess
LOCAL loXml
LOCAL lnFound
LOCAL lcTagPath

lnSuccess = 0

loXml = CreateObject('Chilkat.Xml')

* Load some XML:
lnSuccess = loXml.LoadXml("<a><bbb><ccc><ddd>1</ddd><ddd><z>zzz</z></ddd><ddd>3</ddd></ccc></bbb></a>")

? loXml.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:
lnFound = loXml.SearchForTag2(loXml,"z")
IF (lnFound = 1) THEN
    * We found a node having the tag "z".
    * The TagPath property tells us the location in the document.
    lcTagPath = loXml.TagPath
    ? lcTagPath

    * 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.
    loXml.GetRoot2()
    ? loXml.Tag
    * The root tag is "a".

    * Follow the tagPath to the "z" node:
    lnFound = loXml.FindChild2(lcTagPath)
    ? "found = " + STR(lnFound) + ", tag = " + loXml.Tag
    * We are now at "z".

ENDIF

RELEASE loXml