Inline XDR Schema Generation

The XMLDATA directive in FOR XML returns an inline XDR schema together with the query result. However, the XDR schema does not support all the new data types and other enhancements introduced in SQL Server 2005. Instead, you can request an inline XSD schema by using the XMLSCHEMA directive.


The XMLDATA directive to the FOR XML option is deprecated. Use XSD generation in the case of RAW and AUTO modes. There is no replacement for the XMLDATA directive in EXPLICIT mode. This feature will be removed in a future version of Microsoft SQL Server. Avoid using this feature in new development work, and plan to modify applications that currently use this feature.

Also note the following about the inline XDR schema support:

  • If the FOR XML query result includes columns of xml type and you request an inline XDR schema, an error is returned. Inline XDR does not support these types.

  • The (n)varchar(max) and (n)varbinary(max) types will be mapped to (n)varchar(n) and varbinary(n), respectively.

  • When compatibility mode is set to 90, timestamp values are considered as varbinary(8) data, are treated like binary data, and are returned in the result as follows:

    • Base 64 encoding is used when binary base64 is specified.

    • URL encoding is used in AUTO mode when binary base64 is not specified.