若要定義 XML 檔案的結構,以及其項目關聯性、數據類型和內容條件約束,您可以使用檔案類型定義 (DTD) 或 XML 架構定義語言 (XSD) 架構。 雖然 XML 檔符合萬維網聯合會 (W3C) Extensible Markup Language (XML) 1.0 建議所定義的所有語法需求,但除非格式正確且符合其 DTD 或架構所定義的條件約束,否則不會被視為有效。 因此,雖然所有有效的 XML 檔都是格式正確的,但並非所有格式正確的 XML 檔都是有效的。
如需 XML 的詳細資訊,請參閱 W3C XML 1.0 建議。 如需 XML 架構的詳細資訊,請參閱 W3C XML 架構第 1 部分:結構建議 和 W3C XML 架構第 2 部分:數據類型建議 建議。
本節中
XML 架構物件模型 (SOM)
討論命名空間中的 System.Xml.Schema 架構物件模型 (SOM),該命名空間提供一組類別,可讓您從檔案讀取架構定義語言 (XSD) 架構,或以程式設計方式建立記憶體中的架構。
用於架構編譯的 XmlSchemaSet
討論作為快取的 XmlSchemaSet 類別,其中可以儲存和驗證 XSD 架構。
XmlSchemaValidator Push-Based 驗證
討論類別 XmlSchemaValidator ,提供有效率且高效能的機制,以推送為基礎的方式驗證 XSD 架構的 XML 數據。
推斷 XML 架構
討論如何使用 XmlSchemaInference 類別,從 XML 檔的結構推斷 XSD 架構。
參考文獻
XmlSchemaSet | XmlSchemaInference | XmlReader
相關區段
驗證 DOM 中的 XML 檔
討論如何在文件物件模型 (DOM) 中驗證 XML。 您可以在載入 DOM 時驗證 XML,或驗證 DOM 中先前未驗證的 XML 檔。
使用 XPathNavigator 的架構驗證
討論如何使用 XPathNavigator 類別來驗證正在被巡覽和編輯的 XML。