private boolean parseNameAndNamespace(Program program, Namespace rootNamespace, String name) {

		SymbolPath symbolPath = getSymbolPath(name);
		if (symbolPath == null) {
			return false; // invalid symbol name
		}

		// see if the user specified a namespace path 
		Namespace parent = getOrCreateNamespaces(program, symbolPath, rootNamespace);
		if (parent == null) {
			return false; // create namespace failed
		}

		// update the new namespace and symbol name to reflect the parse results
		newNamespace = parent;
		newName = symbolPath.getName();
		return true;
	}
Constructs a new command for renaming a label within currentNamespace and changing the
namespace to newNamespace.

@param addr Address of label to be renamed
@param oldName the current name of the label to be renamed
@param newName the new name for the label. (null for default)
@param currentNamespace the symbol's current parent name space; null for global namespace
@param newNamespace the desired namespace; null for global namespace
@param source the source of this symbol
Ghidra/Features/Base/src/main/java/ghidra/app/cmd/label/RenameLabelCmd.java