Пример #1
0
        public static SchemaResult From(SchemaData item, string currentUserId)
        {
            var result = new SchemaResult
            {
                Description     = TextEntry.From(item.Description, Resources.LabelDescription),
                Namespace       = TextEntry.From(item.NamespaceUri, Resources.LabelNamespace),
                RootElementName = TextEntry.From(item.RootElementName, Resources.LabelRootElementName)
            };

            AddFieldsSummary(item, result);
            AddCommonProperties(item, result);
            AddPropertiesForRepositoryLocalObject(item, result, currentUserId);
            return(result);
        }
Пример #2
0
        public static SchemaResult From(SchemaData item, string currentUserId)
        {
            var result = new SchemaResult
            {
                Description = TextEntry.From(item.Description, Resources.LabelDescription),
                Namespace = TextEntry.From(item.NamespaceUri, Resources.LabelNamespace),
                RootElementName = TextEntry.From(item.RootElementName, Resources.LabelRootElementName)
            };

            AddFieldsSummary(item, result);
            AddCommonProperties(item, result);
            AddPropertiesForRepositoryLocalObject(item, result, currentUserId);
            return result;
        }
Пример #3
0
        private static void AddFieldsSummary(SchemaData schema, SchemaResult result)
        {
            try
            {
                XDocument    doc      = XDocument.Parse(schema.Xsd);
                const string nameAttr = "name";

                if (!string.IsNullOrWhiteSpace(schema.RootElementName))
                {
                    var rootElement = doc.Descendants(schemaFields).FirstOrDefault(e => e.Attribute(nameAttr) != null && e.Attribute(nameAttr).Value == schema.RootElementName);
                    result.FieldsSummary = TextEntry.From(GetFieldSummary(rootElement, Resources.None), Resources.LabelFieldsSummary);
                }

                bool expectFields = (schema.Purpose == SchemaPurpose.Metadata ||
                                     schema.Purpose == SchemaPurpose.Multimedia ||
                                     schema.Purpose == SchemaPurpose.Bundle);

                var metadataRoot = doc.Descendants(schemaFields).FirstOrDefault(e => e.Attribute(nameAttr) != null && e.Attribute(nameAttr).Value == "Metadata");
                result.MetadataFieldsSummary = TextEntry.From(GetFieldSummary(metadataRoot, expectFields ? Resources.None : null), Resources.LabelMetadataFieldsSummary);
            }
            catch (System.Xml.XmlException)
            {
            }
        }
Пример #4
0
        private static void AddFieldsSummary(SchemaData schema, SchemaResult result)
        {
            try
            {
                XDocument doc = XDocument.Parse(schema.Xsd);
                const string nameAttr = "name";

                if (!string.IsNullOrWhiteSpace(schema.RootElementName))
                {
                    var rootElement = doc.Descendants(schemaFields).FirstOrDefault(e => e.Attribute(nameAttr) != null && e.Attribute(nameAttr).Value == schema.RootElementName);
                    result.FieldsSummary = TextEntry.From(GetFieldSummary(rootElement, Resources.None), Resources.LabelFieldsSummary);
                }

                bool expectFields = (schema.Purpose == SchemaPurpose.Metadata ||
                                     schema.Purpose == SchemaPurpose.Multimedia ||
                                     schema.Purpose == SchemaPurpose.Bundle);

                var metadataRoot = doc.Descendants(schemaFields).FirstOrDefault(e => e.Attribute(nameAttr) != null && e.Attribute(nameAttr).Value == "Metadata");
                result.MetadataFieldsSummary = TextEntry.From(GetFieldSummary(metadataRoot, expectFields ? Resources.None : null), Resources.LabelMetadataFieldsSummary);
            }
            catch (System.Xml.XmlException)
            {
            }
        }