C#中的XML模式1.1断言

我正在使用以下xml架构validation一些xml文件:

String xsdMarkup = "[...]       [...] "; XmlSchemaSet schemas = new XmlSchemaSet(); schemas.Add("", XmlReader.Create(new StringReader(xsdMarkup))); Console.WriteLine("Validating doc ..."); docToValidate.Validate(schemas, (sender, e) => { Console.WriteLine(e.Message); valid = false; }, true); 

我只是想介绍一些断言标签,以便进行更强大的validation。 但这导致例外:

System.Xml.Schema.XmlSchemaException:此上下文不支持http://www.w3.org/2001/XMLSchema:assert-element 。

我现在还不知道的是……

  1. 我在xsd中的错误位置使用了assert-element
  2. http://www.w3.org/2001/XMLSchema-Namespace不支持XML Schema的1.1版本,因此不支持assert-elements
  3. C#XmlSchemaSet不知道如何处理断言元素

提前感谢您的帮助!

XSD架构的.NET实现仅处理版本1.0而不处理版本1.1 – 因此它不支持assert