Viewing a Stored XML Schema Collection

Po zaimportowaniu kolekcja schematu XML przy użyciu TWORZENIE SCHEMATU XML kolekcja, schemat, składniki są przechowywane metadane.Można użyć xml_schema_namespacewewnętrznych funkcja odtworzenie kolekcja schematu XML.Ta funkcja zwraca xml wystąpienie typu danych.

Na przykład poniższa kwerenda pobiera (pobierania) schematu XMLProductDescriptionSchemaCollection) ze schematu relacyjnego produkcji w AdventureWorks Baza danych.

SELECT xml_schema_namespace(N'Production',N'ProductDescriptionSchemaCollection')
GO

Aby wyświetlić tylko jeden schemat z kolekcja schematu XML, można określić XQuery przed xml Wpisz wynik, który jest zwracany przez xml_schema_namespace.

SELECT xml_schema_namespace(N'RelationalSchemaName',N'XmlSchemaCollectionName').query('
/xs:schema[@targetNamespace="TargetNameSpace"]
')
GO

Na przykład, poniższa kwerenda pobiera produktu gwarancji i konserwacji XML schematu z ProductDescriptionSchemaCollection Kolekcja schematu XML.

SELECT xml_schema_namespace(N'Production',N'ProductDescriptionSchemaCollection').query('
/xs:schema[@targetNamespace="https://schemas.microsoft.com/sqlserver/2004/07/adventure-works/ProductModelWarrAndMain"]
')
GO

Można również przekazać opcjonalne miejsce docelowe obszar nazw jako trzeciego parametru do xml_schema_namespace Funkcja służąca do kolekcja określonego schematu z kolekcja, jak pokazano na następującej kwerendy:

SELECT xml_schema_namespace(N'Production',N'ProductDescriptionSchemaCollection', N'https://schemas.microsoft.com/sqlserver/2004/07/adventure-works/ProductModelWarrAndMain')
GO

Po utworzeniu kolekcja schematu XML przy użyciu CREATE kolekcja SCHEMATU XML, bazy danych w instrukcja są przechowywane elementy schematu metadane.Należy zwrócić uwagę, tylko składniki schematu, SQL Server zrozumienie, są przechowywane. Wszelkie komentarze, adnotacje lub innych niż XSD atrybuty nie są przechowywane.Dlatego rekonstruowany przez schemat xml_schema_namespace funkcjonalnie odpowiada oryginalnego schematu, ale go nie musi być wyglądają takie same.Na przykład nie zostanie wyświetlony ten sam prefiksy, trzeba było w oryginalnej schematu.Schemat zwrócony przez xml_schema_namespace uses t jako prefiks, dla docelowego obszaru nazw i ns1, ns2i tak dalej, w innych obszarach nazw.

Jeśli chcesz zachować identyczne kopię schematów XML, należy zapisać swoje schematu XML do pliku lub w tabela bazy danych w xml Typ kolumna.

The sys.xml_schema_collections catalog view also returns information about XML schema collections.Informacje te obejmują nazwę kolekcja, data utworzenia i właściciela do kolekcja.