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 由 System.Xml.Schema 命名空间中与 XML 架构中的元素对应的丰富类集组成。 例如,<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 Object Model

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

请参阅