Sample code for 30+ languages & platforms
Node.js

ExtractChildByName using a Tag Path

Demonstrates calling ExtractChildByName with a tag path.

This example requires Chilkat v9.5.0.64 or greater.

Chilkat Node.js Downloads

Node.js
NODEJS_PRELUDE

function chilkatExample() {

    var xml = new chilkat.Xml();

    xml.Tag = "world";

    // This example uses features introduced in v9.5.0.64
    xml.NewChild2("north_america|united_states|california|san_francisco","Silicon Valley");
    xml.NewChild2("north_america|united_states|california|san_diego","Birthplace of California");
    xml.NewChild2("north_america|united_states|illinois|chicago","Windy City");

    console.log(xml.GetXml());

    // 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>
    // 

    // xCalif: Xml
    var xCalif = xml.ExtractChildByName("north_america|united_states|california","","");

    console.log(xCalif.GetXml());

    // xCalif contains:

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

    console.log(xml.GetXml());

    // 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>

}

chilkatExample();