Partilhar via


Visão geral do modelo de objeto do esquema XML

O SOM (Schema Object Model) no Microsoft .NET Framework é uma API avançada que permite criar, editar e validar esquemas programaticamente. O SOM opera em documentos de esquema XML de forma semelhante à maneira como o DOM (Document Object Model) opera em documentos XML. Os documentos do esquema XML são arquivos XML válidos que, uma vez carregados no SOM, transmitem significado sobre a estrutura e a validade de outros documentos XML que estão em conformidade com o esquema.

Um esquema é um documento XML que define uma classe de documentos XML especificando a estrutura ou o modelo de documentos XML para um esquema específico. Um esquema identifica as restrições no conteúdo dos documentos XML e descreve o vocabulário (regras ou gramática) que os documentos XML compatíveis devem seguir para serem considerados válidos com esse esquema específico. A validação de um documento XML é o processo que garante que o documento esteja em conformidade com a gramática especificada pelo esquema.

A seguir estão as maneiras pelas quais a API SOM no .NET Framework permite que você crie, edite e valide esquemas.

  • Carregue e salve esquemas válidos de e para arquivos.

  • Crie esquemas na memória usando classes fortemente tipadas.

  • Interaja com a XmlSchemaSet classe para armazenar em cache, compilar e recuperar esquemas.

  • Interaja com o CreateXmlReader método da classe para validar documentos de instância XML em esquemas.

  • Crie editores para criar e manter esquemas.

  • Edite dinamicamente um esquema que possa ser cumprido e salvo para uso na validação de documentos de instância XML.

O modelo de objeto de esquema

O SOM consiste em um extenso conjunto de classes no System.Xml.Schema namespace correspondente aos elementos em um esquema XML. Por exemplo, o <xsd:schema>...</xsd:schema> elemento mapeia para a System.Xml.Schema.XmlSchema classe e todas as informações que podem ser contidas em um <xsd:schema/> elemento podem ser representadas usando a XmlSchema classe. Da mesma forma, os <xsd:element>...</xsd:element> elementos e <xsd:attribute>...</xsd:attribute> mapeiam para as System.Xml.Schema.XmlSchemaElement classes e System.Xml.Schema.XmlSchemaAttribute respectivamente. Esse mapeamento continua para todos os elementos de um esquema XML criando um modelo de objeto de esquema XML no System.Xml.Schema namespace ilustrado no diagrama a seguir.

System.Xml.Schema Object Model

Para obter mais informações sobre cada classe no System.Xml.Schema namespace, consulte a documentação de referência de System.Xml.Schema namespace na biblioteca de classes do .NET Framework.

Consulte também