public static boolean isValidNCName(String ncName) {
        if (ncName.length() == 0) {
            return false;
        }
        char ch = ncName.charAt(0);
        if (isNCNameStart(ch) == false) {
            return false;
        }
        for (int i = 1; i < ncName.length(); i++) {
            ch = ncName.charAt(i);
            if (isNCName(ch) == false) {
                return false;
            }
        }
        return true;
    }
Check to see if a string is a valid NCName according to [4]
from the XML Namespaces 1.0 Recommendation

@param ncName string to check
@return true if name is a valid NCName
stroom-util/src/main/java/stroom/util/xml/XMLChar.java