xml_schema_namespace (Transact-SQL)
Reconstructs all the schemas or a specific schema in the specified XML schema collection. This function returns an xml data type instance.
Syntax
xml_schema_namespace(Relational_schema ,XML_schema_collection_name , [ Namespace ] )
Arguments
Relational_schema
Is the relational schema name. Relational_schema is sysname.XML_schema_collection_name
Is the name of the XML schema collection to reconstruct. XML_schema_collection_name is sysname.Namespace
Is the namespace URI of the XML schema that you want reconstructed. It is limited to 1,000 characters. If Namespace URI is not provided, the whole XML schema collection is reconstructed. Namespace is nvarchar(4000).
Return Types
xml
Remarks
When you import XML schema components in the database by using CREATE XML SCHEMA COLLECTION or ALTER XML SCHEMA COLLECTION, aspects of the schema used for validation are preserved. Therefore, the reconstructed schema may not be lexically the same as the original schema document. Specifically, comments, white spaces, and annotations are lost; and implicit type information is made explicit. For example, <xs:element name="e1" /> becomes <xs:element name="e1" type="xs:anyType"/>. Also, namespace prefixes are not preserved.
If you specify a namespace parameter, the resulting schema document will contain definitions for all schema components in that namespace, even if they were added in different schema documents or DDL steps, or both.
You cannot use this function to construct XML schema documents from the sys.sys XML schema collection.
Examples
The following example retrieves the XML schema collection ProductDescriptionSchemaCollection from the production relational schema in the AdventureWorks database.
USE AdventureWorks;
GO
SELECT xml_schema_namespace(N'production',N'ProductDescriptionSchemaCollection')
GO
See Also