Sample code for 30+ languages & platforms
DataFlex

ExtractChildByName using a Tag Path

Demonstrates calling ExtractChildByName with a tag path.

This example requires Chilkat v9.5.0.64 or greater.

Chilkat DataFlex Downloads

DataFlex
Use ChilkatAx-win32.pkg

Procedure Test
    Handle hoXml
    Variant vXCalif
    Handle hoXCalif
    String sTemp1

    Get Create (RefClass(cComChilkatXml)) To hoXml
    If (Not(IsComObjectCreated(hoXml))) Begin
        Send CreateComObject of hoXml
    End

    Set ComTag Of hoXml To "world"

    // This example uses features introduced in v9.5.0.64
    Send ComNewChild2 To hoXml "north_america|united_states|california|san_francisco" "Silicon Valley"
    Send ComNewChild2 To hoXml "north_america|united_states|california|san_diego" "Birthplace of California"
    Send ComNewChild2 To hoXml "north_america|united_states|illinois|chicago" "Windy City"

    Get ComGetXml Of hoXml To sTemp1
    Showln sTemp1

    // Produces the following XML
    // 
    // 	<?xml version="1.0" encoding="utf-8" ?>
    // 	<world>
    // 	    <north_america>
    // 	        <united_states>
    // 	            <california>
    // 	                <san_francisco>Silicon Valley</san_francisco>
    // 	                <san_diego>Birthplace of California</san_diego>
    // 	            </california>
    // 	            <illinois>
    // 	                <chicago>Windy City</chicago>
    // 	            </illinois>
    // 	        </united_states>
    // 	    </north_america>
    // 	</world>
    // 

    Get ComExtractChildByName Of hoXml "north_america|united_states|california" "" "" To vXCalif
    If (IsComObject(vXCalif)) Begin
        Get Create (RefClass(cComChilkatXml)) To hoXCalif
        Set pvComObject Of hoXCalif To vXCalif
    End

    Get ComGetXml Of hoXCalif To sTemp1
    Showln sTemp1
    Send Destroy of hoXCalif

    // xCalif contains:

    // 	<?xml version="1.0" encoding="utf-8" ?>
    // 	<california>
    // 	    <san_francisco>Silicon Valley</san_francisco>
    // 	    <san_diego>Birthplace of California</san_diego>
    // 	</california>

    Get ComGetXml Of hoXml To sTemp1
    Showln sTemp1

    // xml now contains:

    // 	<?xml version="1.0" encoding="utf-8" ?>
    // 	<world>
    // 	    <north_america>
    // 	        <united_states>
    // 	            <illinois>
    // 	                <chicago>Windy City</chicago>
    // 	            </illinois>
    // 	        </united_states>
    // 	    </north_america>
    // 	</world>


End_Procedure