private System.Xml.XmlReaderSettings GetSettings() { if (m_xmlReaderSettings == null) { // Setting up validation settings var settings = new System.Xml.XmlReaderSettings { CloseInput = false, ValidationType = System.Xml.ValidationType.Schema, XmlResolver = new System.Xml.XmlUrlResolver() { CachePolicy = new System.Net.Cache.RequestCachePolicy(System.Net.Cache.RequestCacheLevel.CacheIfAvailable) } }; settings.ValidationFlags |= System.Xml.Schema.XmlSchemaValidationFlags.ProcessSchemaLocation; settings.ValidationFlags |= System.Xml.Schema.XmlSchemaValidationFlags.ReportValidationWarnings; settings.ValidationFlags |= System.Xml.Schema.XmlSchemaValidationFlags.ProcessIdentityConstraints; // Including only the required schemata to speed up validation. if (m_schemata.HasFlag(SchemaType.B2mml)) { settings.Schemas.Add(null, TestHelper.SchemaFolderB2mml + @"\b2mml\B2MML-V0600-ProductionSchedule.xsd"); } if (m_schemata.HasFlag(SchemaType.Swe)) { settings.Schemas.Add(null, TestHelper.SchemaFolderRef + @"\swe\swe.xsd"); } m_xmlReaderSettings = settings; } return(m_xmlReaderSettings); }
private System.Xml.XmlReaderSettings GetSettings() { if (m_xmlReaderSettings == null) { // Setting up validation settings var settings = new System.Xml.XmlReaderSettings { CloseInput = false, ValidationType = System.Xml.ValidationType.Schema, XmlResolver = new System.Xml.XmlUrlResolver() { CachePolicy = new System.Net.Cache.RequestCachePolicy(System.Net.Cache.RequestCacheLevel.CacheIfAvailable) } }; settings.ValidationFlags |= System.Xml.Schema.XmlSchemaValidationFlags.ProcessSchemaLocation; settings.ValidationFlags |= System.Xml.Schema.XmlSchemaValidationFlags.ReportValidationWarnings; settings.ValidationFlags |= System.Xml.Schema.XmlSchemaValidationFlags.ProcessIdentityConstraints; // Including only the required schemata to speed up validation. // The TSML schema refers to multiple other schemata. Adding them explicitly is redundant and causes an error. if (m_schemata.HasFlag(SchemaType.Custom1_GmlOmSweTsml)) { settings.Schemas.Add(null, TestHelper.SchemaFolderOpenGis + @"\cocopcustom\cocopcustom_1.1.xsd"); } if (m_schemata.HasFlag(SchemaType.Custom2)) { settings.Schemas.Add(null, TestHelper.SchemaFolderOpenGis + @"\cocopcustom\cocopcustom_1.2.xsd"); } if (m_schemata.HasFlag(SchemaType.Om_Gml)) { settings.Schemas.Add(null, TestHelper.SchemaFolderOpenGis + @"\om\2.0.0\observation.xsd"); } if (m_schemata.HasFlag(SchemaType.Sos_GmlOmSwe)) { settings.Schemas.Add(null, TestHelper.SchemaFolderOpenGis + @"\sos\2.0.1\sos.xsd"); } if (m_schemata.HasFlag(SchemaType.Sps_GmlSwe)) { settings.Schemas.Add(null, TestHelper.SchemaFolderOpenGis + @"\sps\2.0.0\sps.xsd"); } if (m_schemata.HasFlag(SchemaType.Swe)) { settings.Schemas.Add(null, TestHelper.SchemaFolderOpenGis + @"\swe\swe.xsd"); } if (m_schemata.HasFlag(SchemaType.Tsml_GmlOmSwe)) { settings.Schemas.Add(null, TestHelper.SchemaFolderOpenGis + @"\tsml\1.0.0\timeseriesML.xsd"); } m_xmlReaderSettings = settings; } return(m_xmlReaderSettings); }