XML 架构对象模型概述

Microsoft .NET Framework 中的架构对象模型(SOM)是一个丰富的 API,可用于以编程方式创建、编辑和验证架构。 SOM 对 XML 架构文档进行作的方式与文档对象模型(DOM)对 XML 文档的作方式类似。 XML 架构文档是有效的 XML 文件,加载到 SOM 中后,会传达符合该架构的其他 XML 文档的结构和有效性含义。

架构是一个 XML 文档,它通过指定特定架构的 XML 文档的结构或模型来定义 XML 文档的类。 架构标识对 XML 文档内容的约束,并描述符合 XML 文档的词汇(规则或语法),以便与该特定架构一起被视为架构有效。 XML 文档的验证是确保文档符合架构指定的语法的过程。

以下是 .NET Framework 中的 SOM API 使你能够创建、编辑和验证架构的方式。

  • 从文件中加载有效架构或将有效架构保存到文件中。

  • 使用强类型类创建内存内架构。

  • XmlSchemaSet 类交互以缓存、编译和检索架构。

  • Create 类的 XmlReader 方法交互,以验证 XML 实例文档是否符合架构。

  • 生成用于创建和维护架构的编辑器。

  • 动态编辑可以编译并保存的架构,以用于验证 XML 实例文档。

架构对象模型

SOM 包含与 XML 架构中的元素对应的命名空间中的 System.Xml.Schema 一组广泛的类。 例如,元素<xsd:schema>...</xsd:schema>映射到System.Xml.Schema.XmlSchema该类,并且可以使用该类表示<xsd:schema/>元素中包含的XmlSchema所有信息。 同样,元素<xsd:element>...</xsd:element><xsd:attribute>...</xsd:attribute>也分别映射到System.Xml.Schema.XmlSchemaElementSystem.Xml.Schema.XmlSchemaAttribute类。 对于 XML 架构的所有元素,这种映射在下图中所示的System.Xml.Schema命名空间中继续进行,以创建XML架构对象模型。

System.Xml.Schema 对象模型

有关命名空间中 System.Xml.Schema 每个类的详细信息,请参阅 System.Xml.Schema .NET Framework 类库中的命名空间参考文档。

另请参阅