public XdtoFactory(IEnumerable <XmlSchema> schemas, IEnumerable <XdtoPackage> resolvePackages = null) { if (resolvePackages != null) { _packages.AddRange(resolvePackages); } var w3org = W3Org.XmlSchema.W3OrgXmlSchemaPackage.Create(); if (!_packages.Contains(w3org)) { _packages.Add(w3org); } foreach (var schema in schemas) { var package = new XdtoPackage(schema, this); if (!_packages.Contains(package)) { _packages.Add(package); } } Packages = new XdtoPackageCollection(_packages); foreach (var package in _packages) { package.BuildPackage(); } }
internal XdtoPackage(XmlSchema schema, XdtoFactory factory) { _schema = schema; _factory = factory; NamespaceUri = schema.TargetNamespace; Dependencies = new XdtoPackageCollection(new XdtoPackage [] { }); }
internal XdtoPackage(string namespaceUri, IEnumerable <IXdtoType> types) { NamespaceUri = namespaceUri; _types.AddRange(types); Dependencies = new XdtoPackageCollection(new XdtoPackage [] { }); RootProperties = new XdtoPropertyCollection(new XdtoProperty [] { }); _built = true; }
public XdtoFactory(IEnumerable <XdtoPackage> packages) { _packages.Add(W3Org.XmlSchema.W3OrgXmlSchemaPackage.Create()); foreach (var package in packages) { if (!_packages.Contains(package)) { _packages.Add(package); } } Packages = new XdtoPackageCollection(_packages); ResoveTypes(); }