public bool IsAccepted(ResourceType resourceType)
            {
                if (AcceptAll)
                    return true;

                return _resourceTypes.Contains(resourceType.Name);
            }
        private static ResourceType LoadResourceType(System.Xml.XmlNode resourceNode)
        {
            System.Diagnostics.Debug.Assert(resourceNode.Name == "resource_type");
            ResourceType resourceType = new ResourceType();
            resourceType.Name = resourceNode.Attributes["name"].Value;
            resourceType.Help = resourceNode.Attributes["help"].Value;

            foreach (System.Xml.XmlNode node in resourceNode.ChildNodes)
            {
                switch (node.Name)
                {
                    case "text":
                    case "internal_ref":
                    case "external_ref":
                    {
                        FieldType fieldType = LoadResourceField (node);
                        resourceType.Fields.Add (fieldType.Name, fieldType);
                    }
                    break;

                    case "execute":
                    {
                        Script executionType = LoadResourceExecution (node);
                        resourceType.Executions.Add (executionType.Name, executionType);
                    }
                    break;

                    default:
                        continue;
                }
            }

            return resourceType;
        }
 private static ResourceType LoadResourceType(System.Xml.XmlNode resourceNode)
 {
     System.Diagnostics.Debug.Assert(resourceNode.Name == "resource_type");
     ResourceType resourceType = new ResourceType();
     resourceType.LoadFromXML(resourceNode);
     return resourceType;
 }