public static void DeregisterItem(string schema, string key)
        {
            ModifiedData.Remove(key);
            HashSet <string> keys;

            DataKeysBySchema.TryGetValue(schema, out keys);
            if (keys != null)
            {
                keys.Remove(key);
            }
        }
        public static void ResetToDefault(string itemName, string fieldName = "")
        {
            Dictionary <string, object> dict;

            if (string.IsNullOrEmpty(fieldName))
            {
                ModifiedData.Remove(itemName);
            }
            else if (ModifiedData.TryGetValue(itemName, out dict))
            {
                dict.Remove(fieldName);
            }
        }