public override bool isValid(string currentPath, List <string> incidences)
        {
            var valid = true;

            valid &= descriptionController.isValid(currentPath, incidences);
            valid &= geoActionDataControls.isValid(currentPath, incidences);
            valid &= geometryDataControls.isValid(currentPath, incidences);
            valid &= resourcesDataControlList.All(r => r.isValid(currentPath, incidences));
            return(valid);
        }
    public override bool isValid(string currentPath, List <string> incidences)
    {
        bool valid = true;

        // Iterate through the resources
        for (int i = 0; i < resourcesDataControlList.Count; i++)
        {
            string resourcesPath = currentPath + " >> " + TC.getElement(Controller.RESOURCES) + " #" + (i + 1);
            valid &= resourcesDataControlList[i].isValid(resourcesPath, incidences);
        }

        // Spread the call to the actions
        valid &= actionsListDataControl.isValid(currentPath, incidences);
        //1.4
        valid &= descriptionController.isValid(currentPath, incidences);

        return(valid);
    }