Condividi tramite


Cenni preliminari sul modello SOM XML

Schema Object Model (SOM) in Microsoft .NET Framework è un'API avanzata che consente di creare, modificare e convalidare gli schemi a livello di codice. SoM opera su documenti XML Schema in modo analogo al modo in cui il modello DOM (Document Object Model) opera su documenti XML. I documenti XML Schema sono file XML validi che, una volta caricati nel SOM, trasmettono significato sulla struttura e sulla validità di altri documenti XML conformi allo schema.

Uno schema è un documento XML che definisce una classe di documenti XML specificando la struttura o il modello di documenti XML per uno schema specifico. Uno schema identifica i vincoli sul contenuto dei documenti XML e descrive il vocabolario (regole o grammatica) che i documenti XML conformi devono seguire per essere considerati validi per lo schema specifico. La convalida di un documento XML è il processo che garantisce che il documento sia conforme alla grammatica specificata dallo schema.

Di seguito sono riportati i modi in cui l'API SOM in .NET Framework consente di creare, modificare e convalidare gli schemi.

  • Caricare e salvare schemi validi da e verso i file.

  • Creare schemi in memoria usando classi tipizzate fortemente.

  • Interagire con la XmlSchemaSet classe per memorizzare nella cache, compilare e recuperare gli schemi.

  • Interagire con il metodo Create della classe XmlReader per convalidare i documenti dell'istanza XML rispetto agli schemi.

  • Editor di compilazione per la creazione e la gestione degli schemi.

  • Modificare in modo dinamico uno schema che può essere compilato e salvato per essere utilizzato nella convalida dei documenti istanza XML.

Modello a oggetti dello schema

Il SOM è costituito da un ampio set di classi nel namespace System.Xml.Schema corrispondenti agli elementi in uno schema XML. Ad esempio, l'elemento <xsd:schema>...</xsd:schema> corrisponde alla classe System.Xml.Schema.XmlSchema, e tutte le informazioni che possono essere contenute all'interno di un elemento <xsd:schema/> possono essere rappresentate usando la classe XmlSchema. Analogamente, gli elementi <xsd:element>...</xsd:element> e <xsd:attribute>...</xsd:attribute> vengono mappati rispettivamente alle classi System.Xml.Schema.XmlSchemaElement e System.Xml.Schema.XmlSchemaAttribute. Questo mapping continua per tutti gli elementi di uno schema XML, creando un modello a oggetti nello spazio dei nomi System.Xml.Schema, illustrato nel diagramma seguente.

System.Xml.Schema Modello a oggetti

Per ulteriori informazioni su ciascuna classe nello spazio dei nomi System.Xml.Schema, consultare la documentazione di riferimento del namespace nella libreria di classi .NET Framework.

Vedere anche