addNDepthChildDefinitions = function(childCollection, tabStop, fileContent) {
    let myFileContent = '';
    (childCollection || []).forEach(child => {
        myFileContent += "".padStart(tabStop * 4, ' ');
        myFileContent += `- @ ${getEntityType(child.features)} ${writeEntityName(child.name)}`;
        myFileContent += addRolesAndFeatures(child);
        myFileContent += NEWLINE;
        if (child.children && child.children.length !== 0) {
            myFileContent += addNDepthChildDefinitions(child.children, tabStop + 1, myFileContent);
        }
    });
    return myFileContent;
}
Recursive helper function to add child definitions. 
@param {Object[]} childCollection 
@param {number} tabStop 
@param {string} fileContent