public static void ProcessXmlSchema(bool force) { var schemaAssetPath = string.Format("{0}/{1}", Application.dataPath, AssetDatabase.GetAssetPath(XmlLayoutUtilities.XmlLayoutConfiguration.BaseXSDFile).Substring("Assets/".Length)); var processor = new XmlLayoutSchemaProcessor(schemaAssetPath); processor.ProcessCustomAttributes(); processor.ProcessCustomAttributeGroups(); processor.ProcessCustomTags(); if (force || processor.HasChanges()) { processor.Output(string.Format("{0}/{1}", Application.dataPath, AssetDatabase.GetAssetPath(XmlLayoutUtilities.XmlLayoutConfiguration.XSDFile).Substring("Assets/".Length))); } processor = null; }